Recent Releases of BTE
BTE - Haplotype Bugfix
Contains a bugfix leading to incorrect haplotype prediction due to a mishandled copy.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome 9 months ago
BTE - Re-Release to Trigger Archival
After integration with Zenodo's automated archival service, a new release is required to trigger the initial synchronization.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 3 years ago
BTE - New Features and Function Renaming
This release includes a few minor changes:
- The function writenewick now writes to a file. The original functionality is available as getnewick.
- Added a new function to set the branch length of an already defined node to an arbitrary value.
- Added a new function to get the last common ancestor (LCA) of 2+ node IDs.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 3 years ago
BTE - Improved Annotations and Mutation Information
This release includes improved functionality around annotations and mutation information.
- Annotations can now be get/set in a nodeid:[ann1,ann2] format compatible with internal data structures with dumpnodeannotations() and applynodeannotations(). A dictionary in ann:nodeid format can be created with getannotations(). This addresses https://github.com/jmcbroome/BTE/issues/15. Deprecated functions dumpannotations() and apply_annotations() are replaced.
- The user can now get a dictionary with mutational attribute information for each mutation of a node with getmutationinformation(). This includes otherwise inaccessible data, such as chromosome and the reference nucleotide of the position.
Additionally, this release fixes bugs, updates the documentation site, and expands the testing suite.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome about 3 years ago
BTE - Versioning and bugfixes
Minor tweaks to behavior, handling rare bugs, and change to boost-cpp version in an attempt to make BTE coinstallable with UShER.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome about 3 years ago
BTE - Bugfixes
This patch addresses the following issues:
- Fix JSON writing so that subtrees are correctly extracted instead of writing a global JSON regardless of sample input.
- Fix the AAChange class so that the repr does not attempt to access a deprecated attribute (preventing AAChange objects from being printed).
- Update the error message for null nodes (which can occur either through a failure to find or through attempting to access a null node like the parent of the root)
- Add extra checks for missing files when calling .translate() to prevent segfaulting.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome over 3 years ago
BTE - Peripheral Features
This update includes the following: 1. New functions for computing relative entropy across the tree for sample-level categorical values, as if it was a decision tree trying to predict those categorical labels. 2. Direct support for arbitrary branch length values, allowing BTE to work with mutation-annotated likelihood or timetrees with specific branch length values. 3. Removal of timer on calling functions that may be called many times in an analysis, such as depthfirstexpansion. 4. Updates to handling of annotation labels. 5. Various bugfixes and improved exception handling.
Full Changelog: https://github.com/jmcbroome/BTE/compare/v0.8.1...v0.8.2
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome over 3 years ago
BTE - Documentation and QOL
This release is mostly focused on updates to documentation, including the following:
- Docstrings for functions which return lists of bytes (UTF-8 encoded strings) are corrected
- There is a new check preventing the user from attempting to access the parent of the root node, which could easily lead to segmentation faults
- Most error messaging has been redirected from stdout to stderr, allowing the user to more easily control logging behavior by redirection
- The function "mutationset" has been renamed to "gethaplotype", which more clearly describes its function, along with a general rewriting of its docstring. The old name is still usable, with a deprecation warning, and will be removed in the next major release.
Additionally, there is one new function, dumpannotations(), which returns a dictionary mapping all currently annotated lineages and the nodes they are associated with; this is the inverse operation of the existing applyannotations() function.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Amino Acid Translation
This release includes a function to compute amino acid translations across each node of the tree based on an external reference genome (.fasta) and genome annotation (.gtf).
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Docstrings and Tree Manipulation Functions
This release includes significant changes to documentation, from type hinting to docstrings to a full documentation site, and several new functions allowing tree manipulation and construction by generating new Node objects, mutations, and annotations and moving them around the tree.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - New File Format Support
This release includes code to completely unlock working with VCF files, including writing as well as reading, and both reading and writing of Auspice JSON format files to ease visualization and improve compatibility. Also included are some additional convenience function, such as clade listing. It also renames some functions for clarity.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - v0.5.1-alpha
Bugfixes (making breadth-first functional) and other tweaks.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Releasing the GIL and sample selection functions
This update substantially speeds loading and subtree generation by unlocking Pythons GIL during these processes, allowing TBB multithreading to work. It also exposes some functions for retrieving simple lists of sample names to Python.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Newick-only and sundry
Newick-only mode, several new functions for subtree selection, and improved annotation handling.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - ongoing work getting conda build environment set up
Adding setuptools back to the build yaml
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Build environment adjustments
Attempting to remove build-specific tools and libraries from runtime environment; ongoing work to build consistent version between linux and mac for conda.
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Move to python 3.10 and support conda linux64 binaries
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Change import name and prepare files for Conda
This release includes a significant reorganization of the repository to support release of the package through Anaconda, as well as changing the import name from "mat" to "bte".
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago
BTE - Pre-alpha initial release
First release containing
- Core functionality (loading, saving, subsetting, traversal)
- Limited additional functionality (nucleotide diversity, other statistics)
- Basic tutorial documentation
- Continuous integration of unit testing of core functionality
Scientific Software - Peer-reviewed
- Cython
Published by jmcbroome almost 4 years ago