Commit 04ccd313 authored by Martin Larralde's avatar Martin Larralde
Browse files

Release v0.6.0

parent f1f24e1d
Pipeline #32793 passed with stage
in 9 minutes and 11 seconds
......@@ -6,7 +6,38 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [Unreleased]
[Unreleased]: https://github.com/althonos/pyhmmer/compare/v0.5.0...HEAD
[Unreleased]: https://github.com/althonos/pyhmmer/compare/v0.6.0...HEAD
## [v0.6.0] - 2022-05-01
[v0.6.0]: https://github.com/althonos/pyhmmer/compare/v0.5.0...v0.6.0
### Added
- `pyhmmer.daemon` module with an client implementation to communicate to a `hmmpgmd` server.
- `Pipeline.arguments` methods to get a list of CLI arguments from the parameters used to initialize the `Pipeline`.
- Setters for `name`, `accession` and `description` properties of `plan7.Hit`.
- Constructor for individual `plan7.Trace` objects outside a `plan7.Traces` list.
- `plan7.Trace.from_sequence` constructor to create a faux trace from a single sequence.
- `manually_include` and `manually_drop` methods to `plan7.Hit` for manually selecting the inclusion status of a `Hit` in a `TopHits` instance.
- `compare_ranking` method to `plan7.TopHits` for comparing the order of the hits compared to a previous run on the same targets stored in an `easel.KeyHash` object.
- `Pipeline.iterate_seq` and `Pipeline.iterate_hmm` to run iterative queries like JackHMMER.
- `repr` implementations for `easel.MSAFile`, `easel.SequenceFile` and `easel.HMMFile` showing the path or file object they were created from.
- `repr` implementation for `easel.Randomness` showing the seed and the RNG algorithm in use.
- `str` implementation for `plan7.Alignment` using HMMER original code to display a domain alignment like in search/scan results.
### Changed
- `plan7.Trace.posterior_probabilities` property may now be `None` in case no memory is allocated for the posteriors in the `P7_TRACE` struct.
- `TopHits.to_msa` can now add additional sequences passed as arguments to the alignment.
- `plan7.HMMPressedFile` now raises an exception on attempts to create a new instance manually.
- `ignore_gaps` argument of `easel.SequenceFile` is now deprecated.
- `repr` implementations for `easel` types now use the fully qualified class name.
### Fixed
- `easel.SequenceFile.readinto` docstring not rendering properly in documentation.
- Type annotations of `hits_included` and `hits_reported` of `plan7.TopHits` marking these properties as `bool` instead of `int`.
- Setters of `name`, `accession`, `description` and `author` properties of `easel.MSA` crashing when given `None` values.
- Exception value raised from Easel code not being properly extracted.
- Plain strings being used in example for `easel.TextSequence` and `easel.TextMSA` constructors where byte strings are expected ([#20](https://github.com/althonos/pyhmmer/pull/20)).
## [v0.5.0] - 2022-03-14
......@@ -264,7 +295,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- `plan7.Builder.build_msa` to build a pHMM from a sequence alignment.
- Additional methods to `easel.KeyHash`, allowing to use it as a `dict`/`set` hybrid.
- `Sequence.write` and `MSA.write` methods to format a sequence or an alignment to a file handle.
- `plan7.TopHist.to_msa` method to convert all the top hits of a query against a database into a multiple sequence alignment.
- `plan7.TopHits.to_msa` method to convert all the top hits of a query against a database into a multiple sequence alignment.
- `easel.MSA.sequences` attribute to access individual sequences of an alignment using the `collections.abc.Sequence` interface.
- `easel.DigitalMSA.textize` method to convert a multiple sequence alignment in digital mode to its text-mode counterpart.
- Read-only `name`, `accession` and `description` properties to `plan7.Profile` showing attributes inherited from the HMM it was configured with.
......
......@@ -26,7 +26,7 @@ from .hmmer import hmmalign, hmmsearch, hmmpress, nhmmer, phmmer
__author__ = "Martin Larralde <martin.larralde@embl.de>"
__license__ = "MIT"
__version__ = "0.5.0"
__version__ = "0.6.0"
__all__ = [
errors.__name__,
easel.__name__,
......
......@@ -91,6 +91,8 @@ cdef class Client:
is feasible to parse the database from the client side to extract
identifiers of the target HMMs or sequences.
.. versionadded:: 0.6.0
"""
DEF DEFAULT_ADDRESS = "127.0.0.1"
......@@ -575,6 +577,8 @@ cdef class IterativeSearch(pyhmmer.plan7.IterativeSearch):
procedure*. BMC Bioinformatics 11, 431 (18 August 2010).
:doi:`10.1186/1471-2105-11-431`.
.. versionadded:: 0.6.0
"""
def __init__(
......
......@@ -5187,6 +5187,9 @@ cdef class SequenceFile:
.. versionchanged:: 0.5.0
Added the ``digital`` and ``alphabet`` keyword arguments.
.. deprecated:: 0.6.0
The ``ignore_gaps`` keyword argument, use ``afa`` format instead.
"""
cdef int fmt
cdef int status
......
......@@ -1707,7 +1707,7 @@ cdef class Hit:
selecting hits during an iterative search performed by
`Pipeline.iterate_seq`.
.. versionadded:: 0.5.1
.. versionadded:: 0.6.0
"""
if self.is_included():
......@@ -1723,7 +1723,7 @@ cdef class Hit:
multiple sequence alignment from the `TopHits` object, even if it
was under inclusion thresholds.
.. versionadded:: 0.5.1
.. versionadded:: 0.6.0
"""
if not self.is_included():
......@@ -4515,6 +4515,8 @@ cdef class Pipeline:
>>> plan7.Pipeline(alphabet, F1=0.01).arguments()
['--F1', '0.01']
.. versionadded:: 0.6.0
"""
cdef list argv = []
cdef str cutoff
......@@ -5206,7 +5208,7 @@ cdef class Pipeline:
... if iteration.converged:
... break
.. versionadded:: 0.5.1
.. versionadded:: 0.6.0
"""
# collect target sequences into an optimized structure
......@@ -5395,6 +5397,8 @@ cdef class LongTargetsPipeline(Pipeline):
>>> plan7.LongTargetsPipeline(alphabet, B1=200).arguments()
['--B1', '200']
.. versionadded:: 0.6.0
"""
cdef list argv = []
cdef str cutoff
......@@ -6550,6 +6554,8 @@ cdef class TopHits:
Returns:
`int`: The number of new hits found in this iteration.
.. versionadded:: 0.6.0
"""
assert self._th != NULL
assert ranking._kh != NULL
......@@ -6617,7 +6623,7 @@ cdef class TopHits:
bint digitize=False,
bint all_consensus_cols=False
):
"""to_msa(self, alphabet, *, trim=False, digitize=False, all_consensus_cols=False)\n--
"""to_msa(self, alphabet, *, sequences=None, traces=None, trim=False, digitize=False, all_consensus_cols=False)\n--
Create multiple alignment of all included domains.
......@@ -6647,7 +6653,7 @@ cdef class TopHits:
.. versionadded:: 0.3.0
.. versionchanged:: 0.5.1
.. versionchanged:: 0.6.0
Added the ``sequences`` and ``traces`` arguments.
"""
......@@ -6813,7 +6819,7 @@ cdef class Trace:
Create a faux trace from a single sequence.
.. versionadded:: 0.5.1
.. versionadded:: 0.6.0
"""
cdef int i
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment