This is our first release of Biopython which officially supports Python 3. Specifically, this is supported under Python 3.3. Older versions of Python 3 may still work albeit with some issues, but are not supported.
We still fully support Python 2.5, 2.6, and 2.7. Support under Jython is available for versions 2.5 and 2.7 and under PyPy for versions 1.9 and 2.0. However, unlike CPython, Jython and PyPy support is partial: NumPy and our C extensions are not covered.
Please note that this release marks our last official for support Python 2.5. Beginning from Biopython 1.63, the minimum supported Python version will be 2.6.
- The translation functions will give a warning on any partial codons (and this will probably become an error in a future release). If you know you are dealing with partial sequences, either pad with “N” to extend the sequence length to a multiple of three, or explicitly trim the sequence.
- The handling of joins and related complex features in Genbank/EMBL files has been changed with the introduction of a
CompoundLocationobject. Previously a
SeqFeaturefor something like a multi-exon CDS would have a child
sub_featuresattribute) for each exon. The
sub_featuresproperty will still be populated for now, but is deprecated and will in future be removed. Please consult the examples in the help (docstrings) and Tutorial.
- Thanks to the efforts of Ben Morris, the Phylo module now supports the file formats NeXML and CDAO. The Newick parser is also significantly faster, and can now optionally extract bootstrap values from the Newick comment field (like Molphy and Archaeopteryx do). Nate Sutton added a wrapper for FastTree to
- New module
Bio.UniProtadds parsers for the GAF, GPA and GPI formats from UniProt-GOA.
BioSQLmodule is now supported in Jython. MySQL and PostgreSQL databases can be used. The relevant JDBC driver should be available in the
- Feature labels on circular
GenomeDiagramfigures now support the
label_positionargument (start, middle or end) in addition to the current default placement, and in a change to prior releases these labels are outside the features which is now consistent with the linear diagrams.
- The code for parsing 3D structures in mmCIF files was updated to use the Python standard library’s
shlexmodule instead of C code using flex.
Bio.Sequencing.Applicationsmodule now includes a BWA command line wrapper.
Bio.motifssupports JASPAR format files with multiple position-frequence matrices.
Additionally there have been other minor bug fixes and more unit tests.
Many thanks to the Biopython developers and community for making this release possible, especially the following contributors:
- Alexander Campbell (first contribution)
- Andrea Rizzi (first contribution)
- Anthony Mathelier (first contribution)
- Ben Morris (first contribution)
- Brad Chapman
- Christian Brueffer
- David Arenillas (first contribution)
- David Martin (first contribution)
- Eric Talevich
- Iddo Friedberg
- Jian-Long Huang (first contribution)
- Joao Rodrigues
- Kai Blin
- Lenna Peterson
- Michiel de Hoon
- Matsuyuki Shirota (first contribution)
- Nate Sutton (first contribution)
- Peter Cock
- Petra Kubincová (first contribution)
- Phillip Garland
- Saket Choudhary (first contribution)
- Tiago Antao
- Wibowo ‘Bow’ Arindrarto
- Xabier Bello (first contribution)