changeset 59:491dc0cd6a0d draft default tip

planemo upload for repository https://github.com/peterjc/galaxy_blast/tree/master/tools/ncbi_blast_plus commit eb397ba9bd3d2f3db13757f3bce094a89c4de9b3
author peterjc
date Wed, 26 Mar 2025 16:42:53 +0000
parents cc1ab05a5588
children
files test-data/blastn_chimera_vs_three_human_max1.txt test-data/blastn_rhodopsin_vs_three_human.xml test-data/blastp_four_human_vs_rhodopsin.xml test-data/blastx_rhodopsin_vs_four_human.xml test-data/cd00003_and_cd00008.pin test-data/four_human_proteins.fasta.pin test-data/four_human_proteins_taxid.fasta.pin test-data/rhodopsin_nucs.fasta.nin test-data/tblastn_four_human_vs_rhodopsin.html test-data/tblastn_four_human_vs_rhodopsin.tabular test-data/tblastn_four_human_vs_rhodopsin.xml test-data/tblastn_four_human_vs_rhodopsin_deflines.tabular test-data/tblastn_four_human_vs_rhodopsin_ext.tabular test-data/three_human_mRNA.fasta.gz test-data/three_human_mRNA.fasta.nin test-data/tool_data_table_conf.xml.test tool-data/all_fasta.loc.sample tool-data/tool_data_table_conf.xml.sample tools/ncbi_blast_plus/README.rst tools/ncbi_blast_plus/blastxml_to_tabular.xml tools/ncbi_blast_plus/get_species_taxids.xml tools/ncbi_blast_plus/ncbi_blastdbcmd_info.xml tools/ncbi_blast_plus/ncbi_blastdbcmd_wrapper.xml tools/ncbi_blast_plus/ncbi_blastn_wrapper.xml tools/ncbi_blast_plus/ncbi_blastp_wrapper.xml tools/ncbi_blast_plus/ncbi_blastx_wrapper.xml tools/ncbi_blast_plus/ncbi_convert2blastmask_wrapper.xml tools/ncbi_blast_plus/ncbi_dustmasker_wrapper.xml tools/ncbi_blast_plus/ncbi_macros.xml tools/ncbi_blast_plus/ncbi_makeblastdb.xml tools/ncbi_blast_plus/ncbi_makeprofiledb.xml tools/ncbi_blast_plus/ncbi_rpsblast_wrapper.xml tools/ncbi_blast_plus/ncbi_rpstblastn_wrapper.xml tools/ncbi_blast_plus/ncbi_segmasker_wrapper.xml tools/ncbi_blast_plus/ncbi_tblastn_wrapper.xml tools/ncbi_blast_plus/ncbi_tblastx_wrapper.xml
diffstat 36 files changed, 680 insertions(+), 454 deletions(-) [+]
line wrap: on
line diff
--- a/test-data/blastn_chimera_vs_three_human_max1.txt	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/blastn_chimera_vs_three_human_max1.txt	Wed Mar 26 16:42:53 2025 +0000
@@ -1,4 +1,4 @@
-BLASTN 2.10.1+
+BLASTN 2.16.0+
 
 
 Reference: Zheng Zhang, Scott Schwartz, Lukas Wagner, and Webb
@@ -346,7 +346,7 @@
 
 
   Database: Just 3 human mRNA sequences
-    Posted date:  Sep 9, 2020  11:23 PM
+    Posted date:  Sep 22, 2023  4:36 PM
   Number of letters in database: 10,732
   Number of sequences in database:  3
 
--- a/test-data/blastn_rhodopsin_vs_three_human.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/blastn_rhodopsin_vs_three_human.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -2,7 +2,7 @@
 <!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">
 <BlastOutput>
   <BlastOutput_program>blastn</BlastOutput_program>
-  <BlastOutput_version>BLASTN 2.10.1+</BlastOutput_version>
+  <BlastOutput_version>BLASTN 2.16.0+</BlastOutput_version>
   <BlastOutput_reference>Zheng Zhang, Scott Schwartz, Lukas Wagner, and Webb Miller (2000), &quot;A greedy algorithm for aligning DNA sequences&quot;, J Comput Biol 2000; 7(1-2):203-14.</BlastOutput_reference>
   <BlastOutput_db></BlastOutput_db>
   <BlastOutput_query-ID>Query_1</BlastOutput_query-ID>
--- a/test-data/blastp_four_human_vs_rhodopsin.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/blastp_four_human_vs_rhodopsin.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -2,7 +2,7 @@
 <!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">
 <BlastOutput>
   <BlastOutput_program>blastp</BlastOutput_program>
-  <BlastOutput_version>BLASTP 2.10.1+</BlastOutput_version>
+  <BlastOutput_version>BLASTP 2.16.0+</BlastOutput_version>
   <BlastOutput_reference>Stephen F. Altschul, Thomas L. Madden, Alejandro A. Sch&amp;auml;ffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), &quot;Gapped BLAST and PSI-BLAST: a new generation of protein database search programs&quot;, Nucleic Acids Res. 25:3389-3402.</BlastOutput_reference>
   <BlastOutput_db></BlastOutput_db>
   <BlastOutput_query-ID>Q9BS26</BlastOutput_query-ID>
--- a/test-data/blastx_rhodopsin_vs_four_human.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/blastx_rhodopsin_vs_four_human.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -2,7 +2,7 @@
 <!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">
 <BlastOutput>
   <BlastOutput_program>blastx</BlastOutput_program>
-  <BlastOutput_version>BLASTX 2.10.1+</BlastOutput_version>
+  <BlastOutput_version>BLASTX 2.16.0+</BlastOutput_version>
   <BlastOutput_reference>Stephen F. Altschul, Thomas L. Madden, Alejandro A. Sch&amp;auml;ffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), &quot;Gapped BLAST and PSI-BLAST: a new generation of protein database search programs&quot;, Nucleic Acids Res. 25:3389-3402.</BlastOutput_reference>
   <BlastOutput_db></BlastOutput_db>
   <BlastOutput_query-ID>Query_1</BlastOutput_query-ID>
Binary file test-data/cd00003_and_cd00008.pin has changed
Binary file test-data/four_human_proteins.fasta.pin has changed
Binary file test-data/four_human_proteins_taxid.fasta.pin has changed
Binary file test-data/rhodopsin_nucs.fasta.nin has changed
--- a/test-data/tblastn_four_human_vs_rhodopsin.html	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/tblastn_four_human_vs_rhodopsin.html	Wed Mar 26 16:42:53 2025 +0000
@@ -3,7 +3,7 @@
 <BODY BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#660099" ALINK="#660099">
 <PRE>
 
-<b>TBLASTN 2.10.1+</b>
+<b>TBLASTN 2.14.1+</b>
 
 
 <b><a
@@ -89,7 +89,7 @@
 
 gi|57163782|ref|NM_001009242.1| Felis catus rhodopsin (RHO), mRNA     <a href=#Subject_1>732</a>     0.0  
 gi|18148870|dbj|AB062417.1| Synthetic construct Bos taurus gene f...  <a href=#Subject_5>711</a>     0.0  
-gi|283855822|gb|GQ290312.1| Myotis ricketti voucher GQX10 rhodops...  <a href=#Subject_4>658</a>     0.0  
+gi|283855822|gb|GQ290312.1| Myotis ricketti voucher GQX10 rhodops...  <a href=#Subject_4>682</a>     0.0  
 gi|2734705|gb|U59921.1|BBU59921 Bufo bufo rhodopsin mRNA, complet...  <a href=#Subject_2>646</a>     0.0  
 gi|12583664|dbj|AB043817.1| Conger myriaster conf gene for fresh ...  <a href=#Subject_6>626</a>     0.0  
 gi|283855845|gb|GQ290303.1| Cynopterus brachyotis voucher 2002043...  <a href=#Subject_3>229</a>     3e-67
@@ -165,7 +165,7 @@
 (RHO) mRNA, partial cds
 Length=983
 
- Score = 658 bits (1517),  Expect = 0.0, Method: Compositional matrix adjust.
+ Score = 682 bits (1573),  Expect = 0.0, Method: Compositional matrix adjust.
  Identities = 310/326 (95%), Positives = 322/326 (99%), Gaps = 0/326 (0%)
  Frame = +1
 
