bioversions 0.7.89__py3-none-any.whl → 0.8.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
bioversions/__init__.py CHANGED
@@ -1,9 +1,14 @@
1
1
  """What's the current version for each biological database?""" # noqa:D400
2
2
 
3
- from .sources import get_rows, get_version, resolve
3
+ from .sources import VersionFailure, clear_cache, get_rows, get_version, iter_versions, resolve
4
+ from .utils import VersionResult
4
5
 
5
6
  __all__ = [
7
+ "VersionFailure",
8
+ "VersionResult",
9
+ "clear_cache",
6
10
  "get_rows",
7
11
  "get_version",
12
+ "iter_versions",
8
13
  "resolve",
9
14
  ]
@@ -15,7 +15,7 @@ from bioversions.resources import (
15
15
  write_export,
16
16
  write_versions,
17
17
  )
18
- from bioversions.sources import FailureTuple, _iter_versions
18
+ from bioversions.sources import VersionFailure, iter_versions
19
19
  from bioversions.version import get_git_hash
20
20
 
21
21
  __all__ = [
@@ -49,8 +49,8 @@ def _update(force: bool): # noqa:C901
49
49
 
50
50
  changes = False
51
51
  failure_tuples = []
52
- for bv in _iter_versions(use_tqdm=True):
53
- if isinstance(bv, FailureTuple):
52
+ for bv in iter_versions(use_tqdm=True):
53
+ if isinstance(bv, VersionFailure):
54
54
  failure_tuples.append(bv)
55
55
  continue
56
56
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "annotations": {
3
- "revision": 990,
4
- "date": "2025-05-06",
3
+ "revision": 991,
4
+ "date": "2025-05-07",
5
5
  "author": "runner"
6
6
  },
7
7
  "database": [
@@ -528,6 +528,11 @@
528
528
  "retrieved": "2025-05-06",
529
529
  "version": "2025-05-05",
530
530
  "homepage": "https://antibodyregistry.org/"
531
+ },
532
+ {
533
+ "retrieved": "2025-05-07",
534
+ "version": "2025-05-06",
535
+ "homepage": "https://antibodyregistry.org/"
531
536
  }
532
537
  ],
533
538
  "name": "Antibody Registry",
@@ -5345,6 +5350,11 @@
5345
5350
  "retrieved": "2025-02-25",
5346
5351
  "version": "2025_01",
5347
5352
  "homepage": "http://ftp.flybase.net/releases/FB2025_01/"
5353
+ },
5354
+ {
5355
+ "retrieved": "2025-05-07",
5356
+ "version": "2025_02",
5357
+ "homepage": "https://s3ftp.flybase.org/releases/FB2025_02/"
5348
5358
  }
5349
5359
  ],
5350
5360
  "name": "FlyBase",
@@ -5852,6 +5862,12 @@
5852
5862
  "version": "220",
5853
5863
  "homepage": "https://gtdb.ecogenomic.org/",
5854
5864
  "date": "2024-04-24"
5865
+ },
5866
+ {
5867
+ "retrieved": "2025-05-07",
5868
+ "version": "226",
5869
+ "homepage": "https://gtdb.ecogenomic.org/",
5870
+ "date": "2025-04-16"
5855
5871
  }
5856
5872
  ],
5857
5873
  "name": "Genome Taxonomy Database",
@@ -6296,6 +6312,11 @@
6296
6312
  "retrieved": "2025-04-03",
6297
6313
  "version": "2025-04-01",
6298
6314
  "homepage": "https://storage.googleapis.com/public-download-files/hgnc/archive/archive/monthly/json/hgnc_complete_set_2025-04-01.json"
6315
+ },
6316
+ {
6317
+ "retrieved": "2025-05-07",
6318
+ "version": "2025-05-06",
6319
+ "homepage": "https://storage.googleapis.com/public-download-files/hgnc/archive/archive/monthly/json/hgnc_complete_set_2025-05-06.json"
6299
6320
  }
6300
6321
  ],
6301
6322
  "name": "HGNC",
@@ -10547,6 +10568,10 @@
10547
10568
  {
10548
10569
  "retrieved": "2025-05-04",
10549
10570
  "version": "2025-05-02"
10571
+ },
10572
+ {
10573
+ "retrieved": "2025-05-07",
10574
+ "version": "2025-05-05"
10550
10575
  }
10551
10576
  ],
10552
10577
  "name": "Online Mendelian Inheritance in Man",
@@ -17096,6 +17121,10 @@
17096
17121
  {
17097
17122
  "retrieved": "2025-05-06",
17098
17123
  "version": "2025-05-06"
17124
+ },
17125
+ {
17126
+ "retrieved": "2025-05-07",
17127
+ "version": "2025-05-07"
17099
17128
  }
17100
17129
  ],
17101
17130
  "name": "SwissLipids",
@@ -22644,6 +22673,10 @@
22644
22673
  {
22645
22674
  "retrieved": "2025-05-06",
22646
22675
  "version": "2025-05-04"
22676
+ },
22677
+ {
22678
+ "retrieved": "2025-05-07",
22679
+ "version": "2025-05-05"
22647
22680
  }
22648
22681
  ],
22649
22682
  "name": "Zebrafish Information Network",
@@ -3,13 +3,13 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  import ftplib
6
- import logging
7
6
  import traceback
8
7
  from collections.abc import Iterable, Mapping
9
8
  from functools import lru_cache
10
9
  from typing import Literal, NamedTuple, overload
11
10
 
12
11
  from tqdm import tqdm
12
+ from tqdm.contrib.logging import logging_redirect_tqdm
13
13
 
14
14
  from .antibodyregistry import AntibodyRegistryGetter
15
15
  from .bigg import BiGGGetter
