Skip to content

Latest commit

 

History

History
96 lines (65 loc) · 3.13 KB

CHANGELOG.md

File metadata and controls

96 lines (65 loc) · 3.13 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

v0.3.1 - 2024-01-31

nafcodec-py

Fixed

  • build.rs file for nafcodec-py failing to build on missing Cargo.lock.
  • Deployment to AUR using the wrong GitHub Actions environment.

v0.3.0 - 2024-01-31

nafcodec

Changed

  • Update nom to v8.0.

Fixed

  • Encoder::push potentially recording length twice when given both sequence and quality string.
  • SequenceWriter::write not correctly reporting the number of bytes written for a sequence (#3).

nafcodec-py

Changed

  • Update pyo3 to v0.23.
  • Drop compilation of tempfile in nafcodec-py wrapper.
  • Make fields of Record struct copy-on-write.
  • Avoid copying data from Python heap in Encoder.
  • Use maturin instead of setuptools-rust to build the Python wheels.

Fixed

  • Use std::os::raw::c_char to fix Aarch64 build (#2).

v0.2.0 - 2024-04-10

nafcodec

Added

  • Encoder to write a Nucleotide Archive Format file using generic temporary storage.
  • Flag enum to simplify creation and manipulation of Flags objects without u8 arithmetics.
  • Builder types for Encoder and Decoder creation with different configurations.
  • ExactSizeDecoder trait implementation to Decoder.
  • Error variants to return on missing fields and invalid sequence characters.

Changed

  • Use iterators internally inside reader code.
  • Bumped pyo3 dependency to v0.21.1.
  • Bumped zstd dependency to v0.13.1.

Fixed

  • Decoding of record lengths when quality field is requested without sequence.
  • Compilation issue on 32-bit platforms in parser code.

nafcodec-py

Added

  • Support for file-like objects in Decoder.
  • Proper error conversion for seek failures.
  • Decoder.sequence_type property to get the type of sequence being decoded.
  • Constructor for Record objects.
  • Decoder properties to access decoded header data.
  • Decoder.__len__ implementation using number of sequences in archive.
  • Encoder class to support encoding Record objects into an archive.
  • nafcodec.open function to get a decoder or encoder based on literal mode.
  • Context manager protocol implementation to Decoder objects.

Changed

  • Use readinto method of file-like objects given to Decoder if available.

v0.1.1 - 2023-10-08

Added

  • nafcodec-py crate with PyO3 bindings.

v0.1.0 - 2023-10-07

Initial release.