# HG changeset patch # User iuc # Date 1773137537 0 # Node ID e17314dfcbd3ac9efa96cd69bd73df0eeceb9c49 # Parent db4c810682eebf3adb49c7a0ec80d373edaa510f planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/data_managers/data_manager_snpeff commit 5ed67056af2b7289fcf89e96c34afe11fa39bbdf diff -r db4c810682ee -r e17314dfcbd3 data_manager/data_manager_snpEff_databases.xml --- a/data_manager/data_manager_snpEff_databases.xml Tue Nov 24 07:27:05 2020 +0000 +++ b/data_manager/data_manager_snpEff_databases.xml Tue Mar 10 10:12:17 2026 +0000 @@ -1,7 +1,7 @@ - + Read the list of available SnpEff databases - snpeff + snpeff 10.4161/fly.19695 diff -r db4c810682ee -r e17314dfcbd3 data_manager/data_manager_snpEff_download.py --- a/data_manager/data_manager_snpEff_download.py Tue Nov 24 07:27:05 2020 +0000 +++ b/data_manager/data_manager_snpEff_download.py Tue Mar 10 10:12:17 2026 +0000 @@ -1,4 +1,5 @@ #!/usr/bin/env python +import gzip import json import optparse import os @@ -61,6 +62,20 @@ return snpeff_version +def getSnpeffDbVersion(db_predictor_bin_file): + snpeff_db_version = None + try: + with gzip.open(db_predictor_bin_file, "rt") as fh: + buf = fh.read(100) + lines = buf.splitlines() + m = re.match(r"^(SnpEff)\s+(\d+\.\d+).*$", lines[0].strip()) + if m: + snpeff_db_version = m.groups()[0] + m.groups()[1] + except Exception: + pass + return snpeff_db_version + + # Download human database 'hg19' # java -jar snpEff.jar download -v hg19 # @@ -87,12 +102,18 @@ snpeff_version = getSnpeffVersion() key = snpeff_version + '_' + genome_version if os.path.isdir(genome_path): - for _, _, files in os.walk(genome_path): + for dirpath, _, files in os.walk(genome_path): for fname in files: if fname.startswith('snpEffectPredictor'): # if snpEffectPredictor.bin download succeeded name = genome_version + (' : ' + organism if organism else '') - data_table_entry = dict(key=key, version=snpeff_version, value=genome_version, name=name, path=data_dir) + data_table_entry = dict( + key=key, + version=getSnpeffDbVersion(os.path.join(dirpath, fname)) or snpeff_version, + value=genome_version, + name=name, + path=data_dir + ) _add_data_table_entry(data_manager_dict, 'snpeffv_genomedb', data_table_entry) else: m = re.match(regulation_pattern, fname) diff -r db4c810682ee -r e17314dfcbd3 data_manager/data_manager_snpEff_download.xml --- a/data_manager/data_manager_snpEff_download.xml Tue Nov 24 07:27:05 2020 +0000 +++ b/data_manager/data_manager_snpEff_download.xml Tue Mar 10 10:12:17 2026 +0000 @@ -1,7 +1,7 @@ - + Download a new database - snpeff + snpeff - + \S+ @@ -19,12 +19,12 @@ - + - - + + @@ -34,9 +34,7 @@ To see the list of available SnpEff genomes, run the "SnpEff Databases" data manager which records the available genome databases in data table: snpeffv_databases. -The SnpEff genome databases are at: http://sourceforge.net/projects/snpeff/files/databases/ - -For details about this tool, please go to http://snpeff.sourceforge.net +For details about this tool, please go to https://pcingola.github.io/SnpEff/snpeff/introduction/#databases. ]]> 10.4161/fly.19695