Skip to main content

A framework for Informatics Matters dataset metadata

Project description

A metadata framework package for the Data Tier Data Manager service. The im-data-manager-metadata package is a set of utilities employed by the Informatics Matters Data-Manager service as a metadata framework for molecular datasets.

Data Manager Metadata Classes

Dependencies

  • PyYAML>=5.3

Running the Unit Tests

>>> python -m venv ~/.venv/data-manager-metadata
>>> source ~/.venv/data-manager-metadata/bin/activate
>>> pip install --upgrade pip
>>> pip install -r package-requirements.txt
>>> python -m unittest test.test_metadata
>>> python -m unittest test.test_api

Running the Command Line Interface md-manage.py

The data manager metadata command line interface can be used by applications to add annotations to the Metadata by means of an annotations.json files that can be uploaded.

  • help functions. Note that the annotation_type (lb, fd or se) is required.

>>> python md_manage.py -h
>>> python md_manage.py lb -h
>>> python md_manage.py fd -h
>>> python md_manage.py se -h
  • Creates a label annotation in an annotations.json file placed in test/output. Note that the label is required. Running the command again will create a second annotation in the same file (i.e. a list of two).

>>> python md_manage.py lb test/output/results.sdf 'foo' -lv='bar'
  • Creates a FieldsDescriptorAnnotation in an annotations.json file placed in test/output. If the annotations.json file exists it will add it to the list of annotations in the file.

>>> python md_manage.py fd test/output/results.sdf -fo='squonk2-job'
                        -fp='minimizedAffinity,number,Binding affinity
                        predicted by smina using the vinardo scoring function,true,true'
                        -fd='Run smina docking'
  • Creates a service execution annotation in an annotations.json file placed in test/output.

>>> python md_manage.py se test/output/results.sdf -su=bob -sys='run-smina'
                       -sy='test/input/virtual-screening.yaml'
                       -sp param1=val1 param2=val2 -fo='squonk2-job'
                       -fp='minimizedAffinity,number,Binding affinity predicted,true,true'
                       -fd='Run smina docking'

Contributing

The project uses: -

  • pre-commit to enforce linting of files prior to committing them to the upstream repository

  • Commitizen to enforce a [Convention Commit] commit message format

  • Black as a code formatter

You MUST comply with these choices in order to contribute to the project.

To get started review the pre-commit utility and the conventional commit style and then set-up your local clone by following the Installation and Quick Start sections: -

>>> pip install -r package-requirements.txt
>>> pre-commit install -t commit-msg -t pre-commit

Now the project’s rules will run on every commit, and you can check the current health of your clone with: -

>>> pre-commit run --all-files

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

im_data_manager_metadata-1.0.0-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file im_data_manager_metadata-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for im_data_manager_metadata-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9983179f319f4164b0ec4477d71575861ae93e09bab95ecc9228b82a8eba465a
MD5 9d1ec6e1599ce1b91aa2480fa38adc01
BLAKE2b-256 b4a5eb06a98659aba9d2ed2ed635c7bbfe34ddf7d3f55627729f079d45c819f2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page