@@ -71,15 +71,23 @@ from .umls import UMLSGetter
71
71
  from .uniprot import UniProtGetter
72
72
  from .wikipathways import WikiPathwaysGetter
73
73
  from .zfin import ZfinGetter
74
- from ..utils import Bioversion, Getter, norm, refresh_daily
74
+ from ..utils import Getter, VersionResult, norm, refresh_daily
75
75
 
76
76
  __all__ = [
77
+ "VersionFailure",
78
+ "clear_cache",
77
79
  "get_rows",
78
80
  "get_version",
81
+ "iter_versions",
79
82
  "resolve",
80
83
  ]
81
84
 
82
- logger = logging.getLogger(__name__)
85
+ #: These are broken beyond fixing at the moment
86
+ SKIPPED = [
87
+ DrugBankGetter,
88
+ PathwayCommonsGetter,
89
+ DisGeNetGetter,
90
+ ]
83
91
 
84
92
 
85
93
  @lru_cache(maxsize=1)
@@ -90,7 +98,6 @@ def get_getters() -> list[type[Getter]]:
90
98
  BioGRIDGetter,
91
99
  ChEMBLGetter,
92
100
  ComplexPortalGetter,
93
- DrugBankGetter,
94
101
  DrugCentralGetter,
95
102
  ExPASyGetter,
96
103
  IntActGetter,
@@ -109,7 +116,6 @@ def get_getters() -> list[type[Getter]]:
109
116
  RheaGetter,
110
117
  StringDBGetter,
111
118
  HomoloGeneGetter,
112
- DisGeNetGetter,
113
119
  MeshGetter,
114
120
  DGIGetter,
115
121
  FlybaseGetter,
@@ -131,7 +137,6 @@ def get_getters() -> list[type[Getter]]:
131
137
  SwissLipidGetter,
132
138
  ITISGetter,
133
139
  DepMapGetter,
134
- PathwayCommonsGetter,
135
140
  UMLSGetter,
136
141
  HGNCGetter,
137
142
  RGDGetter,
@@ -167,7 +172,7 @@ def get_getter_dict() -> Mapping[str, type[Getter]]:
167
172
  return rv
168
173
 
169
174
 
170
- def resolve(name: str, use_cache: bool = True) -> Bioversion:
175
+ def resolve(name: str, use_cache: bool = True) -> VersionResult:
171
176
  """Resolve the database name to a :class:`Bioversion` instance."""
172
177
  if use_cache:
173
178
  return _resolve_helper_cached(name)
@@ -176,11 +181,16 @@ def resolve(name: str, use_cache: bool = True) -> Bioversion:
176
181
 
177
182
 
178
183
  @refresh_daily
179
- def _resolve_helper_cached(name: str) -> Bioversion:
184
+ def _resolve_helper_cached(name: str) -> VersionResult:
180
185
  return _resolve_helper(name)
181
186
 
182
187
 
183
- def _resolve_helper(name: str) -> Bioversion:
188
+ def clear_cache() -> None:
189
+ """Clear the cache."""
190
+ _resolve_helper_cached.clear_cache()
191
+
192
+
193
+ def _resolve_helper(name: str) -> VersionResult:
184
194
  norm_name = norm(name)
185
195
  getter: type[Getter] = get_getter_dict()[norm_name]
186
196
  return getter.resolve()
@@ -217,16 +227,16 @@ def get_version(name: str, *, strict: bool = True) -> str | None:
217
227
  return rv
218
228
 
219
229
 
220
- def get_rows(use_tqdm: bool | None = False) -> list[Bioversion]:
230
+ def get_rows(use_tqdm: bool | None = False) -> list[VersionResult]:
221
231
  """Get the rows, refreshing once per day."""
222
232
  return [
223
233
  bioversion
224
- for bioversion in _iter_versions(use_tqdm=use_tqdm)
225
- if isinstance(bioversion, Bioversion)
234
+ for bioversion in iter_versions(use_tqdm=use_tqdm)
235
+ if isinstance(bioversion, VersionResult)
226
236
  ]
227
237
 
228
238
 
229
- class FailureTuple(NamedTuple):
239
+ class VersionFailure(NamedTuple):
230
240
  """Holds information about failures."""
231
241
 
232
242
  name: str
@@ -235,22 +245,23 @@ class FailureTuple(NamedTuple):
235
245
  trace: str
236
246
 
237
247
 
238
- def _iter_versions(
248
+ def iter_versions(
239
249
  use_tqdm: bool | None = False,
240
- ) -> Iterable[Bioversion | FailureTuple]:
241
- it = tqdm(get_getters(), disable=not use_tqdm)
242
-
243
- for cls in it:
244
- it.set_postfix(name=cls.name)
245
- try:
246
- yv = resolve(cls.name)
247
- except (OSError, AttributeError, ftplib.error_perm):
248
- msg = f"failed to resolve {cls.name}"
249
- tqdm.write(msg)
250
- yield FailureTuple(cls.name, cls.__name__, msg, traceback.format_exc())
251
- except (ValueError, KeyError) as e:
252
- msg = f"issue parsing {cls.name}: {e}"
253
- tqdm.write(msg)
254
- yield FailureTuple(cls.name, cls.__name__, msg, traceback.format_exc())
255
- else:
256
- yield yv
250
+ ) -> Iterable[VersionResult | VersionFailure]:
251
+ """Iterate over versions, without caching."""
252
+ with logging_redirect_tqdm():
253
+ it = tqdm(get_getters(), disable=not use_tqdm, desc="Getting versions", unit="resource")
254
+ for cls in it:
255
+ it.set_postfix(name=cls.name)
256
+ try:
257
+ yv = resolve(cls.name)
258
+ except (OSError, AttributeError, ftplib.error_perm):
259
+ msg = f"[{cls.bioregistry_id or cls.name}] failed to resolve"
260
+ tqdm.write(msg)
261
+ yield VersionFailure(cls.name, cls.__name__, msg, traceback.format_exc())
262
+ except (ValueError, KeyError) as e:
263
+ msg = f"[{cls.bioregistry_id or cls.name}] issue parsing: {e}"
264
+ tqdm.write(msg)
265
+ yield VersionFailure(cls.name, cls.__name__, msg, traceback.format_exc())
266
+ else:
267
+ yield yv
@@ -6,7 +6,7 @@ __all__ = [
6
6
  "EnsemblGetter",
7
7
  ]
