pyobo 0.12.11__tar.gz → 0.12.13__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyobo-0.12.11 → pyobo-0.12.13}/PKG-INFO +39 -24
- {pyobo-0.12.11 → pyobo-0.12.13}/README.md +37 -22
- {pyobo-0.12.11 → pyobo-0.12.13}/pyproject.toml +6 -6
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/xrefs.py +2 -7
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/cli/cli.py +9 -3
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/cli/database.py +63 -22
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/cli/lookup.py +39 -24
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/cli/utils.py +6 -2
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/constants.py +28 -5
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ner/api.py +3 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ner/scispacy_utils.py +2 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/plugins.py +3 -1
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chebi.py +1 -4
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obo/reader.py +3 -3
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/struct_utils.py +2 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/typedef.py +22 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/vocabulary.py +2 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/version.py +1 -1
- {pyobo-0.12.11 → pyobo-0.12.13}/LICENSE +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/.DS_Store +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/__main__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/alts.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/combine.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/edges.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/embedding.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/hierarchy.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/metadata.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/names.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/properties.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/relations.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/species.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/typedefs.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/api/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/cli/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/cli/database_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/getters.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/gilda_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/api.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/relations/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/relations/api.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/relations/data.json +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/relations/data_owl.json +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/relations/data_rdf.json +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/identifier_utils/relations/data_rdfs.json +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/mocks.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ner/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ner/normalizer.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/py.typed +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resource_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/ncbitaxon.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/ncbitaxon.tsv.gz +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/ro.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/ro.tsv +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/so.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/resources/so.tsv +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/README.md +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/agrovoc.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/antibodyregistry.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/bigg/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/bigg/bigg_compartment.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/bigg/bigg_metabolite.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/bigg/bigg_model.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/bigg/bigg_reaction.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/biogrid.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/ccle.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/cgnc.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chembl/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chembl/chembl_cell.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chembl/chembl_compound.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chembl/chembl_mechanism.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chembl/chembl_target.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/chembl/chembl_tissue.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/civic_gene.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/clinicaltrials.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/complexportal.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/conso.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/cpt.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/credit.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/cvx.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/depmap.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/dictybase_gene.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/drugbank/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/drugbank/drugbank.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/drugbank/drugbank_salt.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/drugcentral.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/expasy.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/famplex.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/flybase.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/gard.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/geonames/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/geonames/features.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/geonames/geonames.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/geonames/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/gmt_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/go.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/goldbook.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/gtdb.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/gwascentral/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/gwascentral/gwascentral_phenotype.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/gwascentral/gwascentral_study.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/hgnc/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/hgnc/hgnc.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/hgnc/hgncgenefamily.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/iana_media_type.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/icd/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/icd/icd10.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/icd/icd11.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/icd/icd_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/iconclass.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/intact.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/interpro.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/itis.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/kegg/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/kegg/api.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/kegg/genes.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/kegg/genome.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/kegg/pathway.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mesh.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mgi.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mirbase/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mirbase/mirbase.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mirbase/mirbase_constants.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mirbase/mirbase_family.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/mirbase/mirbase_mature.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/msigdb.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/ncbi/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/ncbi/ncbi_gc.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/ncbi/ncbigene.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/nih_reporter.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/nlm/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/nlm/nlm_catalog.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/nlm/nlm_publisher.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/nlm/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/npass.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/omim_ps.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pathbank.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pfam/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pfam/pfam.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pfam/pfam_clan.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/pharmgkb_chemical.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/pharmgkb_disease.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/pharmgkb_gene.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/pharmgkb_pathway.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/pharmgkb_variant.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pharmgkb/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pid.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pombase.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/pubchem.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/reactome.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/rgd.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/rhea.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/ror.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/selventa/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/selventa/schem.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/selventa/scomp.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/selventa/sdis.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/selventa/sfam.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/sgd.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/signor/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/signor/download.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/signor/signor_complexes.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/slm.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/spdx.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/umls/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/umls/__main__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/umls/get_synonym_types.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/umls/sty.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/umls/synonym_types.tsv +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/umls/umls.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/unimod.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/uniprot/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/uniprot/uniprot.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/uniprot/uniprot_ptm.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/wikipathways.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/sources/zfin.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ssg/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ssg/base.html +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ssg/index.html +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ssg/term.html +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/ssg/typedef.html +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/functional/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/functional/dsl.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/functional/macros.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/functional/obo_to_functional.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/functional/ontology.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/functional/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obo/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obo/reader_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obograph/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obograph/export.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obograph/reader.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/obograph/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/reference.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/struct.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/struct/utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/__init__.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/cache.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/io.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/iter.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/misc.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/ndex_utils.py +0 -0
- {pyobo-0.12.11 → pyobo-0.12.13}/src/pyobo/utils/path.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyobo
|
|
3
|
-
Version: 0.12.
|
|
3
|
+
Version: 0.12.13
|
|
4
4
|
Summary: A python package for handling and generating OBO
|
|
5
5
|
Keywords: snekpack,cookiecutter,ontologies,biomedical ontologies,life sciences,natural sciences,bioinformatics,cheminformatics,Open Biomedical Ontologies,OBO
|
|
6
6
|
Author: Charles Tapley Hoyt
|
|
@@ -55,7 +55,7 @@ Requires-Dist: nih-reporter-downloader>=0.0.1
|
|
|
55
55
|
Requires-Dist: typing-extensions
|
|
56
56
|
Requires-Dist: rdflib
|
|
57
57
|
Requires-Dist: obographs>=0.0.8
|
|
58
|
-
Requires-Dist: sssom-pydantic
|
|
58
|
+
Requires-Dist: sssom-pydantic>=0.1.1
|
|
59
59
|
Requires-Dist: psycopg2-binary ; extra == 'drugcentral'
|
|
60
60
|
Requires-Dist: ssslm[gilda] ; extra == 'gilda'
|
|
61
61
|
Requires-Dist: ssslm[gilda-slim] ; extra == 'gilda-slim'
|
|
@@ -523,20 +523,6 @@ Alternatively, install using pip:
|
|
|
523
523
|
$ python3 -m pip install -e .
|
|
524
524
|
```
|
|
525
525
|
|
|
526
|
-
### Updating Package Boilerplate
|
|
527
|
-
|
|
528
|
-
This project uses `cruft` to keep boilerplate (i.e., configuration, contribution
|
|
529
|
-
guidelines, documentation configuration) up-to-date with the upstream
|
|
530
|
-
cookiecutter package. Install cruft with either `uv tool install cruft` or
|
|
531
|
-
`python3 -m pip install cruft` then run:
|
|
532
|
-
|
|
533
|
-
```console
|
|
534
|
-
$ cruft update
|
|
535
|
-
```
|
|
536
|
-
|
|
537
|
-
More info on Cruft's update command is available
|
|
538
|
-
[here](https://github.com/cruft/cruft?tab=readme-ov-file#updating-a-project).
|
|
539
|
-
|
|
540
526
|
### 🥼 Testing
|
|
541
527
|
|
|
542
528
|
After cloning the repository and installing `tox` with
|
|
@@ -574,8 +560,21 @@ only that Sphinx can build the documentation in an isolated environment (i.e.,
|
|
|
574
560
|
with `tox -e docs-test`) but also that
|
|
575
561
|
[ReadTheDocs can build it too](https://docs.readthedocs.io/en/stable/pull-requests.html).
|
|
576
562
|
|
|
563
|
+
</details>
|
|
564
|
+
|
|
565
|
+
## 🧑💻 For Maintainers
|
|
566
|
+
|
|
567
|
+
<details>
|
|
568
|
+
<summary>See maintainer instructions</summary>
|
|
569
|
+
|
|
570
|
+
### Initial Configuration
|
|
571
|
+
|
|
577
572
|
#### Configuring ReadTheDocs
|
|
578
573
|
|
|
574
|
+
[ReadTheDocs](https://readthedocs.org) is an external documentation hosting
|
|
575
|
+
service that integrates with GitHub's CI/CD. Do the following for each
|
|
576
|
+
repository:
|
|
577
|
+
|
|
579
578
|
1. Log in to ReadTheDocs with your GitHub account to install the integration at
|
|
580
579
|
https://readthedocs.org/accounts/login/?next=/dashboard/
|
|
581
580
|
2. Import your project by navigating to https://readthedocs.org/dashboard/import
|
|
@@ -584,12 +583,10 @@ with `tox -e docs-test`) but also that
|
|
|
584
583
|
(i.e., with spaces and capital letters)
|
|
585
584
|
4. Click next, and you're good to go!
|
|
586
585
|
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
#### Configuring Zenodo
|
|
586
|
+
#### Configuring Archival on Zenodo
|
|
590
587
|
|
|
591
588
|
[Zenodo](https://zenodo.org) is a long-term archival system that assigns a DOI
|
|
592
|
-
to each release of your package.
|
|
589
|
+
to each release of your package. Do the following for each repository:
|
|
593
590
|
|
|
594
591
|
1. Log in to Zenodo via GitHub with this link:
|
|
595
592
|
https://zenodo.org/oauth/login/github/?next=%2F. This brings you to a page
|
|
@@ -609,10 +606,10 @@ the DOI for the release and link to the Zenodo record for it.
|
|
|
609
606
|
|
|
610
607
|
#### Registering with the Python Package Index (PyPI)
|
|
611
608
|
|
|
612
|
-
|
|
609
|
+
The [Python Package Index (PyPI)](https://pypi.org) hosts packages so they can
|
|
610
|
+
be easily installed with `pip`, `uv`, and equivalent tools.
|
|
613
611
|
|
|
614
|
-
1. Register for an account
|
|
615
|
-
[Python Package Index (PyPI)](https://pypi.org/account/register)
|
|
612
|
+
1. Register for an account [here](https://pypi.org/account/register)
|
|
616
613
|
2. Navigate to https://pypi.org/manage/account and make sure you have verified
|
|
617
614
|
your email address. A verification email might not have been sent by default,
|
|
618
615
|
so you might have to click the "options" dropdown next to your address to get
|
|
@@ -623,9 +620,11 @@ You only have to do the following steps once.
|
|
|
623
620
|
2-factor authentication
|
|
624
621
|
4. Issue an API token from https://pypi.org/manage/account/token
|
|
625
622
|
|
|
623
|
+
This only needs to be done once per developer.
|
|
624
|
+
|
|
626
625
|
#### Configuring your machine's connection to PyPI
|
|
627
626
|
|
|
628
|
-
|
|
627
|
+
This needs to be done once per machine.
|
|
629
628
|
|
|
630
629
|
```console
|
|
631
630
|
$ uv tool install keyring
|
|
@@ -635,6 +634,8 @@ $ keyring set https://test.pypi.org/legacy/ __token__
|
|
|
635
634
|
|
|
636
635
|
Note that this deprecates previous workflows using `.pypirc`.
|
|
637
636
|
|
|
637
|
+
### 📦 Making a Release
|
|
638
|
+
|
|
638
639
|
#### Uploading to PyPI
|
|
639
640
|
|
|
640
641
|
After installing the package in development mode and installing `tox` with
|
|
@@ -672,4 +673,18 @@ This script does the following:
|
|
|
672
673
|
|
|
673
674
|
This will trigger Zenodo to assign a DOI to your release as well.
|
|
674
675
|
|
|
676
|
+
### Updating Package Boilerplate
|
|
677
|
+
|
|
678
|
+
This project uses `cruft` to keep boilerplate (i.e., configuration, contribution
|
|
679
|
+
guidelines, documentation configuration) up-to-date with the upstream
|
|
680
|
+
cookiecutter package. Install cruft with either `uv tool install cruft` or
|
|
681
|
+
`python3 -m pip install cruft` then run:
|
|
682
|
+
|
|
683
|
+
```console
|
|
684
|
+
$ cruft update
|
|
685
|
+
```
|
|
686
|
+
|
|
687
|
+
More info on Cruft's update command is available
|
|
688
|
+
[here](https://github.com/cruft/cruft?tab=readme-ov-file#updating-a-project).
|
|
689
|
+
|
|
675
690
|
</details>
|
|
@@ -435,20 +435,6 @@ Alternatively, install using pip:
|
|
|
435
435
|
$ python3 -m pip install -e .
|
|
436
436
|
```
|
|
437
437
|
|
|
438
|
-
### Updating Package Boilerplate
|
|
439
|
-
|
|
440
|
-
This project uses `cruft` to keep boilerplate (i.e., configuration, contribution
|
|
441
|
-
guidelines, documentation configuration) up-to-date with the upstream
|
|
442
|
-
cookiecutter package. Install cruft with either `uv tool install cruft` or
|
|
443
|
-
`python3 -m pip install cruft` then run:
|
|
444
|
-
|
|
445
|
-
```console
|
|
446
|
-
$ cruft update
|
|
447
|
-
```
|
|
448
|
-
|
|
449
|
-
More info on Cruft's update command is available
|
|
450
|
-
[here](https://github.com/cruft/cruft?tab=readme-ov-file#updating-a-project).
|
|
451
|
-
|
|
452
438
|
### 🥼 Testing
|
|
453
439
|
|
|
454
440
|
After cloning the repository and installing `tox` with
|
|
@@ -486,8 +472,21 @@ only that Sphinx can build the documentation in an isolated environment (i.e.,
|
|
|
486
472
|
with `tox -e docs-test`) but also that
|
|
487
473
|
[ReadTheDocs can build it too](https://docs.readthedocs.io/en/stable/pull-requests.html).
|
|
488
474
|
|
|
475
|
+
</details>
|
|
476
|
+
|
|
477
|
+
## 🧑💻 For Maintainers
|
|
478
|
+
|
|
479
|
+
<details>
|
|
480
|
+
<summary>See maintainer instructions</summary>
|
|
481
|
+
|
|
482
|
+
### Initial Configuration
|
|
483
|
+
|
|
489
484
|
#### Configuring ReadTheDocs
|
|
490
485
|
|
|
486
|
+
[ReadTheDocs](https://readthedocs.org) is an external documentation hosting
|
|
487
|
+
service that integrates with GitHub's CI/CD. Do the following for each
|
|
488
|
+
repository:
|
|
489
|
+
|
|
491
490
|
1. Log in to ReadTheDocs with your GitHub account to install the integration at
|
|
492
491
|
https://readthedocs.org/accounts/login/?next=/dashboard/
|
|
493
492
|
2. Import your project by navigating to https://readthedocs.org/dashboard/import
|
|
@@ -496,12 +495,10 @@ with `tox -e docs-test`) but also that
|
|
|
496
495
|
(i.e., with spaces and capital letters)
|
|
497
496
|
4. Click next, and you're good to go!
|
|
498
497
|
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
#### Configuring Zenodo
|
|
498
|
+
#### Configuring Archival on Zenodo
|
|
502
499
|
|
|
503
500
|
[Zenodo](https://zenodo.org) is a long-term archival system that assigns a DOI
|
|
504
|
-
to each release of your package.
|
|
501
|
+
to each release of your package. Do the following for each repository:
|
|
505
502
|
|
|
506
503
|
1. Log in to Zenodo via GitHub with this link:
|
|
507
504
|
https://zenodo.org/oauth/login/github/?next=%2F. This brings you to a page
|
|
@@ -521,10 +518,10 @@ the DOI for the release and link to the Zenodo record for it.
|
|
|
521
518
|
|
|
522
519
|
#### Registering with the Python Package Index (PyPI)
|
|
523
520
|
|
|
524
|
-
|
|
521
|
+
The [Python Package Index (PyPI)](https://pypi.org) hosts packages so they can
|
|
522
|
+
be easily installed with `pip`, `uv`, and equivalent tools.
|
|
525
523
|
|
|
526
|
-
1. Register for an account
|
|
527
|
-
[Python Package Index (PyPI)](https://pypi.org/account/register)
|
|
524
|
+
1. Register for an account [here](https://pypi.org/account/register)
|
|
528
525
|
2. Navigate to https://pypi.org/manage/account and make sure you have verified
|
|
529
526
|
your email address. A verification email might not have been sent by default,
|
|
530
527
|
so you might have to click the "options" dropdown next to your address to get
|
|
@@ -535,9 +532,11 @@ You only have to do the following steps once.
|
|
|
535
532
|
2-factor authentication
|
|
536
533
|
4. Issue an API token from https://pypi.org/manage/account/token
|
|
537
534
|
|
|
535
|
+
This only needs to be done once per developer.
|
|
536
|
+
|
|
538
537
|
#### Configuring your machine's connection to PyPI
|
|
539
538
|
|
|
540
|
-
|
|
539
|
+
This needs to be done once per machine.
|
|
541
540
|
|
|
542
541
|
```console
|
|
543
542
|
$ uv tool install keyring
|
|
@@ -547,6 +546,8 @@ $ keyring set https://test.pypi.org/legacy/ __token__
|
|
|
547
546
|
|
|
548
547
|
Note that this deprecates previous workflows using `.pypirc`.
|
|
549
548
|
|
|
549
|
+
### 📦 Making a Release
|
|
550
|
+
|
|
550
551
|
#### Uploading to PyPI
|
|
551
552
|
|
|
552
553
|
After installing the package in development mode and installing `tox` with
|
|
@@ -584,4 +585,18 @@ This script does the following:
|
|
|
584
585
|
|
|
585
586
|
This will trigger Zenodo to assign a DOI to your release as well.
|
|
586
587
|
|
|
588
|
+
### Updating Package Boilerplate
|
|
589
|
+
|
|
590
|
+
This project uses `cruft` to keep boilerplate (i.e., configuration, contribution
|
|
591
|
+
guidelines, documentation configuration) up-to-date with the upstream
|
|
592
|
+
cookiecutter package. Install cruft with either `uv tool install cruft` or
|
|
593
|
+
`python3 -m pip install cruft` then run:
|
|
594
|
+
|
|
595
|
+
```console
|
|
596
|
+
$ cruft update
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
More info on Cruft's update command is available
|
|
600
|
+
[here](https://github.com/cruft/cruft?tab=readme-ov-file#updating-a-project).
|
|
601
|
+
|
|
587
602
|
</details>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["uv_build>=0.
|
|
2
|
+
requires = ["uv_build>=0.9.6,<1.0"]
|
|
3
3
|
build-backend = "uv_build"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "pyobo"
|
|
7
|
-
version = "0.12.
|
|
7
|
+
version = "0.12.13"
|
|
8
8
|
description = "A python package for handling and generating OBO"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [
|
|
@@ -89,7 +89,7 @@ dependencies = [
|
|
|
89
89
|
"typing_extensions",
|
|
90
90
|
"rdflib",
|
|
91
91
|
"obographs>=0.0.8",
|
|
92
|
-
"sssom_pydantic",
|
|
92
|
+
"sssom_pydantic>=0.1.1",
|
|
93
93
|
]
|
|
94
94
|
|
|
95
95
|
# see https://peps.python.org/pep-0735/ and https://docs.astral.sh/uv/concepts/dependencies/#dependency-groups
|
|
@@ -141,8 +141,8 @@ bump = [
|
|
|
141
141
|
"bump-my-version",
|
|
142
142
|
]
|
|
143
143
|
build = [
|
|
144
|
-
"uv",
|
|
145
|
-
"uv-build",
|
|
144
|
+
"uv>=0.9.6",
|
|
145
|
+
"uv-build>=0.9.6",
|
|
146
146
|
]
|
|
147
147
|
release = [
|
|
148
148
|
{ include-group = "build" },
|
|
@@ -315,7 +315,7 @@ known-first-party = [
|
|
|
315
315
|
docstring-code-format = true
|
|
316
316
|
|
|
317
317
|
[tool.bumpversion]
|
|
318
|
-
current_version = "0.12.
|
|
318
|
+
current_version = "0.12.13"
|
|
319
319
|
parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)(?:-(?P<release>[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*))?(?:\\+(?P<build>[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*))?"
|
|
320
320
|
serialize = [
|
|
321
321
|
"{major}.{minor}.{patch}-{release}+{build}",
|
|
@@ -9,7 +9,7 @@ import curies
|
|
|
9
9
|
import pandas as pd
|
|
10
10
|
from curies import ReferenceTuple
|
|
11
11
|
from sssom_pydantic import SemanticMapping
|
|
12
|
-
from sssom_pydantic.io import
|
|
12
|
+
from sssom_pydantic.io import row_to_semantic_mapping
|
|
13
13
|
from typing_extensions import Unpack
|
|
14
14
|
|
|
15
15
|
from .utils import get_version_from_kwargs
|
|
@@ -124,12 +124,7 @@ def get_semantic_mappings(
|
|
|
124
124
|
)
|
|
125
125
|
if converter is None:
|
|
126
126
|
converter = get_converter()
|
|
127
|
-
|
|
128
|
-
for _, row in df.iterrows():
|
|
129
|
-
record = parse_row(row.to_dict())
|
|
130
|
-
mapping = parse_record(record, converter=converter)
|
|
131
|
-
rv.append(mapping)
|
|
132
|
-
return rv
|
|
127
|
+
return [row_to_semantic_mapping(row, converter=converter) for _, row in df.iterrows()]
|
|
133
128
|
|
|
134
129
|
|
|
135
130
|
def get_mappings_df(
|
|
@@ -6,10 +6,7 @@ from collections.abc import Iterable
|
|
|
6
6
|
from functools import lru_cache
|
|
7
7
|
from operator import itemgetter
|
|
8
8
|
|
|
9
|
-
import bioregistry
|
|
10
9
|
import click
|
|
11
|
-
import humanize
|
|
12
|
-
from tabulate import tabulate
|
|
13
10
|
|
|
14
11
|
from .database import main as database_main
|
|
15
12
|
from .lookup import lookup
|
|
@@ -59,6 +56,9 @@ def clean(remove_obo: bool):
|
|
|
59
56
|
@main.command()
|
|
60
57
|
def ls():
|
|
61
58
|
"""List how big all of the OBO files are."""
|
|
59
|
+
import humanize
|
|
60
|
+
from tabulate import tabulate
|
|
61
|
+
|
|
62
62
|
entries = [(prefix, os.path.getsize(path)) for prefix, path in _iter_cached_obo()]
|
|
63
63
|
entries = [
|
|
64
64
|
(prefix, humanize.naturalsize(size), "✅" if not has_nomenclature_plugin(prefix) else "❌")
|
|
@@ -69,6 +69,8 @@ def ls():
|
|
|
69
69
|
|
|
70
70
|
def _iter_cached_obo() -> Iterable[tuple[str, str]]:
|
|
71
71
|
"""Iterate over cached OBO paths."""
|
|
72
|
+
import bioregistry
|
|
73
|
+
|
|
72
74
|
for prefix in os.listdir(RAW_DIRECTORY):
|
|
73
75
|
if prefix in GLOBAL_SKIP or _has_no_download(prefix) or bioregistry.is_deprecated(prefix):
|
|
74
76
|
continue
|
|
@@ -83,6 +85,8 @@ def _iter_cached_obo() -> Iterable[tuple[str, str]]:
|
|
|
83
85
|
|
|
84
86
|
def _has_no_download(prefix: str) -> bool:
|
|
85
87
|
"""Return if the prefix is not available."""
|
|
88
|
+
import bioregistry
|
|
89
|
+
|
|
86
90
|
prefix_norm = bioregistry.normalize_prefix(prefix)
|
|
87
91
|
return prefix_norm is not None and prefix_norm in _no_download()
|
|
88
92
|
|
|
@@ -90,6 +94,8 @@ def _has_no_download(prefix: str) -> bool:
|
|
|
90
94
|
@lru_cache(maxsize=1)
|
|
91
95
|
def _no_download() -> set[str]:
|
|
92
96
|
"""Get the list of prefixes not available as OBO."""
|
|
97
|
+
import bioregistry
|
|
98
|
+
|
|
93
99
|
return {resource.prefix for resource in bioregistry.resources() if not resource.has_download()}
|
|
94
100
|
|
|
95
101
|
|
|
@@ -5,29 +5,11 @@ import warnings
|
|
|
5
5
|
from collections.abc import Iterable
|
|
6
6
|
from pathlib import Path
|
|
7
7
|
|
|
8
|
-
import bioregistry
|
|
9
|
-
import bioversions
|
|
10
8
|
import click
|
|
11
9
|
from more_click import verbose_option
|
|
12
10
|
from tqdm.contrib.logging import logging_redirect_tqdm
|
|
13
11
|
from typing_extensions import Unpack
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
from .database_utils import (
|
|
17
|
-
IterHelperHelperDict,
|
|
18
|
-
_iter_alts,
|
|
19
|
-
_iter_definitions,
|
|
20
|
-
_iter_edges,
|
|
21
|
-
_iter_mappings,
|
|
22
|
-
_iter_names,
|
|
23
|
-
_iter_properties,
|
|
24
|
-
_iter_relations,
|
|
25
|
-
_iter_species,
|
|
26
|
-
_iter_synonyms,
|
|
27
|
-
_iter_typedefs,
|
|
28
|
-
_iter_xrefs,
|
|
29
|
-
iter_helper_helper,
|
|
30
|
-
)
|
|
12
|
+
|
|
31
13
|
from .utils import (
|
|
32
14
|
Clickable,
|
|
33
15
|
directory_option,
|
|
@@ -48,7 +30,6 @@ from ..constants import (
|
|
|
48
30
|
TYPEDEFS_RECORD,
|
|
49
31
|
DatabaseKwargs,
|
|
50
32
|
)
|
|
51
|
-
from ..getters import db_output_helper, get_ontology
|
|
52
33
|
|
|
53
34
|
__all__ = [
|
|
54
35
|
"main",
|
|
@@ -107,6 +88,8 @@ def build(ctx: click.Context, eager_versions: bool, **kwargs: Unpack[DatabaseKwa
|
|
|
107
88
|
# sys.exit(1)
|
|
108
89
|
|
|
109
90
|
if eager_versions:
|
|
91
|
+
import bioversions
|
|
92
|
+
|
|
110
93
|
bioversions.get_rows(use_tqdm=True)
|
|
111
94
|
|
|
112
95
|
with logging_redirect_tqdm():
|
|
@@ -143,6 +126,9 @@ def build(ctx: click.Context, eager_versions: bool, **kwargs: Unpack[DatabaseKwa
|
|
|
143
126
|
@database_annotate
|
|
144
127
|
def cache(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
145
128
|
"""Cache all things."""
|
|
129
|
+
from .database_utils import iter_helper_helper
|
|
130
|
+
from ..getters import get_ontology
|
|
131
|
+
|
|
146
132
|
if zenodo:
|
|
147
133
|
click.echo("no zenodo for caching")
|
|
148
134
|
|
|
@@ -156,9 +142,13 @@ def cache(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> No
|
|
|
156
142
|
@database_annotate
|
|
157
143
|
def metadata(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
158
144
|
"""Make the prefix-metadata dump."""
|
|
145
|
+
import bioregistry
|
|
146
|
+
|
|
147
|
+
from .database_utils import IterHelperHelperDict, iter_helper_helper
|
|
159
148
|
from ..api import get_metadata
|
|
149
|
+
from ..getters import db_output_helper
|
|
160
150
|
|
|
161
|
-
def
|
|
151
|
+
def _iter_metadata_internal(
|
|
162
152
|
**kwargs: Unpack[IterHelperHelperDict],
|
|
163
153
|
) -> Iterable[tuple[str, str, str, bool]]:
|
|
164
154
|
for prefix, data in iter_helper_helper(get_metadata, **kwargs):
|
|
@@ -166,7 +156,7 @@ def metadata(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
166
156
|
logger.debug(f"[{prefix}] using version {version}")
|
|
167
157
|
yield prefix, version, data["date"], bioregistry.is_deprecated(prefix)
|
|
168
158
|
|
|
169
|
-
it =
|
|
159
|
+
it = _iter_metadata_internal(**kwargs)
|
|
170
160
|
db_output_helper(
|
|
171
161
|
it,
|
|
172
162
|
"metadata",
|
|
@@ -181,6 +171,9 @@ def metadata(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
181
171
|
@database_annotate
|
|
182
172
|
def names(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
183
173
|
"""Make the prefix-identifier-name dump."""
|
|
174
|
+
from .database_utils import _iter_names
|
|
175
|
+
from ..getters import db_output_helper
|
|
176
|
+
|
|
184
177
|
it = _iter_names(**kwargs)
|
|
185
178
|
with logging_redirect_tqdm():
|
|
186
179
|
paths = db_output_helper(
|
|
@@ -190,6 +183,8 @@ def names(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> No
|
|
|
190
183
|
directory=directory,
|
|
191
184
|
)
|
|
192
185
|
if zenodo:
|
|
186
|
+
from zenodo_client import update_zenodo
|
|
187
|
+
|
|
193
188
|
# see https://zenodo.org/record/4020486
|
|
194
189
|
update_zenodo(OOH_NA_NA_RECORD, paths)
|
|
195
190
|
|
|
@@ -197,6 +192,9 @@ def names(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> No
|
|
|
197
192
|
@database_annotate
|
|
198
193
|
def species(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
199
194
|
"""Make the prefix-identifier-species dump."""
|
|
195
|
+
from .database_utils import _iter_species
|
|
196
|
+
from ..getters import db_output_helper
|
|
197
|
+
|
|
200
198
|
with logging_redirect_tqdm():
|
|
201
199
|
it = _iter_species(**kwargs)
|
|
202
200
|
paths = db_output_helper(
|
|
@@ -206,6 +204,8 @@ def species(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
206
204
|
directory=directory,
|
|
207
205
|
)
|
|
208
206
|
if zenodo:
|
|
207
|
+
from zenodo_client import update_zenodo
|
|
208
|
+
|
|
209
209
|
# see https://zenodo.org/record/5334738
|
|
210
210
|
update_zenodo(SPECIES_RECORD, paths)
|
|
211
211
|
|
|
@@ -221,6 +221,9 @@ def _extend_skip_set(kwargs: DatabaseKwargs, skip_set: set[str]) -> None:
|
|
|
221
221
|
@database_annotate
|
|
222
222
|
def definitions(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
223
223
|
"""Make the prefix-identifier-definition dump."""
|
|
224
|
+
from .database_utils import _iter_definitions
|
|
225
|
+
from ..getters import db_output_helper
|
|
226
|
+
|
|
224
227
|
with logging_redirect_tqdm():
|
|
225
228
|
_extend_skip_set(kwargs, {"kegg.pathway", "kegg.genes", "kegg.genome", "umls"})
|
|
226
229
|
it = _iter_definitions(**kwargs)
|
|
@@ -231,6 +234,8 @@ def definitions(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs])
|
|
|
231
234
|
directory=directory,
|
|
232
235
|
)
|
|
233
236
|
if zenodo:
|
|
237
|
+
from zenodo_client import update_zenodo
|
|
238
|
+
|
|
234
239
|
# see https://zenodo.org/record/4637061
|
|
235
240
|
update_zenodo(DEFINITIONS_RECORD, paths)
|
|
236
241
|
|
|
@@ -238,6 +243,9 @@ def definitions(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs])
|
|
|
238
243
|
@database_annotate
|
|
239
244
|
def typedefs(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
240
245
|
"""Make the typedef prefix-identifier-name dump."""
|
|
246
|
+
from .database_utils import _iter_typedefs
|
|
247
|
+
from ..getters import db_output_helper
|
|
248
|
+
|
|
241
249
|
with logging_redirect_tqdm():
|
|
242
250
|
_extend_skip_set(kwargs, {"ncbigene", "kegg.pathway", "kegg.genes", "kegg.genome"})
|
|
243
251
|
it = _iter_typedefs(**kwargs)
|
|
@@ -249,6 +257,8 @@ def typedefs(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
249
257
|
directory=directory,
|
|
250
258
|
)
|
|
251
259
|
if zenodo:
|
|
260
|
+
from zenodo_client import update_zenodo
|
|
261
|
+
|
|
252
262
|
# see https://zenodo.org/record/4644013
|
|
253
263
|
update_zenodo(TYPEDEFS_RECORD, paths)
|
|
254
264
|
|
|
@@ -256,6 +266,9 @@ def typedefs(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
256
266
|
@database_annotate
|
|
257
267
|
def alts(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
258
268
|
"""Make the prefix-alt-id dump."""
|
|
269
|
+
from .database_utils import _iter_alts
|
|
270
|
+
from ..getters import db_output_helper
|
|
271
|
+
|
|
259
272
|
with logging_redirect_tqdm():
|
|
260
273
|
_extend_skip_set(kwargs, {"kegg.pathway", "kegg.genes", "kegg.genome", "umls"})
|
|
261
274
|
it = _iter_alts(**kwargs)
|
|
@@ -266,6 +279,8 @@ def alts(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> Non
|
|
|
266
279
|
directory=directory,
|
|
267
280
|
)
|
|
268
281
|
if zenodo:
|
|
282
|
+
from zenodo_client import update_zenodo
|
|
283
|
+
|
|
269
284
|
# see https://zenodo.org/record/4021476
|
|
270
285
|
update_zenodo(ALTS_DATA_RECORD, paths)
|
|
271
286
|
|
|
@@ -273,6 +288,9 @@ def alts(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> Non
|
|
|
273
288
|
@database_annotate
|
|
274
289
|
def synonyms(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
275
290
|
"""Make the prefix-identifier-synonym dump."""
|
|
291
|
+
from .database_utils import _iter_synonyms
|
|
292
|
+
from ..getters import db_output_helper
|
|
293
|
+
|
|
276
294
|
with logging_redirect_tqdm():
|
|
277
295
|
_extend_skip_set(kwargs, {"kegg.pathway", "kegg.genes", "kegg.genome"})
|
|
278
296
|
it = _iter_synonyms(**kwargs)
|
|
@@ -283,6 +301,8 @@ def synonyms(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
283
301
|
directory=directory,
|
|
284
302
|
)
|
|
285
303
|
if zenodo:
|
|
304
|
+
from zenodo_client import update_zenodo
|
|
305
|
+
|
|
286
306
|
# see https://zenodo.org/record/4021482
|
|
287
307
|
update_zenodo(SYNONYMS_RECORD, paths)
|
|
288
308
|
|
|
@@ -290,6 +310,9 @@ def synonyms(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) ->
|
|
|
290
310
|
@database_annotate
|
|
291
311
|
def relations(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
292
312
|
"""Make the relation dump."""
|
|
313
|
+
from .database_utils import _iter_relations
|
|
314
|
+
from ..getters import db_output_helper
|
|
315
|
+
|
|
293
316
|
with logging_redirect_tqdm():
|
|
294
317
|
it = _iter_relations(**kwargs)
|
|
295
318
|
paths = db_output_helper(
|
|
@@ -307,6 +330,8 @@ def relations(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -
|
|
|
307
330
|
directory=directory,
|
|
308
331
|
)
|
|
309
332
|
if zenodo:
|
|
333
|
+
from zenodo_client import update_zenodo
|
|
334
|
+
|
|
310
335
|
# see https://zenodo.org/record/4625167
|
|
311
336
|
update_zenodo(RELATIONS_RECORD, paths)
|
|
312
337
|
|
|
@@ -314,6 +339,9 @@ def relations(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -
|
|
|
314
339
|
@database_annotate
|
|
315
340
|
def edges(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
316
341
|
"""Make the edges dump."""
|
|
342
|
+
from .database_utils import _iter_edges
|
|
343
|
+
from ..getters import db_output_helper
|
|
344
|
+
|
|
317
345
|
with logging_redirect_tqdm():
|
|
318
346
|
it = _iter_edges(**kwargs)
|
|
319
347
|
db_output_helper(
|
|
@@ -334,6 +362,9 @@ def edges(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> No
|
|
|
334
362
|
@database_annotate
|
|
335
363
|
def properties(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
336
364
|
"""Make the properties dump."""
|
|
365
|
+
from .database_utils import _iter_properties
|
|
366
|
+
from ..getters import db_output_helper
|
|
367
|
+
|
|
337
368
|
with logging_redirect_tqdm():
|
|
338
369
|
it = _iter_properties(**kwargs)
|
|
339
370
|
paths = db_output_helper(
|
|
@@ -344,6 +375,8 @@ def properties(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs])
|
|
|
344
375
|
directory=directory,
|
|
345
376
|
)
|
|
346
377
|
if zenodo:
|
|
378
|
+
from zenodo_client import update_zenodo
|
|
379
|
+
|
|
347
380
|
# see https://zenodo.org/record/4625172
|
|
348
381
|
update_zenodo(PROPERTIES_RECORD, paths)
|
|
349
382
|
|
|
@@ -351,6 +384,9 @@ def properties(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs])
|
|
|
351
384
|
@database_annotate
|
|
352
385
|
def xrefs(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
353
386
|
"""Make the prefix-identifier-xref dump."""
|
|
387
|
+
from .database_utils import _iter_xrefs
|
|
388
|
+
from ..getters import db_output_helper
|
|
389
|
+
|
|
354
390
|
warnings.warn("Use pyobo.database.mappings instead", DeprecationWarning, stacklevel=2)
|
|
355
391
|
with logging_redirect_tqdm():
|
|
356
392
|
it = _iter_xrefs(**kwargs)
|
|
@@ -362,6 +398,8 @@ def xrefs(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> No
|
|
|
362
398
|
directory=directory,
|
|
363
399
|
)
|
|
364
400
|
if zenodo:
|
|
401
|
+
from zenodo_client import update_zenodo
|
|
402
|
+
|
|
365
403
|
# see https://zenodo.org/record/4021477
|
|
366
404
|
update_zenodo(JAVERT_RECORD, paths)
|
|
367
405
|
|
|
@@ -369,6 +407,9 @@ def xrefs(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> No
|
|
|
369
407
|
@database_annotate
|
|
370
408
|
def mappings(zenodo: bool, directory: Path, **kwargs: Unpack[DatabaseKwargs]) -> None:
|
|
371
409
|
"""Make the SSSOM dump."""
|
|
410
|
+
from .database_utils import _iter_mappings
|
|
411
|
+
from ..getters import db_output_helper
|
|
412
|
+
|
|
372
413
|
columns = [
|
|
373
414
|
"subject_id",
|
|
374
415
|
"object_id",
|