ga4gh / ga4gh/vrs-python

Provide maturity annotation for classes and fields

Open
#466 0 comments 0 reactions 1 assignee Claimed by @korikuzma View on GitHub
enhancement
Dominant language
Python
Stars
62
Forks
42
Avg merge
1h 2m
Merged PRs (30d)
1

Description

GKS schemas often include [maturity model](https://vrs.ga4gh.org/en/latest/appendices/maturity_model.html) annotations on objects and properties to indicate some expectation of model stability. It'd be nice to access this somehow within VRS-Python.

- Most naive solution: put it in the docstring. Not machine-readable, but simple to implement.
- Maybe the next simplest solution: include it as part of the `model_json_schema()` output. This is computationally accessible, albeit somewhat indirectly so. It would most directly match the schema itself.
- Implement as some kind of private or dunder field on each schema class, e.g. `Allele.__maturity__ = `. Not sure of what the equivalent way to get property maturity would be, though.

Possible use cases/helper functions to implement
- A function that takes a `Ga4ghIdentifiableObject` and tells you which components or properties are most immature, i.e. are most liable to change in structure in future releases
- A function that takes a `Ga4ghIdentifiableObject` and tells you whether it contains any components or properties that are below a particular maturity model threshold and/or are deprecated

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.