orfdata 0.35.0__tar.gz → 0.37.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 (333) hide show
  1. {orfdata-0.35.0/orfdata.egg-info → orfdata-0.37.0}/PKG-INFO +59 -13
  2. {orfdata-0.35.0 → orfdata-0.37.0}/README.md +53 -10
  3. {orfdata-0.35.0 → orfdata-0.37.0}/docs/catalogs.md +50 -44
  4. {orfdata-0.35.0 → orfdata-0.37.0}/docs/coverage.md +2 -2
  5. orfdata-0.37.0/docs/downloads.md +257 -0
  6. orfdata-0.37.0/docs/downstream.md +173 -0
  7. {orfdata-0.35.0 → orfdata-0.37.0}/docs/index.md +23 -10
  8. {orfdata-0.35.0 → orfdata-0.37.0}/docs/proteome.md +163 -45
  9. orfdata-0.37.0/docs/viral.md +635 -0
  10. orfdata-0.37.0/lint.sh +3 -0
  11. {orfdata-0.35.0 → orfdata-0.37.0}/mkdocs.yml +2 -0
  12. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/__init__.py +43 -6
  13. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/catalog.py +6 -0
  14. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/catalogs.py +2 -2
  15. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/cli.py +30 -6
  16. orfdata-0.37.0/orfdata/cli_output.py +48 -0
  17. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/catalogs.json +511 -5
  18. orfdata-0.37.0/orfdata/data/viral/NOTICE.md +149 -0
  19. orfdata-0.37.0/orfdata/data/viral/gdc-grch38-d1-vd1-genbank.tsv +205 -0
  20. orfdata-0.37.0/orfdata/data/viral/gdc-grch38-d1-vd1-pave.tsv +195 -0
  21. orfdata-0.37.0/orfdata/data/viral/subsets.yaml +113 -0
  22. orfdata-0.37.0/orfdata/download_cli.py +271 -0
  23. orfdata-0.37.0/orfdata/downloads.py +330 -0
  24. orfdata-0.37.0/orfdata/fasta.py +11 -0
  25. orfdata-0.37.0/orfdata/genbank.py +254 -0
  26. orfdata-0.37.0/orfdata/gtf.py +121 -0
  27. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/install.py +56 -9
  28. orfdata-0.37.0/orfdata/net.py +51 -0
  29. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/proteome.py +646 -198
  30. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/proteome_cli.py +10 -1
  31. orfdata-0.37.0/orfdata/record_sources.py +298 -0
  32. orfdata-0.37.0/orfdata/reference_ledger.py +204 -0
  33. orfdata-0.37.0/orfdata/reference_table.py +118 -0
  34. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/refseq.py +2 -2
  35. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/riborf.py +25 -11
  36. orfdata-0.37.0/orfdata/version.py +1 -0
  37. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/viral.py +2 -4
  38. orfdata-0.37.0/orfdata/viral_annotation.py +453 -0
  39. orfdata-0.37.0/orfdata/viral_cli.py +232 -0
  40. orfdata-0.37.0/orfdata/viral_coverage.py +210 -0
  41. orfdata-0.37.0/orfdata/viral_panel.py +1219 -0
  42. orfdata-0.37.0/orfdata/viral_registry.py +292 -0
  43. orfdata-0.37.0/orfdata/viral_subsets.py +101 -0
  44. {orfdata-0.35.0 → orfdata-0.37.0/orfdata.egg-info}/PKG-INFO +59 -13
  45. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata.egg-info/SOURCES.txt +40 -1
  46. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata.egg-info/requires.txt +6 -2
  47. {orfdata-0.35.0 → orfdata-0.37.0}/pyproject.toml +9 -3
  48. orfdata-0.37.0/tests/conftest.py +210 -0
  49. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/README.md +2 -2
  50. orfdata-0.37.0/tests/data/viral/genbank/HBV__X04615.1.gb.gz +0 -0
  51. orfdata-0.37.0/tests/data/viral/genbank/HPV16__K02718.1.gb.gz +0 -0
  52. orfdata-0.37.0/tests/data/viral/genbank/HPV35__X74477.1.gb.gz +0 -0
  53. orfdata-0.37.0/tests/data/viral/genbank/HPV51__M62877.1.gb.gz +0 -0
  54. orfdata-0.37.0/tests/data/viral/genbank/HPV56__X74483.1.gb.gz +0 -0
  55. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_catalog_registry.py +9 -3
  56. orfdata-0.37.0/tests/test_downloads.py +173 -0
  57. orfdata-0.37.0/tests/test_genbank.py +162 -0
  58. orfdata-0.37.0/tests/test_genbank_equivalence.py +110 -0
  59. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_more_species.py +13 -12
  60. orfdata-0.37.0/tests/test_orf_gtf.py +145 -0
  61. orfdata-0.37.0/tests/test_protein_set.py +126 -0
  62. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_proteome.py +61 -32
  63. orfdata-0.37.0/tests/test_proteome_external.py +265 -0
  64. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_proteome_fasta_tokens.py +66 -14
  65. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_proteome_producer_graph.py +19 -19
  66. orfdata-0.37.0/tests/test_reference_ledger.py +184 -0
  67. orfdata-0.37.0/tests/test_reference_table.py +94 -0
  68. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_refseq.py +3 -3
  69. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_riborf.py +37 -9
  70. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_uorf_catalog.py +3 -0
  71. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_viral.py +22 -12
  72. orfdata-0.37.0/tests/test_viral_bundle.py +228 -0
  73. orfdata-0.37.0/tests/test_viral_cli.py +156 -0
  74. orfdata-0.37.0/tests/test_viral_collections.py +132 -0
  75. orfdata-0.37.0/tests/test_viral_completeness.py +128 -0
  76. orfdata-0.37.0/tests/test_viral_coverage.py +116 -0
  77. orfdata-0.37.0/tests/test_viral_initiation.py +142 -0
  78. orfdata-0.37.0/tests/test_viral_origin_join.py +109 -0
  79. orfdata-0.37.0/tests/test_viral_sources.py +183 -0
  80. orfdata-0.37.0/tests/test_viral_subsets.py +51 -0
  81. {orfdata-0.35.0 → orfdata-0.37.0}/tools/build_gdc_viral_coverage.py +20 -22
  82. {orfdata-0.35.0 → orfdata-0.37.0}/tools/build_hpv16_cds.py +19 -17
  83. orfdata-0.37.0/tools/build_reference_ledger.py +73 -0
  84. orfdata-0.35.0/docs/viral.md +0 -154
  85. orfdata-0.35.0/lint.sh +0 -3
  86. orfdata-0.35.0/orfdata/data/viral/NOTICE.md +0 -59
  87. orfdata-0.35.0/orfdata/version.py +0 -1
  88. orfdata-0.35.0/orfdata/viral_cli.py +0 -70
  89. orfdata-0.35.0/orfdata/viral_coverage.py +0 -114
  90. orfdata-0.35.0/tests/conftest.py +0 -51
  91. orfdata-0.35.0/tests/test_proteome_external.py +0 -133
  92. orfdata-0.35.0/tests/test_viral_cli.py +0 -49
  93. orfdata-0.35.0/tests/test_viral_coverage.py +0 -91
  94. {orfdata-0.35.0 → orfdata-0.37.0}/LICENSE +0 -0
  95. {orfdata-0.35.0 → orfdata-0.37.0}/MANIFEST.in +0 -0
  96. {orfdata-0.35.0 → orfdata-0.37.0}/deploy.sh +0 -0
  97. {orfdata-0.35.0 → orfdata-0.37.0}/docs/copy-yeast.md +0 -0
  98. {orfdata-0.35.0 → orfdata-0.37.0}/docs/dog-peptides.md +0 -0
  99. {orfdata-0.35.0 → orfdata-0.37.0}/docs/examples.md +0 -0
  100. {orfdata-0.35.0 → orfdata-0.37.0}/docs/human-tissue.md +0 -0
  101. {orfdata-0.35.0 → orfdata-0.37.0}/docs/ingolia-yeast.md +0 -0
  102. {orfdata-0.35.0 → orfdata-0.37.0}/docs/measurements.md +0 -0
  103. {orfdata-0.35.0 → orfdata-0.37.0}/docs/pairing.md +0 -0
  104. {orfdata-0.35.0 → orfdata-0.37.0}/docs/pfizer-protein.md +0 -0
  105. {orfdata-0.35.0 → orfdata-0.37.0}/docs/pfizer-rna.md +0 -0
  106. {orfdata-0.35.0 → orfdata-0.37.0}/docs/reference.md +0 -0
  107. {orfdata-0.35.0 → orfdata-0.37.0}/docs/search-references.md +0 -0
  108. {orfdata-0.35.0 → orfdata-0.37.0}/docs/source-references.md +0 -0
  109. {orfdata-0.35.0 → orfdata-0.37.0}/docs/species.md +0 -0
  110. {orfdata-0.35.0 → orfdata-0.37.0}/docs/storage.md +0 -0
  111. {orfdata-0.35.0 → orfdata-0.37.0}/docs/stylesheets/docs.css +0 -0
  112. {orfdata-0.35.0 → orfdata-0.37.0}/docs.sh +0 -0
  113. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/_pinned_genome.py +0 -0
  114. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/_structure.py +0 -0
  115. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/build.py +0 -0
  116. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/catalog_cli.py +0 -0
  117. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/catalog_manifest.py +0 -0
  118. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/chains.json +0 -0
  119. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/datasets.json +0 -0
  120. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/genomes.json +0 -0
  121. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/ires/rfam-15.1-human-ires.json +0 -0
  122. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/AUTHOR-LICENSE.txt +0 -0
  123. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/NOTICE.txt +0 -0
  124. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/catalog.json.gz +0 -0
  125. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/manifest.json +0 -0
  126. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/AUTHOR-LICENSE.txt +0 -0
  127. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/NOTICE.txt +0 -0
  128. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/catalog.json.gz +0 -0
  129. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/manifest.json +0 -0
  130. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/viral/gdc-grch38-d1-vd1-coverage.tsv +0 -0
  131. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/data/viral/hpv16-refseq-CDS.json.gz +0 -0
  132. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/dataset.py +0 -0
  133. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/dataset_cli.py +0 -0
  134. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/datasets.py +0 -0
  135. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/evidence.py +0 -0
  136. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/evidence_summary.py +0 -0
  137. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/genomes.py +0 -0
  138. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/genomes_cli.py +0 -0
  139. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/initiation_context.py +0 -0
  140. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/liftover.py +0 -0
  141. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/liftover_cli.py +0 -0
  142. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/measurements.py +0 -0
  143. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/model.py +0 -0
  144. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/pairing.py +0 -0
  145. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/reference.py +0 -0
  146. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/reference_mapping.py +0 -0
  147. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/rna.py +0 -0
  148. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/search_reference.py +0 -0
  149. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sequence.py +0 -0
  150. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/__init__.py +0 -0
  151. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/copy.py +0 -0
  152. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/ingolia.py +0 -0
  153. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/kaabinejadian.py +0 -0
  154. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/ncorf_mammals.py +0 -0
  155. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/openprot.py +0 -0
  156. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/peptideatlas.py +0 -0
  157. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/pfizer.py +0 -0
  158. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/pfizer_rna.py +0 -0
  159. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata/sources/wang.py +0 -0
  160. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata.egg-info/dependency_links.txt +0 -0
  161. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata.egg-info/entry_points.txt +0 -0
  162. {orfdata-0.35.0 → orfdata-0.37.0}/orfdata.egg-info/top_level.txt +0 -0
  163. {orfdata-0.35.0 → orfdata-0.37.0}/setup.cfg +0 -0
  164. {orfdata-0.35.0 → orfdata-0.37.0}/test.sh +0 -0
  165. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/aggregate_evidence.json +0 -0
  166. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905474.soft +0 -0
  167. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905474_KL9_fpkm.txt.gz +0 -0
  168. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905476.soft +0 -0
  169. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905476_KL10_fpkm.txt.gz +0 -0
  170. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905478.soft +0 -0
  171. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905478_KL11_fpkm.txt.gz +0 -0
  172. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905479.soft +0 -0
  173. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/GSM1905479_KL12_fpkm.txt.gz +0 -0
  174. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/NOTICE.md +0 -0
  175. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/expected.json +0 -0
  176. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/geo-series.soft +0 -0
  177. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/manifest.json +0 -0
  178. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/methods.pdf +0 -0
  179. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/paper.xml +0 -0
  180. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/pmc-metadata.json +0 -0
  181. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/qconcat.fasta +0 -0
  182. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/copy/workbook.xlsx +0 -0
  183. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346111.metadata.txt +0 -0
  184. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346111.quant.txt.gz +0 -0
  185. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346114.metadata.txt +0 -0
  186. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346114.quant.txt.gz +0 -0
  187. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346115.metadata.txt +0 -0
  188. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346115.quant.txt.gz +0 -0
  189. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346116.metadata.txt +0 -0
  190. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346116.quant.txt.gz +0 -0
  191. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346117.metadata.txt +0 -0
  192. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346117.quant.txt.gz +0 -0
  193. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346118.metadata.txt +0 -0
  194. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346118.quant.txt.gz +0 -0
  195. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346120.metadata.txt +0 -0
  196. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346120.quant.txt.gz +0 -0
  197. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346122.metadata.txt +0 -0
  198. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346122.quant.txt.gz +0 -0
  199. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/NOTICE.md +0 -0
  200. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/expected.json +0 -0
  201. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/manifest.json +0 -0
  202. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ingolia/readMe.txt.gz +0 -0
  203. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/kaabinejadian/README.md +0 -0
  204. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/kaabinejadian/Results.zip +0 -0
  205. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/kaabinejadian/manifest-v1.json +0 -0
  206. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/kaabinejadian/manifest.json +0 -0
  207. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/kaabinejadian/sdrf.tsv +0 -0
  208. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/README.md +0 -0
  209. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/S3.xlsx +0 -0
  210. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/ensembl107.cdna.fa.gz +0 -0
  211. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/ensembl107.gtf.gz +0 -0
  212. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/human-ensembl107.gtf.gz +0 -0
  213. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/human.bed +0 -0
  214. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/human.pep.fa +0 -0
  215. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/mouse.bed +0 -0
  216. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/mouse.pep.fa +0 -0
  217. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/openprot/README.md +0 -0
  218. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/openprot/ensembl106.cdna.fa.gz +0 -0
  219. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/openprot/ensembl106.gtf.gz +0 -0
  220. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.bed.zip +0 -0
  221. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.fasta.zip +0 -0
  222. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.tsv.zip +0 -0
  223. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/peptideatlas/README.md +0 -0
  224. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/peptideatlas/atlas_build.tsv.zip +0 -0
  225. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/peptideatlas/ensembl.pep.fa.gz +0 -0
  226. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/peptideatlas/manifest.json +0 -0
  227. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/NOTICE.md +0 -0
  228. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/dog/expected.json +0 -0
  229. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/dog/manifest.json +0 -0
  230. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/dog/protein.tsv +0 -0
  231. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/dog/search.fasta +0 -0
  232. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/human/expected.json +0 -0
  233. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/human/manifest.json +0 -0
  234. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/human/protein.tsv +0 -0
  235. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/human/search.fasta +0 -0
  236. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/expected.json +0 -0
  237. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/manifest.json +0 -0
  238. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/protein.tsv +0 -0
  239. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/search.fasta +0 -0
  240. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/GSE325522_family.soft.gz +0 -0
  241. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/GSE325523_family.soft.gz +0 -0
  242. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/GSE325525_family.soft.gz +0 -0
  243. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/NOTICE.md +0 -0
  244. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/counts.csv.gz +0 -0
  245. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/dog-annotation.gtf.gz +0 -0
  246. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/dog-expected.json +0 -0
  247. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/dog-manifest.json +0 -0
  248. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/mouse-annotation.gtf.gz +0 -0
  249. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/mouse-expected.json +0 -0
  250. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/mouse-manifest.json +0 -0
  251. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/pfizer_rna/samples.xlsx +0 -0
  252. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/README.md +0 -0
  253. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/canis_lupus_familiaris.json +0 -0
  254. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/context-keys-v0.4.json +0 -0
  255. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/ensembl115.json +0 -0
  256. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/homo_sapiens.json +0 -0
  257. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/mitochondrial.json +0 -0
  258. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/mus_musculus.json +0 -0
  259. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/saccharomyces_cerevisiae.json +0 -0
  260. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/references/uniprot_literature.json +0 -0
  261. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/regions/NOTICE.md +0 -0
  262. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/regions/ingolia.json +0 -0
  263. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/SD3.xlsx +0 -0
  264. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/ensembl107.cdna.fa.gz +0 -0
  265. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/ensembl107.gtf.gz +0 -0
  266. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/ensembl107.ncrna.fa.gz +0 -0
  267. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/human-ensembl105.cdna.fa.gz +0 -0
  268. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/human-ensembl105.gtf.gz +0 -0
  269. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/human-ensembl105.ncrna.fa.gz +0 -0
  270. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/worm-ensembl105.cdna.fa.gz +0 -0
  271. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/worm-ensembl105.gtf.gz +0 -0
  272. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/worm-ensembl105.ncrna.fa.gz +0 -0
  273. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/yeast-ensembl115.cdna.fa.gz +0 -0
  274. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/yeast-ensembl115.dna.fa.gz +0 -0
  275. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/yeast-ensembl115.gtf.gz +0 -0
  276. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/zebrafish-ensembl115.cdna.fa.gz +0 -0
  277. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/zebrafish-ensembl115.gtf.gz +0 -0
  278. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/riborf/zebrafish-ensembl115.ncrna.fa.gz +0 -0
  279. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/search_reference/NOTICE.md +0 -0
  280. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/search_reference/dog.fasta +0 -0
  281. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/search_reference/ensembl83-expected.json +0 -0
  282. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/search_reference/ensembl83-human.fasta.gz +0 -0
  283. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/search_reference/expected.json +0 -0
  284. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/README.md +0 -0
  285. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/generate.py +0 -0
  286. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v1.json +0 -0
  287. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v1.sqlite +0 -0
  288. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v2.json +0 -0
  289. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v2.sqlite +0 -0
  290. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v3.json +0 -0
  291. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v3.sqlite +0 -0
  292. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v4.json +0 -0
  293. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/storage/v4.sqlite +0 -0
  294. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/viral/GRCh83.d1.vd1_virus_decoy.txt.gz +0 -0
  295. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/viral/NC_001526.4.gb.gz +0 -0
  296. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/NOTICE.md +0 -0
  297. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/annotation.gtf.gz +0 -0
  298. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/copies.zip +0 -0
  299. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/expected.json +0 -0
  300. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/manifest.json +0 -0
  301. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/protein.zip +0 -0
  302. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/rna.zip +0 -0
  303. {orfdata-0.35.0 → orfdata-0.37.0}/tests/data/wang/search.fasta.gz +0 -0
  304. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_copy.py +0 -0
  305. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_cross_reference_pairing.py +0 -0
  306. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_dog_peptides.py +0 -0
  307. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_ensembl_search_reference.py +0 -0
  308. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_evidence_rules.py +0 -0
  309. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_evidence_summary.py +0 -0
  310. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_genetic_codes.py +0 -0
  311. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_genomes.py +0 -0
  312. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_ingolia.py +0 -0
  313. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_initiation_context.py +0 -0
  314. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_liftover.py +0 -0
  315. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_local_build_queries.py +0 -0
  316. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_measurements.py +0 -0
  317. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_merge_catalogs.py +0 -0
  318. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_ncorf_mammals.py +0 -0
  319. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_openprot.py +0 -0
  320. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_orf_cases.py +0 -0
  321. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_paired_selectors.py +0 -0
  322. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_pairing.py +0 -0
  323. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_pfizer.py +0 -0
  324. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_pfizer_rna.py +0 -0
  325. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_reference_context.py +0 -0
  326. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_reference_mapping.py +0 -0
  327. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_reference_orf.py +0 -0
  328. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_region_targets.py +0 -0
  329. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_search_reference.py +0 -0
  330. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_selectors.py +0 -0
  331. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_storage.py +0 -0
  332. {orfdata-0.35.0 → orfdata-0.37.0}/tests/test_wang.py +0 -0
  333. {orfdata-0.35.0 → orfdata-0.37.0}/tools/__init__.py +0 -0
