Skip to content

Commit 126181b

Browse files
committed
Only Use FastaSeqFetchers if Data is Available
1 parent 54d93f6 commit 126181b

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

src/mavedb/deps.py

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,24 @@ def get_db() -> Generator:
1919

2020

2121
def hgvs_data_provider() -> RESTDataProvider:
22-
grch38_fetcher = FastaSeqFetcher("/data/GCF_000001405.39_GRCh38.p13_genomic.fna.gz")
23-
grch37_fetcher = FastaSeqFetcher("/data/GCF_000001405.25_GRCh37.p13_genomic.fna.gz")
24-
2522
# Prioritize fetching from SeqRepo, then GRCh38, then GRCh37.
26-
seqfetcher = ChainedSeqFetcher(SeqFetcher(), grch38_fetcher, grch37_fetcher)
23+
seqfetcher = ChainedSeqFetcher(SeqFetcher())
24+
25+
# Attempt to resolve FASTA Seq fetchers from data files, but don't fail if neither file is
26+
# available. This way, we at least retain some ability to resolve sequences if we don't have
27+
# FASTA file access and we are able to run our test suite without needing access to large genomic
28+
# files.
29+
try:
30+
grch38_fetcher = FastaSeqFetcher("/data/GCF_000001405.39_GRCh38.p13_genomic.fna.gz")
31+
seqfetcher.seq_fetchers.append(grch38_fetcher)
32+
except OSError:
33+
pass
34+
35+
try:
36+
grch37_fetcher = FastaSeqFetcher("/data/GCF_000001405.25_GRCh37.p13_genomic.fna.gz")
37+
seqfetcher.seq_fetchers.append(grch37_fetcher)
38+
except OSError:
39+
pass
2740

2841
return RESTDataProvider(seqfetcher=seqfetcher)
2942

0 commit comments

Comments
 (0)