--- a/test-data/tblastn_four_human_vs_rhodopsin.tabular	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/tblastn_four_human_vs_rhodopsin.tabular	Wed Mar 26 16:42:53 2025 +0000
@@ -1,6 +1,6 @@
 sp|P08100|OPSD_HUMAN	gi|57163782|ref|NM_001009242.1|	96.552	348	12	0	1	348	1	1044	0.0	732
 sp|P08100|OPSD_HUMAN	gi|18148870|dbj|AB062417.1|	93.391	348	23	0	1	348	1	1044	0.0	711
-sp|P08100|OPSD_HUMAN	gi|283855822|gb|GQ290312.1|	95.092	326	16	0	11	336	1	978	0.0	658
+sp|P08100|OPSD_HUMAN	gi|283855822|gb|GQ290312.1|	95.092	326	16	0	11	336	1	978	0.0	682
 sp|P08100|OPSD_HUMAN	gi|2734705|gb|U59921.1|BBU59921	84.795	342	51	1	1	341	42	1067	0.0	646
 sp|P08100|OPSD_HUMAN	gi|12583664|dbj|AB043817.1|	82.164	342	60	1	1	341	23	1048	0.0	626
 sp|P08100|OPSD_HUMAN	gi|283855845|gb|GQ290303.1|	93.243	74	5	0	239	312	3147	3368	1.34e-71	151
--- a/test-data/tblastn_four_human_vs_rhodopsin.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/tblastn_four_human_vs_rhodopsin.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -2,7 +2,7 @@
 <!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">
 <BlastOutput>
   <BlastOutput_program>tblastn</BlastOutput_program>
-  <BlastOutput_version>TBLASTN 2.10.1+</BlastOutput_version>
+  <BlastOutput_version>TBLASTN 2.16.0+</BlastOutput_version>
   <BlastOutput_reference>Stephen F. Altschul, Thomas L. Madden, Alejandro A. Sch&amp;auml;ffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), &quot;Gapped BLAST and PSI-BLAST: a new generation of protein database search programs&quot;, Nucleic Acids Res. 25:3389-3402.</BlastOutput_reference>
   <BlastOutput_db></BlastOutput_db>
   <BlastOutput_query-ID>Query_1</BlastOutput_query-ID>
@@ -149,8 +149,8 @@
   <Hit_hsps>
     <Hsp>
       <Hsp_num>1</Hsp_num>
-      <Hsp_bit-score>658.198</Hsp_bit-score>
-      <Hsp_score>1517</Hsp_score>
+      <Hsp_bit-score>682.354</Hsp_bit-score>
+      <Hsp_score>1573</Hsp_score>
       <Hsp_evalue>0</Hsp_evalue>
       <Hsp_query-from>11</Hsp_query-from>
       <Hsp_query-to>336</Hsp_query-to>
--- a/test-data/tblastn_four_human_vs_rhodopsin_deflines.tabular	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/tblastn_four_human_vs_rhodopsin_deflines.tabular	Wed Mar 26 16:42:53 2025 +0000
@@ -1,6 +1,6 @@
 P08100	NM_001009242.1	96.552	348	12	0	1	348	1	1044	0.0	732
 P08100	AB062417.1	93.391	348	23	0	1	348	1	1044	0.0	711
-P08100	GQ290312.1	95.092	326	16	0	11	336	1	978	0.0	658
+P08100	GQ290312.1	95.092	326	16	0	11	336	1	978	0.0	682
 P08100	U59921.1	84.795	342	51	1	1	341	42	1067	0.0	646
 P08100	AB043817.1	82.164	342	60	1	1	341	23	1048	0.0	626
 P08100	GQ290303.1	93.243	74	5	0	239	312	3147	3368	1.34e-71	151
--- a/test-data/tblastn_four_human_vs_rhodopsin_ext.tabular	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/tblastn_four_human_vs_rhodopsin_ext.tabular	Wed Mar 26 16:42:53 2025 +0000
@@ -1,6 +1,6 @@
 sp|P08100|OPSD_HUMAN	gi|57163782|ref|NM_001009242.1|	96.552	348	12	0	1	348	1	1044	0.0	732	gi|57163782|ref|NM_001009242.1|	1689	336	343	0	98.56	0	1	MNGTEGPNFYVPFSNATGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVLGGFTSTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLAGWSRYIPEGLQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIIIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQFRNCMLTTICCGKNPLGDDEASATVSKTETSQVAPA	MNGTEGPNFYVPFSNKTGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVFGGFTTTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLVGWSRYIPEGMQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIVIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTLPAFFAKSSSIYNPVIYIMMNKQFRNCMLTTLCCGKNPLGDDEASTTGSKTETSQVAPA	348	1047	N/A
 sp|P08100|OPSD_HUMAN	gi|18148870|dbj|AB062417.1|	93.391	348	23	0	1	348	1	1044	0.0	711	gi|18148870|dbj|AB062417.1|	1640	325	337	0	96.84	0	1	MNGTEGPNFYVPFSNATGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVLGGFTSTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLAGWSRYIPEGLQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIIIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQFRNCMLTTICCGKNPLGDDEASATVSKTETSQVAPA	MNGTEGPNFYVPFSNKTGVVRSPFEAPQYYLAEPWQFSMLAAYMFLLIMLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVFGGFTTTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLVGWSRYIPEGMQCSCGIDYYTPHEETNNESFVIYMFVVHFIIPLIVIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWLPYAGVAFYIFTHQGSDFGPIFMTIPAFFAKTSAVYNPVIYIMMNKQFRNCMVTTLCCGKNPLGDDEASTTVSKTETSQVAPA	348	1047	N/A
