Skip to content

Releases: althonos/pyhmmer

0.1.1

03 Dec 14:50
v0.1.1
Compare
Choose a tag to compare

Fixed

  • HMMFile calling file.peek without arguments, causing it to crash when passed some types, e.g. gzip.GzipFile.
  • HMMFile failing to work with PyPy file objects because of a bug with their implementation of readinto.
  • C/Python file object implementation using strcpy instead of memcpy, causing issues when null bytes were read.

0.1.0

01 Dec 20:25
v0.1.0
Compare
Choose a tag to compare

Initial beta release.

Fixed

  • TextSequence uses the sequence argument it's given on instantiation.
  • Segmentation fault in Sequence.__eq__ caused by implicit type conversion.
  • Segmentation fault on SequenceFile.read failure.
  • Missing type annotations for the pyhmmer.easel module.

0.1.0-a5

28 Nov 17:08
v0.1.0-a5
Compare
Choose a tag to compare

Added

  • Sequence.__len__ magic method so that len(seq) returns the number of letters in seq.
  • Python file-handle support when opening an pyhmmer.plan7.HMMFile.
  • Context manager protocol to pyhmmer.easel.SSIWriter.
  • Type annotations for pyhmmer.easel.SSIWriter.
  • add_alias to pyhmmer.easel.SSIWriter.
  • write method to pyhmmer.plan7.OptimizedProfile to write an optimized profile in binary format.
  • offsets property to interact with the disk offsets of a pyhmmer.plan7.OptimizedProfile instance.
  • pyhmmer.hmmer.hmmpress emulating the hmmpress binary from HMMER.
  • M property to pyhmmer.plan7.HMM exposing the number of nodes in the model.

Changed

  • Bumped vendored Easel to v0.48.
  • Bumped vendored HMMER to v3.3.2.
  • pyhmmer.plan7.HMMFile will raise an EOFError when given an empty file.
  • Renamed length property to L in pyhmmer.plan7.Background.

Fixed

  • Segmentation fault when close method of pyhmmer.easel.SSIWriter was called more than once.
  • close method of pyhmmer.easel.SSIWriter not writing the index contents.

0.1.0-a4

24 Nov 15:02
v0.1.0-a4
Compare
Choose a tag to compare

Added

  • MSA, TextMSA and DigitalMSA classes representing a multiple sequence alignment to pyhmmer.easel.
  • Methods and protocol to copy a Sequence and a MSA.
  • pyhmmer.plan7.OptimizedProfile wrapping a platform-specific optimized profile.
  • SSIReader and SSIWriter classes interacting with sequence/subsequence indices to pyhmmer.easel.
  • Exception handler using Python exceptions to report Easel errors.

Changed

  • pyhmmer.hmmsearch returns an iterator of TopHits, with one instance per HMM in the input.
  • pyhmmer.hmmsearch properly raises errors happenning in the background threads without deadlock.
  • pyhmmer.plan7.Pipeline recycles memory between Pipeline.search calls.

Fixed

  • Missing type annotations for the pyhmmer.errors module.

Removed

  • Unneeded or private methods from pyhmmer.plan7.

0.1.0-a3

19 Nov 00:38
v0.1.0-a3
Compare
Choose a tag to compare

Added

  • TextSequence and DigitalSequence representing a Sequence in a given mode.
  • E-value properties to Hit and Domain.
  • TopHits now stores a reference to the pipeline it was obtained from.
  • Pipeline.Z and Pipeline.domZ properties.
  • Experimental pickling support to Alphabet.
  • Experimental freelist to Sequence class to avoid allocation bottlenecks when iterating on a SequenceFile without recycling sequence buffers.

Changed

  • Made Sequence an abstract base class.
  • Additional Pipeline parameters can be passed as keyword arguments to pyhmmer.hmmsearch.
  • SequenceFile.read can now be configured to skip reading the metadata or the content of a sequence.

Removed

  • Redundant SequenceFile methods.

Fixed

  • doctest loader crashing on Python 3.5.
  • TopHits.threshold segfaulting when being called without prior Tophits.sort call
  • Unknown format argument to SequenceFile constructor not raising the right error.

0.1.0-a2

12 Nov 15:03
v0.1.0-a2
Compare
Choose a tag to compare
0.1.0-a2 Pre-release
Pre-release

Added

  • Support for compilation on PowerPC big-endian platforms.
  • Type annotations and stub files for Cython modules.

Changed

  • distutils is now used to compile the package, instead of calling autotools and letting HMMER configure itself.
  • Bitfield.count now allows passing an argument (for compatibility with collections.abc.Sequence).

0.1.0-a1

10 Nov 15:01
v0.1.0-a1
Compare
Choose a tag to compare
0.1.0-a1 Pre-release
Pre-release

Initial alpha release (test deployment to PyPI).