8
8
 
9
- URL = "https://useast.ensembl.org/index.html"
9
+ URL = "https://www.ensembl.org/index.html"
10
10
 
11
11
 
12
12
  class EnsemblGetter(Getter):
@@ -8,8 +8,12 @@ __all__ = [
8
8
  "FlybaseGetter",
9
9
  ]
10
10
 
11
- URL = "http://flybase-ftp.s3-website-us-east-1.amazonaws.com/releases/index.html"
11
+ URL = "https://s3ftp.flybase.org/releases/"
12
12
  PATTERN = re.compile(r"FB\d{4}_\d{2}")
13
+ AGENT = (
14
+ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 "
15
+ "(KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36"
16
+ )
13
17
 
14
18
 
15
19
  class FlybaseGetter(Getter):
@@ -17,19 +21,19 @@ class FlybaseGetter(Getter):
17
21
 
18
22
  bioregistry_id = "flybase"
19
23
  name = "FlyBase"
20
- homepage_fmt = "http://flybase-ftp.s3-website-us-east-1.amazonaws.com/releases/FB{version}/"
24
+ homepage_fmt = "https://s3ftp.flybase.org/releases/FB{version}/"
21
25
  version_type = VersionType.month
22
26
 
23
- def get(self):
24
- """Get the latest flybase version number."""
25
- soup = get_soup(URL)
26
-
27
- releases = []
28
- # We check links to find ones that look like releases
29
- for anchor_tag in soup.find_all("a", href=True):
30
- match = PATTERN.search(anchor_tag.text)
31
- if match:
32
- releases.append(match.group().removeprefix("FB"))
27
+ def get(self) -> str:
28
+ """Get the latest FlyBase version."""
29
+ soup = get_soup(URL, user_agent=AGENT)
30
+ releases = [
31
+ match.group().removeprefix("FB")
32
+ for anchor_tag in soup.find_all("a", href=True)
33
+ if (match := PATTERN.search(anchor_tag.text))
34
+ ]
35
+ if not releases:
36
+ raise ValueError("flybase hit anti-scraping measurements")
33
37
  latest_version = max(releases)
34
38
  return latest_version
35
39
 
@@ -8,7 +8,7 @@ __all__ = [
8
8
  "GTDBGetter",
9
9
  ]
10
10
 
11
- URL = "https://data.gtdb.ecogenomic.org/releases/latest/VERSION.txt"
11
+ URL = "https://data.ace.uq.edu.au/public/gtdb/data/releases/latest/VERSION.txt"
12
12
 
13
13
 
14
14
  class GTDBGetter(Getter):
@@ -24,10 +24,15 @@ class GTDBGetter(Getter):
24
24
  """Get the latest GTDB version number from VERSION.txt."""
25
25
  res = requests.get(URL, timeout=15)
26
26
  lines = res.text.strip().split("\n")
27
+
27
28
  # First line contains version like "v220"
28
- version = lines[0].strip().lstrip("v")
29
+ version_line = next(line for line in lines if line.startswith("v"))
30
+ version = version_line.strip().lstrip("v")
31
+
29
32
  # Third line contains date like "Released Apr 24, 2024"
30
- date = lines[2].strip().removeprefix("Released ")
33
+ date_line = next(line for line in lines if line.startswith("Released "))
34
+ date = date_line.strip().removeprefix("Released ")
35
+
31
36
  return {"version": version, "date": date}
32
37
 
33
38
 
@@ -1,6 +1,9 @@
1
1
  """A getter for ICD10."""
2
2
 
3
+ import warnings
4
+
3
5
  import requests
6
+ from urllib3.exceptions import InsecureRequestWarning
4
7
 
5
8
  from bioversions.utils import Getter, VersionType
6
9
 
@@ -21,7 +24,9 @@ class ICD10Getter(Getter):
21
24
 
22
25
  def get(self) -> str:
23
26
  """Get the latest ICD10 version number."""
24
- response = requests.get(URL, allow_redirects=True, timeout=15)
27
+ with warnings.catch_warnings():
28
+ warnings.simplefilter(action="ignore", category=InsecureRequestWarning)
29
+ response = requests.get(URL, allow_redirects=True, timeout=15, verify=False) # noqa:S501
25
30
  final_url = response.url
26
31
  return final_url[len("https://icd.who.int/browse10/") :].split("/")[0]
27
32
 
@@ -1,6 +1,9 @@
1
1
  """A getter for ICD11."""
2
2
 
3
+ import warnings
4
+
3
5
  import requests
6
+ from urllib3.exceptions import InsecureRequestWarning
4
7
 
5
8
  from bioversions.utils import Getter, VersionType
6
9
 
@@ -14,6 +17,7 @@ URL = "https://icd.who.int/browse/latest-release/mms/en"
14
17
  class ICD11Getter(Getter):
15
18
  """A getter for ICD11."""
16
19
 
20
+ # TODO combine with ICF using `collection`
17
21
  bioregistry_id = "icd11"
18
22
  name = "International Classification of Diseases, 11th Revision"
19
23
  version_type = VersionType.date
@@ -21,7 +25,9 @@ class ICD11Getter(Getter):
21
25
 