-sp|P08100|OPSD_HUMAN	gi|283855822|gb|GQ290312.1|	95.092	326	16	0	11	336	1	978	0.0	658	gi|283855822|gb|GQ290312.1|	1517	310	322	0	98.77	0	1	VPFSNATGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVLGGFTSTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLAGWSRYIPEGLQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIIIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQFRNCMLTTICCGKNPLGDDEASAT	VPFSNKTGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVANLFMVFGGFTTTLYTSMHGYFVFGATGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGLAFTWVMALACAAPPLAGWSRYIPEGMQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIVIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVVAFLICWLPYASVAFYIFTHQGSNFGPVFMTIPAFFAKSSSIYNPVIYIMMNKQFRNCMLTTLCCGKNPLGDDEASTT	348	983	N/A
+sp|P08100|OPSD_HUMAN	gi|283855822|gb|GQ290312.1|	95.092	326	16	0	11	336	1	978	0.0	682	gi|283855822|gb|GQ290312.1|	1573	310	322	0	98.77	0	1	VPFSNATGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVLGGFTSTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLAGWSRYIPEGLQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIIIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQFRNCMLTTICCGKNPLGDDEASAT	VPFSNKTGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVANLFMVFGGFTTTLYTSMHGYFVFGATGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGLAFTWVMALACAAPPLAGWSRYIPEGMQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIVIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVVAFLICWLPYASVAFYIFTHQGSNFGPVFMTIPAFFAKSSSIYNPVIYIMMNKQFRNCMLTTLCCGKNPLGDDEASTT	348	983	N/A
 sp|P08100|OPSD_HUMAN	gi|2734705|gb|U59921.1|BBU59921	84.795	342	51	1	1	341	42	1067	0.0	646	gi|2734705|gb|U59921.1|BBU59921	1489	290	320	1	93.57	0	3	MNGTEGPNFYVPFSNATGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVLGGFTSTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLAGWSRYIPEGLQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIIIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQFRNCMLTTICCGKNPLGDDEA-SATVSKTE	MNGTEGPNFYIPMSNKTGVVRSPFEYPQYYLAEPWQYSILCAYMFLLILLGFPINFMTLYVTIQHKKLRTPLNYILLNLAFANHFMVLCGFTVTMYSSMNGYFILGATGCYVEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFSENHAVMGVAFTWIMALSCAVPPLLGWSRYIPEGMQCSCGVDYYTLKPEVNNESFVIYMFVVHFTIPLIIIFFCYGRLVCTVKEAAAQQQESATTQKAEKEVTRMVIIMVVFFLICWVPYASVAFFIFSNQGSEFGPIFMTVPAFFAKSSSIYNPVIYIMLNKQFRNCMITTLCCGKNPFGEDDASSAATSKTE	348	1574	N/A
 sp|P08100|OPSD_HUMAN	gi|12583664|dbj|AB043817.1|	82.164	342	60	1	1	341	23	1048	0.0	626	gi|12583664|dbj|AB043817.1|	1444	281	311	1	90.94	0	2	MNGTEGPNFYVPFSNATGVVRSPFEYPQYYLAEPWQFSMLAAYMFLLIVLGFPINFLTLYVTVQHKKLRTPLNYILLNLAVADLFMVLGGFTSTLYTSLHGYFVFGPTGCNLEGFFATLGGEIALWSLVVLAIERYVVVCKPMSNFRFGENHAIMGVAFTWVMALACAAPPLAGWSRYIPEGLQCSCGIDYYTLKPEVNNESFVIYMFVVHFTIPMIIIFFCYGQLVFTVKEAAAQQQESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQFRNCMLTTICCGKNPL-GDDEASATVSKTE	MNGTEGPNFYIPMSNATGVVRSPFEYPQYYLAEPWAFSALSAYMFFLIIAGFPINFLTLYVTIEHKKLRTPLNYILLNLAVADLFMVFGGFTTTMYTSMHGYFVFGPTGCNIEGFFATLGGEIALWCLVVLAIERWMVVCKPVTNFRFGESHAIMGVMVTWTMALACALPPLFGWSRYIPEGLQCSCGIDYYTRAPGINNESFVIYMFTCHFSIPLAVISFCYGRLVCTVKEAAAQQQESETTQRAEREVTRMVVIMVISFLVCWVPYASVAWYIFTHQGSTFGPIFMTIPSFFAKSSALYNPMIYICMNKQFRHCMITTLCCGKNPFEEEDGASATSSKTE	348	1344	N/A
 sp|P08100|OPSD_HUMAN	gi|283855845|gb|GQ290303.1|	93.243	74	5	0	239	312	3147	3368	1.34e-71	151	gi|283855845|gb|GQ290303.1|	342	69	73	0	98.65	0	3	ESATTQKAEKEVTRMVIIMVIAFLICWVPYASVAFYIFTHQGSNFGPIFMTIPAFFAKSAAIYNPVIYIMMNKQ	ESATTQKAEKEVTRMVIIMVIAFLICWLPYAGVAFYIFTHQGSNFGPIFMTLPAFFAKSSSIYNPVIYIMMNKQ	348	4301	N/A
Binary file test-data/three_human_mRNA.fasta.gz has changed
Binary file test-data/three_human_mRNA.fasta.nin has changed
--- a/test-data/tool_data_table_conf.xml.test	Mon Dec 19 09:36:39 2022 +0000
+++ b/test-data/tool_data_table_conf.xml.test	Wed Mar 26 16:42:53 2025 +0000
@@ -12,4 +12,8 @@
         <columns>value, name, path</columns>
         <file path="${__HERE__}/blastdb_d.loc" />
     </table>
+    <table name="all_fasta" comment_char="#">
+        <columns>value, dbkey, name, path</columns>
+        <file path="${__HERE__}/all_fasta.loc" />
+    </table>
 </tables>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/all_fasta.loc.sample	Wed Mar 26 16:42:53 2025 +0000
@@ -0,0 +1,18 @@
+#This file lists the locations and dbkeys of all the fasta files
+#under the "genome" directory (a directory that contains a directory
+#for each build). The script extract_fasta.py will generate the file
+#all_fasta.loc. This file has the format (white space characters are
+#TAB characters):
+#
+#<unique_build_id>	<dbkey>	<display_name>	<file_path>
+#
+#So, all_fasta.loc could look something like this:
+#
+#apiMel3	apiMel3	Honeybee (Apis mellifera): apiMel3	/path/to/genome/apiMel3/apiMel3.fa
+#hg19canon	hg19	Human (Homo sapiens): hg19 Canonical	/path/to/genome/hg19/hg19canon.fa
+#hg19full	hg19	Human (Homo sapiens): hg19 Full	/path/to/genome/hg19/hg19full.fa
+#
+#Your all_fasta.loc file should contain an entry for each individual
+#fasta file. So there will be multiple fasta files for each build,
+#such as with hg19 above.
+#
--- a/tool-data/tool_data_table_conf.xml.sample	Mon Dec 19 09:36:39 2022 +0000
+++ b/tool-data/tool_data_table_conf.xml.sample	Wed Mar 26 16:42:53 2025 +0000
@@ -11,4 +11,8 @@
         <columns>value, name, path</columns>
         <file path="tool-data/blastdb_d.loc" />
     </table>
+    <table name="all_fasta" comment_char="#">
+        <columns>value, dbkey, name, path</columns>
+        <file path="tool-data/all_fasta.loc.sample" />
+    </table>
 </tables>
--- a/tools/ncbi_blast_plus/README.rst	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/README.rst	Wed Mar 26 16:42:53 2025 +0000
@@ -136,6 +136,11 @@
 ============== ===============================================================
 Version        Changes
 -------------- ---------------------------------------------------------------
+2.14.1+galaxy2 - Add usage of genome FASTA files on the Galaxy server with
+                 ``makeblastdb`` (contribution from Wolfgang Maier and
+                 Elischa Berger)
+2.14.1+galaxy1 - Fix for get_species_taxids
+2.14.1+galaxy0 - Updated for NCBI BLAST+ 2.14.1 release.
 2.10.1+galaxy3 - Silenced ``deltablast`` warning about using ``-num_threads``
                  with ``--subject`` (i.e. FASTA file from your history).
 2.10.1+galaxy2 - Fixed ``dc-megablast`` option in ``ncbi_blastn_wrapper.xml`` 
--- a/tools/ncbi_blast_plus/blastxml_to_tabular.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/blastxml_to_tabular.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -7,7 +7,7 @@
         <requirement type="package" version="3.9">python</requirement>
     </requirements>
     <version_command>python $__tool_directory__/blastxml_to_tabular.py --version</version_command>
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 python $__tool_directory__/blastxml_to_tabular.py -o '$tabular_file'
 #if $output.out_format == "cols":
 #set cols = (str($output.std_cols)+","+str($output.ext_cols)).replace("None", " ").replace(",,", ",").replace(",", " ")
@@ -16,7 +16,7 @@
 -c '$output.out_format'
 #end if
 #for i in $blastxml_file#'${i}' #end for#
-    </command>
+    ]]></command>
     <inputs>
         <param name="blastxml_file" type="data" format="blastxml" multiple="true" label="BLAST results as XML"/>
         <conditional name="output">
@@ -66,73 +66,97 @@
     <tests>
         <test>
             <param name="blastxml_file" value="blastp_four_human_vs_rhodopsin.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastp output blast_four_human_vs_rhodopsin.tabluar -->
             <output name="tabular_file" file="blastp_four_human_vs_rhodopsin_converted.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastp_four_human_vs_rhodopsin.xml" ftype="blastxml" />
-            <param name="out_format" value="ext" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastp output blast_four_human_vs_rhodopsin_22c.tabluar -->
             <output name="tabular_file" file="blastp_four_human_vs_rhodopsin_converted_ext.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastp_sample.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastp output -->
             <output name="tabular_file" file="blastp_sample_converted.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastx_rhodopsin_vs_four_human.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastx output -->
             <output name="tabular_file" file="blastx_rhodopsin_vs_four_human_converted.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastx_rhodopsin_vs_four_human.xml" ftype="blastxml" />
-            <param name="out_format" value="ext" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
             <!-- Note this has some white space and XXXX masking differences from the actual blastx output -->
             <output name="tabular_file" file="blastx_rhodopsin_vs_four_human_converted_ext.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastx_sample.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastx output -->
             <output name="tabular_file" file="blastx_sample_converted.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastp_human_vs_pdb_seg_no.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastp output -->
             <output name="tabular_file" file="blastp_human_vs_pdb_seg_no_converted_std.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastp_human_vs_pdb_seg_no.xml" ftype="blastxml" />