@@ -1,17 +1,20 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: orfdata
3
- Version: 0.35.0
3
+ Version: 0.37.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
7
7
  Requires-Python: >=3.11
8
8
  Description-Content-Type: text/markdown
9
9
  License-File: LICENSE
10
+ Requires-Dist: datacache<2,>=1.25.1
11
+ Requires-Dist: pandas<4,>=3
12
+ Requires-Dist: pyyaml<7,>=6
10
13
  Provides-Extra: pyensembl
11
14
  Requires-Dist: pyensembl>=2.27.2; extra == "pyensembl"
12
15
  Provides-Extra: build-data
13
16
  Requires-Dist: openpyxl>=3.1; extra == "build-data"
14
- Requires-Dist: biopython<2,>=1.80; extra == "build-data"
17
+ Provides-Extra: viral
15
18
  Provides-Extra: data
16
19
  Requires-Dist: datacache<2,>=1.25.1; extra == "data"
17
20
  Provides-Extra: columnar
@@ -22,9 +25,9 @@ Requires-Dist: ruff; extra == "dev"
22
25
  Requires-Dist: build; extra == "dev"
23
26
  Requires-Dist: twine; extra == "dev"
24
27
  Requires-Dist: openpyxl>=3.1; extra == "dev"
25
- Requires-Dist: biopython<2,>=1.80; extra == "dev"
26
28
  Requires-Dist: pyensembl>=2.27.2; extra == "dev"
