KarchinLab / open-cravat

A modular annotation tool for genomic variants
MIT License
110 stars 27 forks source link

Install an older version of a module #155

Closed skoul9 closed 1 year ago

skoul9 commented 1 year ago

Hi,

I use OC on the command line and want to install an older version of a module. Is it possible to see which versions are available in the store? Using oc module ls -a, I only see the latest version and what version is installed on my machine.

There is Store data ver that lists the version of the source and Store ver that can be used with the command - oc module install -v VERSION module - to install the module. Is it possible to see both of these fields for older packages?

kmoad commented 1 year ago

Use oc module info module_name. There will be a lot of information, including version history and a changelog if available.

skoul9 commented 1 year ago

That's what I was using to look up information on the module. So that means that if a source version is not listed, it's not available for installation. Thanks for confirming. Could I download an older version, not using oc module install, and use that with OC?

kmoad commented 1 year ago

The module/data versioning can be confusing. I'll try to explain well.

Data version keeps track of changes to the original data source. Module version keeps track of changes to the OpenCRAVAT wrapper around the data.

For example gnomad3 has two versions: 1.0.0 and 1.1.0. Both of them use data from v3 of the gnomAD project, so they have the same data version. What changed in 1.1.0 was how OpenCRAVAT displays the data, not the data from gnomAD project.

Another module, clinvar, gets data updates more often, as the ClinVar project add new variants. So a lot of the clinvar updates are refreshes of the underlying data. The data version is the date we fetched the data.

To (I hope) answer your question, here's part of oc module info clinvar

- 2019.08.02 (data source 2019.01.02)
- 2019.08.23 (data source 2019.01.02)
- 2020.02.11 (data source 2020.02.11) data update
- 2020.02.11.1 (data source 2020.02.11) strict ref/alt indels, not fuzzy

The first version number is the module number, that's what you'd use with oc module install. The version number in the parenthesis is the version of the data that will be installed. After the parenthesis is a short description of what changed in the version.

I hope this helps. I'm happy to help with a specific module if you'd like.

skoul9 commented 1 year ago

Thanks for the explanation!

For dbSNP, the following information is available using oc module info

title: dbSNP
type: annotator
versions:
- 151.0.0 (data source None)
- 151.0.1 (data source None)
- 151.0.2 (data source v151)
- 151.0.3 (data source v151)
- 151.0.4 (data source v151)
- 151.0.5 (data source v151)
- 151.0.6 (data source v151)
- 151.0.7 (data source v151)
- 151.0.8 (data source v151)
- 151.0.9 (data source v151)
- 154.0.0 (data source v154) data update to build 154
- 154.0.1 (data source v154) data fix
- 154.0.2 (data source v154) removed widget requirement

How do I get v138?

kmoad commented 1 year ago

We don't have a dbsnp annotator for build 138. Sorry. OpenCRAVAT started in 2018.

If you can find a download of dbsnp v138, you could probably build your own annotator. If they have a vcf of build 138, I could share the script we use to make the annotator from it.

https://open-cravat.readthedocs.io/en/latest/Annotator-Tutorial.html

skoul9 commented 1 year ago

This is very useful! Thanks for sharing the reference to create an annotator. I should have checked the developer section. I will not work on it right now, but I plan to return to this in a few weeks. My question has been answered, so I will close this issue. If I have any questions, I will be sure to check back. Thanks again!