-            <param name="out_format" value="ext" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
             <!-- Note this has some white space differences from the actual blastp output -->
             <output name="tabular_file" file="blastp_human_vs_pdb_seg_no_converted_ext.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastn_arabidopsis.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <output name="tabular_file" file="blastn_arabidopsis.standard.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastn_arabidopsis.xml" ftype="blastxml" />
-            <param name="out_format" value="ext" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
             <output name="tabular_file" file="blastn_arabidopsis.extended.tabular" ftype="tabular" />
         </test>
         <!-- there are some harmless white space differences in our conversion to the BLAST+ output here: -->
         <test>
             <param name="blastxml_file" value="blastn_rhodopsin_vs_three_human.xml" ftype="blastxml" />
-            <param name="out_format" value="std" />
+            <conditional name="output">
+                <param name="out_format" value="std" />
+            </conditional>
             <output name="tabular_file" file="blastn_rhodopsin_vs_three_human_converted.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="blastxml_file" value="blastn_rhodopsin_vs_three_human.xml" ftype="blastxml" />
-            <param name="out_format" value="cols" />
-            <param name="std_cols" value="qseqid,sseqid,pident" />
-            <param name="ext_cols" value="qlen,slen" />
+            <conditional name="output">
+                <param name="out_format" value="cols" />
+                <param name="std_cols" value="qseqid,sseqid,pident" />
+                <param name="ext_cols" value="qlen,slen" />
+            </conditional>
             <output name="tabular_file" file="blastn_rhodopsin_vs_three_human.columns.tabular" ftype="tabular" />
         </test>
     </tests>
--- a/tools/ncbi_blast_plus/get_species_taxids.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/get_species_taxids.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -3,21 +3,22 @@
     <macros>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="preamble"/>
+    <expand macro="requirements"/>
+    <version_command>echo "@TOOL_VERSION@"</version_command>
     <command detect_errors="aggressive"><![CDATA[
 #if $type_cond.type_sel == 'names'
     #for name in $type_cond.names.split(',')
-        taxid=\$(get_species_taxids.sh -n '$name' | grep Taxid | sed 's/Taxid://') &&
-        if [ -z \$taxid ]; then
+        taxid=\$(get_species_taxids.sh -n '$name' | grep Taxid | sed 's/Taxid\s*:\s*//') &&
+        if [ -z "\$taxid" ]; then
             >&2 echo "could not find taxid for $name" && exit 1;
         else
             echo " $name -> \$taxid";
         fi &&
-        get_species_taxids.sh -t \$taxid >> species_ids.txt &&
+        get_species_taxids.sh -t "\$taxid" >> species_ids.txt &&
     #end for
 #else
     #for taxid in $type_cond.ids.split(',')
-       get_species_taxids.sh -t $taxid >> species_ids.txt &&
+       get_species_taxids.sh -t "$taxid" >> species_ids.txt &&
     #end for
 #end if
 sort -n -u  species_ids.txt > '$output'
@@ -93,14 +94,6 @@
 
 Returns a list of species taxids for a taxon. It relies on the get_species_taxids.sh script of the BLAST+ package https://www.ncbi.nlm.nih.gov/books/NBK546209/
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations"/>
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_blastdbcmd_info.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_blastdbcmd_info.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -5,11 +5,11 @@
         <import>ncbi_macros.xml</import>
     </macros>
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 blastdbcmd
 @DBCMD_OPTS@
 -info -out "$info"
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="input_conditional_choose_db_type" />
     </inputs>
@@ -46,14 +46,6 @@
 switch to give summary information about a BLAST database, such as
 the size (number of sequences and total length) and date.
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_blastdbcmd_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_blastdbcmd_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -5,14 +5,12 @@
         <import>ncbi_macros.xml</import>
     </macros>
     <expand macro="preamble" />
-    <command detect_errors="aggressive" strict="true">
+    <command detect_errors="aggressive" strict="true"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 blastdbcmd
 @DBCMD_OPTS@
 
-##TODO: What about -ctrl_a and -target_only as advanced options?
-
 #if $id_opts.id_type=="file":
 -entry_batch '$id_opts.entries'
 #else:
@@ -43,11 +41,11 @@
 #if str($outfmt)=="blastid":
 -out '$seq'
 #else if sys.platform == "darwin":
-| sed -E 's/^&gt;(lcl\||gnl\|BL_ORD_ID\|[0-9]* )/&gt;/1' &gt; "$seq"
+| sed -E 's/^>(lcl\||gnl\|BL_ORD_ID\|[0-9]* )/>/1' > "$seq"
 #else:
-| sed 's/&gt;\(lcl|\|gnl|BL_ORD_ID|[0-9]* \)/&gt;/1' &gt; "$seq"
+| sed 's/>\(lcl|\|gnl|BL_ORD_ID|[0-9]* \)/>/1' > "$seq"
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="input_conditional_choose_db_type" />
         <conditional name="id_opts">
@@ -66,6 +64,7 @@
           <option value="original">FASTA with original identifiers</option>
           <option value="blastid">FASTA with BLAST assigned identifiers</option>
         </param>
+        <!-- TODO: What about -ctrl_a and -target_only as advanced options? -->
     </inputs>
     <outputs>
 
@@ -153,14 +152,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_blastn_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_blastn_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,10 +4,8 @@
         <token name="@BINARY@">blastn</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
-<![CDATA[
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 blastn
@@ -36,8 +34,7 @@
 @ADV_GAPEXTEND@
 ## End of advanced options:
 #end if
-]]>
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="nucl_query" />
         <expand macro="input_conditional_nucleotide_db" />
@@ -83,93 +80,147 @@
     <tests>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-40" />
-            <param name="out_format" value="5" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="5" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastn_rhodopsin_vs_three_human.xml" ftype="blastxml" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-40" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastn_rhodopsin_vs_three_human.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta.gz" ftype="fasta.gz" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta.gz" ftype="fasta.gz" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-40" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastn_rhodopsin_vs_three_human.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-40" />
-            <param name="out_format" value="cols" />
-            <param name="std_cols" value="qseqid,sseqid,pident" />
-            <param name="ext_cols" value="qlen,slen" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="cols" />
+                <param name="std_cols" value="qseqid,sseqid,pident" />
+                <param name="ext_cols" value="qlen,slen" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastn_rhodopsin_vs_three_human.columns.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="chimera.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="three_human_mRNA" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="max_hits" value="1" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="three_human_mRNA" />
+            </conditional>
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="max_hits" value="1" />
+            </conditional>
             <output name="output1" file="blastn_chimera_vs_three_human_max1.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="chimera.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="three_human_mRNA" />
-            <param name="out_format" value="0" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="max_hits" value="1" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="three_human_mRNA" />
+            </conditional>
+            <conditional name="output">
+                <param name="out_format" value="0" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="max_hits" value="1" />
+            </conditional>
             <output name="output1" file="blastn_chimera_vs_three_human_max1.txt" ftype="txt" />
         </test>
         <test>
             <param name="query" value="chimera.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="three_human_mRNA" />
-            <param name="out_format" value="6" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="three_human_mRNA" />
+            </conditional>
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
             <output name="output1" file="blastn_chimera_vs_three_human_db.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="chimera.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="rhodopsin_nucs" />
-            <param name="out_format" value="6" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="rhodopsin_nucs" />
+            </conditional>
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
             <output name="output1" file="blastn_chimera_vs_rhodopsin_db.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="chimera.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="rhodopsin_nucs" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="max_hsps" value="1" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="rhodopsin_nucs" />
+            </conditional>
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="max_hsps" value="1" />
+            </conditional>
             <output name="output1" file="blastn_chimera_vs_rhodopsin_db_max_hsps1.tabular" ftype="tabular" />
         </test>
         <!-- next test is passing in two blast databases -->
         <test>
             <param name="query" value="chimera.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="three_human_mRNA,rhodopsin_nucs" />
-            <param name="out_format" value="6" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="three_human_mRNA,rhodopsin_nucs" />
+            </conditional>
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
             <output name="output1" file="blastn_chimera_vs_three_human_and_rhodopsin_db.tabular" ftype="tabular" />
         </test>
     </tests>
@@ -193,14 +244,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_blastp_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_blastp_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,9 +4,8 @@
         <token name="@BINARY@">blastp</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 blastp
@@ -31,7 +30,7 @@
     @ADV_COMP_BASED_STATS@
 ## End of advanced options:
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="prot_query" />
 
@@ -75,92 +74,136 @@
     <tests>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8" />
             <param name="blast_type" value="blastp" />
-            <param name="out_format" value="5" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM62" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="window_size" value="40" />
-            <param name="parse_deflines" value="true" />
-            <param name="qcov_hsp_perc" value="25" />
+            <conditional name="output">
+                <param name="out_format" value="5" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM62" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="window_size" value="40" />
+                <param name="parse_deflines" value="true" />
+                <param name="qcov_hsp_perc" value="25" />
+            </conditional>
             <output name="output1" file="blastp_four_human_vs_rhodopsin.xml" ftype="blastxml" />
         </test>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8" />
             <param name="blast_type" value="blastp" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM62" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="window_size" value="40" />
-            <param name="parse_deflines" value="true" />
-            <param name="qcov_hsp_perc" value="25" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM62" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="window_size" value="40" />
+                <param name="parse_deflines" value="true" />
+                <param name="qcov_hsp_perc" value="25" />
+            </conditional>
             <output name="output1" file="blastp_four_human_vs_rhodopsin.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8" />
             <param name="blast_type" value="blastp" />
-            <param name="out_format" value="ext" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM62" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="parse_deflines" value="true" />
-            <param name="qcov_hsp_perc" value="25" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM62" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="parse_deflines" value="true" />
+                <param name="qcov_hsp_perc" value="25" />
+            </conditional>
             <output name="output1" file="blastp_four_human_vs_rhodopsin_ext.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8" />
             <param name="blast_type" value="blastp" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastp_rhodopsin_vs_four_human.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_peptides.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="200000" />
             <param name="blast_type" value="blastp-short" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastp_rhodopsin_peptides_vs_four_human.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8"/>
             <param name="blast_type" value="blastp" />
-            <param name="out_format" value="6"/>
-            <param name="adv_opts_selector" value="advanced"/>
-            <param name="window_size" value="35" />
-            <param name="matrix" value="BLOSUM62" />
-            <param name="gap_costs" value="-gapopen 11 -gapextend 1"/>
-            <param name="comp_based_stats" value="3" />
+            <conditional name="output">
+                <param name="out_format" value="6"/>
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced"/>
+                <param name="window_size" value="35" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM62" />
+                    <param name="gap_costs" value="-gapopen 11 -gapextend 1"/>
+                </conditional>
+                <param name="comp_based_stats" value="3" />
+            </conditional>
             <output name="output1" file="blastp_rhodopsin_adv_vs_four_human.tabular" ftype="tabular" />
         </test>
     </tests>
@@ -183,14 +226,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_blastx_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_blastx_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,9 +4,8 @@
         <token name="@BINARY@">blastx</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 blastx
@@ -31,7 +30,7 @@
 @ADV_COMP_BASED_STATS@
 ## End of advanced options:
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="nucl_query" />
 
@@ -68,58 +67,90 @@
     <tests>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="5" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="5" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastx_rhodopsin_vs_four_human.xml" ftype="blastxml" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastx_rhodopsin_vs_four_human.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="ext" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastx_rhodopsin_vs_four_human_ext.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="cols" />
-            <param name="std_cols" value="qseqid,sseqid,pident,length,mismatch,gapopen,qstart,qend,sstart,send,evalue,bitscore" />
-            <param name="ext_cols" value="sallseqid,score,nident,positive,gaps,ppos,qframe,sframe,qseq,sseq,qlen,slen,salltitles" />
-            <param name="ids_cols" value="qgi,qacc,qaccver,sallseqid,sgi,sallgi,sacc,saccver,sallacc,stitle" />
-            <param name="misc_cols" value="sstrand,frames,btop,qcovs,qcovhsp" />
-            <param name="tax_cols" value="staxids,sscinames,scomnames,sblastnames,sskingdoms" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="cols" />
+                <param name="std_cols" value="qseqid,sseqid,pident,length,mismatch,gapopen,qstart,qend,sstart,send,evalue,bitscore" />
+                <param name="ext_cols" value="sallseqid,score,nident,positive,gaps,ppos,qframe,sframe,qseq,sseq,qlen,slen,salltitles" />
+                <param name="ids_cols" value="qgi,qacc,qaccver,sallseqid,sgi,sallgi,sacc,saccver,sallacc,stitle" />
+                <param name="misc_cols" value="sstrand,frames,btop,qcovs,qcovhsp" />
+                <param name="tax_cols" value="staxids,sscinames,scomnames,sblastnames,sskingdoms" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="blastx_rhodopsin_vs_four_human_all.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="matrix" value="BLOSUM62" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM62" />
+                </conditional>
+            </conditional>
             <output name="output1" file="blastx_rhodopsin_adv_vs_four_human.tabular" ftype="tabular" />
         </test>
     </tests>
@@ -142,14 +173,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_convert2blastmask_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_convert2blastmask_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -5,7 +5,7 @@
         <import>ncbi_macros.xml</import>
     </macros>
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 convert2blastmask
@@ -15,7 +15,7 @@
 $parse_seqids
 -out '$outfile'
 -outfmt $outformat
-    </command>
+    ]]></command>
     <inputs>
         <param name="infile" argument="-in" type="data" format="fasta" label="Masked FASTA file"/>
         <param argument="-masking_algorithm" type="select" label="Used masking algorithm">