22
26
  def get(self) -> str:
23
27
  """Get the latest ICD11 version number."""
24
- response = requests.get(URL, allow_redirects=True, timeout=15)
28
+ with warnings.catch_warnings():
29
+ warnings.simplefilter(action="ignore", category=InsecureRequestWarning)
30
+ response = requests.get(URL, allow_redirects=True, timeout=15, verify=False) # noqa:S501
25
31
  final_url = response.url
26
32
  return final_url[len("https://icd.who.int/browse/") :].split("/")[0]
27
33
 
@@ -1,6 +1,9 @@
1
1
  """A getter for ICF."""
2
2
 
3
+ import warnings
4
+
3
5
  import requests
6
+ from urllib3.exceptions import InsecureRequestWarning
4
7
 
5
8
  from bioversions.utils import Getter, VersionType
6
9
 
@@ -21,7 +24,9 @@ class ICFGetter(Getter):
21
24
 
22
25
  def get(self) -> str:
23
26
  """Get the latest ICF version number."""
24
- response = requests.get(URL, allow_redirects=True, timeout=15)
27
+ with warnings.catch_warnings():
28
+ warnings.simplefilter(action="ignore", category=InsecureRequestWarning)
29
+ response = requests.get(URL, allow_redirects=True, timeout=15, verify=False) # noqa:S501
25
30
  final_url = response.url
26
31
  return final_url[len("https://icd.who.int/browse/") :].split("/")[0]
27
32
 
@@ -18,13 +18,19 @@ class NPASSGetter(Getter):
18
18
 
19
19
  def get(self) -> str:
20
20
  """Get the latest NPASS version number."""
21
- soup = get_soup(URL)
22
- footer = find(soup, name="footer")
23
- ul = find(footer, name="ul")
24
- for li in ul.find_all(name="li"):
25
- if li.text.startswith("Version:"):
26
- return li.text[len("Version: ") :]
27
- raise ValueError(f"could not parse NPASS version from {URL}")
21
+ return "2.0"
22
+
23
+
24
+ def _dynamic_get() -> str:
25
+ # this has been retired since the website is so slow and this
26
+ # resource is effectively static
27
+ soup = get_soup(URL)
28
+ footer = find(soup, name="footer")
29
+ ul = find(footer, name="ul")
30
+ for li in ul.find_all(name="li"):
31
+ if li.text.startswith("Version:"):
32
+ return li.text[len("Version: ") :]
33
+ raise ValueError(f"could not parse NPASS version from {URL}")
28
34
 
29
35
 
30
36
  if __name__ == "__main__":
bioversions/utils.py CHANGED
@@ -158,7 +158,7 @@ class MetaGetter(type):
158
158
  return version
159
159
 
160
160
 
161
- class Bioversion(pydantic.BaseModel):
161
+ class VersionResult(pydantic.BaseModel):
162
162
  """A dataclass for information about a database and version."""
163
163
 
164
164
  #: The database name
@@ -217,9 +217,9 @@ class Getter(metaclass=MetaGetter):
217
217
  print(*x, sep=sep, file=file)
218
218
 
219
219
  @classmethod
220
- def resolve(cls) -> Bioversion:
220
+ def resolve(cls) -> VersionResult:
221
221
  """Get a Bioversion data container with the data for this database."""
