Skip to content

Releases: althonos/pytrimal

v0.4.0

14 Aug 00:24
Compare
Choose a tag to compare

Added

  • BaseTrimmer.backend property to get the backend used by a trimmer object.
  • Zero-copy slicing for AlignmentSequences and AlignmentResidues objects.
  • noduplicateseqs method for AutomaticTrimmer objects.
  • OverlapTrimmer class to perform overlap trimming with SSE-accelerated implementation.
  • AutomaticTrimmer.METHODS attribute to expose all supported automatic trimming methods.
  • __repr__ implementation to all trimmer classes.

Fixed

  • Missing deallocation code for standalone AlignmentResidues objects.
  • Alignment.load not working properly in PyPy environments.
  • Alignment constructor sometimes crashing when not given any sequence.

Changed

  • Use aligned memory for some temporary buffers used in SIMD code.
  • Enable loop unrolling when supported by the compiler.
  • Skip letter validation when creating an Alignment object with sequences from an AlignmentSequences object.

Removed

  • consistency_threshold and consistency_window arguments of ManualTrimmer.

v0.3.0

27 Jun 01:35
Compare
Choose a tag to compare

Added

  • Support for loading an Alignment from a file-like object for certain formats.
  • Generic optimized backend using caching optimizations from inab/trimal#66.

Fixed

  • Compilation of code for OSX platforms in Python 3.10.
  • File not being closed on error when loading a FASTA alignment.

Changed

  • Add tests for loading an Alignment without requiring importlib.resources.

v0.2.2

08 Jun 19:38
Compare
Choose a tag to compare

Added

  • Keyword arguments to specify the half-window sizes in manual trimmer.
  • Alignment.dump and Alignment.dumps function to write an alignment to a file, file-like object, or string.
  • Optimized implementation of Similarity::calculateVectors.

Changed

  • Use faster implementation of SSE2 horizontal sum based on _mm_sad_epu8.

v0.2.1

06 Jun 20:26
Compare
Choose a tag to compare

Fixed

  • Missing SSE2 files in source distribution.

v0.2.0

06 Jun 19:35
Compare
Choose a tag to compare

Added

  • Vendored cpu_features library to perform runtime detection of CPU features.
  • SIMD implementation of the similarity statistic code with SSE2 instructions.

Fixed

  • Compilation on platforms without OpenMP by adding an empty omp.h header file.

v0.1.2

04 Jun 16:54
Compare
Choose a tag to compare

Added

  • Python constructor and buffer protocol support for SimilarityMatrix.
  • SimilarityMatrix.similarity method to get the similarity between two characters instead.

Fixed

  • Source compilation failing because of source files in the pytrimal folder.

v0.1.1

03 Jun 12:36
Compare
Choose a tag to compare

Added

  • Type annotations for all classes of the pytrimal extension module.

Fixed

  • Cython header files not being included in source distribution.

v0.1.0

02 Jun 21:26
Compare
Choose a tag to compare

Initial release.