Computable object representation and validation for gene fusions
Project description
FUSOR
FUSOR (FUSion Object Representation) provides modeling and validation tools for representing gene fusions in a flexible, computable structure.
Installation
Package
To install FUSOR:
python3 -m pip install fusor
SeqRepo and UTA
FUSOR relies on data from SeqRepo and the Universal Transcript Archive (UTA), supplied via Cool-Seq-Tool. See the Cool-Seq-Tool installation instructions for specifics on setting up SeqRepo and UTA.
To connect to the UTA database, you can use the default url (postgresql://uta_admin@localhost:5433/uta/uta_20210129
). If you use the default url, you must either set the password using environment variable UTA_PASSWORD
or setting the parameter db_pwd
in the FUSOR
class.
If you do not wish to use the default, you must set the environment variable UTA_DB_URL
which has the format of driver://user:pass@host:port/database/schema
.
Gene Normalizer
FUSOR
also relies on data from the Gene Normalizer, which you must download yourself. See the README for deploying the gene database.
Development
Setup
Clone the repo:
git clone https://github.com/cancervariants/fusor
cd fusor
Create a virtual environment, and activate it:
python3 -m virtualenv venv
source venv/bin/activate
Install test and dev dependencies:
python3 -m pip install -e '.[dev,tests]'
Style
Code style is managed by Ruff and checked prior to commit.
python3 -m ruff format . && python3 -m ruff check --fix .
We use pre-commit to run conformance tests.
This performs checks for:
- Code style
- File endings
- Added large files
- AWS credentials
- Private keys
Before your first commit, run:
pre-commit install
Unit tests
Unit testing is provided via pytest
:
pytest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.