orfdata 0.40.0__tar.gz → 0.42.0__tar.gz

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.
Files changed (384) hide show
  1. {orfdata-0.40.0/orfdata.egg-info → orfdata-0.42.0}/PKG-INFO +28 -22
  2. {orfdata-0.40.0 → orfdata-0.42.0}/README.md +21 -7
  3. {orfdata-0.40.0 → orfdata-0.42.0}/docs/catalogs.md +5 -8
  4. {orfdata-0.40.0 → orfdata-0.42.0}/docs/copy-yeast.md +2 -2
  5. orfdata-0.42.0/docs/dog-data-sources.md +60 -0
  6. {orfdata-0.40.0 → orfdata-0.42.0}/docs/dog-peptides.md +3 -0
  7. {orfdata-0.40.0 → orfdata-0.42.0}/docs/downloads.md +43 -4
  8. {orfdata-0.40.0 → orfdata-0.42.0}/docs/human-tissue.md +1 -1
  9. {orfdata-0.40.0 → orfdata-0.42.0}/docs/index.md +1 -1
  10. {orfdata-0.40.0 → orfdata-0.42.0}/docs/ingolia-yeast.md +2 -2
  11. {orfdata-0.40.0 → orfdata-0.42.0}/docs/measurements.md +3 -3
  12. {orfdata-0.40.0 → orfdata-0.42.0}/docs/pfizer-protein.md +1 -1
  13. {orfdata-0.40.0 → orfdata-0.42.0}/docs/pfizer-rna.md +2 -2
  14. {orfdata-0.40.0 → orfdata-0.42.0}/mkdocs.yml +1 -0
  15. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/__init__.py +4 -0
  16. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/catalog.py +10 -32
  17. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/cli.py +3 -3
  18. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/viral/NOTICE.md +1 -1
  19. orfdata-0.42.0/orfdata/data_resources.py +140 -0
  20. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/dataset.py +4 -6
  21. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/datasets.py +2 -4
  22. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/download_cli.py +49 -0
  23. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/downloads.py +26 -16
  24. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/genomes.py +3 -11
  25. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/install.py +0 -2
  26. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/liftover_cli.py +1 -4
  27. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/proteome.py +2 -4
  28. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/proteome_cli.py +1 -4
  29. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/copy.py +1 -4
  30. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/ncorf_mammals.py +1 -4
  31. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_attribution.py +1 -1
  32. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_rna.py +1 -4
  33. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_vendor.py +2 -4
  34. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/riborf.py +1 -4
  35. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/wang.py +1 -4
  36. orfdata-0.42.0/orfdata/version.py +1 -0
  37. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral_panel.py +2 -6
  38. {orfdata-0.40.0 → orfdata-0.42.0/orfdata.egg-info}/PKG-INFO +28 -22
  39. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata.egg-info/SOURCES.txt +3 -0
  40. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata.egg-info/requires.txt +6 -19
  41. {orfdata-0.40.0 → orfdata-0.42.0}/pyproject.toml +16 -11
  42. orfdata-0.42.0/tests/test_data_resources.py +161 -0
  43. orfdata-0.42.0/tests/test_dog_ncorf_search.py +125 -0
  44. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_downloads.py +6 -14
  45. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_liftover.py +3 -3
  46. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_openprot.py +3 -3
  47. orfdata-0.40.0/orfdata/version.py +0 -1
  48. orfdata-0.40.0/tests/test_dog_ncorf_search.py +0 -62
  49. {orfdata-0.40.0 → orfdata-0.42.0}/LICENSE +0 -0
  50. {orfdata-0.40.0 → orfdata-0.42.0}/MANIFEST.in +0 -0
  51. {orfdata-0.40.0 → orfdata-0.42.0}/deploy.sh +0 -0
  52. {orfdata-0.40.0 → orfdata-0.42.0}/docs/coverage.md +0 -0
  53. {orfdata-0.40.0 → orfdata-0.42.0}/docs/downstream.md +0 -0
  54. {orfdata-0.40.0 → orfdata-0.42.0}/docs/examples.md +0 -0
  55. {orfdata-0.40.0 → orfdata-0.42.0}/docs/pairing.md +0 -0
  56. {orfdata-0.40.0 → orfdata-0.42.0}/docs/pfizer-peptides.md +0 -0
  57. {orfdata-0.40.0 → orfdata-0.42.0}/docs/proteome.md +0 -0
  58. {orfdata-0.40.0 → orfdata-0.42.0}/docs/reference.md +0 -0
  59. {orfdata-0.40.0 → orfdata-0.42.0}/docs/search-references.md +0 -0
  60. {orfdata-0.40.0 → orfdata-0.42.0}/docs/source-references.md +0 -0
  61. {orfdata-0.40.0 → orfdata-0.42.0}/docs/species.md +0 -0
  62. {orfdata-0.40.0 → orfdata-0.42.0}/docs/storage.md +0 -0
  63. {orfdata-0.40.0 → orfdata-0.42.0}/docs/stylesheets/docs.css +0 -0
  64. {orfdata-0.40.0 → orfdata-0.42.0}/docs/viral.md +0 -0
  65. {orfdata-0.40.0 → orfdata-0.42.0}/docs.sh +0 -0
  66. {orfdata-0.40.0 → orfdata-0.42.0}/lint.sh +0 -0
  67. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/_pinned_genome.py +0 -0
  68. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/_structure.py +0 -0
  69. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/artifact_archives.py +0 -0
  70. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/build.py +0 -0
  71. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/catalog_cli.py +0 -0
  72. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/catalog_manifest.py +0 -0
  73. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/catalogs.py +0 -0
  74. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/cli_output.py +0 -0
  75. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/catalogs.json +0 -0
  76. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/chains.json +0 -0
  77. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/datasets.json +0 -0
  78. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/genomes.json +0 -0
  79. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/ires/rfam-15.1-human-ires.json +0 -0
  80. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/orf-evidence/AUTHOR-LICENSE.txt +0 -0
  81. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/orf-evidence/NOTICE.txt +0 -0
  82. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/orf-evidence/catalog.json.gz +0 -0
  83. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/orf-evidence/manifest.json +0 -0
  84. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/uorf-evidence/AUTHOR-LICENSE.txt +0 -0
  85. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/uorf-evidence/NOTICE.txt +0 -0
  86. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/uorf-evidence/catalog.json.gz +0 -0
  87. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/uorf-evidence/manifest.json +0 -0
  88. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/viral/gdc-grch38-d1-vd1-coverage.tsv +0 -0
  89. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/viral/gdc-grch38-d1-vd1-genbank.tsv +0 -0
  90. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/viral/gdc-grch38-d1-vd1-pave.tsv +0 -0
  91. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/viral/hpv16-refseq-CDS.json.gz +0 -0
  92. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/data/viral/subsets.yaml +0 -0
  93. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/dataset_cli.py +0 -0
  94. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/evidence.py +0 -0
  95. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/evidence_summary.py +0 -0
  96. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/fasta.py +0 -0
  97. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/genbank.py +0 -0
  98. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/genomes_cli.py +0 -0
  99. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/gtf.py +0 -0
  100. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/initiation_context.py +0 -0
  101. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/liftover.py +0 -0
  102. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/measurements.py +0 -0
  103. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/model.py +0 -0
  104. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/net.py +0 -0
  105. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/numeric_vector.py +0 -0
  106. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/pairing.py +0 -0
  107. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/record_sources.py +0 -0
  108. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/reference.py +0 -0
  109. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/reference_ledger.py +0 -0
  110. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/reference_mapping.py +0 -0
  111. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/reference_table.py +0 -0
  112. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/refseq.py +0 -0
  113. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/rna.py +0 -0
  114. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/search_reference.py +0 -0
  115. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sequence.py +0 -0
  116. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/__init__.py +0 -0
  117. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/ingolia.py +0 -0
  118. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/kaabinejadian.py +0 -0
  119. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/openprot.py +0 -0
  120. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/peptideatlas.py +0 -0
  121. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer.py +0 -0
  122. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_dataset.py +0 -0
  123. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_definitions.py +0 -0
  124. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_evidence.py +0 -0
  125. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_lineage.py +0 -0
  126. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_native.py +0 -0
  127. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/sources/pfizer_queries.py +0 -0
  128. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral.py +0 -0
  129. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral_annotation.py +0 -0
  130. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral_cli.py +0 -0
  131. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral_coverage.py +0 -0
  132. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral_registry.py +0 -0
  133. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata/viral_subsets.py +0 -0
  134. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata.egg-info/dependency_links.txt +0 -0
  135. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata.egg-info/entry_points.txt +0 -0
  136. {orfdata-0.40.0 → orfdata-0.42.0}/orfdata.egg-info/top_level.txt +0 -0
  137. {orfdata-0.40.0 → orfdata-0.42.0}/setup.cfg +0 -0
  138. {orfdata-0.40.0 → orfdata-0.42.0}/test.sh +0 -0
  139. {orfdata-0.40.0 → orfdata-0.42.0}/tests/conftest.py +0 -0
  140. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/aggregate_evidence.json +0 -0
  141. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905474.soft +0 -0
  142. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905474_KL9_fpkm.txt.gz +0 -0
  143. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905476.soft +0 -0
  144. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905476_KL10_fpkm.txt.gz +0 -0
  145. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905478.soft +0 -0
  146. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905478_KL11_fpkm.txt.gz +0 -0
  147. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905479.soft +0 -0
  148. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/GSM1905479_KL12_fpkm.txt.gz +0 -0
  149. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/NOTICE.md +0 -0
  150. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/expected.json +0 -0
  151. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/geo-series.soft +0 -0
  152. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/manifest.json +0 -0
  153. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/methods.pdf +0 -0
  154. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/paper.xml +0 -0
  155. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/pmc-metadata.json +0 -0
  156. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/qconcat.fasta +0 -0
  157. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/copy/workbook.xlsx +0 -0
  158. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346111.metadata.txt +0 -0
  159. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346111.quant.txt.gz +0 -0
  160. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346114.metadata.txt +0 -0
  161. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346114.quant.txt.gz +0 -0
  162. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346115.metadata.txt +0 -0
  163. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346115.quant.txt.gz +0 -0
  164. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346116.metadata.txt +0 -0
  165. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346116.quant.txt.gz +0 -0
  166. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346117.metadata.txt +0 -0
  167. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346117.quant.txt.gz +0 -0
  168. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346118.metadata.txt +0 -0
  169. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346118.quant.txt.gz +0 -0
  170. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346120.metadata.txt +0 -0
  171. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346120.quant.txt.gz +0 -0
  172. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346122.metadata.txt +0 -0
  173. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/GSM346122.quant.txt.gz +0 -0
  174. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/NOTICE.md +0 -0
  175. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/expected.json +0 -0
  176. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/manifest.json +0 -0
  177. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ingolia/readMe.txt.gz +0 -0
  178. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/kaabinejadian/README.md +0 -0
  179. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/kaabinejadian/Results.zip +0 -0
  180. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/kaabinejadian/manifest-v1.json +0 -0
  181. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/kaabinejadian/manifest.json +0 -0
  182. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/kaabinejadian/sdrf.tsv +0 -0
  183. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/README.md +0 -0
  184. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/S3.xlsx +0 -0
  185. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/ensembl107.cdna.fa.gz +0 -0
  186. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/ensembl107.gtf.gz +0 -0
  187. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/human-ensembl107.gtf.gz +0 -0
  188. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/human.bed +0 -0
  189. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/human.pep.fa +0 -0
  190. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/mouse.bed +0 -0
  191. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/ncorf_mammals/mouse.pep.fa +0 -0
  192. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/openprot/README.md +0 -0
  193. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/openprot/ensembl106.cdna.fa.gz +0 -0
  194. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/openprot/ensembl106.gtf.gz +0 -0
  195. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.bed.zip +0 -0
  196. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.fasta.zip +0 -0
  197. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.tsv.zip +0 -0
  198. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/peptideatlas/README.md +0 -0
  199. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/peptideatlas/atlas_build.tsv.zip +0 -0
  200. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/peptideatlas/ensembl.pep.fa.gz +0 -0
  201. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/peptideatlas/manifest.json +0 -0
  202. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/NOTICE.md +0 -0
  203. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/dog/expected.json +0 -0
  204. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/dog/manifest.json +0 -0
  205. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/dog/protein.tsv +0 -0
  206. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/dog/search.fasta +0 -0
  207. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/human/expected.json +0 -0
  208. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/human/manifest.json +0 -0
  209. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/human/protein.tsv +0 -0
  210. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/human/search.fasta +0 -0
  211. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/mouse/expected.json +0 -0
  212. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/mouse/manifest.json +0 -0
  213. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/mouse/protein.tsv +0 -0
  214. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/mouse/search.fasta +0 -0
  215. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/NOTICE.md +0 -0
  216. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/acquisition-missingness.json +0 -0
  217. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/definitions.json +0 -0
  218. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/dog-panel.json +0 -0
  219. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/membership-search-slice.fasta +0 -0
  220. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/memberships.json +0 -0
  221. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/native.json +0 -0
  222. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/parent-status-search-slice.fasta +0 -0
  223. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/parent-status.json +0 -0
  224. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/psm-parent-sets-search-slice.fasta +0 -0
  225. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/psm-parent-sets.json +0 -0
  226. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/search-slice.fasta +0 -0
  227. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/search-slice.json +0 -0
  228. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/study-slice.xml +0 -0
  229. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer/vendor/summary-samples.json +0 -0
  230. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/GSE325522_family.soft.gz +0 -0
  231. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/GSE325523_family.soft.gz +0 -0
  232. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/GSE325525_family.soft.gz +0 -0
  233. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/NOTICE.md +0 -0
  234. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/counts.csv.gz +0 -0
  235. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/dog-annotation.gtf.gz +0 -0
  236. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/dog-expected.json +0 -0
  237. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/dog-manifest.json +0 -0
  238. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/mouse-annotation.gtf.gz +0 -0
  239. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/mouse-expected.json +0 -0
  240. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/mouse-manifest.json +0 -0
  241. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/pfizer_rna/samples.xlsx +0 -0
  242. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/README.md +0 -0
  243. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/canis_lupus_familiaris.json +0 -0
  244. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/context-keys-v0.4.json +0 -0
  245. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/ensembl115.json +0 -0
  246. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/homo_sapiens.json +0 -0
  247. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/mitochondrial.json +0 -0
  248. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/mus_musculus.json +0 -0
  249. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/saccharomyces_cerevisiae.json +0 -0
  250. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/references/uniprot_literature.json +0 -0
  251. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/regions/NOTICE.md +0 -0
  252. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/regions/ingolia.json +0 -0
  253. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/README.md +0 -0
  254. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/SD3.xlsx +0 -0
  255. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/ensembl107.cdna.fa.gz +0 -0
  256. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/ensembl107.gtf.gz +0 -0
  257. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/ensembl107.ncrna.fa.gz +0 -0
  258. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/human-ensembl105.cdna.fa.gz +0 -0
  259. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/human-ensembl105.gtf.gz +0 -0
  260. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/human-ensembl105.ncrna.fa.gz +0 -0
  261. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/worm-ensembl105.cdna.fa.gz +0 -0
  262. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/worm-ensembl105.gtf.gz +0 -0
  263. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/worm-ensembl105.ncrna.fa.gz +0 -0
  264. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/yeast-ensembl115.cdna.fa.gz +0 -0
  265. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/yeast-ensembl115.dna.fa.gz +0 -0
  266. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/yeast-ensembl115.gtf.gz +0 -0
  267. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/zebrafish-ensembl115.cdna.fa.gz +0 -0
  268. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/zebrafish-ensembl115.gtf.gz +0 -0
  269. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/riborf/zebrafish-ensembl115.ncrna.fa.gz +0 -0
  270. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/search_reference/NOTICE.md +0 -0
  271. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/search_reference/dog.fasta +0 -0
  272. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/search_reference/ensembl83-expected.json +0 -0
  273. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/search_reference/ensembl83-human.fasta.gz +0 -0
  274. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/search_reference/expected.json +0 -0
  275. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/README.md +0 -0
  276. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/generate.py +0 -0
  277. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v1.json +0 -0
  278. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v1.sqlite +0 -0
  279. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v2.json +0 -0
  280. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v2.sqlite +0 -0
  281. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v3.json +0 -0
  282. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v3.sqlite +0 -0
  283. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v4.json +0 -0
  284. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/storage/v4.sqlite +0 -0
  285. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/GRCh83.d1.vd1_virus_decoy.txt.gz +0 -0
  286. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/NC_001526.4.gb.gz +0 -0
  287. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/genbank/HBV__X04615.1.gb.gz +0 -0
  288. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/genbank/HPV16__K02718.1.gb.gz +0 -0
  289. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/genbank/HPV35__X74477.1.gb.gz +0 -0
  290. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/genbank/HPV51__M62877.1.gb.gz +0 -0
  291. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/viral/genbank/HPV56__X74483.1.gb.gz +0 -0
  292. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/NOTICE.md +0 -0
  293. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/annotation.gtf.gz +0 -0
  294. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/copies.zip +0 -0
  295. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/expected.json +0 -0
  296. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/manifest.json +0 -0
  297. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/protein.zip +0 -0
  298. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/rna.zip +0 -0
  299. {orfdata-0.40.0 → orfdata-0.42.0}/tests/data/wang/search.fasta.gz +0 -0
  300. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_artifact_archives.py +0 -0
  301. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_catalog_registry.py +0 -0
  302. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_copy.py +0 -0
  303. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_cross_reference_pairing.py +0 -0
  304. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_dog_export_read_ahead.py +0 -0
  305. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_dog_peptides.py +0 -0
  306. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_ensembl_search_reference.py +0 -0
  307. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_evidence_rules.py +0 -0
  308. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_evidence_summary.py +0 -0
  309. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_export_sqlite_rows.py +0 -0
  310. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_extraction_budget.py +0 -0
  311. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_ftps_sqlite.py +0 -0
  312. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_genbank.py +0 -0
  313. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_genbank_equivalence.py +0 -0
  314. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_genetic_codes.py +0 -0
  315. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_genomes.py +0 -0
  316. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_ingolia.py +0 -0
  317. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_initiation_context.py +0 -0
  318. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_local_build_queries.py +0 -0
  319. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_measurements.py +0 -0
  320. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_merge_catalogs.py +0 -0
  321. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_more_species.py +0 -0
  322. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_ncorf_mammals.py +0 -0
  323. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_numeric_vector.py +0 -0
  324. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_orf_cases.py +0 -0
  325. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_orf_gtf.py +0 -0
  326. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_package_dog_dataset.py +0 -0
  327. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_package_sqlite_archive.py +0 -0
  328. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_paired_selectors.py +0 -0
  329. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pairing.py +0 -0
  330. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer.py +0 -0
  331. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_attribution.py +0 -0
  332. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_dataset.py +0 -0
  333. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_definitions.py +0 -0
  334. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_evidence.py +0 -0
  335. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_lineage.py +0 -0
  336. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_native.py +0 -0
  337. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_rna.py +0 -0
  338. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_pfizer_vendor.py +0 -0
  339. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_protein_set.py +0 -0
  340. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_proteome.py +0 -0
  341. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_proteome_external.py +0 -0
  342. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_proteome_fasta_tokens.py +0 -0
  343. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_proteome_producer_graph.py +0 -0
  344. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_reference_context.py +0 -0
  345. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_reference_ledger.py +0 -0
  346. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_reference_mapping.py +0 -0
  347. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_reference_orf.py +0 -0
  348. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_reference_table.py +0 -0
  349. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_refseq.py +0 -0
  350. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_region_targets.py +0 -0
  351. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_riborf.py +0 -0
  352. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_search_reference.py +0 -0
  353. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_selectors.py +0 -0
  354. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_storage.py +0 -0
  355. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_uorf_catalog.py +0 -0
  356. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_verify_dog_dataset.py +0 -0
  357. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral.py +0 -0
  358. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_bundle.py +0 -0
  359. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_cli.py +0 -0
  360. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_collections.py +0 -0
  361. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_completeness.py +0 -0
  362. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_coverage.py +0 -0
  363. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_initiation.py +0 -0
  364. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_origin_join.py +0 -0
  365. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_sources.py +0 -0
  366. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_viral_subsets.py +0 -0
  367. {orfdata-0.40.0 → orfdata-0.42.0}/tests/test_wang.py +0 -0
  368. {orfdata-0.40.0 → orfdata-0.42.0}/tools/README-dog-results.md +0 -0
  369. {orfdata-0.40.0 → orfdata-0.42.0}/tools/__init__.py +0 -0
  370. {orfdata-0.40.0 → orfdata-0.42.0}/tools/build_dog_dataset.py +0 -0
  371. {orfdata-0.40.0 → orfdata-0.42.0}/tools/build_gdc_viral_coverage.py +0 -0
  372. {orfdata-0.40.0 → orfdata-0.42.0}/tools/build_hpv16_cds.py +0 -0
  373. {orfdata-0.40.0 → orfdata-0.42.0}/tools/build_reference_ledger.py +0 -0
  374. {orfdata-0.40.0 → orfdata-0.42.0}/tools/dog_result_plan.json +0 -0
  375. {orfdata-0.40.0 → orfdata-0.42.0}/tools/export_dog_lineage.py +0 -0
  376. {orfdata-0.40.0 → orfdata-0.42.0}/tools/export_dog_results.py +0 -0
  377. {orfdata-0.40.0 → orfdata-0.42.0}/tools/export_sqlite_rows.py +0 -0
  378. {orfdata-0.40.0 → orfdata-0.42.0}/tools/extraction_budget.py +0 -0
  379. {orfdata-0.40.0 → orfdata-0.42.0}/tools/ftps_sqlite.py +0 -0
  380. {orfdata-0.40.0 → orfdata-0.42.0}/tools/inspect_dog_results.py +0 -0
  381. {orfdata-0.40.0 → orfdata-0.42.0}/tools/normalize_dog_evidence.py +0 -0
  382. {orfdata-0.40.0 → orfdata-0.42.0}/tools/package_dog_dataset.py +0 -0
  383. {orfdata-0.40.0 → orfdata-0.42.0}/tools/package_sqlite_archive.py +0 -0
  384. {orfdata-0.40.0 → orfdata-0.42.0}/tools/verify_dog_dataset.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: orfdata
