Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

phenopacket-store-toolkit

Package Overview
Dependencies
Maintainers
2
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install
This package has malicious versions linked to the ongoing "Miasma Mini Shai-Hulud Supply Chain Attack" supply chain attack.

Affected versions:

0.1.7
View campaign page

phenopacket-store-toolkit

Collection of GA4GH Phenopackets

pipPyPI
Version
0.1.7
Weekly downloads
363
Maintainers
2

Phenopacket Store Toolkit

Phenopacket Store Toolkit is a Python package and CLI for managing Phenopacket Store, a collection of GA4GH Phenopacket cohorts that represent individuals with Mendelian diseases.

The toolkit aids the release and Q/C processes, and simplifies access to the Phenopacket Store data from the downstream applications.

Availability

Phenopacket Store Toolkit can be installed from Python Package Index (PyPi):

python3 -m pip install phenopacket-store-toolkit

Examples

Access Phenopacket Store

The toolkit simplifies download and loading the cohort data. The PhenopacketStoreRegistry API caches the release ZIP files locally (in $HOME/.phenopacket-store by default) and simplifies the loading:

from ppktstore.registry import configure_phenopacket_registry

registry = configure_phenopacket_registry()

with registry.open_phenopacket_store(release="0.1.18") as ps:
   phenopackets = list(ps.iter_cohort_phenopackets("SUOX"))

assert len(phenopackets) == 35

The code checks if the release ZIP of Phenopacket Store version 0.1.18 is already available locally, and downloads the release ZIP file if necessary. This is followed by opening the store as ps and loading all phenopackets of the SUOX cohort.

We use Python context manager to ensure proper closing of the ZIP file handle. ps cannot be used outside of the context manager block.

As an alternative to using a specific Phenopacket Store release, the latest release will be used if release argument is omitted.

Make Phenopacket Store release

The release is handled by the Command Line Interface (CLI) of the toolkit.

The release functionality requires additional dependencies, which are installed automatically by adding release profile:

python3 -m pip install phenopacket-store-toolkit[release]

Now, we can Q/C the phenopackets in the notebooks directory. The Q/C uses HPO hierarchy, hence HPO must be provided either as path to a hp.json file via --hpo option or as a release tag via --hpo-release:

python3 -m ppktstore qc --hpo-release v2024-04-26 --notebook-dir notebooks

and we can create the release archive by running:

python3 -m ppktstore package --notebook-dir notebooks --release-tag 0.1.18 --output all_phenopackets

This will find all phenopackets in the notebooks folder, copy them into a top-level directory called 0.1.18, and ZIP the directory into all_phenopackets.zip.

Learn more

Find more info in our detailed documentation:

Keywords

Global Alliance for Genomics and Health

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts