- update to 1.84:
* The old parser stores information in a
Bio.Blast.NCBIXML.Blast object, with attribute names based on
plain-text Blast output. The new parser stores information in
a Bio.Blast.Record object. This class follows the DTD that
describes the XML in terms of attribute names and dictionary
key names, class structure, and object types. This makes it
easier to find the detailed description of each field in the
NCBI Blast documentation.
* The old parser stores alignment information directly as seen
in the BLAST XML output, i.e. as strings with dashes to
represent gaps. The new parser stores the alignment
information as a Bio.Align.Alignment object, which can then
be used to e.g. print the alignment in a different format.
OBS-URL: https://build.opensuse.org/request/show/1206739
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-biopython?expand=0&rev=13
* The old parser stores information in a
Bio.Blast.NCBIXML.Blast object, with attribute names based on
plain-text Blast output. The new parser stores information in
a Bio.Blast.Record object. This class follows the DTD that
describes the XML in terms of attribute names and dictionary
key names, class structure, and object types. This makes it
easier to find the detailed description of each field in the
NCBI Blast documentation.
* The old parser stores alignment information directly as seen
in the BLAST XML output, i.e. as strings with dashes to
represent gaps. The new parser stores the alignment
information as a Bio.Align.Alignment object, which can then
be used to e.g. print the alignment in a different format.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=25
- update to 1.82:
* The ``inplace`` argument of ``complement`` and
``reverse_complement`` in ``Bio.Seq`` now always default to
``False`` both for ``Seq`` and ``MutableSeq`` objects.
To modify a ``MutableSeq`` in-place, use ``inplace=True``.
* A new class ``CodonAligner`` was added to ``Bio.Align``. A
``CodonAligner`` object can align a nucleotide sequence to the
amino acid sequence it encodes, using a dynamic programming
algorithm modeled on ``PairwiseAligner`` to take frame shifts
into account. The ``CodonAligner`` returns ``Alignment``
objects.
* By calling the new ``mapall`` method on an ``Alignment``
object storing a multiple sequence alignment of amino acid
sequences, with nucleotide-to-amino acid alignments generated
by ``CodonAligner`` as the argument, a codon-by-codon
multiple sequence alignment of nucleotide sequences can be
obtained. The new submodule ``Bio.Align.analysis`` provides
functions to estimate synonymous and nonsynonymous mutations
and to perform the McDonald-Kreitman test on the codon
multiple sequence alignments. Together, this provides the
same functionality as the ``Bio.codonalign`` module, but uses
the standard ``Alignment`` class, and does not rely on regular
expression searching to align a nucleotide sequence to
an amino acid sequence.
* The ``hmmer3-text`` SearchIO format now also extracts the
similarity string of the parsed alignments.
* HMMER results with the full path to the hmmer executable in
the banner are now parsed correctly.
* We now have basic type hint annotations in various modules
including ``Seq``, ``SeqRecord``, and ``SeqIO``.
OBS-URL: https://build.opensuse.org/request/show/1135235
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-biopython?expand=0&rev=11
* The ``inplace`` argument of ``complement`` and
``reverse_complement`` in ``Bio.Seq`` now always default to
``False`` both for ``Seq`` and ``MutableSeq`` objects.
To modify a ``MutableSeq`` in-place, use ``inplace=True``.
* A new class ``CodonAligner`` was added to ``Bio.Align``. A
``CodonAligner`` object can align a nucleotide sequence to the
amino acid sequence it encodes, using a dynamic programming
algorithm modeled on ``PairwiseAligner`` to take frame shifts
into account. The ``CodonAligner`` returns ``Alignment``
objects.
* By calling the new ``mapall`` method on an ``Alignment``
object storing a multiple sequence alignment of amino acid
sequences, with nucleotide-to-amino acid alignments generated
by ``CodonAligner`` as the argument, a codon-by-codon
multiple sequence alignment of nucleotide sequences can be
obtained. The new submodule ``Bio.Align.analysis`` provides
functions to estimate synonymous and nonsynonymous mutations
and to perform the McDonald-Kreitman test on the codon
multiple sequence alignments. Together, this provides the
same functionality as the ``Bio.codonalign`` module, but uses
the standard ``Alignment`` class, and does not rely on regular
expression searching to align a nucleotide sequence to
an amino acid sequence.
* The ``hmmer3-text`` SearchIO format now also extracts the
similarity string of the parsed alignments.
* HMMER results with the full path to the hmmer executable in
the banner are now parsed correctly.
* We now have basic type hint annotations in various modules
including ``Seq``, ``SeqRecord``, and ``SeqIO``.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=21
* The API documentation and the `Biopython Tutorial and
Cookbook` have been updated to better annotate use and
application of the ``Bio.PDB.internal_coords`` module.
* ``Bio.Phylo`` now supports ``Alignment`` and
``MultipleSeqAlignment`` objects as input.
* Several improvements and bug fixes to the snapgene parser
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=19
- update to 1.80:
* This release of Biopython supports Python 3.7, 3.8, 3.9, 3.10, 3.11. It
has also been tested on PyPy3.7 v7.3.5.
* Functions ``read``, ``parse``, and ``write`` were added to ``Bio.Align``
to read and write ``Alignment`` objects.
* Because dict retains the item order by default since Python3.6, all
instances of ``collections.OrderedDict`` have been replaced by either standard
``dict`` or where appropriate by ``collections.defaultsdict``.
* The ``Bio.motifs.jaspar.db`` now returns ``tf_family`` and ``tf_class``
as a string array since the JASPAR 2018 release.
* The Local Composition Complexity functions from ``Bio.SeqUtils`` now
uses base 4 log instead of 2 as stated in the original reference Konopka
(2005), * Sequence Complexity and Composition. https://doi.org/10.1038/npg.els.0005260
* Append mode is now supported in ``Bio.bgzf`` (and a bug parsing blocked
GZIP files with an internal empty block fixed).
* The experimental warning was dropped from ``Bio.phenotype`` (which was
new in Biopython 1.67).
* Sequences now have a ``defined`` attribute that returns a boolean
indicating if the underlying data is defined or not.
* The ``Bio.PDB`` module now includes a structural alignment module, using
the combinatorial extension algorithm of Shindyalov and Bourne, commonly
known as CEAlign. The module allows for two structures to be aligned based solely
on their 3D conformation, ie. in a sequence-independent manner. The method
is particularly powerful when the structures shared a very low degree of
sequence similarity. The new module is available in ``Bio.PDB.CEAligner`` with an
interface similar to other 3D superimposition modules.
* A new module ``Bio.PDB.qcprot`` implements the QCP superposition
algorithm in pure Python, deprecating the existing C implementation. This leads to a
slight performance improvement and to much better maintainability. The
refactored ``qcprot.QCPSuperimposer`` class has small changes to its API, to better
OBS-URL: https://build.opensuse.org/request/show/1055870
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-biopython?expand=0&rev=9
* This release of Biopython supports Python 3.7, 3.8, 3.9, 3.10, 3.11. It
has also been tested on PyPy3.7 v7.3.5.
* Functions ``read``, ``parse``, and ``write`` were added to ``Bio.Align``
to read and write ``Alignment`` objects.
* Because dict retains the item order by default since Python3.6, all
instances of ``collections.OrderedDict`` have been replaced by either standard
``dict`` or where appropriate by ``collections.defaultsdict``.
* The ``Bio.motifs.jaspar.db`` now returns ``tf_family`` and ``tf_class``
as a string array since the JASPAR 2018 release.
* The Local Composition Complexity functions from ``Bio.SeqUtils`` now
uses base 4 log instead of 2 as stated in the original reference Konopka
(2005), * Sequence Complexity and Composition. https://doi.org/10.1038/npg.els.0005260
* Append mode is now supported in ``Bio.bgzf`` (and a bug parsing blocked
GZIP files with an internal empty block fixed).
* The experimental warning was dropped from ``Bio.phenotype`` (which was
new in Biopython 1.67).
* Sequences now have a ``defined`` attribute that returns a boolean
indicating if the underlying data is defined or not.
* The ``Bio.PDB`` module now includes a structural alignment module, using
the combinatorial extension algorithm of Shindyalov and Bourne, commonly
known as CEAlign. The module allows for two structures to be aligned based solely
on their 3D conformation, ie. in a sequence-independent manner. The method
is particularly powerful when the structures shared a very low degree of
sequence similarity. The new module is available in ``Bio.PDB.CEAligner`` with an
interface similar to other 3D superimposition modules.
* A new module ``Bio.PDB.qcprot`` implements the QCP superposition
algorithm in pure Python, deprecating the existing C implementation. This leads to a
slight performance improvement and to much better maintainability. The
refactored ``qcprot.QCPSuperimposer`` class has small changes to its API, to better
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=17
- Update to version 1.7.8.
* The main change is that Bio.Alphabet is no longer used. In some
cases you will now have to specify expected letters, molecule
type (DNA, RNA, protein), or gap character explicitly.
* Bio.SeqIO.parse() is faster with "fastq" format due to small
improvements in the Bio.SeqIO.QualityIO module.
* The SeqFeature object's .extract() method can now be used for
trans-spliced locations via an optional dictionary of references.
* As in recent releases, more of our code is now explicitly
available under either our original "Biopython License Agreement",
or the very similar but more commonly used "3-Clause BSD License".
See the LICENSE.rst file for more details.
* Additionally, a number of small bugs and typos have been fixed
with additions to the test suite. There has been further work to
follow the Python PEP8, PEP257 and best practice standard coding
style, and all of the tests have been reformatted with the black
tool to match the main code base.
- Skip python36 because numpy no longer support it.
OBS-URL: https://build.opensuse.org/request/show/874100
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=13
- Update to version 1.77
* **We have dropped support for Python 2 now.**
* ``pairwise2`` now allows the input of parameters with keywords and returns the
alignments as a list of ``namedtuples``.
* The codon tables have been updated to NCBI genetic code table version 4.5,
which adds Cephalodiscidae mitochondrial as table 33.
* Updated ``Bio.Restriction`` to the January 2020 release of REBASE.
* A major contribution by Rob Miller to ``Bio.PDB`` provides new methods to
handle protein structure transformations using dihedral angles (internal
coordinates). The new framework supports lossless interconversion between
internal and cartesian coordinates, which, among other uses, simplifies the
analysis and manipulation of coordinates of proteins structures.
* ``PDBParser`` and ``PDBIO`` now support PQR format file parsing and input/
output.
* In addition to the mainstream ``x86_64`` aka ``AMD64`` CPU architecture, we
now also test every contribution on the ``ARM64``, ``ppc64le``, and ``s390x``
CPUs under Linux thanks to Travis CI. Further post-release testing done by
Debian and other packagers and distributors of Biopython also covers these
CPUs.
* ``Bio.motifs.PositionSpecificScoringMatrix.search()`` method has been
re-written: it now applies ``.calculate()`` to chunks of the sequence
to maintain a low memory footprint for long sequences.
* Additionally, a number of small bugs and typos have been fixed with further
additions to the test suite. There has been further work to follow the Python
PEP8, PEP257 and best practice standard coding style, and more of the code
style has been reformatted with the ``black`` tool.
OBS-URL: https://build.opensuse.org/request/show/819377
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=9
- Update to version 1.74
* Our core sequence objects (``Seq``, ``UnknownSeq``, and ``MutableSeq``) now
have a string-like ``.join()`` method.
* The NCBI now allows longer accessions in the GenBank file LOCUS line, meaning
the fields may not always follow the historical column based positions. We
no longer give a warning when parsing these. We now allow writing such files
(although with a warning as support for reading them is not yet widespread).
* Support for the ``mysqlclient`` package, a fork of MySQLdb, has been added.
* We now capture the IDcode field from PDB Header records.
* ``Bio.pairwise2``'s pretty-print output from ``format_alignment`` has been
optimized for local alignments: If they do not consist of the whole sequences,
only the aligned section of the sequences are shown, together with the start
positions of the sequences (in 1-based notation). Alignments of lists will now
also be prettily printed.
* ``Bio.SearchIO`` now supports parsing the text output of the HHsuite protein
sequence search tool. The format name is ``hhsuite2-text`` and
``hhsuite3-text``, for versions 2 and 3 of HHsuite, respectively.
* ``Bio.SearchIO`` HSP objects has a new attribute called ``output_index``. This
attribute is meant for capturing the order by which the HSP were output in the
parsed file and is set with a default value of -1 for all HSP objects. It is
also used for sorting the output of ``QueryResult.hsps``.
* ``Bio.SeqIO.AbiIO`` has been updated to preserve bytes value when parsing. The
goal of this change is make the parser more robust by being able to extract
string-values that are not utf-8-encoded. This affects all tag values, except
for ID and description values, where they need to be extracted as strings
to conform to the ``SeqRecord`` interface. In this case, the parser will
attempt to decode using ``utf-8`` and fall back to the system encoding if that
fails. This change affects Python 3 only.
* ``Bio.motifs.mast`` has been updated to parse XML output files from MAST over
the plain-text output file. The goal of this change is to parse a more
structured data source with minimal loss of functionality upon future MAST
releases. Class structure remains the same plus an additional attribute
``Record.strand_handling`` required for diagram parsing.
* ``Bio.Entrez`` now automatically retries HTTP requests on failure. The
maximum number of tries and the sleep between them can be configured by
changing ``Bio.Entrez.max_tries`` and ``Bio.Entrez.sleep_between_tries``.
(The defaults are 3 tries and 15 seconds, respectively.)
* All tests using the older print-and-compare approach have been replaced by
unittests following Python's standard testing framework.
* On the documentation side, all the public modules, classes, methods and
functions now have docstrings (built in help strings). Furthermore, the PDF
version of the *Biopython Tutorial and Cookbook* now uses syntax coloring
for code snippets.
* Additionally, a number of small bugs and typos 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.
OBS-URL: https://build.opensuse.org/request/show/717710
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-biopython?expand=0&rev=5