Releases: ielis/hpo-toolkit
0.3.0
v0.3.0
introduces one breaking change (below), adds the user guide and API reference, and a few more enhancements.
Breaking change
The methods for getting ancestors, descendants, parents, and children of a term provide iterators and not iterables, despite the typing annotation. This may lead to a subtle bug if the iterator was used, e.g. within a nested loop:
hpo: MinimalOntology = ...
parents = hpo.graph.get_parents('HP:0001250')
for _ in range(5):
for parent in parents:
print(parent)
The loop above would, in fact, print only during the first iteration of the outer loop, and the iterator would be "consumed" for the remaining 4 iterations.
The v0.3.0
version merely corrects the typing annotation, the traversal methods continue to return iterators.
What's Changed
- Setup the documentation in #36
- Add type checks to terms, and ontology in #37
- Require
numpy~=1.23.0
to support creating object arrays from iterables by @ldingemans in #35 - Validate input parameters, improve documentation in #38
- Add
TermIdSorting
in #39 - Fix
OntologyGraph
type annotations - breaking change in #41
New Contributors
- @ldingemans made their first contribution in #35
Full Changelog: v0.2.0...0.3.0
v0.2.0
Breaking changes
- remove
Ratio
andSimpleRatio
fromhpotk.annotations
Minor (non-breaking) changes
- we can test if an ontology node is a leaf on
OntologyGraph
by @ielis in #27 - Improve IC calculation and graph traversals by @ielis in #28
- Add methods for testing ancestor/descendant relationships to
OntologyGraph
by @ielis in #29 - Graph methods can work with
Identified
by @ielis in #30 - Implement observation status for annotations by @ielis in #31
- Graph traversal methods fail if the query node does not exist in the graph by @ielis in #32
- We cache the hash of the
TermId
by default to increase performance of hash-dependent operations by @ielis in #33
Full Changelog: v0.1.5...v0.2.0
v0.1.5
The highlights of v0.1.5
:
- faster HPO loading from obographs JSON file (was 40s, now 3s)
- faster graph traversal, e.g. for finding ancestors or descendants of a term
- new functionality for calculating information content of ontology terms
- improvement of the test coverage, enhancement of the package metadata
What's Changed
- Shorten ontology loading, calculate IC of terms, optimize graph traversal, expose common model elements by @ielis in #22
- Update classifiers to indicate the supported Python versions by @ielis in #24
- Accept
Identified
andTermId
s inRuleValidator
by @ielis in #25
Full Changelog: v0.1.4...v0.1.5
v0.1.4
The highlights of the v0.1.4
release include:
- the
Term
now includes synonyms and cross-references to external vocabularies and data sources - the HPO annoatation parser can handle both the older and the updated HPO annotation file format
What's Changed
- Export
validate
module. by @ielis in #18 - Add synonyms and cross-references to
Term
by @ielis in #20 - Add support for the novel HPO annotation format by @ielis in #20
Full Changelog: v0.1.3...v0.1.4
v0.1.3.post0
Hotfix to export hpotk.validate
module.