Format based on Keep a Changelog
2.1.13 - 2024-11-07
- Removed NumPy pin and indicated Python 3.13 support
2.1.11 - 2024-05-03
Tree.generate_tree_table
method
2.1.10 - 2024-04-25
- List associated SNPs in
--haplogroup_query
output
2.1.9 - 2024-03-19
Node.hg_snp
values of SNP-less intermediate branches now stable upon repeatedTree
instantiation
2.1.8 - 2024-03-12
--haplogroup_query
option
2.1.7 - 2024-02-23
SNP.info
property, called fromTree.query_snp_path
2.1.6 - 2024-02-07
- Python 3.12 support
__str__
and__repr__
methods- SNP-based haplogroup in MRCA output
- Newick representation is now unrotated by default
setuptools_scm
-generated version file
- When generating Newick representation, recalculate maximum depth to support pruned trees
2.1.4 - 2024-01-29
- Support for querying multiple SNPs from the command line
- Support for generating aligned-tip Newick representations of subtrees
- Support for node lookup by SNP-based haplogroup label
Node
methods:Node.iter_depth_first
Node.iter_breath_first
Node.remove_children
tree.get_bounded_subtree
function
Tree
constructor'sConfig
parameter is now optionalNode.is_root
andNode.is_leaf
are now properties
- Output format of
--snp_query
option
2.1.0 - 2024-01-12
This release improves haplogroup calling by identifying and correcting various errors in the ISOGG variant metadata and, internally, by pruning poorly performing v5 SNPs.
- Identify and correct name, position, and mutation errors in ISOGG variant metadata
2.0.2 - 2023-09-15
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.
- BCF support
- Automated tests
- Optional dependencies
Sample
subclasses:TextSample
,VCFSample
CHANGELOG.md
- 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
,README.23andMe.md
, andyhaplo_manual.pdf
- Speed up sample-major file processing
- Use Pysam to process VCF/BCF input
- Support for Python 2 and Python 3.8