3
- Version: 0.40.0
3
+ Version: 0.42.0
4
4
  Summary: Reference proteomes with evidence-backed noncanonical ORFs on PyEnsembl genomes
5
5
  Author: OpenVax
6
6
  License-Expression: Apache-2.0
@@ -10,29 +10,21 @@ License-File: LICENSE
10
10
  Requires-Dist: datacache<2,>=1.29.3
11
11
  Requires-Dist: pandas<4,>=3
12
12
  Requires-Dist: pyyaml<7,>=6
13
- Provides-Extra: pyensembl
14
- Requires-Dist: pyensembl>=2.27.2; extra == "pyensembl"
15
- Provides-Extra: build-data
16
- Requires-Dist: openpyxl>=3.1; extra == "build-data"
13
+ Requires-Dist: pyensembl>=2.27.2
14
+ Requires-Dist: openpyxl<4,>=3.1
15
+ Requires-Dist: pyarrow>=14
16
+ Requires-Dist: biotite<3,>=1.6
17
+ Requires-Dist: pyahocorasick<3,>=2.3
17
18
  Provides-Extra: canine-extraction
18
19
  Requires-Dist: apsw<4,>=3.54; extra == "canine-extraction"
19
- Requires-Dist: pyahocorasick<3,>=2.3; extra == "canine-extraction"
20
- Provides-Extra: viral
21
- Provides-Extra: data
22
- Requires-Dist: datacache<2,>=1.29.3; extra == "data"
23
- Provides-Extra: columnar
24
- Requires-Dist: pyarrow>=14; extra == "columnar"
25
20
  Provides-Extra: dev