@@ -76,12 +76,6 @@
 
 .. _BLAST Command Line Applications User Manual: https://www.ncbi.nlm.nih.gov/books/NBK279690/
 
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_dustmasker_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_dustmasker_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -6,7 +6,7 @@
         <import>ncbi_macros.xml</import>
     </macros>
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 dustmasker
@@ -14,12 +14,18 @@
   -in '${db_opts.database.fields.path}' -infmt blastdb
 #elif $db_opts.db_opts_selector == "histdb":
   -in '${os.path.join($db_opts.histdb.files_path, "blastdb")}' -infmt blastdb
-#else:
-  -in '$subject' -infmt fasta
+#else
+  -in
+    #if $subject.ext == "fasta"
+        '$subject'
+    #else
+        <(gunzip -c '$subject')
+    #end if
+  -infmt fasta
 #end if
 -out '$outfile'
 -window $window -level $level -linker $linker -outfmt $outformat
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="input_conditional_nucleotide_db" />
         <param argument="-window" type="integer" value="64" label="DUST window length" />
@@ -49,8 +55,10 @@
     </outputs>
     <tests>
         <test>
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+            </conditional>
             <param name="window" value="64" />
             <param name="level" value="20" />
             <param name="linker" value="1" />
@@ -58,8 +66,10 @@
             <output name="outfile" file="dustmasker_three_human.fasta" />
         </test>
         <test>
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta.gz" ftype="fasta.gz" />
+            </conditional>
             <param name="window" value="64" />
             <param name="level" value="20" />
             <param name="linker" value="1" />
@@ -67,8 +77,10 @@
             <output name="outfile" file="dustmasker_three_human.maskinfo-asn1-binary" />
         </test>
         <test>
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+            </conditional>
             <param name="window" value="64" />
             <param name="level" value="20" />
             <param name="linker" value="1" />
@@ -88,12 +100,6 @@
 .. _BLAST Command Line Applications User Manual: https://www.ncbi.nlm.nih.gov/books/NBK279690/
 .. _DUST: https://www.ncbi.nlm.nih.gov/pubmed/16796549
 
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_macros.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_macros.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -1,18 +1,24 @@
 <macros>
