All notable changes to bel.rb will be documented in this file. The curated log begins at changes to version 0.3.2.
This project adheres to Semantic Versioning.
0.7.0 - 2016-04-12
- RDF translation allows for RDF prefixes to be used. Default RDF prefixes are provided (Issue #69).
- Annotation and Namespace definitions can now be remapped using a YAML file (Issue #92).
- An example remap file can be obtained from the command
bel remapfile
(Issue #92).
0.6.0 - 2016-03-15
- Serialization of BEL Script / XBEL can produce incorrect annotation and namespaces references (Issue #111).
- Separate random sampling from random data in BEL generator (Issue #105).
- Improved BEL quoting API. Deprecated previous API methods. (Issue #104).
- BEL and XBEL translators will now buffer on write to account for all annotation/namespace references. Pass the
-t streaming=true
option tobel translate
to stream data when the references are consistent.
- Added translator read/write option passing from the
bel translate
subcommand.
- Added doctest Rake task to run YARD
@example
tests in method level documentation. - Added gosh commands for running unit, integration and doctests (Issue #85).
0.5.0 - 2016-02-10
- Fix missing RDF prefixes when converting BEL Script to RDF (Issue #71).
- Error translating to JSON Evidence format using Oj adapter (Issue #93).
- Consistent representation of Annotation and Namespace references in Evidence model and translators (Issue #94).
- RDF conversion of Parameter does not include encoding type statement (Issue #96).
- Introduced translators for additional RDF formats; split and removed the RDF translator in favor of one translator per RDF format (Issue #95).
- Warn when BEL namespace data could not be retrieved (Issue #97).
- Added generator for random BEL Nanopubs using the bel generate subcommand (Issue #102).
- Access BEL annotation resource values from external .belanno files (Issue #100).
- Support different types of serialization within the BEL Script translator (Issue #98).
0.4.2 - 2015-12-21
- [Regression] Failure to run BEL upgrade command; yields name error (Issue #90).
- [Regression] Incorrect namespace concept URI when converting Term to RDF (Issue #91).
0.4.1 - 2015-12-17
- Updated
find
API ofBEL::Resource::Namespaces
andBEL::Resource::Namespace
to find by string representing a URI.
- [Development] Install
pry-byebug
only forruby
platforms. This allows development on JRuby. - [Development] No-op
rake compile
when running on JRuby. Report informative message when compiling on JRuby.
- Complete BEL namespaces and namespace values using the Namespaces API backed by RDF data.
- Enable :exclude_identifier_schemes option for BEL completion to disallow namespace value results that report an identifier as their preferred name. This is allowed if the namespace prefix is first provided (e.g. "EG:AKT" will find "EG:207").
0.4.0 - 2015-12-14
- Improved conversion of evidence to JSON Evidence format.
- Fixed inclusion of BEL dsl (domain-specific language) extensions into all objects. The dsl methods can now be added to the BEL::Language module with BEL::Language.include_bel_dsl.
- [Development] Removed bundler in favor or rubygems for dependency management (Issue #82).
- Implement new plugin mechanism (Issue #86).
- Implement translator plugins using new plugin mechanism. These were previously called Format Extensions (Issue #86).
- Added JSON read/write abstraction to support JSON streaming capabilities if the adapter supports it (see BEL::JSON).
- Implement a translate API which allows reading evidence and translating to other formats (see BEL#evidence, BEL#translate).
- BEL translator "write" can now yield to block or return an enumerator over translated evidence. This allows the user to control how the output is written to IO.
- Added a new "plugins" subcommand to the bel executable that lists the plugins available to bel.rb. Run with "bel plugins --list".
- Added RDF Repository plugin type. This allows RDF datasources to be integrated into bel.rb. The RDF Repository abstraction is provided by RDF.rb. The initial use is with the Namespace and Annotation APIs. Plugins are provided for Apache Jena (TDB) and MongoDB RDF datasources.
- Added Namespace and Annotation APIs to provide access to biological identifiers within an RDF Repository.
- Added Resource Search API plugin type. This provides an API to full-text search over Namespaces and Annotations include symbols, identifiers, titles, and synonyms. A plugin named "bel.rb-search-sqlite" was created built on SQLite's full-text search.
- Added option to RDF translator plugin to write out evidence as a VoID dataset (Issue #66).
0.3.3 - 2015-08-07
- ResourceIndex integration test causes intermittent timeouts (Issue #61).
- Support running on JRuby, including libbel native library (Issue #68).
0.3.2 - 2015-07-31
- Allow whitespace (space/tab) within blank lines (Issue #13).
- Parse CRLF line terminators (i.e. Windows) when parsing BEL Script (Issue #21).
- Allow whitespace before BEL Script records (Issue #25).
- Support RDF conversion of unicode string literals (Issue #40).
- Support translation from and to RDF (Issue #51).
- (Regression) Unable to parse BEL files on Windows (Issue #59).
- RDF "hasConcept" property triple is missing namespace (Issue #64).
- Updates defined namespaces to reflect the 20150611 resources.
- Full support for all BEL functions and relationships during RDF conversion.
- Development gem dependencies (i.e. byebug, pry, pry-byebug) for debugging.