Biopython 1.53 released

We are pleased to announce the availability of Biopython 1.53, a new stable release of the Biopython library, three months after the release of Biopython 1.52. This is our first release since migrating from CVS to git for source code control.

There have been some additions to our core objects – the Seq (and related UnknownSeq) objects gained upper and lower methods (like the string methods of the same name but alphabet aware) plus a new ungap method. The SeqFeature object now has an extract method to get the region of sequence it describes (useful for getting CDS nucleotide sequences from GenBank files). Also SeqRecord objects now support addition, giving a new SeqRecord with the combined sequence, all the SeqFeatures, and any common annotation.

SQLite support (built into Python 2.5+) was added to our BioSQL interface (Brad Chapman). This is still a little experimental as we are using a draft BioSQL SQLite schema, but this should be merged into the next BioSQL release.

Biopython now includes wrappers for the new NCBI BLAST C++ tools, which will be replacing the old NCBI “legacy” BLAST tools written in C. The plain text BLAST parser has been updated to cope as well. Nevertheless, we (and the NCBI) still recommend using the XML output for parsing.

The NCBI codon tables have been updated from version 3.4 to 3.9, which adds a few extra start codons, and a few new tables (Tables 16, 21, 22 and 23).

The restriction enzyme list in Bio.Restriction has been updated to the Nov 2009 release of REBASE.

The Bio.PDB parser and output code has been updated to understand the element column in ATOM and HETATM lines (based on patches contributed by Hongbo Zhu and Frederik Gwinner), and Bio.PDB.PDBList has been updated for recent changes to the PDB FTP site (Paul T. Bathen).

Finally, support for running Biopython under Jython (using the Java Virtual Machine) has been much improved (with input from Kyle Ellrott). Note that Jython does not support C code, and currently Jython does not parse DTD files (Jython Issue 1447; needed for the Bio.Entrez XML parser). However, most of the Biopython modules seem fine from testing with Jython 2.5.0 and 2.5.1.