-    <token name="@TOOL_VERSION@">2.10.1</token>
-    <token name="@VERSION_SUFFIX@">3</token>
-    <token name="@PROFILE@">16.10</token>
-    <xml name="parallelism">
-        <!-- If job splitting is enabled, break up the query file into parts -->
-        <parallelism method="multi" split_inputs="query" split_mode="to_size" split_size="1000" merge_outputs="output1" />
+    <token name="@TOOL_VERSION@">2.16.0</token>
+    <token name="@VERSION_SUFFIX@">0</token>
+    <token name="@PROFILE@">22.01</token>
+
+    <xrefs>
+        <xref type="bio.tools">blast</xref>
+    </xrefs>
+
+    <xml name="preamble">
+        <expand macro="requirements">
+            <yield/>
+        </expand>
+        <version_command>@BINARY@ -version</version_command>
     </xml>
 
-    <xml name="preamble">
+    <xml name="requirements">
         <requirements>
             <requirement type="package" version="@TOOL_VERSION@">blast</requirement>
             <yield />
         </requirements>
-        <version_command>@BINARY@ -version</version_command>
     </xml>
 
     <xml name="nucl_query">
@@ -655,7 +661,7 @@
     -outfmt '6 std sallseqid score nident positive gaps ppos qframe sframe qseq sseq qlen slen salltitles'
 #elif str($output.out_format)=="cols"
 ##Pick your own columns. Galaxy gives us it comma separated, BLAST+ wants space separated:
-##TODO - Can we catch the user picking no columns and raise an error here?
+##Can we catch the user picking no columns and raise an error here?
 #set cols = (str($output.std_cols)+","+str($output.ext_cols)+","+str($output.ids_cols)+","+str($output.misc_cols)+","+str($output.tax_cols)).replace("None", "").replace(",,", ",").replace(",", " ").strip()
     -outfmt '6 $cols'
 #else:
@@ -769,19 +775,6 @@
 #end if
 ]]></token>
 
-    <token name="@REFERENCES@"><![CDATA[
-Peter J. A. Cock, John M. Chilton, Björn Grüning, James E. Johnson, Nicola Soranzo (2015).
-NCBI BLAST+ integrated into Galaxy. *GigaScience* 4:39
-https://doi.org/10.1186/s13742-015-0080-7
-
-Christiam Camacho et al. (2009).
-BLAST+: architecture and applications.
-*BMC Bioinformatics* 15;10:421.
-https://doi.org/10.1186/1471-2105-10-421
-
-This wrapper is available to install into other Galaxy Instances via the Galaxy
-Tool Shed at http://toolshed.g2.bx.psu.edu/view/devteam/ncbi_blast_plus
-    ]]></token>
     <xml name="blast_citations">
         <citations>
             <citation type="doi">10.1093/nar/25.17.3389</citation>
--- a/tools/ncbi_blast_plus/ncbi_makeblastdb.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_makeblastdb.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -8,21 +8,36 @@
         <requirement type="package" version="3.9">python</requirement>
     </expand>
     <command detect_errors="aggressive" strict="true"><![CDATA[
+#set $inputs = []
+#set $input_compression = []
+#for r in $input.selection:
+    #if $input.type == "protein":
+        #silent $inputs.append($r.input_file)
+        #silent $input_compression.append($r.input_file.is_of_type('fasta.gz'))
+    #elif $r.nuc_choice.source == "history":
+        #silent $inputs.append($r.nuc_choice.input_file)
+        #silent $input_compression.append($r.nuc_choice.input_file.is_of_type('fasta.gz'))
+    #else:
+        #silent $inputs.append($r.nuc_choice.input_file.fields.path)
+        #silent $input_compression.append(False)
+    #end if
+#end for
+
 python $__tool_directory__/check_no_duplicates.py
 ##First check for duplicates (since BLAST+ 2.2.28 fails to do so)
 ##and abort (via the ampersand ampersand trick) if any are found.
-#for i in $input_file#'${i}' #end for#
+#for i in $inputs#'$i' #end for#
 &&
 ##makeblastdb does not like input redirects of the sort
 ##makeblastdb -in <(gunzip -c gzipped_fasta_file)
 ##therefore we're cramming everything
 ##into a single cat command below
 cat
-#for i in $input_file:
-    #if $i.is_of_type('fasta.gz') and $i.ext != "fasta":
-        <(gunzip -c ${i})
+#for i, is_gzipped in zip($inputs, $input_compression):
+    #if $is_gzipped:
+        <(gunzip -c '$i')
     #else:
-        ${i}
+        '$i'
     #end if
 #end for
 | makeblastdb -out '${os.path.join($outfile.files_path, "blastdb")}'
@@ -36,7 +51,12 @@
 ##Would default to being based on the cryptic Galaxy filenames, which is unhelpful
 -title 'BLAST Database'
 #end if
--dbtype $dbtype
+-dbtype
+#if $input.type == "protein":
+    prot
+#else:
+    nucl
+#end if
 ## --------------------------------------------------------------------
 ## Masking
 ## --------------------------------------------------------------------
@@ -52,7 +72,6 @@
 ## --------------------------------------------------------------------
 #if $tax.taxselect == 'id':
 -taxid $tax.taxid
-## TODO - Can we use a tabular file for the taxonomy mapping?
 ## #else if $tax.taxselect == 'map':
 ## -taxid_map $tax.taxmap
 #end if
@@ -61,15 +80,39 @@
 > '$outfile'
     ]]></command>
     <inputs>
-        <param argument="-dbtype" type="select" display="radio" label="Molecule type of input">
-            <option value="prot">protein</option>
-            <option value="nucl">nucleotide</option>
-        </param>
-        <!-- TODO Allow merging of existing BLAST databases (conditional on the database type)?
-             NOTE Double check the new database would be self contained first
-        -->
-        <!-- Note this is a mandatory parameter - default should be most recent FASTA file -->
-        <param name="input_file" argument="-in" type="data" multiple="true" optional="false" format="fasta,fasta.gz" label="Input FASTA files(s)" help="One or more FASTA files" />
+        <conditional name="input">
+            <param argument="-dbtype" name="type" type="select" label="Molecule type of input">
+                <option value="protein">protein</option>
+                <option value="nucleotide">nucleotide</option>
+            </param>
+            <!-- TODO Allow merging of existing BLAST databases (conditional on the database type)?
+                 NOTE Double check the new database would be self contained first
+            -->
+            <when value="protein">
+                <repeat name="selection" title="Select input" min="1" default="1">
+                    <!-- Note this is a mandatory parameter - default should be most recent FASTA file -->
+                    <param name="input_file" argument="-in" type="data" format="fasta,fasta.gz" label="FASTA input" help="FASTA file with one or more sequences to add to the database" />
+                </repeat>
+            </when>
+            <when value="nucleotide">
+                <repeat name="selection" title="Select input" min="1" default="1">
+                    <conditional name="nuc_choice">
+                        <param name="source" type="select" label="Input is a">
+                            <option value="history">Dataset in history</option>
+                            <option value="cached">Genome on server</option>
+                        </param>
+                        <when value="history">
+                            <param name="input_file" argument="-in" type="data" format="fasta,fasta.gz" label="FASTA input" help="FASTA file with one or more sequences to add to the database" />
+                        </when>
+                        <when value="cached">
+                            <param name="input_file" type="select" label="Installed genome">
+                                <options from_data_table="all_fasta"/>
+                            </param>
+                        </when>
+                    </conditional>
+                </repeat>
+            </when>
+        </conditional>        
         <param argument="-title" type="text" value="" label="Title for BLAST database" help="This is the database name shown in BLAST search output" />
         <param argument="-parse_seqids" type="boolean" truevalue="-parse_seqids" falsevalue="" checked="false" label="Parse the sequence identifiers" help="This is only advised if your FASTA file follows the NCBI naming conventions using pipe '|' symbols" />
         <param argument="-hash_index" type="boolean" truevalue="-hash_index" falsevalue="" checked="true" label="Enable the creation of sequence hash values" help="These hash values can then be used to quickly determine if a given sequence data exists in this BLAST database." />
@@ -84,6 +127,7 @@
                 <option value="id">Assign the same Taxonomy ID to all the sequences</option>
                 <!--
                 <option value="map">Supply text file mapping sequence IDs to taxnomy IDs</option>
+                TODO - Can we use a tabular file for the taxonomy mapping?
                 -->
             </param>
             <when value="">