27
29
  Requires-Dist: datacache<2,>=1.25.1; extra == "dev"
30
+ Requires-Dist: gb-io<0.5,>=0.4; extra == "dev"
28
31
  Provides-Extra: docs
29
32
  Requires-Dist: mkdocs<2,>=1.6; extra == "docs"
30
33
  Requires-Dist: mkdocs-material<10,>=9.5; extra == "docs"
@@ -48,12 +51,37 @@ evidence.
48
51
  Use Python 3.11 or later. Install orfdata and one PyEnsembl annotation:
49
52
 
50
53
  ```sh
51
- python -m pip install 'orfdata[pyensembl,data,build-data]'
54
+ python -m pip install 'orfdata[pyensembl,build-data]'
52
55
  pyensembl install --release 115 --species human
53
56
  # For the ncORF evidence presets and "all":
54
57
  orfdata setup --species human --catalogs all
55
58
  ```
56
59
 
60
+ List every bundled, downloadable or buildable resource and what is installed:
61
+
62
+ ```sh
63
+ orfdata download list
64
+ orfdata download status
65
+ ```
66
+
67
+ `orfdata setup --species human` also installs `gdc-viruses`, the default
68
+ 200-reference GDC viral screen for human transcriptome analysis;
69
+ `--collections none` skips it. Viral support is part of the base install, and
70
+ only the data is downloaded. To acquire only the viral references:
71
+
72
+ ```sh
73
+ orfdata download viral --species human
74
+ orfdata viral summary
75
+ ```
76
+
77
+ Each viral collection keeps three layers apart — the viral genomes, one coding
78
+ transcript per source CDS feature with a GTF placing it on them, and the
79
+ proteins those transcripts encode. Because the three share identifiers, the set
80
+ opens as a PyEnsembl genome, so varcode, isovar, topiary and vaxrank can
81
+ annotate variants on viral contigs. `orfdata proteome --annotation DIR` writes
82
+ the same three files for noncanonical ORFs. See
83
+ [Downstream tools](https://openvax.github.io/orfdata/downstream/).
84
+
57
85
  ## Example
58
86
 
59
87
  ```python
@@ -102,11 +130,11 @@ immunopeptidomics: peptides eluted from HLA molecules.
102
130
 
103
131
  | Species | Noncanonical ORFs | Sources |
104
132
  | --- | ---: | --- |
105
- | Human | 7,264 bundled; 57,607 with `nc_orf_sources="all"` | GENCODE; optionally Chang et al. 2025 and Yang et al. 2024 Ribo-seq |
106
- | Mouse | 48,805 | Chang et al. and Yang et al. Ribo-seq, OpenProt 2.2 MS |
107
- | Zebrafish | 9,759 | Yang et al. Ribo-seq |
108
- | C. elegans | 2,849 | Yang et al. Ribo-seq |
109
- | Yeast | 1,128 | Yang et al. Ribo-seq |
133
+ | Human | 7,264 bundled; 69,286 with `nc_orf_sources="all"` | GENCODE; optionally Chang et al. 2025 and Yang et al. 2024 Ribo-seq |
134
+ | Mouse | 60,707 | Chang et al. and Yang et al. Ribo-seq, OpenProt 2.2 MS |
135
+ | Zebrafish | 15,491 | Yang et al. Ribo-seq |
136
+ | C. elegans | 4,035 | Yang et al. Ribo-seq |
137
+ | Yeast | 1,369 | Yang et al. Ribo-seq |
110
138
  | Dog | none: no public dog Ribo-seq or ncORF MS exists | |
111
139
 
112
140
  Human's bundled catalogue needs no setup. For the others, `pip install
@@ -133,6 +161,11 @@ combined.save("human-all-proteins.proteome.json.gz") # Complete provenance.
133
161
 
134
162
  nc_only = transcriptome.proteome(reference_cds=False, nc_orf_sources="all")
135
163
  nc_only.write_fasta("human-reference-ncorfs.fasta")
164
+
165
+ # A peptide-search policy can exclude short products without deleting their ORF models.
166
+ search_reference = transcriptome.proteome(
167
+ nc_orf_sources="all", min_protein_length=5
168
+ )
136
169
  ```
137
170
 
138
171
  For sample-specific altered sequences, `DerivedProtein` records the supplied
@@ -140,6 +173,13 @@ amino acids, parent protein accession, sample, change IDs and source before
140
173
  `combined.with_derived_proteins(...)` adds them. These sequences are not
141
174
  inferred from variants or included in the reference proteome by default.
142
175
 
176
+ For a named, checksummed sequence input with no genomic placement, use the
177
+ general `ProteinSet`. `with_protein_set(...)` records a donor, transgene or
178
+ other selected component; `with_viral(...)` uses the same input plus a sourced
179
+ host association. ncORF sources with transcript coordinates and evidence stay
180
+ as `ORFCatalog` records and produce the same `ProteinSequence` output when
181
+ bound to a reference.
182
+
143
183
  ```sh
144
184
  orfdata proteome --species human --release 115 --nc-orf-sources all --viral all --output human-all-proteins.fasta
145
185
  ```
@@ -159,10 +199,14 @@ packaged bases and coding paths. The functional loaders remain available.
159
199
  When annotating an existing alignment, `viral_orfs(reference_dna,
160
200
  contig="HPV16")` checks its actual reference sequence before applying the same
161
201
  models.
162
- The first [coding reference](https://openvax.github.io/orfdata/viral/) contains
163
- the nine RefSeq NC_001526.4 HPV16 CDSs, with native and GDC placements;
164
- the host association is distinct from the virus's own taxon. Broader
165
- imports remain in [the viral roadmap](https://github.com/openvax/orfdata/issues/91).
202
+ The curated [coding reference](https://openvax.github.io/orfdata/viral/)
203
+ contains the nine RefSeq NC_001526.4 HPV16 CDSs, with native and GDC
204
+ placements; the host association is distinct from the virus's own taxon. The
205
+ separate `gdc-viruses` source bundle contains all 200 GDC source genomes and
206
+ their annotated CDS/protein FASTAs for human analysis. It does not assert a
207
+ human source host for every virus; source-host metadata remains separate.
208
+ Promoting further source records into the curated
209
+ `ViralReference` API remains in the [viral roadmap](https://github.com/openvax/orfdata/issues/91).
166
210
 
167
211
  ## Measurement datasets
168
212
 
@@ -194,6 +238,8 @@ The [documentation](https://openvax.github.io/orfdata/) covers:
194
238
 
195
239
  | Task | Guide |
196
240
  | --- | --- |
241
+ | Discover, inspect and download data | [Discover and download data](https://openvax.github.io/orfdata/downloads/) |
242
+ | Use ORFs and viral references with varcode, isovar, topiary and vaxrank | [Downstream tools](https://openvax.github.io/orfdata/downstream/) |
197
243
  | Build a proteome: evidence levels, exclusions, contigs, viral proteins | [Build a reference proteome](https://openvax.github.io/orfdata/proteome/) |
198
244
  | ORF classes, evidence definitions, Varcode and Isovar integration | [ORFs and evidence](https://openvax.github.io/orfdata/reference/) |
199
245
  | Species and reference identity, mitochondrial genetic codes | [Species, references and genetic codes](https://openvax.github.io/orfdata/species/) |
@@ -16,12 +16,37 @@ 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,data,build-data]'
19
+ python -m pip install 'orfdata[pyensembl,build-data]'
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
+ List every bundled, downloadable or buildable resource and what is installed:
26
+
27
+ ```sh
28
+ orfdata download list
29
+ orfdata download status
30
+ ```
31
+
32
+ `orfdata setup --species human` also installs `gdc-viruses`, the default
33
+ 200-reference GDC viral screen for human transcriptome analysis;
34
+ `--collections none` skips it. Viral support is part of the base install, and
35
+ only the data is downloaded. To acquire only the viral references:
36
+
37
+ ```sh
38
+ orfdata download viral --species human
39
+ orfdata viral summary
40
+ ```
41
+
42
+ Each viral collection keeps three layers apart — the viral genomes, one coding
43
+ transcript per source CDS feature with a GTF placing it on them, and the
44
+ proteins those transcripts encode. Because the three share identifiers, the set
45
+ opens as a PyEnsembl genome, so varcode, isovar, topiary and vaxrank can
46
+ annotate variants on viral contigs. `orfdata proteome --annotation DIR` writes
47
+ the same three files for noncanonical ORFs. See
48
+ [Downstream tools](https://openvax.github.io/orfdata/downstream/).
49
+
25
50
  ## Example
26
51
 
27
52
  ```python
@@ -70,11 +95,11 @@ immunopeptidomics: peptides eluted from HLA molecules.
70
95
 
71
96
  | Species | Noncanonical ORFs | Sources |
72
97
  | --- | ---: | --- |
73
- | Human | 7,264 bundled; 57,607 with `nc_orf_sources="all"` | GENCODE; optionally Chang et al. 2025 and Yang et al. 2024 Ribo-seq |
74
- | Mouse | 48,805 | Chang et al. and Yang et al. Ribo-seq, OpenProt 2.2 MS |
75
- | Zebrafish | 9,759 | Yang et al. Ribo-seq |
76
- | C. elegans | 2,849 | Yang et al. Ribo-seq |
77
- | Yeast | 1,128 | Yang et al. Ribo-seq |
98
+ | Human | 7,264 bundled; 69,286 with `nc_orf_sources="all"` | GENCODE; optionally Chang et al. 2025 and Yang et al. 2024 Ribo-seq |
99
+ | Mouse | 60,707 | Chang et al. and Yang et al. Ribo-seq, OpenProt 2.2 MS |
100
+ | Zebrafish | 15,491 | Yang et al. Ribo-seq |
101
+ | C. elegans | 4,035 | Yang et al. Ribo-seq |
102
+ | Yeast | 1,369 | Yang et al. Ribo-seq |
78
103
  | Dog | none: no public dog Ribo-seq or ncORF MS exists | |
79
104
 
80
105
  Human's bundled catalogue needs no setup. For the others, `pip install
@@ -101,6 +126,11 @@ combined.save("human-all-proteins.proteome.json.gz") # Complete provenance.
101
126
 
102
127
  nc_only = transcriptome.proteome(reference_cds=False, nc_orf_sources="all")
103
128
  nc_only.write_fasta("human-reference-ncorfs.fasta")
129
+
130
+ # A peptide-search policy can exclude short products without deleting their ORF models.
131
+ search_reference = transcriptome.proteome(
132
+ nc_orf_sources="all", min_protein_length=5
133
+ )
104
134
  ```
105
135
 
106
136
  For sample-specific altered sequences, `DerivedProtein` records the supplied
@@ -108,6 +138,13 @@ amino acids, parent protein accession, sample, change IDs and source before
108
138
  `combined.with_derived_proteins(...)` adds them. These sequences are not
109
139
  inferred from variants or included in the reference proteome by default.
110
140
 
141
+ For a named, checksummed sequence input with no genomic placement, use the
142
+ general `ProteinSet`. `with_protein_set(...)` records a donor, transgene or
143
+ other selected component; `with_viral(...)` uses the same input plus a sourced
144
+ host association. ncORF sources with transcript coordinates and evidence stay
145
+ as `ORFCatalog` records and produce the same `ProteinSequence` output when
146
+ bound to a reference.
147
+
111
148
  ```sh
112
149
  orfdata proteome --species human --release 115 --nc-orf-sources all --viral all --output human-all-proteins.fasta
113
150
  ```
@@ -127,10 +164,14 @@ packaged bases and coding paths. The functional loaders remain available.
127
164
  When annotating an existing alignment, `viral_orfs(reference_dna,
128
165
  contig="HPV16")` checks its actual reference sequence before applying the same
129
166
  models.
130
- The first [coding reference](https://openvax.github.io/orfdata/viral/) contains
131
- the nine RefSeq NC_001526.4 HPV16 CDSs, with native and GDC placements;
132
- the host association is distinct from the virus's own taxon. Broader
133
- imports remain in [the viral roadmap](https://github.com/openvax/orfdata/issues/91).
167
+ The curated [coding reference](https://openvax.github.io/orfdata/viral/)
168
+ contains the nine RefSeq NC_001526.4 HPV16 CDSs, with native and GDC
169
+ placements; the host association is distinct from the virus's own taxon. The
170
+ separate `gdc-viruses` source bundle contains all 200 GDC source genomes and
171
+ their annotated CDS/protein FASTAs for human analysis. It does not assert a
172
+ human source host for every virus; source-host metadata remains separate.
173
+ Promoting further source records into the curated
174
+ `ViralReference` API remains in the [viral roadmap](https://github.com/openvax/orfdata/issues/91).
134
175
 
135
176
  ## Measurement datasets
136
177
 
@@ -162,6 +203,8 @@ The [documentation](https://openvax.github.io/orfdata/) covers:
162
203
 
163
204
  | Task | Guide |
164
205
  | --- | --- |
206
+ | Discover, inspect and download data | [Discover and download data](https://openvax.github.io/orfdata/downloads/) |
207
+ | Use ORFs and viral references with varcode, isovar, topiary and vaxrank | [Downstream tools](https://openvax.github.io/orfdata/downstream/) |
165
208
  | Build a proteome: evidence levels, exclusions, contigs, viral proteins | [Build a reference proteome](https://openvax.github.io/orfdata/proteome/) |
166
209
  | ORF classes, evidence definitions, Varcode and Isovar integration | [ORFs and evidence](https://openvax.github.io/orfdata/reference/) |
167
210
  | Species and reference identity, mitochondrial genetic codes | [Species, references and genetic codes](https://openvax.github.io/orfdata/species/) |
@@ -21,11 +21,11 @@ The packaged registry builds each catalogue from its sources' own files:
21
21
 
22
22
  | Species | Catalogues | ORFs |
23
23
  | --- | --- | ---: |
24
- | Mouse | [OpenProt's MS-supported ORFs](#mouse-orfs-from-openprot), [Chang et al.'s](#mouse-ribo-seq-orfs-chang-et-al) and [Yang et al.'s](#mouse-riborf-orfs-yang-et-al) Ribo-seq ORFs | 48,805 merged |
25
- | Human | the bundled GENCODE set; optionally [Chang et al.'s and Yang et al.'s Ribo-seq ORFs](#human-ribo-seq-orfs-optional) | 7,264; 57,607 with both |
26
- | Zebrafish | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 9,759 |
27
- | C. elegans | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 2,849 |
28
- | Yeast | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 1,128 |
24
+ | Mouse | [OpenProt's MS-supported ORFs](#mouse-orfs-from-openprot), [Chang et al.'s](#mouse-ribo-seq-orfs-chang-et-al) and [Yang et al.'s](#mouse-riborf-orfs-yang-et-al) Ribo-seq ORFs | 60,707 merged |
25
+ | Human | the bundled GENCODE set; optionally [Chang et al.'s and Yang et al.'s Ribo-seq ORFs](#human-ribo-seq-orfs-optional) | 7,264; 69,286 with both |
26
+ | Zebrafish | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 15,491 |
27
+ | C. elegans | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 4,035 |
28
+ | Yeast | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 1,369 |
29
29
  | Dog | [none exists](#dog) | 0 |
30
30
 
31
31
  `orfdata setup --species mouse` (or zebrafish, worm, yeast) installs a
@@ -88,8 +88,8 @@ already installed, repaired or skipped. If one fails, the rest are still
88
88
  installed and it exits with status 1, naming each failure; in Python,
89
89
  `install_species` raises `InstallError`, whose `result` holds the same
90
90
  report. `load_catalog(species="mouse")` then merges the three,
91
- in this order, into 48,805 ORFs: 2,976 MS-supported OpenProt ORFs, 16,484
92
- Ribo-seq ORFs of Chang et al. and 40,089 of Yang et al. 10,448 of Chang's and
91
+ in this order, into 60,707 ORFs: 2,976 MS-supported OpenProt ORFs, 16,484
92
+ Ribo-seq ORFs of Chang et al. and 51,991 of Yang et al. 10,448 of Chang's and
93
93
  Yang's ORFs are the same ORF (28 of them also in OpenProt), and 296 OpenProt
94
94
  ORFs have Ribo-seq support from one or both, 242 from Yang et al. alone. On
95
95
  Ensembl 115 (GRCm39):
@@ -97,11 +97,11 @@ Ensembl 115 (GRCm39):
97
97
  | Evidence | Selected | Added to the proteome |
98
98
  | --- | ---: | ---: |
99
99
  | `"ms"` (default) | 2,976 | 2,854 |
100
- | `RiboSeq()` | 46,207 | 46,094 |
100
+ | `RiboSeq()` | 58,109 | 57,992 |
101
101
  | `RiboSeq() & MS()` | 378 | 371 |
102
- | `None` | 48,805 | 48,577 |
102
+ | `None` | 60,707 | 60,475 |
103
103
 
104
- Loading the merged catalogue takes about 10 seconds and 0.9 GB of memory, once
104
+ Loading the merged catalogue takes about 10 seconds and 1.1 GB of memory, once
105
105
  per process, whichever evidence is selected. On GRCm38 and NCBIM37 all three
106
106
  are [lifted automatically](#every-assembly-of-a-species).
107
107
 
@@ -138,32 +138,39 @@ ATG, CTG, GTG or TTG. Its types are uORF (8,294), lncORF (3,576), uoORF
138
138
  `riborf-mouse` holds the mouse ORFs that RibORF 2.0 identified as translated in
139
139
  the Ribo-seq data of Yang et al. (Nat Commun 2024,
140
140
  [doi:10.1038/s41467-024-46240-9](https://doi.org/10.1038/s41467-024-46240-9);
141
- 224 samples in 26 GEO series), of at least 5 residues: uORF (20,399), lncORF
142
- (6,954), dORF (4,075), uoORF (3,037), iORF (2,370), N-terminal truncation
143
- (2,047) and extension (575), and doORF (632). The source's ouORF, odORF and
141
+ 224 samples in 26 GEO series): uORF (26,052), lncORF (8,149), iORF (6,155),
142
+ dORF (5,174), uoORF (3,157), N-terminal truncation (2,059), doORF (670) and
143
+ extension (575). The source's ouORF, odORF and
144
144
  noncoding types take Chang et al.'s names, so `--biotype uoORF` finds both
145
145
  sources' overlapping uORFs. Annotated CDSs, likely sequencing errors,
146
- stop-codon readthrough and 12,222 ORFs shorter than Chang et al.'s shortest (5
147
- residues; 4,505 are a bare start and stop) are not imported.
146
+ and stop-codon readthrough are not imported. Release 2 retains 11,902 valid
147
+ ORFs shorter than five residues. Release 1, which applied a five-residue import
148
+ floor, remains available explicitly as `--version 1`.
148
149
 
149
150
  - **Placement.** The source gives mm10 / GENCODE vM25 transcript coordinates
150
151
  (a 1-based start, an exclusive end) and no proteins. Rather than lift mm10
151
152
  through a restricted chain, each ORF is placed on the same transcript in
152
153
  Ensembl 107 GRCm39 and translated from that transcript's sequence. Of the
153
- 41,906 rows long enough, 40,089 resolve. Listed as unresolved, with the
154
- reason: 1,393 rows on 633 transcripts that changed length since GENCODE
155
- vM25, 338 on 216 TEC transcripts that Ensembl 107 has in its GTF but in
156
- neither FASTA, 85 on 51 transcripts that are gone, and one whose
154
+ 54,128 non-skipped source rows, 51,991 resolve. Listed as unresolved, with the
155
+ reason: 1,642 rows on transcripts that changed length since GENCODE
156
+ vM25, 399 on transcripts that Ensembl 107 has in its GTF but in
157
+ neither FASTA, 95 on transcripts that are gone, and one whose
157
158
  transcript's sequence changed at the same length. Placing through the
158
159
  transcript gives the same coding path as lifting the source's mm10 blocks
159
160
  through UCSC's chain for all but 2, in a duplicated region of chr14 where
160
- the chain is ambiguous. 39,983 place on Ensembl 115.
161
+ the chain is ambiguous. Of the 12,222 source rows below five residues,
162
+ 11,902 resolve and 320 carry one of the same explicit failures. In all,
163
+ 51,881 place on Ensembl 115.
161
164
  - **Sources.** Supplementary Data 3 (CC BY 4.0) and Ensembl 107's GTF, cDNA
162
165
  and ncRNA FASTAs; about 115 MB, of which the 32 MB GTF is the one Chang et
163
166
  al.'s catalogue uses, so `orfdata setup` downloads it once. Building needs
164
167
  `orfdata[build-data]`.
165
168
  - **Evidence.** Presence in the source's set is aggregate Ribo-seq support:
166
169
  `RiboSeq()` selects every ORF, `RiboSeq(min_studies=2)` none.
170
+ - **Length policy.** `catalog.query(min_protein_length=5)` and
171
+ `Proteome.build(..., min_protein_length=5)` reproduce a downstream
172
+ five-residue selection without removing short models from the catalogue.
173
+ Proteome layers record the threshold and number filtered.
167
174
  - **IDs.** `riborf_` and the GRCm39 start and stop, such as
168
175
  `riborf_4_120262600_120262620_+`, never a name Chang et al. use. Two paths
169
176
  with the same start and stop add their transcript (`…@ENSMUST00000226495.2`),
@@ -268,8 +275,8 @@ load_catalog(species="human", catalogs=["ncorf-mammals-human"]) # Just one
268
275
  such as `nc_orf_sources="ms"` also query every compatible dataset; use
269
276
  `nc_orf_sources="bundled"` for only the bundled set. They merge after the bundled
270
277
  catalogue, Chang et al.'s before Yang et al.'s as for mouse, so an ORF in
271
- several keeps the first one's ID. Together they give 57,607 ORFs, of which 57,485 place on Ensembl 115; that
272
- takes about a minute and 3.2 GB of memory, against about a second for the
278
+ several keeps the first one's ID. Together they give 69,286 ORFs, of which 69,162 place on Ensembl 115; that
279
+ takes about a minute and several GB of memory, against about a second for the
273
280
  bundled catalogue alone. Neither adds MS evidence, so `"ms"` selects the same
274
281
  ORFs either way.
275
282
 
@@ -282,10 +289,11 @@ ORFs either way.
282
289
  - **`riborf-human`:** the human ORFs of [Yang et
283
290
  al.](#mouse-riborf-orfs-yang-et-al), from 136 samples in 30 GEO series, on
284
291
  GENCODE V39, placed through the same Ensembl 105 transcripts (GENCODE V39
285
- is Ensembl 105): 51,174 of the 51,275 rows long enough; 101 are on
286
- transcripts with no sequence in Ensembl 105's FASTAs. Types: uORF (23,664),
287
- lncORF (11,379), uoORF (4,548), dORF (3,747), N-terminal truncation (3,561),
288
- iORF (2,547), extension (1,046) and doORF (682).
292
+ is Ensembl 105): 62,853 of 62,962 non-skipped rows; 109 are on transcripts
293
+ with no sequence in Ensembl 105's FASTAs. The catalogue includes 11,679
294
+ valid records below five residues. Types: uORF (28,981), lncORF (12,938),
295
+ iORF (5,990), dORF (4,907), uoORF (4,679), N-terminal truncation (3,574),
296
+ extension (1,046) and doORF (738).
289
297
 
290
298
  `catalogs` takes `None` (the species' default set), `"all"`, or catalogue
291
299
  names, `"bundled"` among them. `orfdata catalogs status` marks optional
@@ -298,25 +306,25 @@ orfdata setup --species zebrafish # or worm, or yeast
298
306
  ```
299
307
 
300
308
  Yang et al.'s RibORF 2.0 ORFs of [the mouse catalogue's
301
- kind](#mouse-riborf-orfs-yang-et-al), at least 5 residues long, from each
302
- species' sheet of Supplementary Data 3, imported the same way:
309
+ kind](#mouse-riborf-orfs-yang-et-al), including valid short source models, from
310
+ each species' sheet of Supplementary Data 3, imported the same way:
303
311
 
304
- | Catalogue | Samples (GEO series) | Placed through | ORFs | On Ensembl 115 |
312
+ | Catalogue | Samples (GEO series) | Placed through | ORFs | Below 5 aa |
305
313
  | --- | --- | --- | ---: | ---: |
306
- | `riborf-zebrafish` | 20 (2) | Ensembl 115 GRCz11 transcripts | 9,759 | 9,759 |
307
- | `riborf-worm` | 39 (1) | Ensembl 105 WBcel235 transcripts | 2,849 | 2,433 |
308
- | `riborf-yeast` | 5 (1) | the R64-1-1 genome (sacCer3) | 1,128 | 171 |
314
+ | `riborf-zebrafish` | 20 (2) | Ensembl 115 GRCz11 transcripts | 15,491 | 5,732 |
315
+ | `riborf-worm` | 39 (1) | Ensembl 105 WBcel235 transcripts | 4,035 | 1,186 |
316
+ | `riborf-yeast` | 5 (1) | the R64-1-1 genome (sacCer3) | 1,369 | 241 |
309
317
 
310
318
  - **Zebrafish:** every source transcript has the same length in Ensembl 100
311
319
  to 115, so the catalogue uses 115. 18 rows have ambiguous bases in the ORF
312
- and are left out. Types: N-terminal truncation (3,805), uORF (3,543), dORF
313
- (771), iORF (605), lncORF (411), uoORF (304), extension (224) and doORF (96).
320
+ and are left out. Types: uORF (6,168), N-terminal truncation (3,816), iORF
321
+ (2,696), dORF (1,623), lncORF (501), uoORF (343), extension (224) and doORF
322
+ (120).
314
323
  - **C. elegans:** the source's transcripts match Ensembl 100 and 105, and
315
- WormBase changed many models after, so the catalogue uses 105; all 2,849
316
- place there, 2,433 on 115. Transcript names with dots of their own
317
- (`F45H11.11.1`) are kept whole. Types: truncation (614), iORF (596),
318
- extension (556), uORF (521), uoORF (217), lncORF (151), doORF (117) and dORF
319
- (77).
324
+ WormBase changed many models after, so the catalogue uses 105; all 4,035
325
+ place there. Transcript names with dots of their own (`F45H11.11.1`) are
326
+ kept whole. Types: iORF (1,525), uORF (725), truncation (614), extension
327
+ (556), lncORF (158), uoORF (249), doORF (121) and dORF (87).
320
328
  - **Yeast:** the source's yeast transcripts carry UTRs, and some are unstable
321
329
  transcripts (CUTs, SUTs), none of which Ensembl's yeast annotation has; its
322
330
  transcripts span only the CDS. So each ORF is placed from its genomic span
@@ -330,8 +338,8 @@ species' sheet of Supplementary Data 3, imported the same way:
330
338
  Only the 171 ORFs on an Ensembl transcript, such as truncations and iORFs,
331
339
  place on a PyEnsembl genome; the rest (uORFs in 5′ UTRs, ORFs on CUTs) stay
332
340
  in the catalogue, queryable by region and gene, until ORFs on source-defined
333
- RNAs are supported (#66). Types: uORF (321), lncORF (249), dORF (224),
334
- truncation (137), extension (67), uoORF (55), doORF (40) and iORF (35).
341
+ RNAs are supported (#66). Types: uORF (393), dORF (267), lncORF (260), iORF
342
+ (139), truncation (138), extension (67), uoORF (58) and doORF (47).
335
343
 
336
344
  ## Dog
337
345
 
@@ -381,9 +389,7 @@ With evidence `None` (every catalogue ORF), each assembly gets:
381
389
  | Human Ensembl 75, GRCh37 | lifted, 1 hop | 7,247 | 6,857 | 270 transcripts absent, 108 paths changed, 1 on a transcript with a different protein |
382
390
  | Human Ensembl 54, NCBI36 | lifted, 1 hop | 7,253 | 4,195 | 2,708 transcripts absent, 2 on a transcript with a different protein |
383
391
  | Human Ensembl rapid 2022_07, T2T-CHM13v2.0 | lifted, 1 hop | 7,208 | 6,767 | 383 on a transcript with a different protein, 58 on no transcript, 56 not lifted |
384
- | Mouse Ensembl 115, GRCm39 | OpenProt, Chang et al. and Yang et al. | 48,805 | 48,577 | 110 transcripts absent, 109 without sequence |
385
- | Mouse Ensembl 102, GRCm38 | all three lifted, 1 hop | 48,800 | 48,169 | 434 transcripts absent, 5 not lifted |
386
- | Mouse Ensembl 67, NCBIM37 | all three lifted, 2 hops | 48,642 | 38,105 | 9,217 transcripts absent, 163 not lifted |
392
+ | Mouse Ensembl 115, GRCm39 | OpenProt, Chang et al. and Yang et al. | 60,707 | 60,475 | 232 fail transcript/path/sequence binding checks |
387
393
 
388
394
  Older annotations lack many of the transcripts the sources name, so fewer ORFs
389
395
  place; the rest, and any that didn't lift, are listed with the reason, never
@@ -48,10 +48,10 @@ Calibration and uncertainty remain attached to observations:
48
48
  ## ORF evidence and ribosome profiling
49
49
 
50
50
  The separate existence-evidence catalogue contains 7,264 human noncanonical
51
- ORFs, including 2,186 with reported MS support. Mouse has 48,805 ORFs: Ribo-seq ORFs
51
+ ORFs, including 2,186 with reported MS support. Mouse has 60,707 ORFs: Ribo-seq ORFs
52
52
  from Chang et al. and Yang et al., and 2,976 OpenProt 2.2 ORFs with at least
53
53
  two unique MS peptides, built from their sources' files. Yang et al.'s Ribo-seq ORFs
54
- cover zebrafish (9,759), C. elegans (2,849) and yeast (1,128), and with Chang et al.'s
54
+ cover zebrafish (15,491), C. elegans (4,035) and yeast (1,369), and with Chang et al.'s
55
55
  are optional human catalogues; dog has no experimental ncORF catalogue, because no
56
56
  dog Ribo-seq or ncORF MS search is public ([details](catalogs.md#dog)). Its
57
57
  ribosome evidence and pooled PSM counts are not sample-level ribosome