Skip to content

v1.1.0

Latest
Compare
Choose a tag to compare
@jlumpe jlumpe released this 02 Dec 03:23
  • Command line interface:
    • Better error reporting when database file(s) not found
    • Add more details to output of gambit signatures info command
  • Major overhaul of internal Python API and tests (see below)
    • Many fixes to API documentation
  • Increase minimum Python version to 3.9
  • Make compatible with SQLAlchemy 2.0

Internal

  • Changed project structure to src/ layout
  • Build system:
    • Fix issues with package data not being properly included (only affected building distributions archives/wheels)
    • Build with Cython 3
    • Remove build-time dependency on Numpy
  • Removed some unnecessary or outdated modules/code:
    • gambit.util.typing
    • gambit.util.dev
    • gambit.sigs.convert (sparse_to_dense and dese_to_sparse functions moved to gambit.sigs.calc)
    • gambit.db.migrate
  • Moved modules containing test-oriented code out of gambit package and into tests/:
    • gambit.test
    • gambit.sigs.test
    • gambit.results.test
    • gambit.cli.test
  • Remove use of deprecated Python/library features:
    • typing aliases to collection types
  • Other internal API changes:
    • Convert gambit.results subpackage to module
    • Move functions for comparison query result objects to tests/results.py
    • Significant restructuring of classes used to represent query results
    • Removed SequenceFile class, replaced most occurrences with Path / "path-like" (compressed FASTA files are not detected and handled automatically).
  • Tests:
    • Structure as package (add __init__.py files)
    • Simplify test file names (no longer need to be unique due to previous item)
    • Added type annotations throughout
    • Rewrote several test files to remove overly complicated Pytest fixtures
  • Other:
    • Added (hidden) --pretty flag to query subcommand to prettify JSON output
    • Improvements to GitHub CI pipeline
    • HDF5 file format version no