@@ -95,15 +139,16 @@
             <when value="map">
                 <param name="taxmap" argument="-taxid_map" type="data" format="txt" label="Seq ID : Tax ID mapping file" help="Format: SequenceId TaxonomyId" />
             </when>
+
             -->
         </conditional>
     </inputs>
     <outputs>
         <!-- If we only accepted one FASTA file, we could use its human name here... -->
-        <data name="outfile" format="data" label="${dbtype.value_label} BLAST database from ${on_string}">
+        <data name="outfile" format="data" label="${input.type} BLAST database from ${on_string}">
             <change_format>
-                <when input="dbtype" value="nucl" format="blastdbn" />
-                <when input="dbtype" value="prot" format="blastdbp" />
+                <when input="input.type" value="nucleotide" format="blastdbn" />
+                <when input="input.type" value="protein" format="blastdbp" />
             </change_format>
         </data>
     </outputs>
@@ -115,10 +160,14 @@
              With and without the taxid the only real difference is in the *.phr file.
         -->
         <test>
-            <param name="dbtype" value="prot" />
-            <param name="input_file" value="four_human_proteins.fasta" ftype="fasta" />
+            <conditional name="input">
+                <param name="type" value="protein"/>
+                <repeat name="selection">
+                    <param name="input_file" value="four_human_proteins.fasta" ftype="fasta" />
+                </repeat>
+            </conditional>    
             <param name="title" value="Just 4 human proteins" />
-            <param name="parse_seqids" value="" />
+            <param name="parse_seqids" value="false" />
             <param name="hash_index" value="true" />
             <output name="outfile" compare="contains" file="four_human_proteins.fasta.log.txt" ftype="blastdbp">
                 <extra_files type="file" value="four_human_proteins.fasta.phr" name="blastdb.phr" />
@@ -132,13 +181,19 @@
             </output>
         </test>
         <test>
-            <param name="dbtype" value="prot" />
-            <param name="input_file" value="four_human_proteins.fasta" ftype="fasta" />
+            <conditional name="input">
+                <param name="type" value="protein"/>
+                <repeat name="selection">
+                    <param name="input_file" value="four_human_proteins.fasta" ftype="fasta" />
+                </repeat>
+            </conditional>    
             <param name="title" value="Just 4 human proteins" />
-            <param name="parse_seqids" value="" />
+            <param name="parse_seqids" value="false" />
             <param name="hash_index" value="true" />
-            <param name="taxselect" value="id" />
-            <param name="taxid" value="9606" />
+            <conditional name="tax">
+                <param name="taxselect" value="id" />
+                <param name="taxid" value="9606" />
+            </conditional>
             <output name="outfile" compare="contains" file="four_human_proteins_taxid.fasta.log.txt" ftype="blastdbp">
                 <extra_files type="file" value="four_human_proteins_taxid.fasta.phr" name="blastdb.phr" />
                 <extra_files type="file" value="four_human_proteins_taxid.fasta.pin" name="blastdb.pin" compare="sim_size" delta="0" />
@@ -151,10 +206,14 @@
             </output>
         </test>
         <test>
-            <param name="dbtype" value="prot" />
-            <param name="input_file" value="four_human_proteins.fasta" ftype="fasta" />
+            <conditional name="input">
+                <param name="type" value="protein"/>
+                <repeat name="selection">
+                    <param name="input_file" value="four_human_proteins.fasta" ftype="fasta" />
+                </repeat>
+            </conditional>                
             <param name="title" value="Just 4 human proteins" />
-            <param name="parse_seqids" value="" />
+            <param name="parse_seqids" value="false" />
             <param name="hash_index" value="true" />
             <param name="mask_data_file" value="segmasker_four_human.maskinfo-asn1" ftype="maskinfo-asn1" />
             <output name="outfile" compare="contains" file="four_human_proteins.fasta.log.txt" ftype="blastdbp">
@@ -169,13 +228,50 @@
             </output>
         </test>
         <test>
-            <param name="dbtype" value="nucl" />
-            <param name="input_file" value="three_human_mRNA.fasta.gz" ftype="fasta.gz" />
+            <conditional name="input">
+                <param name="type" value="nucleotide"/>
+                <repeat name="selection">
+                    <conditional name="nuc_choice">
+                        <param name="source" value="history"/>
+                        <param name="input_file" value="three_human_mRNA.fasta.gz" ftype="fasta.gz" />
+                    </conditional> 
+                </repeat>
+            </conditional> 
             <param name="title" value="Just 3 human mRNA sequences" />
-            <param name="parse_seqids" value="" />
+            <param name="parse_seqids" value="false" />
             <param name="hash_index" value="true" />
-            <param name="taxselect" value="id" />
-            <param name="taxid" value="9606" />
+            <conditional name="tax">
+                <param name="taxselect" value="id" />
+                <param name="taxid" value="9606" />
+            </conditional>
+            <output name="outfile" compare="contains" file="three_human_mRNA.fasta.log.txt" ftype="blastdbn">
+                <extra_files type="file" value="three_human_mRNA.fasta.nhr" name="blastdb.nhr" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nin" name="blastdb.nin" compare="sim_size" delta="8" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nsq" name="blastdb.nsq" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nog" name="blastdb.nog" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nhd" name="blastdb.nhd" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nhi" name="blastdb.nhi" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nsd" name="blastdb.nsd" />
+                <extra_files type="file" value="three_human_mRNA.fasta.nsi" name="blastdb.nsi" />
+            </output>
+        </test>
+        <test>
+            <conditional name="input">
+                <param name="type" value="nucleotide"/>
+                <repeat name="selection">
+                    <conditional name="nuc_choice">
+                        <param name="source" value="cached"/>
+                        <param name="input_file" value="three_human_mRNA" />
+                    </conditional> 
+                </repeat>
+            </conditional> 
+            <param name="title" value="Just 3 human mRNA sequences" />
+            <param name="parse_seqids" value="false" />
+            <param name="hash_index" value="true" />
+            <conditional name="tax">
+                <param name="taxselect" value="id" />
+                <param name="taxid" value="9606" />
+            </conditional>
             <output name="outfile" compare="contains" file="three_human_mRNA.fasta.log.txt" ftype="blastdbn">
                 <extra_files type="file" value="three_human_mRNA.fasta.nhr" name="blastdb.nhr" />
                 <extra_files type="file" value="three_human_mRNA.fasta.nin" name="blastdb.nin" compare="sim_size" delta="8" />
@@ -206,12 +302,6 @@
 For this reason, it's best to apply all masks at once to minimize the number of unnecessary intermediate databases.
 -->
 
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_makeprofiledb.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_makeprofiledb.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -5,9 +5,9 @@
         <import>ncbi_macros.xml</import>
     </macros>
     <expand macro="preamble" />
-    <command detect_errors="aggressive" strict="true">
+    <command detect_errors="aggressive" strict="true"><![CDATA[
 ##Unlike makeblastdb, makeprofiledb needs directory to exist already:
-mkdir -p $outfile.files_path &amp;&amp;
+mkdir -p $outfile.files_path &&
 makeprofiledb
 -blastdb_version 4
 -out '${os.path.join($outfile.files_path, "blastdb")}'
@@ -35,13 +35,13 @@
 -exclude_invalid $exclude_invalid
 
 -logfile '$outfile'
-    </command>
+    ]]></command>
     <configfiles>
-        <configfile name="infiles">
+        <configfile name="infiles"><![CDATA[
 #for $infile in $input_file
 ${infile}
 #end for
-        </configfile>
+    ]]></configfile>
     </configfiles>
     <inputs>
         <param name="input_file" argument="-in" type="data" multiple="true" optional="false" format="pssm-asn1"
@@ -89,7 +89,9 @@
         <test>
             <param name="input_file" value="cd00003.smp,cd00008.smp" ftype="pssm-asn1" />
             <param name="title" value="Just 2 PSSM matrices" />
-            <param name="contain_pssm_scores_type" value="yes" />
+            <conditional name="contain_pssm_scores">
+                <param name="contain_pssm_scores_type" value="yes" />
+            </conditional>
             <output name="outfile" file="empty_file.dat" ftype="blastdbd" >
                 <extra_files type="file" value="cd00003_and_cd00008.phr" name="blastdb.phr" />
                 <extra_files type="file" value="cd00003_and_cd00008.pin" name="blastdb.pin" compare="sim_size" delta="8" />