26
21
  Requires-Dist: pytest; extra == "dev"
27
22
  Requires-Dist: ruff; extra == "dev"
28
23
  Requires-Dist: build; extra == "dev"
29
24
  Requires-Dist: twine; extra == "dev"
30
- Requires-Dist: openpyxl>=3.1; extra == "dev"
31
- Requires-Dist: pyensembl>=2.27.2; extra == "dev"
32
- Requires-Dist: datacache<2,>=1.29.3; extra == "dev"
33
25
  Requires-Dist: gb-io<0.5,>=0.4; extra == "dev"
34
26
  Requires-Dist: apsw<4,>=3.54; extra == "dev"
35
- Requires-Dist: pyahocorasick<3,>=2.3; extra == "dev"
27
+ Requires-Dist: biopython<2,>=1.88; extra == "dev"
36
28
  Provides-Extra: docs
37
29
  Requires-Dist: mkdocs<2,>=1.6; extra == "docs"
38
30
  Requires-Dist: mkdocs-material<10,>=9.5; extra == "docs"
@@ -56,19 +48,34 @@ evidence.
56
48
  Use Python 3.11 or later. Install orfdata and one PyEnsembl annotation:
57
49
 
58
50
  ```sh
59
- python -m pip install 'orfdata[pyensembl,build-data]'
51
+ python -m pip install 'orfdata'
60
52
  pyensembl install --release 115 --species human
61
53
  # For the ncORF evidence presets and "all":
62
54
  orfdata setup --species human --catalogs all
63
55
  ```
