Source distributions of Biopython 1.70 are now available from the downloads page on the official Biopython website, and the release is also on the Python Package Index (PyPI). Windows installers and/or wheels should be available later. (Update: Compiled wheel packages now available for Linux, Mac OS X and Windows).
This release of Biopython supports Python 2.7, 3.4, 3.5 and 3.6 (we have now dropped support for Python 3.3). It has also been tested on PyPy v5.7, PyPy3.5 v5.8 beta, and Jython 2.7 (although we are deprecating support for Jython).
Biopython now has a new logo, contributed by Patrick Kunzmann. Drawing on our original logo (with two yellow snakes) and the current Python logo, this shows a yellow and blue snake forming a double helix.
We now explicitly recommend installation using pip, rather than the classic “python setup.py install” approach. In a related change, we now depend on the Python package setuptools (rather than the older package distutils in the Python standard library) and have made the dependency on NumPy explicit and automatic (except on Jython).
As of Biopython 1.69, we have started to dual-license Biopython under both our original liberal “Biopython License Agreement”, and the very similar but more commonly used “3-Clause BSD License”. A growing number of the Python files are explicitly available under either license, but most of the code remains under the “Biopython License Agreement” only. See the LICENSE file for more details.
Bio.AlignIO now supports Mauve’s eXtended Multi-FastA (XMFA) file format under the format name “mauve” (contributed by Eric Rasche).
Bio.ExPASy was updated to fix fetching PROSITE and PRODOC records, and return text-mode handles for use under Python 3.
Two new arguments for reading and writing blast-xml files have been added to the Bio.SearchIO functions (read/parse and write, respectively). They are use_raw_hit_ids and use_raw_query_ids. Check out the relevant SearchIO.BlastIO documentation for a complete description of what these arguments do.
Bio.motifs was updated to support changes in MEME v4.11.4 output.
The Bio.Seq sequence objects now have a .count_overlap() method to supplement the Python string like non-overlap based .count() method.
The Bio.SeqFeature location objects can now be compared for equality.
In Bio.Phylo.TreeConstruction, the DistanceMatrix class (previously _DistanceMatrix) has a new method .format_phylip() to write Phylip-compatible distance matrix files (contributed by Jordan Willis).
Additionally, a number of small bugs have been fixed with further additions to the test suite, and there has been further work to follow the Python PEP8, PEP257 and best practice standard coding style.
Many thanks to the Biopython developers and community for making this release possible, especially the following contributors:
- Aaron Kitzmiller (first contribution)
- Adil Iqbal (first contribution)
- Allis Tauri
- Andrew Guy
- Ariel Aptekmann (first contribution)
- Ben Fulton
- Bertrand Caron (first contribution)
- Chris Rands
- Connor T. Skennerton
- Eric Rasche
- Eric Talevich
- Francesco Gastaldello
- François Coste (first contribution)
- Frederic Sapet (first contribution)
- Jimmy O’Donnell (first contribution)
- Jared Andrews (first contribution)
- John Kern (first contribution)
- Jordan Willis (first contribution)
- João Rodrigues
- Kai Blin
- Markus Piotrowski
- Mateusz Korycinski (first contribution)
- Maximilian Greil
- Michiel de Hoon
- morrme (first contribution)
- Noam Kremen (first contribution)
- Patrick Kunzmann
- Peter Cock
- Rasmus Fonseca (first contribution)
- Rodrigo Dorantes-Gilardi (first contribution)
- Sacha Laurent (first contribution)
- Sourav Singh
- Ted Cybulski (first contribution)
- Tiago Antao
- Wibowo ‘Bow’ Arindrarto
- Zheng Ruan
Thank you all.
P.S. You can follow @Biopython on Twitter
$ md5sum biopython-1.70.*
$ shasum -a 256 biopython-1.70.*