222
- return Bioversion(
222
+ return VersionResult(
223
223
  name=cls.name,
224
224
  version=cls.version,
225
225
  classname=cls.__name__,
bioversions/version.py CHANGED
@@ -8,7 +8,7 @@ __all__ = [
8
8
  "get_git_hash",
9
9
  ]
10
10
 
11
- VERSION = "0.7.89"
11
+ VERSION = "0.8.1"
12
12
 
13
13
 
14
14
  def get_git_hash() -> str:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bioversions
3
- Version: 0.7.89
3
+ Version: 0.8.1
4
4
  Summary: Get the current version for biological databases
5
5
  Keywords: snekpack,cookiecutter,databases,biological databases,biomedical databases
6
6
  Author: Charles Tapley Hoyt
@@ -1,81 +1,81 @@
1
- bioversions/sources/reactome.py,sha256=12ae2e1cc763c323eaab9d90ec4f6cbdcea1cd9645b40e6d32d93c76333006f7,596
2
- bioversions/sources/rxnorm.py,sha256=abb4a225e16e57c6f59102558c41504711ba81cdb5e07bf557c70ceab552c541,1040
3
- bioversions/sources/npass.py,sha256=09355592fd1fee53e99165316c6b6053931927589a58e255b3db2aefde02c103,763
4
- bioversions/sources/sgd.py,sha256=3e05c0bf0aa5c78f10b869e75473a5d2e034323b84ec89748e2055e1f69835d0,1084
5
- bioversions/sources/homologene.py,sha256=4da5b4037dcf2d2e3cd38ceb45664a0e6a3fcf01332bd6f15ffcc089a526779c,622
6
- bioversions/sources/intact.py,sha256=06e67eda7e8eededc74f63eb1c73db0648665dae78323d7d92625c76ff4f7c05,596
1
+ bioversions/py.typed,sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,0
2
+ bioversions/cli.py,sha256=75eaa237668bef45ef6f16b5c5a20036aef228995b872dda224a54dcb30ad2d5,1639
3
+ bioversions/templates/base.html,sha256=00a07a693dfd53d56d38cdb3bd6fd49b922060ef4acbe08ba41cb1cb95d73b93,713
4
+ bioversions/templates/home.html,sha256=cfdf054ac94244fd8adfdc5b1e948f824d7d8fb676d4f49b44602d69723431dd,2756
5
+ bioversions/__init__.py,sha256=0fc58200e829534318812aa56075dc5a716d8b9343f60f1580c27cc3e91eea62,354
6
+ bioversions/charts.py,sha256=be29a2fde227a4bd02611112f1cbe58a00e261e435fc8f00e82104a15dadbdfe,2457
7
+ bioversions/__main__.py,sha256=0e97cd1eac70162293fb809292e2cba2464218394244001f3f9e0c74b8f71351,128
8
+ bioversions/resources/versions.json,sha256=ee58f4ec7a2c610433b927a45fc8dce44b7b6639d80eb4f8428dcf258cf0a06e,555806
9
+ bioversions/resources/update.py,sha256=339d2963c35d6b5e03e6fb97894bd90ea39cc94376aaee9ab8d0ccf23b1ff0c5,3530
10
+ bioversions/resources/__init__.py,sha256=371c3ac3afe0442e01fc9c2f6c000aa4d476ac8a6435167952404831d36a95d6,1659
11
+ bioversions/utils.py,sha256=f83a7ac31bc688117b31c5297d4d9bce8ffd5b63ecc32e6c531bf075952d5e25,10715
12
+ bioversions/version.py,sha256=6d98ad6197cd2b61f0b02cdce7ce2bb78eefc2229a7ea823218cb1ef812da0d3,605
7
13
  bioversions/sources/interpro.py,sha256=1fa75923bd60517a3b2f661e7c24e2243e2ab90440bf2621e670c36e1da2baf1,1238
8
- bioversions/sources/unversioned.py,sha256=c2f328c3bca5b9bbd0ede38ce93bd5a8d1cd079757902865f6c83c3ed05794f4,53
9
- bioversions/sources/itis.py,sha256=99a480060d52ac6e06404be347080c28af56e984e80cc4763f0a98266212a1df,582
10
- bioversions/sources/pombase.py,sha256=e65348dc0aaed5f9c35049c5d117ee7103abf8714f620afbfa5e084eded1c986,766
11
- bioversions/sources/chebi.py,sha256=53b5cdbb8810bb790027764284d97efa01ee12f7c259902e381ac3d3f7615616,833
12
- bioversions/sources/complexportal.py,sha256=1adea98029a1aef5e13d7038812734ed37bfa2c9e8f6038cb3c8216b4eff1d19,671
13
- bioversions/sources/ncit.py,sha256=887238481b9cd61f525019541624d03f455f4e0c4465d4ba40fbcf704aac231b,832
14
- bioversions/sources/chemidplus.py,sha256=cc93605ba1d416c5939fdfcf62e01f1449d999284b1af7beee0185696b231702,1194
15
- bioversions/sources/pr.py,sha256=6c440e95057d35b7d0273d9c26bc2e0dec45cfe22f541e44b5645ebe66f4ddd6,876
16
- bioversions/sources/flybase.py,sha256=cf898bc12970d7840d14d8a6c0022d6712dbeea09ba0269f95af0e51d8fa3de1,1016
17
- bioversions/sources/ensembl.py,sha256=994779fcbb08ea8494e1af0324b49a9bd9649dd7fa65fba7d156b1648c9edad2,737
18
- bioversions/sources/mesh.py,sha256=5ea8cf53950980e1d5736f1cffa37b46225dd45f51a1418f5c69a621a368a6f3,971
19
- bioversions/sources/icd10.py,sha256=f3ace5f72c5e532cb758a8104b9e48fb56cafa47a01f9f6c6458b06062856805,703
20
- bioversions/sources/gtdb.py,sha256=95bb664a1e2e872ebe55efec9703be63bff01d15724aea1fd48feb47e150d399,1001
21
- bioversions/sources/disgenet.py,sha256=3c02c84643c1913d9cb2b37e1679fe019cc273d67633685e904fbf16ba84f8bc,739
22
- bioversions/sources/rhea.py,sha256=ddcb28b84fa2a76520ecc123703e785ff3d4bccb93638af442d3883f54fbd57e,806
23
- bioversions/sources/pubchem.py,sha256=57e6f33479eef0935322abde994efe3292f91c7c6bb1889c5724c99ebd7d72f9,526
14
+ bioversions/sources/oncotree.py,sha256=69b039f07e37800fd3b623816b00595333caede9403d8a9620fee515de8aa8ee,1032
15
+ bioversions/sources/dgi.py,sha256=8b613bedea979b8bbadfcbe4b2fd539e4d29deccf329d936c83a72626d8808bc,940
16
+ bioversions/sources/kegg.py,sha256=24574e015a28f77f77451a3b48dbb54b740ff36e7e310bbdf434ee4f63adb094,1014
17
+ bioversions/sources/icf.py,sha256=2cf0e779aec4a03845ad091e5ab4fea91aaa10bbd91b5ede9f771c828a8d3771,946
18
+ bioversions/sources/icd11.py,sha256=00b75086f6ecd8e81444665944cd6139725fcee36b0d817b54506b0cc91bc580,996
19
+ bioversions/sources/mirbase.py,sha256=ab70baf82cbebc42f22424029e9838a6f7a846b9587ea81be37d779871b90a9e,996
24
20
  bioversions/sources/omim.py,sha256=7aad8a3615748f5171db47098a1cdbec36b1e8596e0e857fe360dc5320748a65,916
25
- bioversions/sources/obo.py,sha256=727b7470ba4cf30b421b5e1eebe758bbadeac57e9801df4fceb13948a27ff0b7,1713
26
- bioversions/sources/hgnc.py,sha256=5b2d0cf1a4fe48ab0c2945b111d3e95acdf64a32fb519ca200d2ed0900b85a9d,1099
27
21
  bioversions/sources/drugcentral.py,sha256=c07db12fe096a5e54fdb4e360a75a6d57fb0dd826fda6e458a04f0d61b7570b8,1116
22
+ bioversions/sources/ols.py,sha256=35e49f5841e26161ebb063e2bba5f58754031b98128ac132532ef528346f69ac,2929
23
+ bioversions/sources/mgi.py,sha256=4d7f95d3171616692db2c8d195d8d86f9f751c2b6885e63df70d054c7d9c2199,841
24
+ bioversions/sources/pathbank.py,sha256=ad5a8a277ab673881cb6a520fe78bd7d29b6273d2882475ec07fb2b0f762003b,704
25
+ bioversions/sources/itis.py,sha256=99a480060d52ac6e06404be347080c28af56e984e80cc4763f0a98266212a1df,582
26
+ bioversions/sources/silva.py,sha256=e677f3502f516b48977191274ad08d593e4c683442281043a819dde028157274,984
27
+ bioversions/sources/moalmanac.py,sha256=2f314cc81d89e0e604514217ed5346508dab890603eb6a20f4fb9d3c97144801,781
28
+ bioversions/sources/rxnorm.py,sha256=abb4a225e16e57c6f59102558c41504711ba81cdb5e07bf557c70ceab552c541,1040
29
+ bioversions/sources/pfam.py,sha256=a2509a19315b2524a4974101d2215794c639b2ede25832449819524f4c3efff8,975
30
+ bioversions/sources/biogrid.py,sha256=df37707dbc42423111e9be6a98c7b866312430d042712d392170a8f2cf8b2daf,742
31
+ bioversions/sources/reactome.py,sha256=12ae2e1cc763c323eaab9d90ec4f6cbdcea1cd9645b40e6d32d93c76333006f7,596
32
+ bioversions/sources/ncit.py,sha256=887238481b9cd61f525019541624d03f455f4e0c4465d4ba40fbcf704aac231b,832
33
+ bioversions/sources/stringdb.py,sha256=9afd81dd24d02469cce66e246cb6f696e4a501ba3e7e8dc7aff0f022563a37b2,787
28
34
  bioversions/sources/rgd.py,sha256=64f6cfd7bff88004699b00832560ef033f14f2977e70684ebef546b431a04d23,766
29
- bioversions/sources/icd11.py,sha256=6bc929c0fe8fdfe428c23e9f185165b1b2f589b85a58de3cc1ecffa80362084d,723
30
- bioversions/sources/umls.py,sha256=276513c45b33d31f5eaa1395ef176b9ed5ae8013c4ecd4332b4f627880115146,803
31
- bioversions/sources/mirbase.py,sha256=ab70baf82cbebc42f22424029e9838a6f7a846b9587ea81be37d779871b90a9e,996
32
- bioversions/sources/pathwaycommons.py,sha256=34b6bc0f44d87fa4a4abf7ee4adf8a350117b5623786feeff187987c9bc947f6,686
33
- bioversions/sources/icf.py,sha256=0580247e61d6b50b0c08d5331a97d188a5671dda4333298628bc327af313c08a,720
34
- bioversions/sources/guidetopharmacology.py,sha256=7864d5d2b74f25d3baa4a91f9a24caec4777a19c442e0055112d2f790998b0e0,1523
35
+ bioversions/sources/__init__.py,sha256=6926e85147f955777cdc9e2ea59295183c06e328b410a458d6c30543c15d558c,7628
36
+ bioversions/sources/civic.py,sha256=321967e8b7c7a7aecf896b49e6ad4520d0b00a114103a71f71a49c775291f11e,1086
35
37
  bioversions/sources/daily.py,sha256=501fcf689d9b11035b08255c208c5bca0bb631f79e9a8fee3d268f85d07b4033,256
36
- bioversions/sources/depmap.py,sha256=00b9fb914b27902ef2023f5c2d899a4235829b6b20d3045643e4fbe8deea4168,641
38
+ bioversions/sources/zfin.py,sha256=dcea33de50f1f09e36380a3253c78923e7d19cc46263250c723e1f0c4e4354b4,683
39
+ bioversions/sources/rhea.py,sha256=ddcb28b84fa2a76520ecc123703e785ff3d4bccb93638af442d3883f54fbd57e,806
37
40
  bioversions/sources/signor.py,sha256=f0a0bd043c1344027e31fe8fc4e5922f44e86044ca16370e6d66368161f05c83,969
38
- bioversions/sources/pathbank.py,sha256=ad5a8a277ab673881cb6a520fe78bd7d29b6273d2882475ec07fb2b0f762003b,704
41
+ bioversions/sources/intact.py,sha256=06e67eda7e8eededc74f63eb1c73db0648665dae78323d7d92625c76ff4f7c05,596
42
+ bioversions/sources/guidetopharmacology.py,sha256=7864d5d2b74f25d3baa4a91f9a24caec4777a19c442e0055112d2f790998b0e0,1523
43
+ bioversions/sources/expasy.py,sha256=625d33571c58d40584ac5ad572da0999e6bec4db7327c0860b9f017836034f9e,767
44
+ bioversions/sources/depmap.py,sha256=00b9fb914b27902ef2023f5c2d899a4235829b6b20d3045643e4fbe8deea4168,641
45
+ bioversions/sources/complexportal.py,sha256=1adea98029a1aef5e13d7038812734ed37bfa2c9e8f6038cb3c8216b4eff1d19,671
46
+ bioversions/sources/sgd.py,sha256=3e05c0bf0aa5c78f10b869e75473a5d2e034323b84ec89748e2055e1f69835d0,1084
47
+ bioversions/sources/chemidplus.py,sha256=cc93605ba1d416c5939fdfcf62e01f1449d999284b1af7beee0185696b231702,1194
48
+ bioversions/sources/pathwaycommons.py,sha256=34b6bc0f44d87fa4a4abf7ee4adf8a350117b5623786feeff187987c9bc947f6,686
49
+ bioversions/sources/disgenet.py,sha256=3c02c84643c1913d9cb2b37e1679fe019cc273d67633685e904fbf16ba84f8bc,739
50
+ bioversions/sources/drugbank.py,sha256=599c215452b5e8219e2c31423c2c6d1c7c867848309696c834b9b5f3af1f3f16,994
39
51
  bioversions/sources/wikipathways.py,sha256=493c3c062bdcdc864b608c7e2b0a711cb526453a8d7c79b4c10cb00e68bed30b,798
40
- bioversions/sources/oncotree.py,sha256=69b039f07e37800fd3b623816b00595333caede9403d8a9620fee515de8aa8ee,1032
41
- bioversions/sources/biogrid.py,sha256=df37707dbc42423111e9be6a98c7b866312430d042712d392170a8f2cf8b2daf,742
52
+ bioversions/sources/umls.py,sha256=276513c45b33d31f5eaa1395ef176b9ed5ae8013c4ecd4332b4f627880115146,803
53
+ bioversions/sources/chembl.py,sha256=35cfa0149a5eac1c8efe2577b43aa47e359874558ef48ce227022d7bd0b60932,1513
54
+ bioversions/sources/pr.py,sha256=6c440e95057d35b7d0273d9c26bc2e0dec45cfe22f541e44b5645ebe66f4ddd6,876
55
+ bioversions/sources/pubchem.py,sha256=57e6f33479eef0935322abde994efe3292f91c7c6bb1889c5724c99ebd7d72f9,526
42
56
  bioversions/sources/uniprot.py,sha256=c3e16b68fc8a65e12d9a3b3288fedbd9a8e0e7b47f0a69f0fb032fb072c68a1b,924
43
- bioversions/sources/slm.py,sha256=84fe81b16cf8cb3cdc817f4ed56482364bb46a9d3af1f01c3726273b26d106d6,766
44
- bioversions/sources/civic.py,sha256=321967e8b7c7a7aecf896b49e6ad4520d0b00a114103a71f71a49c775291f11e,1086
45
- bioversions/sources/stringdb.py,sha256=9afd81dd24d02469cce66e246cb6f696e4a501ba3e7e8dc7aff0f022563a37b2,787
46
- bioversions/sources/pfam.py,sha256=a2509a19315b2524a4974101d2215794c639b2ede25832449819524f4c3efff8,975
47
- bioversions/sources/cellosaurus.py,sha256=d17ae067aade4a433c0f350b26d681dda881603d1057734750b67ef19950ee01,975
48
- bioversions/sources/ols.py,sha256=35e49f5841e26161ebb063e2bba5f58754031b98128ac132532ef528346f69ac,2929
49
- bioversions/sources/expasy.py,sha256=625d33571c58d40584ac5ad572da0999e6bec4db7327c0860b9f017836034f9e,767
50
- bioversions/sources/silva.py,sha256=e677f3502f516b48977191274ad08d593e4c683442281043a819dde028157274,984
51
- bioversions/sources/kegg.py,sha256=24574e015a28f77f77451a3b48dbb54b740ff36e7e310bbdf434ee4f63adb094,1014
52
57
  bioversions/sources/bigg.py,sha256=895af1caf2a2108517b3a14cd8088b0d86bec980cd18c38d9a222ffd1e8a060e,661
53
- bioversions/sources/msigdb.py,sha256=8689c6234a84ae6e70b19b2bd21c165e2c37d83de7e71c47e605f7c54121de9a,778
54
- bioversions/sources/drugbank.py,sha256=599c215452b5e8219e2c31423c2c6d1c7c867848309696c834b9b5f3af1f3f16,994
55
58
  bioversions/sources/rfam.py,sha256=3c8de33a8920baac6789fd07160da00752f524ed25ad045b3b48a24716eda5a8,540
56
- bioversions/sources/mgi.py,sha256=4d7f95d3171616692db2c8d195d8d86f9f751c2b6885e63df70d054c7d9c2199,841
57
- bioversions/sources/zfin.py,sha256=dcea33de50f1f09e36380a3253c78923e7d19cc46263250c723e1f0c4e4354b4,683
59
+ bioversions/sources/unversioned.py,sha256=c2f328c3bca5b9bbd0ede38ce93bd5a8d1cd079757902865f6c83c3ed05794f4,53
60
+ bioversions/sources/icd10.py,sha256=ef9ec91178149d2e9b8dc6ef63bfd74211ada63768046dfc75c02b53828f0ac4,929
61
+ bioversions/sources/npass.py,sha256=5426aa5caf240e9ec8ece16b58ac90bc18ee5414c6667665ef6219da9152e4a3,888
62
+ bioversions/sources/pombase.py,sha256=e65348dc0aaed5f9c35049c5d117ee7103abf8714f620afbfa5e084eded1c986,766
63
+ bioversions/sources/gtdb.py,sha256=7063122d9ade9ab743d85f833729664d4bbcc0f0591fe31a10a61ebbb5742dab,1177
64
+ bioversions/sources/obo.py,sha256=727b7470ba4cf30b421b5e1eebe758bbadeac57e9801df4fceb13948a27ff0b7,1713
65
+ bioversions/sources/mesh.py,sha256=5ea8cf53950980e1d5736f1cffa37b46225dd45f51a1418f5c69a621a368a6f3,971
66
+ bioversions/sources/hgnc.py,sha256=5b2d0cf1a4fe48ab0c2945b111d3e95acdf64a32fb519ca200d2ed0900b85a9d,1099
67
+ bioversions/sources/flybase.py,sha256=fe455283cb073637a2468748740d6a9813a2f17a19bb0e93bbab2faf3b13bdf4,1113
68
+ bioversions/sources/homologene.py,sha256=4da5b4037dcf2d2e3cd38ceb45664a0e6a3fcf01332bd6f15ffcc089a526779c,622
69
+ bioversions/sources/cellosaurus.py,sha256=d17ae067aade4a433c0f350b26d681dda881603d1057734750b67ef19950ee01,975
70
+ bioversions/sources/chebi.py,sha256=53b5cdbb8810bb790027764284d97efa01ee12f7c259902e381ac3d3f7615616,833
58
71
  bioversions/sources/antibodyregistry.py,sha256=5c29963e1d7bd40780582ce9539d6120bd593d0cda6f3b763b08af876a2bef8f,713
59
- bioversions/sources/dgi.py,sha256=8b613bedea979b8bbadfcbe4b2fd539e4d29deccf329d936c83a72626d8808bc,940
60
- bioversions/sources/moalmanac.py,sha256=2f314cc81d89e0e604514217ed5346508dab890603eb6a20f4fb9d3c97144801,781
61
- bioversions/sources/chembl.py,sha256=35cfa0149a5eac1c8efe2577b43aa47e359874558ef48ce227022d7bd0b60932,1513
62
- bioversions/sources/__init__.py,sha256=d475777684fbb0fd5b2bbfba5344dfce5bc6e2ef27742d2fe00200229cdf6f92,7156
63
- bioversions/cli.py,sha256=75eaa237668bef45ef6f16b5c5a20036aef228995b872dda224a54dcb30ad2d5,1639
64
- bioversions/version.py,sha256=d4ec99ecd244d974aaf0dbb32edc766537689c2d5bd9e95ed3a7ec674987c7ef,606
65
- bioversions/py.typed,sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,0
66
- bioversions/resources/update.py,sha256=0eb75cb5c2cf5fe6d5506d6badf01de1b7fcc33d6f4b7ac49feb5e5c7416049e,3528
67
- bioversions/resources/versions.json,sha256=ea28e4edb4e7cb548d635c79149a51483cc3a0fbf22887abc630db18fa41cbd3,554814
68
- bioversions/resources/__init__.py,sha256=371c3ac3afe0442e01fc9c2f6c000aa4d476ac8a6435167952404831d36a95d6,1659
69
- bioversions/charts.py,sha256=be29a2fde227a4bd02611112f1cbe58a00e261e435fc8f00e82104a15dadbdfe,2457
70
- bioversions/__main__.py,sha256=0e97cd1eac70162293fb809292e2cba2464218394244001f3f9e0c74b8f71351,128
71
- bioversions/slack_client.py,sha256=bda7d71401bc03f7dc19fec98d7d5abad5083285cb5c97b5b575b1f9459a1285,1293
72
- bioversions/templates/home.html,sha256=cfdf054ac94244fd8adfdc5b1e948f824d7d8fb676d4f49b44602d69723431dd,2756
73
- bioversions/templates/base.html,sha256=00a07a693dfd53d56d38cdb3bd6fd49b922060ef4acbe08ba41cb1cb95d73b93,713
72
+ bioversions/sources/msigdb.py,sha256=8689c6234a84ae6e70b19b2bd21c165e2c37d83de7e71c47e605f7c54121de9a,778
73
+ bioversions/sources/ensembl.py,sha256=8d220ffc1bf54d5832cc76c18e922493c689385a2ba930df454fc0afc38293ca,734
74
+ bioversions/sources/slm.py,sha256=84fe81b16cf8cb3cdc817f4ed56482364bb46a9d3af1f01c3726273b26d106d6,766
74
75
  bioversions/wsgi.py,sha256=b611913189165699cd67480f3d17308344ac935e31c693017aabea89bd0ba8ab,825
75
- bioversions/utils.py,sha256=65760e94607996df0ef32e6d946b03b1b2a2faa8ff9bee37d1822fe9136bf4fa,10706
76
- bioversions/__init__.py,sha256=7f04aa5bf8ba4ceb843188a32f6f09dfb20b2300f067284d35a1fb0441eaba38,194
77
- bioversions-0.7.89.dist-info/licenses/LICENSE,sha256=41c80964a1b1956e41c013670812fc5592d5b51bd7b3cd4287d949450488a498,1076
78
- bioversions-0.7.89.dist-info/WHEEL,sha256=1c77bbda0b527f376a68ced20cbc1aac3efc7bc4d7c10cc4323a905ef79ae8db,78
79
- bioversions-0.7.89.dist-info/entry_points.txt,sha256=4cdd92beb5155987fe3fa990cbaa0268658f0e30d27ed349fada88c48b97484e,54
80
- bioversions-0.7.89.dist-info/METADATA,sha256=92373d41623f35562140424b4e28bd58322d07ce90feaa2021ea4edce78b7dae,18673
81
- bioversions-0.7.89.dist-info/RECORD,,
76
+ bioversions/slack_client.py,sha256=bda7d71401bc03f7dc19fec98d7d5abad5083285cb5c97b5b575b1f9459a1285,1293
77
+ bioversions-0.8.1.dist-info/licenses/LICENSE,sha256=41c80964a1b1956e41c013670812fc5592d5b51bd7b3cd4287d949450488a498,1076
78
+ bioversions-0.8.1.dist-info/WHEEL,sha256=1c77bbda0b527f376a68ced20cbc1aac3efc7bc4d7c10cc4323a905ef79ae8db,78
79
+ bioversions-0.8.1.dist-info/entry_points.txt,sha256=4cdd92beb5155987fe3fa990cbaa0268658f0e30d27ed349fada88c48b97484e,54
80
+ bioversions-0.8.1.dist-info/METADATA,sha256=d56eab0f3e7193d4593e57a5b9a2e07d8e1b3638496fdf4de6ec28900e16e671,18672
81
+ bioversions-0.8.1.dist-info/RECORD,,