Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Common Operations On Lots-of Sequences Tool

The cool-seq-tool provides:

  • Transcript alignment data from the UTA database
  • Fast access to sequence data using SeqRepo
  • Liftover between assemblies (GRCh38 <--> GRCh37) from PyLiftover
  • Lifting over to preferred MANE compatible transcript. See here for more information.

Installation

pip

pip install cool-seq-tool[dev,tests]

Development

Clone the repo:

git clone https://github.com/GenomicMedLab/cool-seq-tool
cd cool_seq_tool

Install Pipenv if necessary.

Install backend dependencies and enter Pipenv environment:

pipenv shell
pipenv update
pipenv install --dev

UTA Database Installation

cool-seq-tool uses intalls local UTA database. For other ways to install, visit biocommons.uta.

Local Installation

The following commands will likely need modification appropriate for the installation environment.

  1. Install PostgreSQL

  2. Create user and database.

    $ createuser -U postgres uta_admin
    $ createuser -U postgres anonymous
    $ createdb -U postgres -O uta_admin uta
    
  3. To install locally, from the cool_seq_tool/data directory:

export UTA_VERSION=uta_20210129.pgd.gz
curl -O http://dl.biocommons.org/uta/$UTA_VERSION
gzip -cdq ${UTA_VERSION} | grep -v "^REFRESH MATERIALIZED VIEW" | psql -h localhost -U uta_admin --echo-errors --single-transaction -v ON_ERROR_STOP=1 -d uta -p 5433
UTA Installation Issues

If you have trouble installing UTA, you can visit these two READMEs.

Connecting to the database

To connect to the UTA database, you can use the default url (postgresql://uta_admin:uta@localhost:5433/uta/uta_20210129).

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:password@host:port/database/schema.

Data Downloads

SeqRepo

cool-seq-tool relies on seqrepo, which you must download yourself.

Use the SEQREPO_ROOT_DIR environment variable to set the path of an already existing SeqRepo directory. The default is /usr/local/share/seqrepo/latest.

From the root directory:

pip install seqrepo
sudo mkdir /usr/local/share/seqrepo
sudo chown $USER /usr/local/share/seqrepo
seqrepo pull -i 2021-01-29  # Replace with latest version using `seqrepo list-remote-instances` if outdated

If you get an error similar to the one below:

PermissionError: [Error 13] Permission denied: '/usr/local/share/seqrepo/2021-01-29._fkuefgd' -> '/usr/local/share/seqrepo/2021-01-29'

You will want to do the following:
(Might not be ._fkuefgd, so replace with your error message path)

sudo mv /usr/local/share/seqrepo/2021-01-29._fkuefgd /usr/local/share/seqrepo/2021-01-29
exit

LRG_RefSeqGene

cool-seq-tool fetches the latest version of LRG_RefSeqGene if the environment variable LRG_REFSEQGENE_PATH is not set. When LRG_REFSEQGENE_PATH is set, cool-seq-tool will look at this path and expect the LRG_RefSeqGene file. This file is found can be found here.

MANE Summary Data

cool-seq-tool fetches the latest version of MANE.GRCh38.*.summary.txt.gz if the environment variable MANE_SUMMARY_PATH is not set. When MANE_SUMMARY_PATH is set, cool-seq-tool will look at this path and expect the MANE Summary Data file. This file is found can be found here.

transcript_mapping.tsv

cool-seq-tool is packaged with transcript mapping data acquired from Ensembl BioMart. If the environment variable TRANSCRIPT_MAPPINGS_PATH is not set, cool-seq-tool will use the built-in file. When TRANSCRIPT_MAPPINGS_PATH is set, cool_seq_tool will look at this path and expect to find the transcript mapping TSV file.

To acquire this data manually from the BioMart, select the Human Genes (GRCh38.p13) dataset and choose the following attributes:

  • Gene stable ID
  • Gene stable ID version
  • Transcript stable ID
  • Transcript stable ID version
  • Protein stable ID
  • Protein stable ID version
  • RefSeq match transcript (MANE Select)
  • Gene name

image

Starting the UTA Tools Service Locally

To start the service, run the following:

uvicorn cool_seq_tool.api:app --reload

Next, view the FastAPI on your local machine: http://127.0.0.1:8000/cool_seq_tool

Init coding style tests

Code style is managed by flake8 and checked prior to commit.

We use pre-commit to run conformance tests.

This ensures:

  • Check code style
  • Check for added large files
  • Detect AWS Credentials
  • Detect Private Key

Before first commit run:

pre-commit install

Testing

From the root directory of the repository:

pytest

Release files for cool-seq-tool 0.1.14.dev0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cool-seq-tool 0.1.14.dev0
File Size Uploaded
cool_seq_tool-0.1.14.dev0.tar.gz 4.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for cool-seq-tool 0.1.14.dev0
File Interpreter ABI Platform
cool_seq_tool-0.1.14.dev0-py3-none-any.whl Python 3 none any Details

Total release size: 8.0 MB

Release files / cool_seq_tool-0.1.14.dev0.tar.gz

Download URL cool_seq_tool-0.1.14.dev0.tar.gz
Size 4.0 MB
Tags Source
SHA-256 checksum
How to use checksums
2a9b9c2a16ebfcfc9c2c90478a3faafe31ad9a638d9f04abea009b51ddd61986
BLAKE2b-256 checksum
How to use checksums
61f743a98291fc2ea15ffe43de38d510e9331ff0535fad302813f618011953d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.6

Release files / cool_seq_tool-0.1.14.dev0-py3-none-any.whl

Download URL cool_seq_tool-0.1.14.dev0-py3-none-any.whl
Size 4.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
4d1f1b317a83096c1100d6f2e8c48edc4859da1fd0f6918b6b7031c6071b9456
BLAKE2b-256 checksum
How to use checksums
f2e4c49243724f650286858c5ecc410c0244ca7ddb53a56f18cf6b5e61ef2536
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.6

Release history Release notifications | RSS feed

0.17.0

2 release files

0.15.4

2 release files

0.15.3

2 release files

0.15.2

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.14.5

2 release files

0.14.4

2 release files

0.14.3

2 release files

0.14.2

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.1

2 release files

This release

0.1.14.dev0 This release

2 release files

0.1.12

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page