Skip to content

Releases: 23andMe/yhaplo

2.1.10

30 Apr 00:14
7c5c928
Compare
Choose a tag to compare

The --haplogroup_query option introduced in 2.1.9 now lists SNPs associated with the queried haplogroup.

For details, see CHANGELOG.md, 2.1.9...2.1.10.

2.1.9

19 Mar 23:57
e38066f
Compare
Choose a tag to compare

This release:

  • Adds a --haplogroup_query option
  • Fixes Node.hg_snp drift of SNP-less intermediate branches upon repeated Tree instantiation

For details, see CHANGELOG.md or the full diff: 2.1.7...2.1.9.

2.1.7

23 Feb 23:41
9aa74a2
Compare
Choose a tag to compare

This release adds a SNP.info property and calls it from Tree.query_snp_path.

For details, see CHANGELOG.md or the full diff: 2.1.6...2.1.7.

2.1.6

13 Feb 02:24
62e60bb
Compare
Choose a tag to compare

This release adds Python 3.12 support, adds __repr__ methods, and unrotates Newick representation, among other minor changes.

For details, see CHANGELOG.md or the full diff: 2.1.4...2.1.6.

2.1.4

31 Jan 01:35
Compare
Choose a tag to compare

This release adds various tree utilities.

For details see CHANGELOG.md or the full diff: 2.1.0...2.1.4.

2.1.0

18 Jan 18:24
6525b21
Compare
Choose a tag to compare

This release improves haplogroup calling by identifying and correcting various errors in the ISOGG variant metadata.

Full Changelog: 2.0.2...2.1.0

2.0.2

15 Sep 20:42
49e0886
Compare
Choose a tag to compare

This is a major clean-up and refactoring release. Core logic has not changed, and output should be equivalent to prior versions. The key changes from an end-user perspective are BCF support, a cleaner API, and faster processing of most input types. See below for a fuller listing of public-facing updates.

The next release will correct ISOGG polarization errors for a few dozen SNPs.

Added

  • BCF support
  • Automated tests
  • Optional dependencies
  • Sample subclasses: TextSample, VCFSample
  • CHANGELOG.md

Changed

  • Lint code
  • Update pre-commit hooks
  • Update Makefile and configuration files
  • Refactor for PEP-8 compliance (snake case, etc.)
  • Update directory structure
  • Modernize packaging and infer version dynamically
  • Namespace command-line entry points: yhaplo, yhaplo_convert_to_genos, yhaplo_plot_tree
  • Replace static methods
  • Clean up logging and use file handlers
  • Use f-strings
  • Reformat docstrings
  • Add type annotations
  • Use importlib.resources to load metadata files
  • Move example input from package to tests/fixtures/
  • Update README.md and yhaplo_manual.pdf
  • Speed up sample-major file processing
  • Use Pysam to process VCF/BCF input

Removed

  • Support for Python 2 and Python 3.8