64
56
 
57
+ The normal installation includes PyEnsembl, spreadsheet source readers, PyArrow
58
+ exports and Biotite alignment support. Reference and measurement data are still
59
+ downloaded explicitly and checked against their pinned checksums. The
60
+ `canine-extraction` extra adds APSW only for extracting the original vendor
61
+ database through its custom VFS; released dataset queries and rebuilds from
62
+ normalized sources do not need it.
63
+
65
64
  List every bundled, downloadable or buildable resource and what is installed:
66
65
 
67
66
  ```sh
68
- orfdata download list
69
- orfdata download status
67
+ orfdata data list
68
+ orfdata data status
69
+ orfdata data info pfizer-atlas-dog-peptide-evidence
70
+ orfdata data fetch pfizer-atlas-dog-peptide-evidence
71
+ orfdata data path pfizer-atlas-dog-peptide-evidence
70
72
  ```
71
73
 
74
+ `data fetch NAME` downloads a published artifact or builds from pinned sources
75
+ when no artifact is distributed. The same command handles optional catalogues
76
+ such as `openprot-mouse` and datasets such as `peptideatlas-dog-peptides`.
77
+ `downloads` and `download` are aliases for `data`; `info` and `path` stay offline.
78
+
72
79
  `orfdata setup --species human` also installs `gdc-viruses`, the default
73
80
  200-reference GDC viral screen for human transcriptome analysis;
74
81
  `--collections none` skips it. Viral support is part of the base install, and
@@ -143,7 +150,7 @@ immunopeptidomics: peptides eluted from HLA molecules.
143
150
  | Dog | none: no public dog Ribo-seq or ncORF MS exists | |
144
151
 
145
152
  Human's bundled catalogue needs no setup. For the others, `pip install
146
- "orfdata[data,build-data]"`, then `orfdata setup --species mouse` (or
153
+ "orfdata"`, then `orfdata setup --species mouse` (or
147
154
  `zebrafish`, `worm`, `yeast`, or `human --catalogs all`) builds the catalogues
148
155
  from their sources' own files ([details](https://openvax.github.io/orfdata/catalogs/)).
