A lot of changes have been made to the BioRuby 1.4.2 after the version 1.4.1 is released. This document describes important and/or incompatible changes since the BioRuby 1.4.1 release.

For known problems, see KNOWN_ISSUES.rdoc.

New features

Speed-up of Bio::RestrictionEnzyme::Analysis.cut

The running speed of Bio::RestrictionEnzyme::Analysis.cut is significantly increased. The new code is 50 to 80 fold faster than the previous code when cutting 1Mbp sequence running on Ruby 1.9.2p180. The code is written by Tomoaki NISHIYAMA and Naohisa Goto.

New classes Bio::DDBJ::REST, REST interface for DDBJ web service

For DDBJ Web API for Biology (WABI) web service, in additon to SOAP, REST (REpresentational State Transfer) interface is added as Bio::DDBJ::REST. Currently, only selected APIs are implemented.

Bio::Blast with remote DDBJ server uses REST instead of SOAP

Bio::Blast with remote DDBJ server uses REST instead of SOAP, because Soap4r (SOAP library for Ruby) does not work well with Ruby 1.9. We can now use remote DDBJ BLAST server with Ruby 1.9.

Tutorial is updated

The Tutorial.rd is updated by Pjotr Prins and Michael O'Keefe.

Many unit tests are added

Added many unit tests for Bio::GenBank, Bio::GenPept, Bio::NBRF, Bio::PDB and so on. Most of them are developed by Kazuhiro Hayashi during the Google Summer of Code 2010.

Other new features

Bug fixes


Bio::SPTR (Bio::UniProt)

Other bug fixes

Incompatible changes


In Fastq output formatter, default width value is changed from 70 to nil. The nil means “without wrapping”. The new default behavior without wrapping is generally good with many recent applications that read fastq.

Bio::SPTR CC line topic “WEB RESOURCE”

In the return value of Bio::SPTR#cc('WEB RESOURCE'), “NAME” and “NOTE” are now renamed to “Name” and “Note”, respectively. The change is due to the UniProt format change since UniProtKB release 12.2 of 11-Sep-2007. (See for details.) Note that “Name” and “Note” are used even when parsing older format. The change would also affect Marshal.dump (and YAML.dump) data.

Bio::Blast with the remote GenomeNet server

When executing remote BLAST with “genomenet” server, options “-b” and “-v” are now correctly used to limit the number of hits to be reported. In 1.4.1 and before, “-B” and “-V” were mistakenly used for the purpose.

Bio::Blast with the remote DDBJ server

Bio::Blast with remote DDBJ server uses REST instead of SOAP.

Bio::RestrictionEnzyme internal data structure change

Due to the speedup, internal data structure of the following classes are changed: Bio::RestrictionEnzyme::Range::SequenceRange, Bio::RestrictionEnzyme::Range::SequenceRange::CalculatedCuts, Bio::RestrictionEnzyme::Range::SequenceRange::Fragment. This indicates that Marshal.dump (and YAML.dump) data generated by older versions cannot be loaded by the new version, and vice versa, although public APIs of the classes keep compatibility.

Known issues

The following issues are added or updated. See KNOWN_ISSUES.rdoc for other already known issues.

Other important news