@@ -116,13 +118,6 @@
 
 .. _BLAST Command Line Applications User Manual: https://www.ncbi.nlm.nih.gov/books/NBK279690/
 
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_rpsblast_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_rpsblast_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,9 +4,8 @@
         <token name="@BINARY@">deltablast</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 rpsblast
@@ -26,7 +25,7 @@
 @ADV_WINDOW_SIZE@
 ## End of advanced options:
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="prot_query" />
 
@@ -47,18 +46,20 @@
     </inputs>
     <outputs>
         <data name="output1" format="tabular" label="rpsblast on ${on_string}">
-
             <expand macro="output_change_format" />
-
         </data>
     </outputs>
     <tests>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="cd00003_and_cd00008" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="cd00003_and_cd00008" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8" />
-            <param name="out_format" value="6" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
             <output name="output1" file="empty_file.dat" ftype="tabular" />
         </test>
     </tests>
@@ -109,14 +110,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_rpstblastn_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_rpstblastn_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,9 +4,8 @@
         <token name="@BINARY@">rpstblastn</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 rpstblastn
@@ -26,7 +25,7 @@
 @ADV_QCOV_HSP_PERC@
 ## End of advanced options:
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="nucl_query" />
 
@@ -53,10 +52,14 @@
     <tests>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="db" />
-            <param name="database" value="cd00003_and_cd00008" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="db" />
+                <param name="database" value="cd00003_and_cd00008" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-8" />
-            <param name="out_format" value="6" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
             <output name="output1" file="empty_file.dat" ftype="tabular" />
         </test>
     </tests>
@@ -107,14 +110,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_segmasker_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_segmasker_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -5,7 +5,7 @@
         <import>ncbi_macros.xml</import>
     </macros>
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 segmasker
@@ -21,7 +21,7 @@
 -locut $locut
 -hicut $hicut
 -outfmt $outformat
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="input_conditional_protein_db" />
         <param name="window" type="integer" value="12" label="SEG window length" help="(-window)" />
@@ -51,8 +51,10 @@
     </outputs>
     <tests>
         <test>
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+            </conditional>
             <param name="window" value="12" />
             <param name="locut" value="2.2" />
             <param name="hicut" value="2.5" />
@@ -60,8 +62,10 @@
             <output name="outfile" file="segmasker_four_human.fasta" />
         </test>
         <test>
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+            </conditional>
             <param name="window" value="12" />
             <param name="locut" value="2.2" />
             <param name="hicut" value="2.5" />
@@ -69,8 +73,10 @@
             <output name="outfile" file="segmasker_four_human.maskinfo-asn1-binary" />
         </test>
         <test>
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="four_human_proteins.fasta" ftype="fasta" />
+            </conditional>
             <param name="window" value="12" />
             <param name="locut" value="2.2" />
             <param name="hicut" value="2.5" />
@@ -90,12 +96,6 @@
 .. _BLAST Command Line Applications User Manual: https://www.ncbi.nlm.nih.gov/books/NBK279690/
 .. _SEG: https://www.ncbi.nlm.nih.gov/pubmed/8743706
 
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_tblastn_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_tblastn_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,9 +4,8 @@
         <token name="@BINARY@">tblastn</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 tblastn
@@ -31,7 +30,7 @@
 @ADV_COMP_BASED_STATS@
 ## End of advanced options:
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="prot_query" />
 
@@ -72,80 +71,120 @@
     <tests>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="5" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM80" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="parse_deflines" value="false" />
+            <conditional name="output">
+                <param name="out_format" value="5" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM80" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> https://github.com/galaxyproject/galaxy/issues/19908 -->
+                <param name="parse_deflines" value="false" />
+            </conditional>
             <output name="output1" file="tblastn_four_human_vs_rhodopsin.xml" ftype="blastxml" />
         </test>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="ext" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM80" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="parse_deflines" value="false" />
+            <conditional name="output">
+                <param name="out_format" value="ext" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM80" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="parse_deflines" value="false" />
+            </conditional>
             <output name="output1" file="tblastn_four_human_vs_rhodopsin_ext.tabular" ftype="tabular" />
         </test>
         <test>
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM80" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="parse_deflines" value="false" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM80" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="parse_deflines" value="false" />
+            </conditional>
             <output name="output1" file="tblastn_four_human_vs_rhodopsin.tabular" ftype="tabular" />
         </test>
         <test>
             <!-- Same as above, but parse deflines -->
             <!-- Note back on BLAST 2.2.25+ - 2.2.27+ made no difference -->
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM80" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="parse_deflines" value="true" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM80" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="parse_deflines" value="true" />
+            </conditional>
             <output name="output1" file="tblastn_four_human_vs_rhodopsin_deflines.tabular" ftype="tabular" />
         </test>
         <test>
             <!-- As of BLAST 2.5.0+ the full path appears twice, so get small diff -->
             <param name="query" value="four_human_proteins.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="subject" value="rhodopsin_nucs.fasta" ftype="fasta" />
+                <param name="database" value="" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-10" />
-            <param name="out_format" value="0 -html" />
-            <param name="adv_opts_selector" value="advanced" />
-            <param name="filter_query" value="false" />
-            <param name="matrix" value="BLOSUM80" />
-            <param name="max_hits" value="0" />
-            <param name="word_size" value="" />
-            <param name="parse_deflines" value="false" />
+            <conditional name="output">
+                <param name="out_format" value="0 -html" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="advanced" />
+                <param name="filter_query" value="false" />
+                <conditional name="matrix_gapcosts">
+                    <param name="matrix" value="BLOSUM80" />
+                </conditional>
+                <param name="max_hits" value="0" />
+                <!-- <param name="word_size" value="" /> -->
+                <param name="parse_deflines" value="false" />
+            </conditional>
             <output name="output1" file="tblastn_four_human_vs_rhodopsin.html" ftype="html" lines_diff="10" />
         </test>
     </tests>
@@ -168,14 +207,6 @@
 
 @CLI_OPTIONS@
 
-------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>
--- a/tools/ncbi_blast_plus/ncbi_tblastx_wrapper.xml	Mon Dec 19 09:36:39 2022 +0000
+++ b/tools/ncbi_blast_plus/ncbi_tblastx_wrapper.xml	Wed Mar 26 16:42:53 2025 +0000
@@ -4,9 +4,8 @@
         <token name="@BINARY@">tblastx</token>
         <import>ncbi_macros.xml</import>
     </macros>
-    <expand macro="parallelism" />
     <expand macro="preamble" />
-    <command detect_errors="aggressive">
+    <command detect_errors="aggressive"><![CDATA[
 ## The command is a Cheetah template which allows some Python based syntax.
 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
 tblastx
@@ -28,7 +27,7 @@
     @ADV_THRESHOLD@
 ## End of advanced options:
 #end if
-    </command>
+    ]]></command>
     <inputs>
         <expand macro="nucl_query" />
 
@@ -61,12 +60,18 @@
     <tests>
         <test>
             <param name="query" value="rhodopsin_nucs.fasta" ftype="fasta" />
-            <param name="db_opts_selector" value="file" />
-            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
-            <param name="database" value="" />
+            <conditional name="db_opts">
+                <param name="db_opts_selector" value="file" />
+                <param name="database" value="" />
+                <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
+            </conditional>
             <param name="evalue_cutoff" value="1e-40" />
-            <param name="out_format" value="6" />
-            <param name="adv_opts_selector" value="basic" />
+            <conditional name="output">
+                <param name="out_format" value="6" />
+            </conditional>
+            <conditional name="adv_opts">
+                <param name="adv_opts_selector" value="basic" />
+            </conditional>
             <output name="output1" file="tblastx_rhodopsin_vs_three_human.tabular" ftype="tabular" />
         </test>
     </tests>
@@ -89,14 +94,6 @@
 
 @CLI_OPTIONS@
 
--------
-
-**References**
-
-If you use this Galaxy tool in work leading to a scientific publication please
-cite the following papers:
-
-@REFERENCES@
     </help>
     <expand macro="blast_citations" />
 </tool>