149
156
  After `orfdata chains download` (add
@@ -216,11 +223,10 @@ Promoting further source records into the curated
216
223
  ## Measurement datasets
217
224
 
218
225
  RNA, ribosome and protein measurements are separate, downloadable datasets with
219
- the same species-scoped API. Install the `data` extra, then download and query
220
- one:
226
+ the same species-scoped API. Download and query one explicitly:
221
227
 
222
228
  ```sh
223
- pip install 'orfdata[data]'
229
+ pip install 'orfdata'
224
230
  orfdata datasets list
225
231
  orfdata datasets download ingolia-yeast-rna-ribo
226
232
  ```
@@ -16,19 +16,34 @@ evidence.
16
16
  Use Python 3.11 or later. Install orfdata and one PyEnsembl annotation:
17
17
 
18
18
  ```sh
19
- python -m pip install 'orfdata[pyensembl,build-data]'
19
+ python -m pip install 'orfdata'
20
20
  pyensembl install --release 115 --species human
21
21
  # For the ncORF evidence presets and "all":
22
22
  orfdata setup --species human --catalogs all
23
23
  ```
24
24
 
25
+ The normal installation includes PyEnsembl, spreadsheet source readers, PyArrow
26
+ exports and Biotite alignment support. Reference and measurement data are still
27
+ downloaded explicitly and checked against their pinned checksums. The
28
+ `canine-extraction` extra adds APSW only for extracting the original vendor
29
+ database through its custom VFS; released dataset queries and rebuilds from
30
+ normalized sources do not need it.
31
+
25
32
  List every bundled, downloadable or buildable resource and what is installed:
26
33
 
27
34
  ```sh
28
- orfdata download list
29
- orfdata download status
35
+ orfdata data list
36
+ orfdata data status
37
+ orfdata data info pfizer-atlas-dog-peptide-evidence
38
+ orfdata data fetch pfizer-atlas-dog-peptide-evidence
39
+ orfdata data path pfizer-atlas-dog-peptide-evidence
30
40
  ```
31
41
 
42
+ `data fetch NAME` downloads a published artifact or builds from pinned sources
43
+ when no artifact is distributed. The same command handles optional catalogues
44
+ such as `openprot-mouse` and datasets such as `peptideatlas-dog-peptides`.
45
+ `downloads` and `download` are aliases for `data`; `info` and `path` stay offline.
46
+
32
47
  `orfdata setup --species human` also installs `gdc-viruses`, the default
33
48
  200-reference GDC viral screen for human transcriptome analysis;
34
49
  `--collections none` skips it. Viral support is part of the base install, and
@@ -103,7 +118,7 @@ immunopeptidomics: peptides eluted from HLA molecules.
103
118
  | Dog | none: no public dog Ribo-seq or ncORF MS exists | |
104
119
 
105
120
  Human's bundled catalogue needs no setup. For the others, `pip install
106
- "orfdata[data,build-data]"`, then `orfdata setup --species mouse` (or
121
+ "orfdata"`, then `orfdata setup --species mouse` (or
107
122
  `zebrafish`, `worm`, `yeast`, or `human --catalogs all`) builds the catalogues
108
123
  from their sources' own files ([details](https://openvax.github.io/orfdata/catalogs/)).
109
124
  After `orfdata chains download` (add
@@ -176,11 +191,10 @@ Promoting further source records into the curated
176
191
  ## Measurement datasets
177
192
 
178
193
  RNA, ribosome and protein measurements are separate, downloadable datasets with
179
- the same species-scoped API. Install the `data` extra, then download and query
180
- one:
194
+ the same species-scoped API. Download and query one explicitly:
181
195
 
182
196
  ```sh
183
- pip install 'orfdata[data]'
197
+ pip install 'orfdata'
184
198
  orfdata datasets list
185
199
  orfdata datasets download ingolia-yeast-rna-ribo
186
200
  ```
@@ -77,7 +77,7 @@ existing standalone local-file workflow.
77
77
  ## Mouse
78
78
 
79
79
  ```sh
80
- pip install "orfdata[data,build-data]"
80
+ pip install "orfdata"
81
81
  orfdata setup --species mouse --accept-terms # Three catalogues and the chains; about 130 MB of sources
82
82
  ```
83
83
 
@@ -116,8 +116,7 @@ ATG, CTG, GTG or TTG. Its types are uORF (8,294), lncORF (3,576), uoORF
116
116
  (1,950), iORF (1,749), dORF (741) and doORF (174).
117
117
 
118
118
  - **Sources.** The authors' BED and protein FASTA (MIT, pinned commit), the
119
- paper's Table S3 (CC BY 4.0) and Ensembl 107's GTF; about 40 MB. Building
120
- needs `orfdata[build-data]` for the spreadsheet.
119
+ paper's Table S3 (CC BY 4.0) and Ensembl 107's GTF; about 40 MB.
121
120
  - **Coding paths.** The BED garbles multi-exon block sizes, so each ORF's
122
121
  path comes from its representative transcript and transcript coordinates
123
122
  in Ensembl 107, checked against its genomic start, stop, BED span and
@@ -163,8 +162,7 @@ floor, remains available explicitly as `--version 1`.
163
162
  51,881 place on Ensembl 115.
164
163
  - **Sources.** Supplementary Data 3 (CC BY 4.0) and Ensembl 107's GTF, cDNA
165
164
  and ncRNA FASTAs; about 115 MB, of which the 32 MB GTF is the one Chang et
166
- al.'s catalogue uses, so `orfdata setup` downloads it once. Building needs
167
- `orfdata[build-data]`.
165
+ al.'s catalogue uses, so `orfdata setup` downloads it once.
168
166
  - **Evidence.** Presence in the source's set is aggregate Ribo-seq support:
169
167
  `RiboSeq()` selects every ORF, `RiboSeq(min_studies=2)` none.
170
168
  - **Length policy.** `catalog.query(min_protein_length=5)` and
@@ -430,7 +428,7 @@ silently dropped.
430
428
 
431
429
  PyEnsembl's `EnsemblRelease` has no T2T-CHM13 annotation, so orfdata pins
432
430
  Ensembl's rapid-release one (2022_07) and installs it on request, checking each
433
- file's size and SHA-256 (it needs `orfdata[pyensembl]`). The T2T Consortium's
431
+ file's size and SHA-256. The T2T Consortium's
434
432
  GRCh38-to-CHM13 chain is public domain (CC0):
435
433
 
436
434
  ```sh
@@ -481,8 +479,7 @@ orfdata lift --species human --to GRCh37 --output orfs-grch37.json.gz
481
479
  error. `--catalog FILE` lifts a local catalogue instead, and `--chain FILE` uses
482
480
  your own chain file instead of a downloaded pin. Pass the result back with
483
481
  `--nc-orf-sources` for `orfdata proteome`; JSON and TSV exports include
484
- each record's original and the chain. Downloading chains needs the
485
- `orfdata[data]` extra, which adds DataCache. In Python:
482
+ each record's original and the chain. In Python:
486
483
 
487
484
  ```python
488
485
  from orfdata import download_chain, lift_catalog, load_catalog, load_chain
@@ -7,7 +7,7 @@ grown in glucose-limited chemostats. The strain is EUROSCARF Y11335 BY4742,
7
7
  with the reported genotype retained on each sample.
8
8
 
9
9
  ```sh
10
- pip install 'orfdata[data]'
10
+ pip install 'orfdata'
11
11
  orfdata datasets info copy-yeast-abundance
12
12
  orfdata datasets download copy-yeast-abundance
13
13
  orfdata datasets pairs copy-yeast-abundance --basis condition_aggregate
@@ -101,7 +101,7 @@ between species, and different cultures/calibrations remain different experiment
101
101
  See [pairing and orthology](pairing.md).
102
102
 
103
103
  To rebuild the release from the pinned public workbook, standards, metadata and
104
- four RNA files, install `orfdata[data,build-data]` and run
104
+ four RNA files, install `orfdata` and run
105
105
  `orfdata datasets build copy-yeast-abundance`. Python uses
106
106
  `DatasetRegistry().build("copy-yeast-abundance")`. Local verified inputs can be
107
107
  supplied with repeated `--source-path ASSET=PATH` or `source_paths={...}`.
@@ -0,0 +1,60 @@
1
+ # Canine paired measurements and translation-evidence audit
2
+
3
+ Source check: **28 October 2026**. This audit identifies importable measurement
4
+ files and their limitations. It does not add a dataset to the registry.
5
+ The [machine-readable audit](data/dog-source-audit-20261028.json) contains source
6
+ URLs, hashes, counts, search queries and a candidate sample crosswalk.
7
+
8
+ ## Paired RNA and protein: a verified study
9
+
10
+ [Amini et al., 2021](https://pmc.ncbi.nlm.nih.gov/articles/PMC8042244/)
11
+ studied cancer-associated and normal stroma from archived canine mammary
12
+ carcinomas. The authors explicitly reused the cases of their earlier RNA study.
13
+ Original case 7 was excluded from proteomics because its paraffin block was
14
+ unavailable. Measurements come from separate laser-capture preparations of
15
+ the same tissue cases, not identical RNA/protein aliquots.
16
+
17
+ | Source | Verified processed data | Download |
18
+ | --- | --- | --- |
19
+ | [GSE135183](https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE135183) | 18,582 genes × 30 RNA samples, 15 cases with two stromal compartments | [Raw counts, 606 KB compressed](https://ftp.ncbi.nlm.nih.gov/geo/series/GSE135nnn/GSE135183/suppl/GSE135183_raw_counts.csv.gz) |
20
+ | [PXD023023](https://www.ebi.ac.uk/pride/archive/projects/PXD023023) | 1,583 native protein-group rows with 28 LFQ sample columns | [Protein groups, 2.8 MB](https://ftp.pride.ebi.ac.uk/pride/data/archive/2021/03/PXD023023/proteinGroups.txt) |
21
+ | PXD023023 | 5,413 peptide rows with native quantitative fields | [Peptides, 4.5 MB](https://ftp.pride.ebi.ac.uk/pride/data/archive/2021/03/PXD023023/peptides.txt) |
22
+
23
+ The downloaded protein and peptide files match PRIDE's deposited SHA-1 checksums;
24
+ the audit also records SHA-256 for all three processed files. RNA values are
25
+ nonnegative integer counts. Native protein-group counts include controls and
26
+ contaminants and are not counts of confidently detected biological proteins.
27
+
28
+ PRIDE filenames use case numbers 1–15; GEO uses case IDs such as 109 and 135.
29
+ Matching the article's Table 1 to GEO by breed, age and histological subtype
30
+ uniquely reconciles all 14 proteomics cases. The resulting 28 sample links are
31
+ **metadata-derived**, not an author-supplied identifier crosswalk. Breed spelling
32
+ normalizations are recorded. GEO case 127 is the unmatched RNA case.
33
+
34
+ An importer must retain that pairing basis, separate stromal compartments,
35
+ protein-group ambiguity, controls, missing quantities and native units. The
36
+ deposited search used a dated canonical UniProt reference, but its FASTA is not
37
+ among the 31 PRIDE files. Sequence/reference qualification remains necessary;
38
+ these data do not establish ncORF translation. Author-derived contrasts in the
39
+ supplementary workbooks must stay distinct from sample-level measurements.
40
+ Import work remains tracked in [#20](https://github.com/openvax/orfdata/issues/20).
41
+
42
+ ## Dog Ribo-seq and ncORF translation
43
+
44
+ The date-stamped dog-specific SRA, GEO and ENA queries in the audit returned no
45
+ matching sequencing records. This is a bounded repository search, not proof
46
+ that no unpublished or differently indexed experiment exists.
47
+
48
+ [Pfeffer et al., 2015](https://www.nature.com/articles/ncomms9403)
49
+ reports ribosome profiling and total RNA sequencing of canine pancreas rough-ER
50
+ preparations aligned to CanFam3.1/Ensembl 77. Its accession section lists EMDB
51
+ and PDB deposits, without a sequencing accession. No downloadable reads or
52
+ processed ORF-level counts were verified in this audit. Even if recovered, the
53
+ preparation would describe an enriched pancreatic compartment, not a broad
54
+ normal-tissue canine translatome.
55
+
56
+ Existing canine PeptideAtlas, Pfizer and DLA datasets retain their deposited
57
+ canonical-search scope. The experimental dog ncORF search pipeline is a route
58
+ to new analysis, not a released experimentally supported catalogue. Dog ncORF
59
+ translation coverage therefore remains unavailable pending qualified data or
60
+ a separately validated reanalysis. See [#12](https://github.com/openvax/orfdata/issues/12).
@@ -5,6 +5,9 @@ spectrometry has observed. Neither searched for noncanonical ORFs, so they
5
5
  don't add ORFs to the dog proteome
6
6
  ([why dog has no ncORF catalogue](catalogs.md#dog)).
7
7
 
8
+ For a verified paired RNA/protein study and the latest bounded search for dog
9
+ Ribo-seq, see the [canine source audit](dog-data-sources.md).
10
+
8
11
  | Dataset | What it holds | How to get it |
9
12
  |---|---|---|
10
13
  | `kaabinejadian-dog-dla-ligands` | DLA class I ligands from four dog tumours and three DLA-88 monoallelic cell lines | `orfdata datasets download` (CC0, 25 MB) |
@@ -3,8 +3,48 @@
3
3
  ORFdata has one common entry point for data acquisition:
4
4
 
5
5
  ```sh
6
- orfdata download list
7
- orfdata download status
6
+ orfdata data list
7
+ orfdata data list --species dog
8
+ orfdata data info pfizer-atlas-dog-peptide-evidence
9
+ orfdata data fetch pfizer-atlas-dog-peptide-evidence
10
+ orfdata data fetch peptideatlas-dog-peptides openprot-mouse
11
+ orfdata data path pfizer-atlas-dog-peptide-evidence
12
+ orfdata data status
13
+ ```
14
+
15
+ `data`, `downloads` and `download` are aliases for the same command group.
16
+ The `list/info/fetch/path` vocabulary follows other OpenVax download tools.
17
+ `fetch` accepts one or more explicit resource names and chooses the registered
18
+ acquisition route: download an artifact when available, otherwise build locally
19
+ from checksum-pinned source files. All names and required terms are checked
20
+ before the first acquisition. There is no implicit download-all operation.
21
+
22
+ `info NAME` reports the version, source/coverage manifest and distribution
23
+ metadata, including sizes and redistribution terms where declared. `path NAME`
24
+ prints an installed file or directory for scripts; missing data is an error,
25
+ and never triggers a download. Use `--verify` on reads to validate local bytes,
26
+ `--cache-root DIR` to select a cache, and `--json` for machine output.
27
+ `fetch --json` returns one result per distinct requested name.
28
+
29
+ Use `--kind` to disambiguate colliding resource names. For one resource,
30
+ `--version VERSION` selects a historical release and `--source-path ASSET=PATH`
31
+ provides already downloaded catalogue/dataset sources or genome files. Source
32
+ overrides remain checksum-checked. `--force` installs a fresh generation.
33
+ Restricted chain downloads require `--accept-terms` after reviewing `info`.
34
+
35
+ The same operations are available in Python:
36
+
37
+ ```python
38
+ from orfdata import data_info, data_path, fetch_data
39
+
40
+ details = data_info("openprot-mouse") # Offline; shows the build route and terms.
41
+ result = fetch_data("openprot-mouse") # Explicit source download and processing.
42
+ path = data_path("openprot-mouse") # Offline file/directory lookup.
43
+ ```
44
+
45
+ The focused forms remain available for additional resource-specific options:
46
+
47
+ ```sh
8
48
  orfdata download viral --species human
9
49
  orfdata download catalog NAME
10
50
  orfdata download dataset NAME
@@ -14,8 +54,7 @@ orfdata download chains --species human
14
54
  ```
15
55
 
16
56
  The operation comes first so the same discovery and installation model applies
17
- to every resource kind. `orfdata download viral` is therefore the primary
18
- command. Focused command groups such as `orfdata viral coverage` and
57
+ to every resource kind. Focused command groups such as `orfdata viral coverage` and
19
58
  `orfdata viral summary` remain useful for domain-specific inspection.
20
59
 
21
60
  `list` shows every bundled, downloadable or locally buildable primary resource
@@ -17,7 +17,7 @@ yeast data.
17
17
  The download is approximately 397 MB and installs to a 3.86 GB SQLite database.
18
18
 
19
19
  ```sh
20
- pip install 'orfdata[data]'
20
+ pip install 'orfdata'
21
21
  orfdata datasets download wang-human-tissue-abundance --version 2026-10-12.1
22
22
  ```
23
23
 
@@ -12,7 +12,7 @@ is a recorded host of the virus.
12
12
  Use Python 3.11 or later. Install orfdata and one PyEnsembl annotation:
13
13
 
14
14
  ```sh
15
- python -m pip install 'orfdata[pyensembl,build-data]'
15
+ python -m pip install 'orfdata'
16
16
  pyensembl install --release 115 --species human
17
17
  orfdata setup --species human --catalogs all # For ncORF presets and "all"
18
18
  ```
@@ -6,7 +6,7 @@ measurements from [Ingolia et al. (2009)](https://doi.org/10.1126/science.116897
6
6
  It uses the same dataset API as human, mouse and dog.
7
7
 
8
8
  ```sh
9
- pip install 'orfdata[data]'
9
+ pip install 'orfdata'
10
10
  orfdata datasets info ingolia-yeast-rna-ribo
11
11
  orfdata datasets download ingolia-yeast-rna-ribo
12
12
  ```
@@ -56,7 +56,7 @@ libraries and creates no assay pairs or translation-efficiency ratios. It also
56
56
  does not pair these cultures with the separate [CoPY protein study](copy-yeast.md).
57
57
  [Issue #11](https://github.com/openvax/orfdata/issues/11) tracks these source gaps.
58
58
 
59
- To rebuild, install `orfdata[data,build-data]` and run
59
+ To rebuild, install `orfdata` and run
60
60
  `orfdata datasets build ingolia-yeast-rna-ribo`, or
61
61
  `DatasetRegistry().build("ingolia-yeast-rna-ribo")`. All 17 source inputs have
62
62
  pinned URLs, sizes and checksums. Verified local inputs can be supplied through
@@ -23,7 +23,7 @@ Its pooled PSM counts describe spectra, not sample-level protein abundance.
23
23
 
24
24
  ## Discover, download and query
25
25
 
26
- Install `orfdata[data]` to manage datasets. Creating a registry and listing
26
+ Install `orfdata` to manage datasets. Creating a registry and listing
27
27
  releases reads metadata only:
28
28
 
29
29
  ```python
@@ -252,7 +252,7 @@ composite foreign keys, so human, mouse, dog, yeast and arbitrary other taxa use
252
252
  the same schema. [Compact storage and compatibility](storage.md) describes new
253
253
  SQLite v4 writes, legacy readers and actual-source size/query benchmarks.
254
254
 
255
- The core API needs neither pandas nor PyArrow. The optional `orfdata[columnar]`
256
- extra enables `dataset.export_parquet(path)`. Its query columns accompany the
255
+ The normal installation includes pandas and PyArrow. Use
256
+ `dataset.export_parquet(path)` to export query columns alongside the
257
257
  full measurement JSON, preserving exact values and provenance even when a
258
258
  floating-point analysis column cannot represent an integer exactly.
@@ -21,7 +21,7 @@ copies per cell. These are pooled tissue samples; rodent condition labels also
21
21
  include sex. Channels and technical runs do not count as independent donors.
22
22
 
23
23
  ```sh
24
- pip install 'orfdata[data]'
24
+ pip install 'orfdata'
25
25
  orfdata datasets list --species dog
26
26
  orfdata datasets download pfizer-atlas-dog-protein
27
27
  orfdata datasets query pfizer-atlas-dog-protein --quantity protein_abundance --unit iBAQ --scale linear
@@ -19,7 +19,7 @@ Zeros stay measured zeros: 4,218,202 dog observations and 18,019,555 mouse
19
19
  observations. Every value retains the native numeric text and source line.
20
20
 
21
21
  ```sh
22
- pip install 'orfdata[data]'
22
+ pip install 'orfdata'
23
23
  orfdata datasets download pfizer-atlas-dog-rna --version 2026-10-12.1
24
24
  orfdata datasets query pfizer-atlas-dog-rna --sample 1 --unit counts
25
25
  ```
@@ -74,7 +74,7 @@ and remain candidates for separate releases through the same importer.
74
74
 
75
75
  `registry.build(name, source_paths=...)` or `orfdata datasets build NAME` rebuilds
76
76
  from pinned counts, GEO metadata, factual Table S5 sample records and the
77
- historical GTF; workbook rebuilding needs `orfdata[build-data]`. Python returns
77
+ historical GTF. Python returns
78
78
  a `QuantitativeDataset` ready to query. Reopen it offline with
79
79
  `registry.open_build(name)` or inspect it with `registry.inspect_build(name)`.
80
80
  The CLI selects that source build explicitly with `orfdata datasets query NAME
@@ -44,6 +44,7 @@ nav:
44
44
  - Yeast protein and RNA: copy-yeast.md
45
45
  - Yeast RNA and ribosome occupancy: ingolia-yeast.md
46
46
  - Dog MHC ligands and PeptideAtlas: dog-peptides.md
47
+ - Dog paired-data and Ribo-seq source audit: dog-data-sources.md
47
48
  - Project:
48
49
  - Release notes: https://github.com/openvax/orfdata/blob/main/CHANGELOG.md
49
50
  - Data roadmap: https://github.com/openvax/orfdata/issues/3
@@ -17,6 +17,7 @@ from .catalog import (
17
17
  )
18
18
  from .catalog_manifest import CatalogManifest
19
19
  from .catalogs import CatalogRegistry, build_catalog
20
+ from .data_resources import data_info, data_path, fetch_data
20
21
  from .dataset import QuantitativeDataset
21
22
  from .datasets import DatasetRegistry, build_dataset
22
23
  from .downloads import DataStatus, list_data
@@ -176,6 +177,9 @@ __all__ = [
176
177
  "build_dataset",
177
178
  "DataStatus",
178
179
  "list_data",
180
+ "data_info",
181
+ "data_path",
182
+ "fetch_data",
179
183
  "DatasetManifest",
180
184
  "SourceAsset",
181
185
  "Sample",
@@ -1040,10 +1040,7 @@ def load_catalog(path=None, *, species=None, genome_build=None, registry=None, e
1040
1040
  root = getattr(registry, "_cache_root", None)
1041
1041
  needs = [_install_hint(c) for c, _ in plan if c.registry is not None and _installed(c) in (None, "damaged")]
1042
1042
  chains = list(dict.fromkeys(c for _, route in plan for c in route))
1043
- try:
1044
- missing = [c for c in chains if not chain_downloaded(c, cache_root=root)]
1045
- except ImportError: # Without DataCache no chain can have been downloaded.
1046
- missing = chains
1043
+ missing = [c for c in chains if not chain_downloaded(c, cache_root=root)]
1047
1044
  cli_root = "" if root is None else f" --cache-root {root}"
1048
1045
  if missing:
1049
1046
  accept = " --accept-terms" if any(c.restricted for c in missing) else ""
@@ -1052,17 +1049,10 @@ def load_catalog(path=None, *, species=None, genome_build=None, registry=None, e
1052
1049
  f"download_chains(species={species!r}{', accept_terms=True' if accept else ''}"
1053
1050
  f"{'' if root is None else f', cache_root={str(root)!r}'})")
1054
1051
  if needs:
1055
- try:
1056
- from .datasets import _datacache
1057
-
1058
- _datacache()
1059
- step = ""
1060
- except ImportError:
1061
- step = "orfdata[data] installed, then "
1062
1052
  accept = " --accept-terms" if any(c.restricted for c in missing) else ""
1063
1053
  chosen = ("" if catalogs is None else " --catalogs " + (
1064
1054
  catalogs if isinstance(catalogs, str) else ",".join(catalogs)))
1065
- raise ValueError(f"{species} {genome_build} ORFs need {step}" + "; and ".join(needs)
1055
+ raise ValueError(f"{species} {genome_build} ORFs need " + "; and ".join(needs)
1066
1056
  + f". Or install everything at once with 'orfdata setup --species {species}{chosen}{accept}"
1067
1057
  f"{cli_root}'")
1068
1058
  # Lifting and merging take seconds; one process reuses the result for exactly the same inputs.
@@ -1235,16 +1225,13 @@ def _releases(found):
1235
1225
  def _installed(choice):
1236
1226
  """How a registered release is installed: "downloaded", "built", "damaged" or None. Offline, unhashed."""
1237
1227
  registry, name, version = choice.registry, choice.name, choice.version
1238
- try:
1239
- damaged = False
1240
- if registry.published(name, version):
1241
- status = registry.inspect(name, version, verify_files=False).status
1242
- if status == "available":
1243
- return "downloaded"
1244
- damaged = status != "missing"
1245
- status = registry.inspect_build(name, version, verify_files=False).status
1246
- except ImportError: # Without DataCache nothing can have been downloaded or built.
1247
- return None
1228
+ damaged = False
1229
+ if registry.published(name, version):
1230
+ status = registry.inspect(name, version, verify_files=False).status
1231
+ if status == "available":
1232
+ return "downloaded"
1233
+ damaged = status != "missing"
1234
+ status = registry.inspect_build(name, version, verify_files=False).status
1248
1235
  if status == "available":
1249
1236
  return "built"
1250
1237
  return "damaged" if damaged or status != "missing" else None
@@ -1260,12 +1247,6 @@ def _open_registered(choice, expected_sha256):
1260
1247
  how = (f"{verb} it{when} with CatalogRegistry().{verb}({name!r}, {version!r}"
1261
1248
  f"{', force=True' if installed else ''}) or 'orfdata catalogs {verb} {name} --version {version}"
1262
1249
  f"{' --force' if installed else ''}'")
1263
- try:
1264
- from .datasets import _datacache
1265
-
1266
- _datacache()
1267
- except ImportError:
1268
- how = "install orfdata[data], then " + how
1269
1250
  state = "damaged" if installed else "not installed"
1270
1251
  raise ValueError(f"The {name} {version} ORF catalogue is {state}; {how}")
1271
1252
  if installed == "built":
@@ -1334,10 +1315,7 @@ def catalog_status(*, registry=None):
1334
1315
  return plans[species, build, catalogs]
1335
1316
 
1336
1317
  def downloaded(chain):
1337
- try:
1338
- return chain_downloaded(chain, cache_root=root)
1339
- except ImportError: # Without DataCache nothing can be downloaded.
1340
- return False
1318
+ return chain_downloaded(chain, cache_root=root)
1341
1319
 
1342
1320
  rows = []
1343
1321
  for c in choices:
@@ -30,10 +30,10 @@ def run(argv=None, prog=None, *, catalog_loader=load_catalog):
30
30
  from .proteome_cli import run as proteome_run
31
31
 
32
32
  return proteome_run(argv[1:], prog=(prog or "orfdata") + " proteome")
33
- if argv and argv[0] == "download":
33
+ if argv and argv[0] in ("data", "download", "downloads"):
34
34
  from .download_cli import run as download_run
35
35
 
36
- return download_run(argv[1:], prog=(prog or "orfdata") + " download")
36
+ return download_run(argv[1:], prog=f"{prog or 'orfdata'} {argv[0]}")
37
37
  if argv and argv[0] == "viral":
38
38
  from .viral_cli import run as viral_run
39
39
 
@@ -56,7 +56,7 @@ def run(argv=None, prog=None, *, catalog_loader=load_catalog):
56
56
  "catalogues with 'orfdata catalogs --help'; lift a catalogue to another assembly with "
57
57
  "'orfdata lift --help' and 'orfdata chains --help'; annotations PyEnsembl lacks, such as "
58
58
  "T2T-CHM13, with 'orfdata genomes --help'; discover and acquire data with "
59
- "'orfdata download --help'; viral coverage, subsets and installed layers with "
59
+ "'orfdata data --help' (also 'downloads' or 'download'); viral coverage, subsets and installed layers with "
60
60
  "'orfdata viral --help'.")
61
61
  _add_query_arguments(parser)
62
62
  args = parser.parse_args(argv)
@@ -137,7 +137,7 @@ GDC DNA is the source circle rotated by 864 bases. Both placements retain
137
137
  their own SHA256 and ordered, 1-based inclusive coding blocks.
138
138
  GDC reference files: https://gdc.cancer.gov/about-data/gdc-data-processing/gdc-reference-files .
139
139
 
140
- Rebuild with `orfdata[build-data]` installed:
140
+ Rebuild with `orfdata` installed:
141
141
 
142
142
  ```sh
143
143
  python tools/build_hpv16_cds.py tests/data/viral/NC_001526.4.gb.gz \