Skip to content

Releases: ielis/hpo-toolkit

0.3.0

01 Sep 19:53
a80fe9c
Compare
Choose a tag to compare

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

Full Changelog: v0.2.0...0.3.0

v0.2.0

12 Jun 17:28
de4d513
Compare
Choose a tag to compare

Breaking changes

  • remove Ratio and SimpleRatio from hpotk.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

12 May 17:32
675479a
Compare
Choose a tag to compare

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 and TermIds in RuleValidator by @ielis in #25

Full Changelog: v0.1.4...v0.1.5

v0.1.4

14 Apr 16:24
12104ff
Compare
Choose a tag to compare

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

10 Mar 15:30
171cdd6
Compare
Choose a tag to compare

Hotfix to export hpotk.validate module.

v0.1.3

08 Mar 21:00
a414a20
Compare
Choose a tag to compare

What's Changed

  • Add support for working with HPO annotations by @ielis in #16

Full Changelog: v0.1.2...v0.1.3

v0.1.2

03 Mar 16:11
c9396d4
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.1.1...v0.1.2

v0.1.1

28 Feb 16:14
ed237c7
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.1.0...v0.1.1