Repository 'openms_peakpickerhires'
hg clone https://toolshed.g2.bx.psu.edu/repos/galaxyp/openms_peakpickerhires

Changeset 10:6b01678ec2fc (2022-12-01)
Previous changeset 9:decc397c3b7e (2020-11-06) Next changeset 11:401f500aae50 (2024-06-14)
Commit message:
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 3d1e5f37fd16524a415f707772eeb7ead848c5e3
modified:
PeakPickerHiRes.xml
fill_ctd.py
fill_ctd_clargs.py
generate-foo.sh
macros.xml
prepare_test_data_manual.sh
readme.md
test-data.sh
added:
test-data/pepnovo_models.loc
test-data/random.fa
test-data/random_RNA.fa
removed:
404-urls.patch
OMSSAAdapter.patch
PepNovoAdapter.patch
filetypes.txt
generate.sh
hardcoded_params.json
macros_autotest.xml
macros_discarded_auto.xml
macros_test.xml
tools_blacklist.txt
b
diff -r decc397c3b7e -r 6b01678ec2fc 404-urls.patch
--- a/404-urls.patch Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,11 +0,0 @@
-diff -ruN FeatureFinderSuperHirn.xml FeatureFinderSuperHirn.xml
---- FeatureFinderSuperHirn.xml 2020-10-02 12:06:56.398572301 +0200
-+++ FeatureFinderSuperHirn.xml 2020-10-02 12:07:31.511153834 +0200
-@@ -105,6 +105,6 @@
-   <help><![CDATA[Finds mass spectrometric features in mass spectra.


--For more information, visit http://www.openms.de/doxygen/release/2.6.0/html/TOPP_FeatureFinderSuperHirn.html]]></help>
-+For more information, visit https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/release/2.6.0/html/UTILS_FeatureFinderSuperHirn.html]]></help>
-   <expand macro="references"/>
- </tool>
b
diff -r decc397c3b7e -r 6b01678ec2fc OMSSAAdapter.patch
--- a/OMSSAAdapter.patch Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,10 +0,0 @@
---- OMSSAAdapter.xml 2020-06-16 15:51:40.315400730 +0200
-+++ /tmp/OMSSAAdapter.xml 2020-06-16 15:50:23.536086074 +0200
-@@ -22,6 +22,7 @@
- mkdir database &&
- ln -s '$database' 'database/${re.sub("[^\w\-_]", "_", $database.element_identifier)}.$gxy2omsext($database.ext)' &&

-+makeblastdb -dbtype prot -in 'database/${re.sub("[^\w\-_]", "_", $database.element_identifier)}.$gxy2omsext($database.ext)' &&
- ## Main program call

- set -o pipefail &&
b
diff -r decc397c3b7e -r 6b01678ec2fc PeakPickerHiRes.xml
--- a/PeakPickerHiRes.xml Fri Nov 06 20:31:34 2020 +0000
+++ b/PeakPickerHiRes.xml Thu Dec 01 19:20:52 2022 +0000
[
b'@@ -1,13 +1,11 @@\n <?xml version=\'1.0\' encoding=\'UTF-8\'?>\n <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->\n <!--Proposed Tool Section: [Signal processing and preprocessing]-->\n-<tool id="PeakPickerHiRes" name="PeakPickerHiRes" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@" profile="20.05">\n+<tool id="PeakPickerHiRes" name="PeakPickerHiRes" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">\n   <description>Finds mass spectrometric peaks in profile mass spectra.</description>\n   <macros>\n     <token name="@EXECUTABLE@">PeakPickerHiRes</token>\n     <import>macros.xml</import>\n-    <import>macros_autotest.xml</import>\n-    <import>macros_test.xml</import>\n   </macros>\n   <expand macro="requirements"/>\n   <expand macro="stdio"/>\n@@ -41,23 +39,23 @@\n     <configfile name="hardcoded_json"><![CDATA[{"log": "log.txt", "threads": "\\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>\n   </configfiles>\n   <inputs>\n-    <param name="in" argument="-in" type="data" format="mzml" optional="false" label="input profile data file" help=" select mzml data sets(s)"/>\n+    <param argument="-in" type="data" format="mzml" optional="false" label="input profile data file" help=" select mzml data sets(s)"/>\n     <section name="algorithm" title="Algorithm parameters section" help="" expanded="false">\n       <param name="signal_to_noise" argument="-algorithm:signal_to_noise" type="float" optional="true" min="0.0" value="0.0" label="Minimal signal-to-noise ratio for a peak to be picked (0.0 disables SNT estimation!)" help=""/>\n       <param name="spacing_difference_gap" argument="-algorithm:spacing_difference_gap" type="float" optional="true" min="0.0" value="4.0" label="The extension of a peak is stopped if the spacing between two subsequent data points exceeds \'spacing_difference_gap * min_spacing\'" help="\'min_spacing\' is the smaller of the two spacings from the peak apex to its two neighboring points. \'0\' to disable the constraint. Not applicable to chromatograms"/>\n       <param name="spacing_difference" argument="-algorithm:spacing_difference" type="float" optional="true" min="0.0" value="1.5" label="Maximum allowed difference between points during peak extension, in multiples of the minimal difference between the peak apex and its two neighboring points" help="If this difference is exceeded a missing point is assumed (see parameter \'missing\'). A higher value implies a less stringent peak definition, since individual signals within the peak are allowed to be further apart. \'0\' to disable the constraint. Not applicable to chromatograms"/>\n       <param name="missing" argument="-algorithm:missing" type="integer" optional="true" min="0" value="1" label="Maximum number of missing points allowed when extending a peak to the left or to the right" help="A missing data point occurs if the spacing between two subsequent data points exceeds \'spacing_difference * min_spacing\'. \'min_spacing\' is the smaller of the two spacings from the peak apex to its two neighboring points. Not applicable to chromatograms"/>\n       <param name="ms_levels" argument="-algorithm:ms_levels" type="text" optional="true" value="" label="List of MS levels for which the peak picking is applied" help="If empty, auto mode is enabled, all peaks which aren\'t picked yet will get picked. Other scans are copied to the output without changes (space separated list, in order to allow for spaces in list items surround them by single quotes)">\n-        <expand macro="list_integer_valsan">\n+        <expand macro="list_integer_valsan" name="ms_levels">\n           <validator type="expression" message="a space separated list of integer values in the range 1: is required"><![CDATA[len(value.split(\' \')) == len([_ for _ in value.split(\' \') if  1 <= int(_)])\n ]]></validator>\n         </expand>\n       </param>\n       <param name="report_FWHM" argument="-algorithm:report'..b'   <param name="noise_for_empty_window" value="1e+20"/>\n+          <param name="write_log_messages" value="true"/>\n+        </section>\n+      </section>\n+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n+      <output name="ctd_out" ftype="xml">\n+        <assert_contents>\n+          <is_valid_xml/>\n+        </assert_contents>\n+      </output>\n+    </test>\n+    <!-- TOPP_PeakPickerHiRes_4 -->\n+    <test expect_num_outputs="2">\n+      <section name="adv_opts">\n+        <param name="processOption" value="lowmemory"/>\n+        <param name="force" value="false"/>\n+        <param name="test" value="true"/>\n+      </section>\n+      <param name="in" value="PeakPickerHiRes_2_input.mzML"/>\n+      <output name="out" file="PeakPickerHiRes_2_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>\n+      <section name="algorithm">\n+        <param name="signal_to_noise" value="1.0"/>\n+        <param name="spacing_difference_gap" value="4.0"/>\n+        <param name="spacing_difference" value="1.5"/>\n+        <param name="missing" value="1"/>\n+        <param name="ms_levels" value="1"/>\n+        <param name="report_FWHM" value="true"/>\n+        <param name="report_FWHM_unit" value="relative"/>\n+        <section name="SignalToNoise">\n+          <param name="max_intensity" value="-1"/>\n+          <param name="auto_max_stdev_factor" value="3.0"/>\n+          <param name="auto_max_percentile" value="95"/>\n+          <param name="auto_mode" value="0"/>\n+          <param name="win_len" value="200.0"/>\n+          <param name="bin_count" value="30"/>\n+          <param name="min_required_elements" value="10"/>\n+          <param name="noise_for_empty_window" value="1e+20"/>\n+          <param name="write_log_messages" value="true"/>\n+        </section>\n+      </section>\n+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n+      <output name="ctd_out" ftype="xml">\n+        <assert_contents>\n+          <is_valid_xml/>\n+        </assert_contents>\n+      </output>\n+    </test>\n+    <!-- TOPP_PeakPickerHiRes_5 -->\n+    <test expect_num_outputs="2">\n+      <section name="adv_opts">\n+        <param name="processOption" value="inmemory"/>\n+        <param name="force" value="false"/>\n+        <param name="test" value="true"/>\n+      </section>\n+      <param name="in" value="PeakPickerHiRes_5_input.mzML"/>\n+      <output name="out" file="PeakPickerHiRes_5_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>\n+      <section name="algorithm">\n+        <param name="signal_to_noise" value="0.0"/>\n+        <param name="spacing_difference_gap" value="4.0"/>\n+        <param name="spacing_difference" value="1.5"/>\n+        <param name="missing" value="1"/>\n+        <param name="ms_levels" value=""/>\n+        <param name="report_FWHM" value="false"/>\n+        <param name="report_FWHM_unit" value="relative"/>\n+        <section name="SignalToNoise">\n+          <param name="max_intensity" value="-1"/>\n+          <param name="auto_max_stdev_factor" value="3.0"/>\n+          <param name="auto_max_percentile" value="95"/>\n+          <param name="auto_mode" value="0"/>\n+          <param name="win_len" value="200.0"/>\n+          <param name="bin_count" value="30"/>\n+          <param name="min_required_elements" value="10"/>\n+          <param name="noise_for_empty_window" value="1e+20"/>\n+          <param name="write_log_messages" value="true"/>\n+        </section>\n+      </section>\n+      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n+      <output name="ctd_out" ftype="xml">\n+        <assert_contents>\n+          <is_valid_xml/>\n+        </assert_contents>\n+      </output>\n+    </test>\n   </tests>\n   <help><![CDATA[Finds mass spectrometric peaks in profile mass spectra.\n \n \n-For more information, visit http://www.openms.de/doxygen/release/2.6.0/html/TOPP_PeakPickerHiRes.html]]></help>\n+For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/TOPP_PeakPickerHiRes.html]]></help>\n   <expand macro="references"/>\n </tool>\n'
b
diff -r decc397c3b7e -r 6b01678ec2fc PepNovoAdapter.patch
--- a/PepNovoAdapter.patch Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,35 +0,0 @@
---- PepNovoAdapter.xml 2020-05-12 15:55:24.712831518 +0200
-+++ /tmp/PepNovoAdapter.xml 2020-05-12 15:36:31.267276757 +0200
-@@ -42,8 +42,13 @@
-   </configfiles>
-   <inputs>
-     <param name="in" argument="-in" type="data" format="mzml" optional="false" label="input file" help=" select mzml data sets(s)"/>
--    <param name="model_directory" argument="-model_directory" type="text" optional="false" value="" label="Name of the directory where the model files are kept" help="">
--      <expand macro="list_string_san"/>
-+    <param name="model_directory" argument="-model_directory" type="select" optional="false" label="Name of the directory where the model files are kept" help="">
-+        <options from_data_table="pepnovo_models">
-+            <column name="name" index="0"/>
-+            <column name="value" index="2"/>
-+            <filter type="unique_value" name="unique_set" column="0"/>
-+            <validator type="no_options" message="No model directory available"/>
-+        </options>
-     </param>
-     <param name="correct_pm" argument="-correct_pm" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Find optimal precursor mass and charge values" help=""/>
-     <param name="use_spectrum_charge" argument="-use_spectrum_charge" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Do not correct charge" help=""/>
-@@ -51,8 +56,14 @@
-     <param name="no_quality_filter" argument="-no_quality_filter" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Do not remove low quality spectra" help=""/>
-     <param name="fragment_tolerance" argument="-fragment_tolerance" type="float" optional="true" value="-1.0" label="The fragment tolerance (between 0 and 0.75 Da" help="Set to -1.0 to use model's default setting)"/>
-     <param name="pm_tolerance" argument="-pm_tolerance" type="float" optional="true" value="-1.0" label="The precursor mass tolerance (between 0 and 5.0 Da" help="Set to -1.0 to use model's default setting)"/>
--    <param name="model" argument="-model" type="text" optional="true" value="CID_IT_TRYP" label="Name of the model that should be used" help="">
--      <expand macro="list_string_san"/>
-+    <param name="model" argument="-model" type="select" label="Name of the model that should be used" help="">
-+        <options from_data_table="pepnovo_models">
-+            <column name="name" index="1"/>
-+            <column name="value" index="1"/>
-+            <filter type="param_value" ref="model_directory" column="2"/>
-+            <filter type="unique_value" column="1"/>
-+            <validator type="no_options" message="No model available"/>
-+        </options>
-     </param>
-     <param name="digest" argument="-digest" display="radio" type="select" optional="false" label="Enzyme used for digestion (default TRYPSIN)" help="">
-       <option value="TRYPSIN" selected="true">TRYPSIN</option>
b
diff -r decc397c3b7e -r 6b01678ec2fc filetypes.txt
--- a/filetypes.txt Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,85 +0,0 @@
-# CTD type    # Galaxy type
-# the following lines need to be at the top in order to ensure 
-# correct translation Galaxy->CTD type for the ambiguous cases
-# (should only be relevant for the autogenerated tests [which 
-# do not set the ftype of the inputs])
-txt           txt
-tsv           tabular
-
-##analysisXML
-# XTandemAdapter output is named xml in OMS (which is to unspecific) and bioml in Galaxy .. so this is renamed via hardcoded parameters 
-bioml         xml
-consensusXML  consensusxml
-# TODO csv is problematic, since csv often actually means tsv .. but not always
-csv           csv
-##dat
-dta           dta
-dta2d         dta2d
-edta          edta
-fa            fasta
-fas           fasta
-fasta         fasta
-FASTA         fasta
-featureXML    featurexml
-featurexml    featurexml
-# fid
-html          html
-HTML          html
-idXML         idxml
-##ini         txt
-json          json
-kroenik       kroenik
-mascotXML     mascotxml
-mgf           mgf
-mrm           mrm
-ms            sirius.ms
-ms2           ms2
-msp           msp
-mzData        mzdata
-mzid          mzid
-# important to have mzML first, since LuciphorAdapter is case sensitive https://github.com/OpenMS/OpenMS/issues/4444
-mzML          mzml
-mzml          mzml
-mzq           mzq
-mzTab         mztab
-mzXML         mzxml
-novor         txt
-obo           obo
-# I guess this is the idXML output of omssa
-omssaXML      idxml
-osw           osw
-OSW           osw
-params        txt
-paramXML      paramxml
-fasta         peff
-peplist       peplist
-# TODO pep.xml should be removed with OMS 2.6 https://github.com/OpenMS/OpenMS/pull/4541 .. but still in the tests
-pep.xml       pepxml
-pepXML        pepxml
-png           png
-PNG           png
-protXML       protxml
-psms          psms
-# TODO implement or use
-# psq
-pqp           pqp
-qcML          qcml
-spec.xml      spec.xml
-splib         splib
-sqMass        sqmass
-tandem.xml    tandem
-trafoXML      trafoxml
-traML         traml
-TraML         traml
-tab           tabular
-## MOVED TO TOP txt           txt
-raw           thermo.raw
-## xls: SpectraSTSearchAdapter https://github.com/OpenMS/OpenMS/pull/4419
-xls           tsv
-XML           xml
-xml           xml
-xquest.xml    xquest.xml
-xsd           xml
-
-# TODO needs to be implemented, needs to be below xml in order that Galaxy->OMS mapping gives xml
-# cachedMzML    xml
b
diff -r decc397c3b7e -r 6b01678ec2fc fill_ctd.py
--- a/fill_ctd.py Fri Nov 06 20:31:34 2020 +0000
+++ b/fill_ctd.py Thu Dec 01 19:20:52 2022 +0000
[
@@ -32,7 +32,7 @@
     for k, v in e.items():
         if (k in d and isinstance(d[k], dict) and isinstance(e[k], collections.abc.Mapping)):
             mergeDicts(d[k], e[k])
-        elif k not in d and not isinstance(e[k], collections.abc.Mapping):
+        elif k not in d:
             d[k] = e[k]
         else:
             sys.stderr.write("fill_ctd.py: could not merge key %s for %s in %s" % (k, d, e))
@@ -135,9 +135,10 @@
 # insert the hc_args into the args
 mergeDicts(args, hc_args)
 
-if "adv_opts_cond" in args:
-    args.update(args["adv_opts_cond"])
-    del args["adv_opts_cond"]
+# put the contents of the advanced options section into the main dict
+if "adv_opts" in args:
+    args.update(args["adv_opts"])
+    del args["adv_opts"]
 
 # IDMapper has in and spectra:in params, in is used in out as format_source",
 # which does not work in Galaxy: https://github.com/galaxyproject/galaxy/pull/9493"
b
diff -r decc397c3b7e -r 6b01678ec2fc fill_ctd_clargs.py
--- a/fill_ctd_clargs.py Fri Nov 06 20:31:34 2020 +0000
+++ b/fill_ctd_clargs.py Thu Dec 01 19:20:52 2022 +0000
[
@@ -1,40 +1,70 @@
 #!/usr/bin/env python3
+
+import operator
 from argparse import ArgumentParser
+from functools import reduce  # forward compatibility for Python 3
 from io import StringIO
 
 from CTDopts.CTDopts import (
+    _Null,
     CTDModel,
     ModelTypeError,
     Parameters
 )
 
+
+def getFromDict(dataDict, mapList):
+    return reduce(operator.getitem, mapList, dataDict)
+
+
+def setInDict(dataDict, mapList, value):
+    getFromDict(dataDict, mapList[:-1])[mapList[-1]] = value
+
+
 if __name__ == "__main__":
     # note add_help=False since otherwise arguments starting with -h will
     # trigger an error (despite allow_abbreviate)
     parser = ArgumentParser(prog="fill_ctd_clargs",
                             description="fill command line arguments"
-                            "into a CTD file and write the CTD file to",
+                            "into a CTD file and write the CTD file to stdout",
                             add_help=False, allow_abbrev=False)
-    parser.add_argument("--ctd", dest="ctd", help="input ctd file",
-                        metavar='CTD', default=None, required=True)
+    parser.add_argument("--ini_file", dest="ini_file", help="input ini file",
+                        metavar='INI', default=None, required=True)
+    parser.add_argument("--ctd_file", dest="ctd_file", help="input ctd file"
+                        "if given then optional parameters from the ini file"
+                        "will be filled with the defaults from this CTD file",
+                        metavar='CTD', default=None, required=False)
     args, cliargs = parser.parse_known_args()
+
     # load CTDModel
-    model = None
+    ini_model = None
     try:
-        model = CTDModel(from_file=args.ctd)
+        ini_model = CTDModel(from_file=args.ini_file)
     except ModelTypeError:
         pass
     try:
-        model = Parameters(from_file=args.ctd)
+        ini_model = Parameters(from_file=args.ini_file)
     except ModelTypeError:
         pass
-    assert model is not None, "Could not parse %s, seems to be no CTD/PARAMS" % (args.ctd)
+    assert ini_model is not None, "Could not parse %s, seems to be no CTD/PARAMS" % (args.ini_file)
 
     # get a dictionary of the ctd arguments where the values of the parameters
     # given on the command line are overwritten
-    margs = model.parse_cl_args(cl_args=cliargs, ignore_required=True)
+    ini_values = ini_model.parse_cl_args(cl_args=cliargs, ignore_required=True)
+
+    if args.ctd_file:
+        ctd_model = CTDModel(from_file=args.ctd_file)
+        ctd_values = ctd_model.get_defaults()
+        for param in ini_model.get_parameters():
+            if not param.required and (param.default is None or type(param.default) is _Null):
+                lineage = param.get_lineage(name_only=True)
+                try:
+                    default = getFromDict(ctd_values, lineage)
+                except KeyError:
+                    continue
+                setInDict(ini_values, lineage, default)
 
     # write the ctd with the values taken from the dictionary
     out = StringIO()
-    ctd_tree = model.write_ctd(out, margs)
+    ctd_tree = ini_model.write_ctd(out, ini_values)
     print(out.getvalue())
b
diff -r decc397c3b7e -r 6b01678ec2fc generate-foo.sh
--- a/generate-foo.sh Fri Nov 06 20:31:34 2020 +0000
+++ b/generate-foo.sh Thu Dec 01 19:20:52 2022 +0000
[
b'@@ -8,17 +8,15 @@\n \n     # get the tests from the CMakeLists.txt\n     # 1st remove some tests\n-    # - OpenSwathMzMLFileCacher with -convert_back argumen https://github.com/OpenMS/OpenMS/issues/4399\n+    # - OpenSwathMzMLFileCacher with -convert_back argument https://github.com/OpenMS/OpenMS/issues/4399\n     # - IDRipper PATH gets empty causing problems. TODO But overall the option needs to be handled differentlt\n     # - several tools with duplicated input (leads to conflict when linking)\n-    # - TOFCalibration inputs we extension (also in prepare_test_data) https://github.com/OpenMS/OpenMS/pull/4525\n     # - MaRaCluster with -consensus_out (parameter blacklister: https://github.com/OpenMS/OpenMS/issues/4456)\n     # - FileMerger with mixed dta dta2d input (ftype can not be specified in the test, dta can not be sniffed)\n     # - some input files are originally in a subdir (degenerated cases/), but not in test-data\n-    # - SeedListGenerator: https://github.com/OpenMS/OpenMS/issues/4404\n     # - OpenSwathAnalyzer 9/10: cachedMzML (not supported yet)\n-    # - FeatureFinderIdentification name clash of two tests https://github.com/OpenMS/OpenMS/pull/5002\n-    # - TODO SiriusAdapter https://github.com/OpenMS/OpenMS/pull/5010\n+    # - SiriusAdapter_4 depends on online service which may timeout .. so keep disabled https://github.com/OpenMS/OpenMS/pull/5010\n+    # - SiriusAdapter_10 should work in >2.8 https://github.com/OpenMS/OpenMS/issues/5869\n     CMAKE=$(cat $OPENMSGIT/src/tests/topp/CMakeLists.txt $OPENMSGIT/src/tests/topp/THIRDPARTY/third_party_tests.cmake  |\n         sed \'s@${DATA_DIR_SHARE}/@@g\' |\n         grep -v \'OpenSwathMzMLFileCacher .*-convert_back\' |\n@@ -26,19 +24,9 @@\n         grep -v "MaRaClusterAdapter.*-consensus_out"|\n         grep -v "FileMerger_1_input1.dta2d.*FileMerger_1_input2.dta " |\n         sed \'s@degenerate_cases/@@g\' |\n-        grep -v \'TOPP_SeedListGenerator_3"\' | \n         egrep -v \'TOPP_OpenSwathAnalyzer_test_3"|TOPP_OpenSwathAnalyzer_test_4"\' |\n-\tegrep -v \'"TOPP_FeatureFinderIdentification_4"\' | \n-\tsed \'s/\\("TOPP_SiriusAdapter_4".*\\)-sirius:database all\\(.*\\)/\\1-sirius:database pubchem\\2/\')\n-\n-\n-#         grep -v \'FileFilter.*-spectra:select_polarity ""\' |\n-#         grep -v \'MassTraceExtractor_2.ini \' |\n-#         grep -v "FileMerger_6_input2.mzML.*FileMerger_6_input2.mzML" |\n-#         grep -v "IDMerger_1_input1.idXML.*IDMerger_1_input1.idXML" |\n-#         grep -v "degenerated_empty.idXML.*degenerated_empty.idXML" |\n-#         grep -v "FeatureLinkerUnlabeledKD_1_output.consensusXML.*FeatureLinkerUnlabeledKD_1_output.consensusXML" |\n-#         grep -v "FeatureLinkerUnlabeledQT_1_output.consensusXML.*FeatureLinkerUnlabeledQT_1_output.consensusXML" |\n+        sed \'s/\\("TOPP_SiriusAdapter_4".*\\)-sirius:database all\\(.*\\)/\\1-sirius:database pubchem\\2/\' |\n+        grep -v \'"TOPP_SiriusAdapter_10"\')\n \n     # 1st part is a dirty hack to join lines containing a single function call, e.g.\n     # addtest(....\n@@ -50,6 +38,7 @@\n         # >&2 echo $line\n         test_id=$(echo "$line" | cut -d" " -f 1)\n         tool_id=$(echo "$line" | cut -d" " -f 2)\n+        # >&2 echo "test_id $test_id"\n         if [[ $test_id =~ _out_?[0-9]? ]]; then\n             >&2 echo "    skip $test_id $line"\n             continue\n@@ -67,7 +56,7 @@\n         tes="  <test>\\n"\n         line=$(fix_tmp_files "$line")\n         line=$(unique_files "$line")\n-        # >&2 echo $line\n+        # >&2 echo LINE $line\n         #if there is an ini file then we use this to generate the test\n         #otherwise the ctd file is used\n         #other command line parameters are inserted later into this xml\n@@ -77,19 +66,23 @@\n         else\n             ini="ctd/$tool_id.ctd"\n         fi\n+        # >&2 echo "========================================================"\n+        # >&2 echo "USING ini $ini"\n         cli=$(echo $line |cut -d" " -f3- | sed \'s/-ini [^ ]\\+//\')\n \n         ctdtmp=$(mktemp)\n-        #echo python3 fill_ctd_clargs.py --ctd $ini $cli\n'..b'SION --test-only --test-unsniffable csv tsv txt dta dta2d edta mrm splib > /dev/null\n+        # >&2 echo CTDConverter galaxy -i $ctdtmp -o $testtmp -s aux/tools_blacklist.txt -f "$FILETYPES" -m macros.xml -t tool.conf  -p aux/hardcoded_params.json --tool-version $VERSION --test-only --test-unsniffable csv tsv txt dta dta2d edta mrm splib --test-condition "compare=sim_size" "delta_frac=0.7"\n+        CTDConverter galaxy -i $ctdtmp -o $testtmp -s aux/tools_blacklist.txt -f "$FILETYPES" -m macros.xml -t tool.conf  -p aux/hardcoded_params.json --tool-version $VERSION --test-only --test-unsniffable csv tsv txt dta dta2d edta mrm splib --test-condition "compare=sim_size" "delta_frac=0.7" > /dev/null\n+        echo "<!-- $test_id -->"\n         cat $testtmp | grep -v \'<output.*file=""\' # | grep -v \'CHEMISTRY/\'\n-        rm $ctdtmp $testtmp\n+\n+        rm "$ctdtmp" "$testtmp"\n \n         #> /dev/null\n \n@@ -130,23 +123,23 @@\n #(e.g. for prepare_test_data, e.g. CLI expects csv but test file is txt)\n #this function replaces the tmp file by the expected file. \n function fix_tmp_files {\n-#    >&2 echo "FIX $line"\n+    # >&2 echo "FIX $line"\n     ret=""\n     for a in $@; do\n-        if [[ ! $a =~ .tmp$ ]]; then\n+        # >&2 echo "    a "$a\n+        if [[ ! $a =~ .tmp$ ]] && [[ ! $a =~ _tmp_ ]]; then\n             ret="$ret $a"\n             continue\n         fi\n-#        >&2 echo "    a "$a\n-        g=$(cat $OPENMSGIT/src/tests/topp/CMakeLists.txt $OPENMSGIT/src/tests/topp/THIRDPARTY/third_party_tests.cmake | awk \'{printf("%s@NEWLINE@", $0)}\' | sed \'s/)@NEWLINE@/)\\n/g\' | sed \'s/@NEWLINE@/ /g\' | grep \'\\${DIFF}.*\'"$a")\n-#        >&2 echo "    g "$g\n-        in1=$(sed \'s/.*-in1 \\([^ ]\\+\\).*/\\1/\' <<<$g)\n+        diff_line=$(cat $OPENMSGIT/src/tests/topp/CMakeLists.txt $OPENMSGIT/src/tests/topp/THIRDPARTY/third_party_tests.cmake | awk \'{printf("%s@NEWLINE@", $0)}\' | sed \'s/)@NEWLINE@/)\\n/g\' | sed \'s/@NEWLINE@/ /g\' | grep \'\\${DIFF}.*\'"$a")\n+        # >&2 echo "    diff_line "$diff_line\n+        in1=$(sed \'s/.*-in1 \\([^ ]\\+\\).*/\\1/\' <<<$diff_line)\n         # >&2 echo "    in1 "$in1\n         if [[  "$a" != "$in1" ]]; then\n             ret="$ret $a"\n             continue\n         fi\n-        in2=$(sed \'s/.*-in2 \\([^ ]\\+\\).*/\\1/\' <<<$g)\n+        in2=$(sed \'s/.*-in2 \\([^ ]\\+\\).*/\\1/\' <<<$diff_line)\n         in2=$(basename $in2 | sed \'s/)$//\')\n         # >&2 echo "    in2 "$in2\n         if [[ -f "test-data/$in2" ]]; then\n@@ -176,11 +169,11 @@\n         fi\n         ln -f -s $in1 test-data/$in2\n     done\n-    for i in test-data/*.tmp\n-    do\n+    \n+    find test-data/ -name "*.tmp" -print0 | \n+    while IFS= read -r -d \'\' i; do \n         if [ ! -e test-data/$(basename $i .tmp) ]; then\n             ln -s $(basename $i) test-data/$(basename $i .tmp)\n-            #ln -s $(basename $i) test-data/$(basename $i .tmp)\n         else\n             ln -fs $(basename $i) test-data/$(basename $i .tmp)\n         fi\n@@ -194,14 +187,14 @@\n #     id=$1\n # | egrep -i "$id\\_.*[0-9]+(_prepare\\"|_convert)?"\n \n-# TODO SiriusAdapter https://github.com/OpenMS/OpenMS/pull/5010\n+    # TODO SiriusAdapter depends on online service which may timeout .. so keep disabled https://github.com/OpenMS/OpenMS/pull/5010\n     cat $OPENMSGIT/src/tests/topp/CMakeLists.txt  $OPENMSGIT/src/tests/topp/THIRDPARTY/third_party_tests.cmake | sed \'s/#.*$//\'| sed \'s/^\\s*//; s/\\s*$//\' | grep -v "^$"  | awk \'{printf("%s@NEWLINE@", $0)}\' | sed \'s/)@NEWLINE@/)\\n/g\' | sed \'s/@NEWLINE@/ /g\' | \n         sed \'s/degenerate_cases\\///\' | \n         egrep -v "WRITEINI|WRITECTD|INVALIDVALUE|DIFF" | \n         grep add_test | \n         egrep "TOPP|UTILS" |\n         sed \'s@${DATA_DIR_SHARE}/@@g;\'|\n-        sed \'s@${TMP_RIP_PATH}@dummy2.tmp@g\'|\n+        sed \'s@${TMP_RIP_PATH}@./@g\'|\n         sed \'s@TOFCalibration_ref_masses @TOFCalibration_ref_masses.txt @g; s@TOFCalibration_const @TOFCalibration_const.csv @\'| \n \tsed \'s/\\("TOPP_SiriusAdapter_4".*\\)-sirius:database all\\(.*\\)/\\1-sirius:database pubchem\\2/\' |\n     while read line\n'
b
diff -r decc397c3b7e -r 6b01678ec2fc generate.sh
--- a/generate.sh Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,76 +0,0 @@
-#!/usr/bin/env bash
-
-VERSION=2.6
-FILETYPES="filetypes.txt"
-PROFILE="20.05"
-## FILETYPES_RE=$(grep -v "^#" $FILETYPES | grep -v "^$" | cut -f 1 -d" " | tr '\n' '|' | sed 's/|$//'| sed 's/|/\\|/g')
-
-export tmp=$(mktemp -d)
-export CTDCONVERTER="$tmp/CTDConverter"
-
-###############################################################################
-## reset old data
-###############################################################################
-# rm $(ls *xml |grep -v macros)
-# rm -rf ctd
-# mkdir -p ctd
-# echo "" > prepare_test_data.sh
-
-###############################################################################
-## generate tests
-## also creates 
-## - conda environment (for executing the binaries) and 
-## - the git clone of OpenMS (for generating the tests)
-## - ctd files
-###############################################################################
-bash ./test-data.sh ./macros_autotest.xml
-
-###############################################################################
-## get the 
-## - conda package (for easy access and listing of the OpenMS binaries), 
-###############################################################################
-# if [ ! -d $OPENMSPKG ]; then
-#  mkdir $OPENMSPKG/
-#  wget -P $OPENMSPKG/ "$CONDAPKG"
-#  tar -xf $OPENMSPKG/"$(basename $CONDAPKG)" -C OpenMS$VERSION-pkg/
-#   rm $OPENMSPKG/"$(basename $CONDAPKG)"
-# fi
-
-###############################################################################
-## Get python libaries for CTD -> Galaxy conversion
-## TODO fix to main repo OR conda packkage if PRs are merged 
-###############################################################################
-# if [ ! -d CTDopts ]; then
-#  # git clone https://github.com/genericworkflownodes/CTDopts CTDopts
-#  git clone -b topic/no-1-2x https://github.com/bernt-matthias/CTDopts CTDopts
-# fi
-if [ ! -d $CTDCONVERTER ]; then
- #git clone https://github.com/WorkflowConversion/CTDConverter.git CTDConverter
- git clone -b topic/cdata https://github.com/bernt-matthias/CTDConverter.git $CTDCONVERTER
-fi
-# export PYTHONPATH=$(pwd)/CTDopts
-###############################################################################
-## conversion ctd->xml 
-###############################################################################
-
-find . -maxdepth 0 -name "[A-Z]*xml" -delete
-source $(dirname $(which conda))/../etc/profile.d/conda.sh
-conda activate $tmp/OpenMS$VERSION-env
-python $CTDCONVERTER/convert.py galaxy -i ctd/*ctd -o ./ -s tools_blacklist.txt -f "$FILETYPES" -m macros.xml -t tool.conf  -p hardcoded_params.json --test-macros macros_autotest.xml --test-macros-prefix autotest_  --test-macros macros_test.xml --test-macros-prefix manutest_ --tool-version $VERSION --tool-profile $PROFILE > convert.out 2> convert.err
-if [[ "$?" -ne "0" ]]; then >&2 echo 'CTD -> XML conversion failed'; >&2 echo -e "stderr:\n$(cat convert.err)"; fi
-conda deactivate
-
-patch PepNovoAdapter.xml < PepNovoAdapter.patch
-patch OMSSAAdapter.xml < OMSSAAdapter.patch
-
-# https://github.com/OpenMS/OpenMS/pull/4984
-sed -i -e 's@http://www.openms.de/documentation/@http://www.openms.de/doxygen/release/2.6.0/html/@' ./*xml
-# https://github.com/OpenMS/OpenMS/pull/4984#issuecomment-702641976
-patch -p0 <404-urls.patch
-
-# #-b version log debug test in_type executable pepnovo_executable param_model_directory rt_concat_trafo_out param_id_pool
-
-# for i in A-E F-H I-L M-N O-P Q-Z
-# do
-#  planemo t [$i]*xml --galaxy_branch release_20.05 --galaxy_python_version 3.7 --test_output $i.html --test_output_json $i.json &
-# done
b
diff -r decc397c3b7e -r 6b01678ec2fc hardcoded_params.json
--- a/hardcoded_params.json Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,236 +0,0 @@
-{
- "#": "blacklist parameters",
-
- "version": [{"value": "@"}],
- "debug": [{"value": "@"}],
- "algorithm:debug": [{"value": "@"}],
- "java_memory": [{"value": "@"}],
- "java_permgen": [{"value": "@"}],
- "#": "type of input is always determined from the file extension ",
- "in_type": [{"value": "@"}],
-
- "#": "tool specific blacklist parameters",
-
- "convert_back": [{"value": "@", "tools": ["OpenSwathMzMLFileCacher"]}],
- "NET_executable": [{
- "value": "@", 
- "tools": ["FileConverter"]
- }],
-
-
- "params_file": [{"value": "@", "tools": ["SpectraSTSearchAdapter"]}],
-
- "#": "TODO not usable in 2.5 https://github.com/OpenMS/OpenMS/issues/4456, corresponding test currently disabled",
-     "consensus_out": [{"value": "@", "tools": ["MaRaClusterAdapter"]}],
- "#": "TODO would need treatment as prefix-output",
- "output_directory": [{"value": "@", "tools": ["MaRaClusterAdapter"]}],
-
- "#": "hardcode parameter values",
-
- "comet_version": [{
- "value":"2016.01 rev. 3"
- }],
- "comet_executable": [{
- "value":"comet"
- }],
- "crux_executable": [{
- "value": "crux"
- }],
- "fido_executable": [{
- "value":"Fido"
- }],
- "fidocp_executable": [{
- "value":"FidoChooseParameters"
- }],
- "maracluster_executable": [{
- "value":"/home/berntm/projects/tools-galaxyp/tools/openms/OpenMS2.5.0-git/THIRDPARTY/Linux/64bit/MaRaCluster/maracluster"
- }],
- "mascot_directory": [{
- "value":"TODO"
- }],
- "myrimatch_executable": [{
- "value":"myrimatch"
- }],
- "omssa_executable": [{
- "value":"$(dirname $(realpath $(which omssacl)))/omssacl"
- }],
- "ThermoRaw_executable": [{
- "value": "ThermoRawFileParser.exe", 
- "tools": ["FileConverter"]
- }],
- "pepnovo_executable": [{
- "value":"pepnovo"
- }],
- "percolator_executable": [{
- "value":"percolator"
- }],
- "xtandem_executable": [{
- "value":"xtandem"
- }],
- "executable": [
- {
- "value":"$(dirname $(realpath $(which luciphor2)))/luciphor2.jar",
- "tools": ["LuciphorAdapter"]
- }, {
- "value":"/home/berntm/Downloads/MSFragger-20171106/MSFragger-20171106.jar",
- "tools": ["MSFraggerAdapter"]
- }, {
- "value":"$(msgf_plus -get_jar_path)",
- "tools": ["MSGFPlusAdapter"]
- }, {
- "value": "/home/berntm/Downloads/novor/lib/novor.jar",
- "tools": ["NovorAdapter"]
- }, {
- "value":"$(which sirius)",
- "tools": ["SiriusAdapter", "AssayGeneratorMetabo"]
- }, {
- "value":"spectrast",
- "tools": ["SpectraSTSearchAdapter"]
- }
- ],
- "r_executable": [{
- "value":"R"
- }],
- "rscript_executable": [{
- "value":"Rscript"
- }],
- "java_executable": [{
- "value":"java"
- }],
- "log": [{
- "value":"log.txt"
- }],
- "tempDirectory": [{
- "value":"$TMP_DIR"
- }],
- "temp_data_directory": [{
- "value":"$TMP_DIR"
- }],
- "algorithm:Preprocessing:tmp_dir": [{
- "value":"$TMP_DIR"
- }],
- "no_progress": [{
- "value": true
- }],
- "#": "only used in LuciphorAdapter at the moment, inconsistency will be fixed",
- "num_threads": [{
- "value":"${GALAXY_SLOTS:-1}"
- }],
- "threads": [{
- "value": "${GALAXY_SLOTS:-1}"
- }],
- "sirius:cores": [{
- "value": "${GALAXY_SLOTS:-1}"
- }],
-
- "#": "hardcode the outer loop threads for OpenSwathWorkflow",
- "outer_loop_threads": [{
- "value": "1", 
- "tools": ["OpenSwathWorkflow"]
- }],
- "separator": [{
- "value": ",",
- "tools": ["IDMassAccuracy"]
- }],
-
- "#": "don't alow to copy data internally to save computation time for reloading",
- "copy_data": [{
- "value": "false",
- "tools": ["MapAlignerTreeGuided"]
- }],
-
- "#": "overwrite/add Galaxy xml attributes of some parameters (names need to start with param_)",
-
- "#": "test is not a hardcoded value since we need to set it in the tool tests", 
- "test": [{
- "CTD:type": "text",
- "XML:type": "hidden"
- }],
-
- "#": "overwrite CTD attributes of some parameters (some are not possible, e.g. type)",
-
- "#": "for some tools the user needs to select the desired output type since detection by extension makes no sense for galaxy tools",
- "out_type": [{
-     "CTD:required": true,
-     "CTD:advanced": false
- }],
-
- "#": "SeedListGenerator with consensusXML input needs a dynamic number of outputs that depends on the content of the input, so we remove this options at the moment because its hard or impossible to implement in Galaxy, https://github.com/OpenMS/OpenMS/issues/4404 .. see also in parameter",
- "#": "FileInfo, MapStatistics, SequenceCoverageCalculator wo -out just writes to stdout. not wanted here",
- "#": "MzMLSplitter output prefix https://github.com/OpenMS/OpenMS/issues/4404",
- "#": "IDRipper: blacklist out (is doing the same as the output-prefix out-path)",
- "out": [{
- "CTD:is_list": false, 
- "tools": ["SeedListGenerator"]
- }, {
-   "CTD:required": true,
- "tools": ["FileInfo", "MapStatistics", "SequenceCoverageCalculator"]
- }, {
- "CTD:type": "output-prefix", 
- "CTD:required": true,
- "CTD:restrictions": "mzml",
- "tools": ["MzMLSplitter"]
- }, {
- "value": "@", 
- "tools": ["IDRipper"]
- }],
-
- "#": "Try to remove xml data type whereever possible",
- "#": "XTandem Adapter output is called .xml in OMS which is to unspecific -> use Galaxy's bioml",
- "xml_out": [{
- "CTD:restrictions": "bioml",
- "tools": ["XTandemAdapter"]
- }],
-
- "#": "IDFileConverter remove xml",
- "#": "OpenSwathWorkflow make in single file input and all outputs non-optional",
-        "#": "XFDR does not need xml .. redundant with xquest.xml TODO check if list is up to date with each new release",
- "#": "SeedListGenerator: remove consensusXML https://github.com/OpenMS/OpenMS/issues/4404 .. see also out parameter",
- "in": [{
- "CTD:restrictions": "pepXML,protXML,mascotXML,omssaXML,bioml,psms,tsv,idXML,mzid,xquest.xml",
- "tools": ["IDFileConverter"]
- }, {
- "CTD:is_list": false, 
- "tools": ["OpenSwathWorkflow"]
- }, {
- "CTD:restrictions": "idXML,mzid,xquest.xml",
- "tools": ["XFDR"]
- }, {
- "CTD:restrictions": "mzML,idXML,featureXML",
- "tools": ["SeedListGenerator"]
- }],
-
- "#": "IDMapper has in and spectra:in params, in is used in out as format_source",
- "#": "which does not work in Galaxy: https://github.com/galaxyproject/galaxy/pull/9493", 
- "spectra:in": [{
- "CTD:name": "_in", 
- "tools": ["IDMapper"]
- }],
-
- "#": "hardcoding prefix parameters which are not yet available in OMS but in CTDOpts https://github.com/OpenMS/OpenMS/pull/4527",
- "#": "output-prefix",
- "out_path": [{
- "CTD:type": "output-prefix", 
- "CTD:required": true,
- "CTD:restrictions": "idXML",
- "tools": ["IDRipper"]
- }],
- "outputDirectory": [{
- "CTD:type": "output-prefix", 
- "CTD:advanced": false,
- "CTD:required": true,
- "CTD:restrictions": "mzml",
- "tools": ["OpenSwathFileSplitter"]
- }],
-
- "#": "OpenSwathDIAPreScoring: https://github.com/OpenMS/OpenMS/pull/4443",
-        "#": "SpectraSTSearchAdapter does not need xml .. redundant with pep.xml TODO check if list is up to date with each new release",
- "output_files": [{
- "CTD:required": true,
- "tools": ["OpenSwathDIAPreScoring"]
- }, {
- "CTD:restrictions": "txt,tsv,pep.xml,pepXML,html",
- "tools": ["SpectraSTSearchAdapter"]
-
- }]
-}
b
diff -r decc397c3b7e -r 6b01678ec2fc macros.xml
--- a/macros.xml Fri Nov 06 20:31:34 2020 +0000
+++ b/macros.xml Thu Dec 01 19:20:52 2022 +0000
[
b'@@ -3,14 +3,15 @@\n      You can edit this file to add your own macros, if you so desire, or you can\n      add additional macro files using the m/macros parameter -->\n <macros>\n-  <token name="@TOOL_VERSION@">2.6</token>\n-  <token name="@GALAXY_VERSION@">0</token>\n+  <token name="@TOOL_VERSION@">2.8</token>\n+  <token name="@VERSION_SUFFIX@">0</token>\n   <xml name="requirements">\n     <requirements>\n       <requirement type="package" version="@TOOL_VERSION@">openms</requirement>\n       <requirement type="package" version="@TOOL_VERSION@">openms-thirdparty</requirement>\n-      <!-- makeblastdb for OMSSAAdapter -->\n-      <requirement type="package" version="2.9.0">blast</requirement>\n+      <!-- omssa (which has been excluded from 3rdparty) and makeblastdb for OMSSAAdapter -->\n+      <requirement type="package" version="2.1.9">omssa</requirement>\n+      <requirement type="package" version="2.13.0">blast</requirement>\n       <!--<requirement type="package" version="5.0.0">tpp</requirement>-->\n       <!-- for realpath (used e.g. in LuciphorAdapter) -->\n \t  <!--<requirement type="package" version="8.25">coreutils</requirement>-->\n@@ -21,6 +22,7 @@\n   <xml name="stdio">\n     <stdio>\n       <regex match="std::bad_alloc" level="fatal_oom" description="Could not allocate memory"/>\n+      <regex match="OutOfMemoryError" level="fatal_oom" description="Could not allocate memory"/>\n       <regex match="Could not allocate metaspace" level="fatal_oom" description="Java memory Exception"/>\n       <regex match="Cannot create VM thread" level="fatal_oom" description="Java memory Exception"/>\n       <regex match="qUncompress: could not allocate enough memory to uncompress data" level="fatal_oom" description="Java memory Exception"/>\n@@ -32,23 +34,15 @@\n     </citations>\n   </xml>\n   <xml name="adv_opts_macro">\n-    <conditional name="adv_opts_cond">\n-      <param name="adv_opts_selector" type="select" label="Advanced Options">\n-        <option value="basic" selected="True">Hide Advanced Options</option>\n-        <option value="advanced">Show Advanced Options</option>\n-      </param>\n-      <when value="basic"/>\n-      <when value="advanced">\n-        <yield/>\n-      </when>\n-    </conditional>\n+    <section name="adv_opts" title="Advanced Options" expanded="false">\n+      <yield/>\n+    </section>\n   </xml>\n \n   <!-- sanitizers and validators -->\n-  <xml name="list_string_val">\n-    <validator type="regex" message="parameter must not start with $">^[^$]</validator>\n-    \n-    <validator type="regex" message="a space separated list of string is needed (strings that contain spaces can be quoted with &quot;)">^ *((?:\\"[^\\"]*\\" +)|(?:[^ \\"]+ +))*((?:\\"[^\\"]*\\")|(?:[^ \\"]+)) *$</validator>\n+  <xml name="list_string_val" token_name="">\n+    <validator type="regex" message="parameter @NAME@: must not start with $">^[^$]</validator>\n+    <validator type="regex" message="parameter @NAME@: a space separated list of string is needed (strings that contain spaces can be quoted with &quot;)">^ *((?:\\"[^\\"]*\\" +)|(?:[^ \\"]+ +))*((?:\\"[^\\"]*\\")|(?:[^ \\"]+)) *$</validator>\n   </xml>\n   <xml name="list_string_san">\n     <sanitizer>\n@@ -64,8 +58,8 @@\n       </valid>\n     </sanitizer>\n   </xml>\n-  <xml name="list_float_valsan">\n-    <validator type="regex" message="a space separated list of float values is required">^ *[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?( *[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?)* *$</validator>\n+  <xml name="list_float_valsan" token_name="">\n+    <validator type="regex" message="parameter @NAME@: a space separated list of float values is required">^ *[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?( *[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?)* *$</validator>\n     <yield/>\n     <sanitizer>\n       <valid initial="string.digits">\n@@ -78,8 +72,8 @@\n       </valid>\n     </sanitizer>\n   </xml>\n-  <xml name="list_integer_valsan">\n-    <validator type="regex" message="a space separated list of integer values is required">^ *[+-]?[0-9]+( *[+-]?[0-9]+)* *$</validator>\n'..b"'edta', 'fa': 'fasta', 'fas': 'fasta', 'fasta': 'fasta', 'FASTA': 'fasta', 'featureXML': 'featurexml', 'featurexml': 'featurexml', 'html': 'html', 'HTML': 'html', 'idXML': 'idxml', 'json': 'json', 'kroenik': 'kroenik', 'mascotXML': 'mascotxml', 'mgf': 'mgf', 'mrm': 'mrm', 'ms': 'sirius.ms', 'ms2': 'ms2', 'msp': 'msp', 'mzData': 'mzdata', 'mzid': 'mzid', 'mzML': 'mzml', 'mzml': 'mzml', 'mzq': 'mzq', 'mzTab': 'mztab', 'mzXML': 'mzxml', 'novor': 'txt', 'obo': 'obo', 'omssaXML': 'idxml', 'osw': 'osw', 'OSW': 'osw', 'params': 'txt', 'paramXML': 'paramxml', 'peplist': 'peplist', 'pep.xml': 'pepxml', 'pepXML': 'pepxml', 'png': 'png', 'PNG': 'png', 'protXML': 'protxml', 'psms': 'psms', 'pqp': 'pqp', 'qcML': 'qcml', 'spec.xml': 'spec.xml', 'splib': 'splib', 'sqMass': 'sqmass', 'tandem.xml': 'tandem', 'trafoXML': 'trafoxml', 'traML': 'traml', 'TraML': 'traml', 'tab': 'tabular', 'raw': 'thermo.raw', 'xls': 'tsv', 'XML': 'xml', 'xml': 'xml', 'xquest.xml': 'xquest.xml', 'xsd': 'xml'}\n+    #set m={'txt': 'txt', 'tsv': 'tabular', 'bioml': 'xml', 'consensusXML': 'consensusxml', 'csv': 'csv', 'dta': 'dta', 'dta2d': 'dta2d', 'edta': 'edta', 'fa': 'fasta', 'fas': 'fasta', 'fasta': 'fasta', 'FASTA': 'fasta', 'featureXML': 'featurexml', 'featurexml': 'featurexml', 'html': 'html', 'HTML': 'html', 'idXML': 'idxml', 'json': 'json', 'kroenik': 'kroenik', 'mascotXML': 'mascotxml', 'mgf': 'mgf', 'mrm': 'mrm', 'ms': 'sirius.ms', 'ms2': 'ms2', 'msp': 'msp', 'mzData': 'mzdata', 'mzid': 'mzid', 'mzML': 'mzml', 'mzml': 'mzml', 'mzq': 'mzq', 'mzQC': 'mzqc', 'mzTab': 'mztab', 'mzXML': 'mzxml', 'novor': 'txt', 'obo': 'obo', 'oms': 'sqlite', 'omssaXML': 'idxml', 'osw': 'osw', 'OSW': 'osw', 'params': 'txt', 'paramXML': 'paramxml', 'peplist': 'peplist', 'pep.xml': 'pepxml', 'pepXML': 'pepxml', 'png': 'png', 'PNG': 'png', 'protXML': 'protxml', 'psms': 'psms', 'pqp': 'pqp', 'qcML': 'qcml', 'spec.xml': 'spec.xml', 'splib': 'splib', 'sqMass': 'sqmass', 'tandem.xml': 'tandem', 'trafoXML': 'trafoxml', 'traML': 'traml', 'TraML': 'traml', 'tab': 'tabular', 'raw': 'thermo.raw', 'xls': 'tsv', 'XML': 'xml', 'xml': 'xml', 'xquest.xml': 'xquest.xml', 'xsd': 'xml'}\n     #return m[o]\n #end def\n #def gxy2omsext(g)\n-    #set m={'txt': 'txt', 'tabular': 'tsv', 'xml': 'bioml', 'consensusxml': 'consensusXML', 'csv': 'csv', 'dta': 'dta', 'dta2d': 'dta2d', 'edta': 'edta', 'fasta': 'fa', 'featurexml': 'featureXML', 'html': 'html', 'idxml': 'idXML', 'json': 'json', 'kroenik': 'kroenik', 'mascotxml': 'mascotXML', 'mgf': 'mgf', 'mrm': 'mrm', 'sirius.ms': 'ms', 'ms2': 'ms2', 'msp': 'msp', 'mzdata': 'mzData', 'mzid': 'mzid', 'mzml': 'mzML', 'mzq': 'mzq', 'mztab': 'mzTab', 'mzxml': 'mzXML', 'obo': 'obo', 'osw': 'osw', 'paramxml': 'paramXML', 'peff': 'fasta', 'peplist': 'peplist', 'pepxml': 'pep.xml', 'png': 'png', 'protxml': 'protXML', 'psms': 'psms', 'pqp': 'pqp', 'qcml': 'qcML', 'spec.xml': 'spec.xml', 'splib': 'splib', 'sqmass': 'sqMass', 'tandem': 'tandem.xml', 'trafoxml': 'trafoXML', 'traml': 'traML', 'thermo.raw': 'raw', 'tsv': 'xls', 'xquest.xml': 'xquest.xml'}\n+    #set m={'txt': 'txt', 'tabular': 'tsv', 'xml': 'bioml', 'consensusxml': 'consensusXML', 'csv': 'csv', 'dta': 'dta', 'dta2d': 'dta2d', 'edta': 'edta', 'fasta': 'fa', 'featurexml': 'featureXML', 'html': 'html', 'idxml': 'idXML', 'json': 'json', 'kroenik': 'kroenik', 'mascotxml': 'mascotXML', 'mgf': 'mgf', 'mrm': 'mrm', 'sirius.ms': 'ms', 'ms2': 'ms2', 'msp': 'msp', 'mzdata': 'mzData', 'mzid': 'mzid', 'mzml': 'mzML', 'mzq': 'mzq', 'mzqc': 'mzQC', 'mztab': 'mzTab', 'mzxml': 'mzXML', 'obo': 'obo', 'sqlite': 'oms', 'osw': 'osw', 'paramxml': 'paramXML', 'peff': 'fasta', 'peplist': 'peplist', 'pepxml': 'pep.xml', 'png': 'png', 'protxml': 'protXML', 'psms': 'psms', 'pqp': 'pqp', 'qcml': 'qcML', 'spec.xml': 'spec.xml', 'splib': 'splib', 'sqmass': 'sqMass', 'tandem': 'tandem.xml', 'trafoxml': 'trafoXML', 'traml': 'traML', 'thermo.raw': 'raw', 'tsv': 'xls', 'xquest.xml': 'xquest.xml'}\n     #return m[g]\n #end def\n ]]></token></macros>\n"
b
diff -r decc397c3b7e -r 6b01678ec2fc macros_autotest.xml
--- a/macros_autotest.xml Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
b'@@ -1,27205 +0,0 @@\n-<?xml version=\'1.0\' encoding=\'UTF-8\'?>\n-<macros>\n-  <xml name="autotest_AccurateMassSearch">\n-    <test expect_num_outputs="2">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="ConsensusMapNormalizer_input.consensusXML"/>\n-      <output name="out" file="AccurateMassSearch_1_output.tmp.mzTab" compare="sim_size" delta="5700" ftype="mztab"/>\n-      <param name="positive_adducts" value="CHEMISTRY/PositiveAdducts.tsv" ftype="tabular"/>\n-      <param name="negative_adducts" value="CHEMISTRY/NegativeAdducts.tsv" ftype="tabular"/>\n-      <section name="db">\n-        <param name="mapping" value="CHEMISTRY/HMDBMappingFile.tsv" ftype="tabular"/>\n-        <param name="struct" value="CHEMISTRY/HMDB2StructMapping.tsv" ftype="tabular"/>\n-      </section>\n-      <section name="algorithm">\n-        <param name="mass_error_value" value="5.0"/>\n-        <param name="mass_error_unit" value="ppm"/>\n-        <param name="ionization_mode" value="positive"/>\n-        <param name="isotopic_similarity" value="false"/>\n-        <param name="use_feature_adducts" value="false"/>\n-        <param name="keep_unidentified_masses" value="false"/>\n-        <section name="mzTab">\n-          <param name="exportIsotopeIntensities" value="false"/>\n-        </section>\n-      </section>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test>\n-    <test expect_num_outputs="3">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="AccurateMassSearch_2_input.featureXML"/>\n-      <output name="out" file="AccurateMassSearch_2_output.tmp.mzTab" compare="sim_size" delta="5700" ftype="mztab"/>\n-      <output name="out_annotation" file="AccurateMassSearch_2_output.tmp.featureXML" compare="sim_size" delta="5700" ftype="featurexml"/>\n-      <param name="positive_adducts" value="AMS_PositiveAdducts.tsv" ftype="tabular"/>\n-      <param name="negative_adducts" value="AMS_NegativeAdducts.tsv" ftype="tabular"/>\n-      <section name="db">\n-        <param name="mapping" value="AMS_test_Mapping.tsv" ftype="tabular"/>\n-        <param name="struct" value="AMS_test_Struct.tsv" ftype="tabular"/>\n-      </section>\n-      <section name="algorithm">\n-        <param name="mass_error_value" value="5.0"/>\n-        <param name="mass_error_unit" value="ppm"/>\n-        <param name="ionization_mode" value="positive"/>\n-        <param name="isotopic_similarity" value="false"/>\n-        <param name="use_feature_adducts" value="false"/>\n-        <param name="keep_unidentified_masses" value="false"/>\n-        <section name="mzTab">\n-          <param name="exportIsotopeIntensities" value="true"/>\n-        </section>\n-      </section>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_annotation_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test>\n-    <test expect_num_outputs="3">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="AccurateMassSearch_2_input.featureXML"/>\n-      <output name="out" file="AccurateMassSearch_3_output.tmp.mzTab" compare="sim_size" delta="5700" ftype="mztab"/>\n-      <output name="out_annotation" file="AccurateMassSearch_2_output.tmp.featureXML" compare="sim_size" delta="5700" ftype="featurexml"/>\n-      <param name'..b' value="Oxidation (M)"/>\n-      <param name="minimum_fragment_mz" value="150.0"/>\n-      <param name="enzyme" value="Trypsin"/>\n-      <param name="missed_cleavages" value="1"/>\n-      <param name="semi_cleavage" value="false"/>\n-      <param name="output_results" value="all"/>\n-      <param name="max_valid_expect" value="0.1"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test>\n-    <test expect_num_outputs="2">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="spectra.mzML"/>\n-      <output name="out" file="XTandemAdapter_2_out.idXML" compare="sim_size" delta="5700" ftype="idxml"/>\n-      <param name="database" value="proteins.fasta"/>\n-      <param name="default_config_file" value="CHEMISTRY/XTandem_default_input.xml"/>\n-      <param name="ignore_adapter_param" value="false"/>\n-      <param name="precursor_mass_tolerance" value="5.0"/>\n-      <param name="fragment_mass_tolerance" value="0.3"/>\n-      <param name="precursor_error_units" value="ppm"/>\n-      <param name="fragment_error_units" value="Da"/>\n-      <param name="max_precursor_charge" value="0"/>\n-      <param name="no_isotope_error" value="false"/>\n-      <param name="fixed_modifications" value=""/>\n-      <param name="variable_modifications" value="Oxidation (M)"/>\n-      <param name="minimum_fragment_mz" value="150.0"/>\n-      <param name="enzyme" value="Trypsin"/>\n-      <param name="missed_cleavages" value="1"/>\n-      <param name="semi_cleavage" value="false"/>\n-      <param name="output_results" value="valid"/>\n-      <param name="max_valid_expect" value="1e-14"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test>\n-    <test expect_num_outputs="2">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="spectra.mzML"/>\n-      <output name="out" file="XTandemAdapter_3_out.idXML" compare="sim_size" delta="5700" ftype="idxml"/>\n-      <param name="database" value="proteinslong.fasta"/>\n-      <param name="default_config_file" value="CHEMISTRY/XTandem_default_input.xml"/>\n-      <param name="ignore_adapter_param" value="false"/>\n-      <param name="precursor_mass_tolerance" value="5.0"/>\n-      <param name="fragment_mass_tolerance" value="0.3"/>\n-      <param name="precursor_error_units" value="ppm"/>\n-      <param name="fragment_error_units" value="Da"/>\n-      <param name="max_precursor_charge" value="0"/>\n-      <param name="no_isotope_error" value="false"/>\n-      <param name="fixed_modifications" value=""/>\n-      <param name="variable_modifications" value="Oxidation (M)"/>\n-      <param name="minimum_fragment_mz" value="150.0"/>\n-      <param name="enzyme" value="Trypsin"/>\n-      <param name="missed_cleavages" value="1"/>\n-      <param name="semi_cleavage" value="false"/>\n-      <param name="output_results" value="all"/>\n-      <param name="max_valid_expect" value="0.1"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test>\n-  </xml>\n-<xml name="autotest_PTPredict"/><xml name="autotest_InclusionExclusionListCreator"/><xml name="autotest_RTPredict"/><xml name="autotest_ProteomicsLFQ"/><xml name="autotest_IDDecoyProbability"/><xml name="autotest_InspectAdapter"/></macros>\n'
b
diff -r decc397c3b7e -r 6b01678ec2fc macros_discarded_auto.xml
--- a/macros_discarded_auto.xml Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
b'@@ -1,378 +0,0 @@\n-\n-<xml name="manutest_OpenSwathFileSplitter">\n-<test expect_num_outputs="2">\n-  <conditional name="adv_opts_cond">\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="force" value="false"/>\n-    <param name="test" value="true"/>\n-  </conditional>\n-  <param name="in" value="OpenSwathWorkflow_1_input.mzML"/>\n-  <output_collection name="outputDirectory" count=""/>\n-  <output name="out_qc" file="OpenSwathFileSplitter_1.json" compare="sim_size" delta="5700" ftype="json"/>\n-  <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_qc_FLAG"/>\n-  <output name="ctd_out" ftype="xml">\n-    <assert_contents>\n-      <is_valid_xml/>\n-    </assert_contents>\n-  </output>\n-</test></xml>\n-<xml name="manutest_IDRipper">\n-<test expect_num_outputs="1">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="IDRipper_1_input.idXML"/>\n-      <output_collection name="out_path" count=""/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test><test expect_num_outputs="1">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="IDRipper_2_input.idXML"/>\n-      <output_collection name="out_path" count=""/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test><test expect_num_outputs="1">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="IDRipper_3_output.idXML"/>\n-      <output_collection name="out_path" count=""/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test></xml>\n-<xml name="manutest_MzMLSplitter">\n-<test expect_num_outputs="1">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="FileFilter_1_input.mzML"/>\n-      <output_collection name="out" count=""/>\n-      <param name="parts" value="2"/>\n-      <param name="size" value="0"/>\n-      <param name="unit" value="MB"/>\n-      <param name="no_chrom" value="false"/>\n-      <param name="no_spec" value="false"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test><test expect_num_outputs="1">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="FileFilter_1_input.mzML"/>\n-      <output_collection name="out" count=""/>\n-      <param name="parts" value="1"/>\n-      <param name="size" value="40"/>\n-      <param name="unit" value="KB"/>\n-      <param name="no_chrom" value="false"/>\n-      <param name="no_spec" value="false"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert'..b'" value="2"/>\n-        <param name="precursor_tolerance" value="20.0"/>\n-        <param name="precursor_tolerance_units" value="ppm"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="MaRaClusterAdapter_1_in_1.mzML,MaRaClusterAdapter_1_in_2.mzML"/>\n-      <param name="id_in" value="MaRaClusterAdapter_1_in_3.idXML"/>\n-      <output name="out" file="MaRaClusterAdapter_2_out_1.tmp.idXML" compare="sim_size" delta="5700" ftype="idxml"/>\n-      <param name="pcut" value="-10.0"/>\n-      <param name="min_cluster_size" value="1"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test></xml>\n-<xml name="manutest_NovorAdapter">\n-<test expect_num_outputs="2">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="in" value="NovorAdapter_in.mzML"/>\n-      <output name="out" file="NovorAdapter_1_out.idXML" compare="sim_size" delta="5700" ftype="idxml"/>\n-      <param name="enzyme" value="Trypsin"/>\n-      <param name="fragmentation" value="CID"/>\n-      <param name="massAnalyzer" value="Trap"/>\n-      <param name="fragment_mass_tolerance" value="0.5"/>\n-      <param name="precursor_mass_tolerance" value="15.0"/>\n-      <param name="precursor_error_units" value="ppm"/>\n-      <param name="variable_modifications" value="Acetyl (K)"/>\n-      <param name="fixed_modifications" value="Carbamidomethyl (C)"/>\n-      <param name="forbiddenResidues" value="I"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test></xml>\n-<xml name="manutest_SpectraSTSearchAdapter">\n-<test expect_num_outputs="2">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="use_isotopically_averaged_mass" value="false"/>\n-        <param name="use_all_charge_states" value="false"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="spectra_files" value="SpectrastAdapter_1_hack.mzML"/>\n-      <param name="output_files_type" value="pep.xml"/>\n-      <output_collection name="output_files" count="1"/>\n-      <param name="library_file" value="testLib.splib" ftype="splib"/>\n-      <param name="sequence_database_type" value="AA"/>\n-      <param name="precursor_mz_tolerance" value="3.0"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test><test expect_num_outputs="2">\n-      <conditional name="adv_opts_cond">\n-        <param name="adv_opts_selector" value="advanced"/>\n-        <param name="use_isotopically_averaged_mass" value="false"/>\n-        <param name="use_all_charge_states" value="false"/>\n-        <param name="force" value="false"/>\n-        <param name="test" value="true"/>\n-      </conditional>\n-      <param name="spectra_files" value="SpectrastAdapter_1_hack.mzML"/>\n-      <param name="output_files_type" value="tsv"/>\n-      <output_collection name="output_files" count="1"/>\n-      <param name="library_file" value="testLib.splib" ftype="splib"/>\n-      <param name="sequence_database_type" value="AA"/>\n-      <param name="precursor_mz_tolerance" value="3.0"/>\n-      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>\n-      <output name="ctd_out" ftype="xml">\n-        <assert_contents>\n-          <is_valid_xml/>\n-        </assert_contents>\n-      </output>\n-    </test></xml>\n'
b
diff -r decc397c3b7e -r 6b01678ec2fc macros_test.xml
--- a/macros_test.xml Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
b'@@ -1,545 +0,0 @@\n-<?xml version=\'1.0\' encoding=\'UTF-8\'?>\n-<macros>\n-    \n-<!-- a copy of a FileConverter test without the advanced options used\n-     in order to check if this works (all other tests enable advanced) -->\n-<xml name="manutest_FileConverter">\n-<test expect_num_outputs="1">\n-  <param name="in" value="FileConverter_1_input.mzData"/>\n-  <output name="out" file="FileConverter_1_output.mzML" compare="sim_size" delta="5700" ftype="mzml"/>\n-  <param name="out_type" value="mzML"/>\n-</test>\n-</xml>\n-<!-- tests contributed by the galaxyproteomics community -->\n-<xml name="manutest_ClusterMassTracesByPrecursor">\n-  <test expect_num_outputs="1"><!-- test with arbitarily chosen consensusXML -->\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="in_ms1" ftype="consensusxml" value="ConsensusMapNormalizer_input.consensusXML"/>\n-    <param name="in_swath" ftype="consensusxml" value="ConsensusMapNormalizer_input.consensusXML"/>\n-    <output name="out" ftype="mzml" value="ClusterMassTracesByPrecursor.mzml"/>\n-  </test>\n-</xml>\n-<xml name="manutest_ClusterMassTraces"> \n-  <test expect_num_outputs="1"><!-- test with arbitarily chosen consensusXML -->\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="in" ftype="consensusxml" value="ConsensusMapNormalizer_input.consensusXML"/>\n-    <output name="out" ftype="mzml" value="ClusterMassTraces.mzml"/>\n-  </test>\n-</xml>\n-<xml name="manutest_CVInspector">\n-  <!-- test with https://raw.githubusercontent.com/HUPO-PSI/mzIdentML/master/cv/XLMOD.obo listed here https://www.psidev.info/groups/controlled-vocabularies, mapping file from share/OpenMS/MAPPING/ms-mapping.xml, see currently not working, see: https://github.com/OpenMS/OpenMS/pull/4425 -->\n-  <test expect_num_outputs="1">\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="cv_files" ftype="obo" value="CHEMISTRY/XLMOD.obo"/>\n-    <param name="cv_names" value="XLMOD"/>\n-    <param name="mapping_file" value="MAPPING/ms-mapping.xml"/>\n-    <param name="OPTIONAL_OUTPUTS" value="html_FLAG"/>\n-    <output name="html" ftype="html" value="CVInspector.html"/>\n-  </test>\n-</xml>\n-<xml name="manutest_DeMeanderize">\n-  <test expect_num_outputs="1"><!-- test with the output of a MSsimulator output generated by a test below -->\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="in" ftype="mzml" value="MSsimulator_MALDI.mzml"/>\n-\t<output name="out" ftype="mzml" value="DeMeanderize.mzml"/>\n-  </test>\n-</xml>\n-<xml name="manutest_Digestor">\n-  <test expect_num_outputs="1"><!-- just using some random fasta, in contrast to DigestorMotif idXML/fasta output possible, testing for the non-default fasta option -->\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="in" ftype="fasta" value="random.fa"/>\n-    <output name="out" ftype="fasta" value="Digestor.fasta"/>\n-    <param name="out_type" value="fasta"/>\n-  </test>\n-</xml>\n-<xml name="manutest_EICExtractor">\n-  <test expect_num_outputs="1"><!-- just using some random test data -->\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="in" value="spectra.mzML"/>\n-    <param name="pos" ftype="edta" value="FileConverter_10_input.edta"/>\n-    <output name="out" ftype="csv" value="EICExtractor.csv" lines_diff="2"/>\n-  </test>\n-</xml>\n-<xml name="manutest_ERPairFinder">\n-  <!-- TODO -->\n-</xml>\n-<xml name="manutest_FeatureFinderIsotopeWavelet">\n-  <test expect_num_outputs="1"><!--just use the input of another FeatureFinder -->\n-    <param name="adv_opts_selector" value="advanced"/>\n-    <param name="adv_opts_cond|test" value="true"/>\n-    <param name="in" value="FeatureFin'..b'atureFinderMetabo"/><xml name="manutest_CruxAdapter"/><xml name="manutest_OpenSwathConfidenceScoring"/><xml name="manutest_PrecursorIonSelector"/><xml name="manutest_ConsensusMapNormalizer"/><xml name="manutest_RTPredict"/><xml name="manutest_PercolatorAdapter"/><xml name="manutest_ProteinInference"/><xml name="manutest_OpenSwathDecoyGenerator"/><xml name="manutest_TextExporter"/><xml name="manutest_FeatureFinderCentroided"/><xml name="manutest_DecoyDatabase"/><xml name="manutest_SpectraFilterWindowMower"/><xml name="manutest_NoiseFilterGaussian"/><xml name="manutest_MaRaClusterAdapter"/><xml name="manutest_ConsensusID"/><xml name="manutest_FileFilter"/><xml name="manutest_InclusionExclusionListCreator"/><xml name="manutest_FeatureLinkerUnlabeledKD"/><xml name="manutest_NovorAdapter"/><xml name="manutest_OpenPepXL"/><xml name="manutest_SeedListGenerator"/><xml name="manutest_FalseDiscoveryRate"/><xml name="manutest_OpenPepXLLF"/><xml name="manutest_SpecLibSearcher"/><xml name="manutest_IDConflictResolver"/><xml name="manutest_MRMMapper"/><xml name="manutest_OMSSAAdapter"/><xml name="manutest_ExternalCalibration"/><xml name="manutest_PeakPickerHiRes"/><xml name="manutest_MascotAdapter"/><xml name="manutest_FeatureFinderMultiplex"/><xml name="manutest_MetaProSIP"/><xml name="manutest_FuzzyDiff"/><xml name="manutest_TargetedFileConverter"/><xml name="manutest_MapAlignerIdentification"/><xml name="manutest_IDRTCalibration"/><xml name="manutest_MRMTransitionGroupPicker"/><xml name="manutest_RTModel"/><xml name="manutest_OpenSwathAssayGenerator"/><xml name="manutest_IDSplitter"/><xml name="manutest_OpenSwathMzMLFileCacher"/><xml name="manutest_HighResPrecursorMassCorrector"/><xml name="manutest_OpenSwathChromatogramExtractor"/><xml name="manutest_OpenSwathAnalyzer"/><xml name="manutest_FeatureLinkerUnlabeled"/><xml name="manutest_CompNovoCID"/><xml name="manutest_DTAExtractor"/><xml name="manutest_FileInfo"/><xml name="manutest_MapAlignerSpectrum"/><xml name="manutest_IsobaricAnalyzer"/><xml name="manutest_LowMemPeakPickerHiRes"/><xml name="manutest_MyriMatchAdapter"/><xml name="manutest_InternalCalibration"/><xml name="manutest_TOFCalibration"/><xml name="manutest_MSGFPlusAdapter"/><xml name="manutest_PTModel"/><xml name="manutest_InspectAdapter"/><xml name="manutest_SpectraFilterSqrtMower"/><xml name="manutest_SimpleSearchEngine"/><xml name="manutest_PeakPickerWavelet"/><xml name="manutest_MapNormalizer"/><xml name="manutest_IDScoreSwitcher"/><xml name="manutest_FeatureLinkerLabeled"/><xml name="manutest_MapRTTransformer"/><xml name="manutest_RNPxlSearch"/><xml name="manutest_PrecursorMassCorrector"/><xml name="manutest_MapAlignerPoseClustering"/><xml name="manutest_MzTabExporter"/><xml name="manutest_BaselineFilter"/><xml name="manutest_FeatureFinderMRM"/><xml name="manutest_MascotAdapterOnline"/><xml name="manutest_DatabaseFilter"/><xml name="manutest_ProteinResolver"/><xml name="manutest_OpenSwathFeatureXMLToTSV"/><xml name="manutest_FidoAdapter"/><xml name="manutest_AccurateMassSearch"/><xml name="manutest_CompNovo"/><xml name="manutest_LowMemPeakPickerHiResRandomAccess"/><xml name="manutest_OpenSwathRTNormalizer"/><xml name="manutest_PeptideIndexer"/><xml name="manutest_CometAdapter"/><xml name="manutest_NoiseFilterSGolay"/><xml name="manutest_MSFraggerAdapter"/><xml name="manutest_SpectraSTSearchAdapter"/><xml name="manutest_SequestAdapter"/><xml name="manutest_FeatureFinder"/><xml name="manutest_LuciphorAdapter"/><xml name="manutest_GNPSExport"/><xml name="manutest_Epifany"/><xml name="manutest_NucleicAcidSearchEngine"/><xml name="manutest_QualityControl"/><xml name="manutest_FeatureFinderMetaboIdent"/><xml name="manutest_RNAMassCalculator"/><xml name="manutest_MapAlignerTreeGuided"/><xml name="manutest_IDMassAccuracy"/><xml name="manutest_ProteomicsLFQ"/><xml name="manutest_IDDecoyProbability"/><xml name="manutest_DigestorMotif"/><xml name="manutest_DatabaseSuitability"/><xml name="manutest_StaticModification"/></macros>\n'
b
diff -r decc397c3b7e -r 6b01678ec2fc prepare_test_data_manual.sh
--- a/prepare_test_data_manual.sh Fri Nov 06 20:31:34 2020 +0000
+++ b/prepare_test_data_manual.sh Thu Dec 01 19:20:52 2022 +0000
[
@@ -86,10 +86,13 @@
 PhosphoScoring -in spectra.mzML -id MSGFPlusAdapter_1_out1.tmp -out PhosphoScoring.idxml > PhosphoScoring.stdout 2> stderr
 if [[ "$?" -ne "0" ]]; then >&2 echo 'PhosphoScoring failed'; >&2 echo -e "stderr:\n$(cat stderr | sed 's/^/    /')"; fi
 
-PSMFeatureExtractor -test -in MSGFPlusAdapter_1_out.idXML XTandemAdapter_1_out.idXML -multiple_search_engines -skip_db_check -out PSMFeatureExtractor.idxml > PSMFeatureExtractor_1.stdout 2> stderr
+# TODO PSMFeatureExtractor should have auto tests with 2.7 https://github.com/OpenMS/OpenMS/pull/5087 
+PSMFeatureExtractor -test -in MSGFPlusAdapter_1_out.idXML XTandemAdapter_1_out.idXML -multiple_search_engines -skip_db_check -out_type idXML -out PSMFeatureExtractor.idxml > PSMFeatureExtractor_1.stdout 2> stderr
 if [[ "$?" -ne "0" ]]; then >&2 echo 'PSMFeatureExtractor_1 failed'; >&2 echo -e "stderr:\n$(cat stderr | sed 's/^/    /')"; fi
-PSMFeatureExtractor -test -in MSGFPlusAdapter_1_out.idXML XTandemAdapter_1_out.idXML -multiple_search_engines -skip_db_check -out PSMFeatureExtractor.mzid > PSMFeatureExtractor_2.stdout 2> stderr
+PSMFeatureExtractor -test -in MSGFPlusAdapter_1_out.idXML XTandemAdapter_1_out.idXML -multiple_search_engines -skip_db_check -out_type mzid -out PSMFeatureExtractor.mzid > PSMFeatureExtractor_2.stdout 2> stderr
 if [[ "$?" -ne "0" ]]; then >&2 echo 'PSMFeatureExtractor_2 failed'; >&2 echo -e "stderr:\n$(cat stderr | sed 's/^/    /')"; fi
+PSMFeatureExtractor -test -in MSGFPlusAdapter_1_out.idXML -out_type idXML -out PSMFeatureExtractor_3.idXML > PSMFeatureExtractor_3.stdout 2> stderr
+if [[ "$?" -ne "0" ]]; then >&2 echo 'PSMFeatureExtractor_3 failed'; >&2 echo -e "stderr:\n$(cat stderr | sed 's/^/    /')"; fi
 
 QCCalculator -test -in OpenPepXL_input.mzML -out QCCalculator1.qcML > QCCalculator_1.stdout 2> stderr
 if [[ "$?" -ne "0" ]]; then >&2 echo 'QCCalculator_1 failed'; >&2 echo -e "stderr:\n$(cat stderr | sed 's/^/    /')"; fi
b
diff -r decc397c3b7e -r 6b01678ec2fc readme.md
--- a/readme.md Fri Nov 06 20:31:34 2020 +0000
+++ b/readme.md Thu Dec 01 19:20:52 2022 +0000
b
@@ -22,11 +22,14 @@
 
 Manual updates should only be done to
 
-- the `@GALAXY_VERSION@"` token in `macros.xml`
 - and the manually contributed tests in `macros_test.xml` (The goal is that all
   tools that do not have an automatically generated test are covered here)
 - the `hardcoded_params.json` files
 
+Wrapper versions are managed in `bump.json`. For tools listed in the file
+the wrapper version will be set accordingly and otherwise `0` is used. 
+For a major update of the tool version the bump file should be reset (to `{}`).
+
 In a few cases patches may be acceptable.
 
 Installation
@@ -71,10 +74,15 @@
 
 Preprocessing:
 
-- For each input / output data set parameter a directory is crated (named by
-  the parameter)
 - For input data set parameters the links to the actual location of the data
-  sets are created
+  sets are created, the link names are `element_identifier`.`EXT`, where `EXT`
+  is an extension that is known by OpenMS
+- In order to avoid name collisions for the created links each is placed in a
+  unique directory: `PARAM_NAME/DATASET_ID`, where `PARAM_NAME` is the name
+  of the parameter and `DATASET_ID` is the id of the Galaxy dataset 
+- the same happens for output parameters that are in 1:1 correspondence with
+  an input parameter
+
 
 Main:
 
b
diff -r decc397c3b7e -r 6b01678ec2fc test-data.sh
--- a/test-data.sh Fri Nov 06 20:31:34 2020 +0000
+++ b/test-data.sh Thu Dec 01 19:20:52 2022 +0000
[
b'@@ -1,22 +1,25 @@\n #!/usr/bin/env bash\n \n-VERSION=2.6\n-FILETYPES="filetypes.txt"\n-CONDAPKG="https://anaconda.org/bioconda/openms/2.6.0/download/linux-64/openms-2.6.0-h4afb90d_0.tar.bz2"\n+VERSION=2.8\n+FILETYPES="aux/filetypes.txt"\n+CONDAPKG="https://anaconda.org/bioconda/openms/2.8.0/download/linux-64/openms-2.8.0-h7ca0330_0.tar.bz2"\n \n # import the magic\n . ./generate-foo.sh\n \n # install conda\n if [ -z "$tmp" ]; then\n-\ttmp=$(mktemp -d)\n-\tcreated="yes"\n+    tmp=$(mktemp -d)\n+    created="yes"\n fi\n \n export OPENMSGIT="$tmp/OpenMS$VERSION.0-git"\n export OPENMSPKG="$tmp/OpenMS$VERSION-pkg/"\n-export OPENMSENV="$tmp/OpenMS$VERSION-env"\n-export CTDCONVERTER="$tmp/CTDConverter"\n+export OPENMSENV="OpenMS$VERSION-env"\n+\n+if [ -z "$CTDCONVERTER" ]; then\n+    export CTDCONVERTER="$tmp/CTDConverter"\n+fi\n \n if [[ -z "$1" ]]; then\n \tautotests="/dev/null"\n@@ -25,11 +28,11 @@\n fi\n \n if type conda > /dev/null; then  \n-\ttrue\n+    true\n else\n-\twget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh\n-\tbash Miniconda3-latest-Linux-x86_64.sh -b -p "$tmp/miniconda"\n-\tsource "$tmp/miniconda/bin/activate"\n+    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh\n+    bash Miniconda3-latest-Linux-x86_64.sh -b -p "$tmp/miniconda"\n+    source "$tmp/miniconda/bin/activate"\n fi\n eval "$(conda shell.bash hook)"\n \n@@ -42,24 +45,27 @@\n \n echo "Clone OpenMS $VERSION sources"\n if [[ ! -d $OPENMSGIT ]]; then\n-\tgit clone -b release/$VERSION.0 https://github.com/OpenMS/OpenMS.git $OPENMSGIT\n-\tcd $OPENMSGIT\n-\tgit submodule init\n-\tgit submodule update\n-\tcd -\n+    # TODO >2.8 reenable original release branch .. also in else branch\n+    # the plus branch contains commits from https://github.com/OpenMS/OpenMS/pull/5920 and https://github.com/OpenMS/OpenMS/pull/5917\n+    # git clone -b release/$VERSION.0 https://github.com/OpenMS/OpenMS.git $OPENMSGIT\n+    git clone -b release/$VERSION.0-plus https://github.com/bernt-matthias/OpenMS.git $OPENMSGIT\n+    cd $OPENMSGIT\n+    git submodule init\n+    git submodule update\n+    cd -\n else\n-\tcd $OPENMSGIT\n-\tgit pull origin release/$VERSION.0\n-\tcd -\n+    cd $OPENMSGIT\n+    git pull origin release/$VERSION.0-plus\n+    cd -\n fi\n \n echo "Create OpenMS $VERSION conda env"\n # TODO currently add lxml (needed by CTDConverter)\n # TODO for some reason a to recent openjdk is used\n if conda env list | grep "$OPENMSENV"; then\n-\ttrue\n+    true\n else\n-\tconda create -y --quiet --override-channels --channel iuc --channel conda-forge --channel bioconda --channel defaults -p $OPENMSENV openms=$VERSION openms-thirdparty=$VERSION ctdopts=1.4 lxml\n+    conda create -y --quiet --override-channels --channel iuc --channel conda-forge --channel bioconda --channel defaults -n $OPENMSENV openms=$VERSION openms-thirdparty=$VERSION omssa=2.1.9 ctdopts=1.5 lxml\n # chmod -R u-w $OPENMSENV \n fi\n ###############################################################################\n@@ -69,10 +75,10 @@\n echo "Download OpenMS $VERSION package $CONDAPKG"\n \n if [[ ! -d $OPENMSPKG ]]; then\n-\tmkdir $OPENMSPKG\n-\twget -q -P $OPENMSPKG/ "$CONDAPKG"\n-\ttar -xf $OPENMSPKG/"$(basename $CONDAPKG)" -C $OPENMSPKG/\n-\trm $OPENMSPKG/"$(basename $CONDAPKG)"\n+    mkdir $OPENMSPKG\n+    wget -q -P $OPENMSPKG/ "$CONDAPKG"\n+    tar -xf $OPENMSPKG/"$(basename $CONDAPKG)" -C $OPENMSPKG/\n+    rm $OPENMSPKG/"$(basename $CONDAPKG)"\n fi\n \n ###############################################################################\n@@ -81,40 +87,46 @@\n ###############################################################################\n echo "Clone CTDConverter"\n if [[ ! -d $CTDCONVERTER ]]; then\n-\t#git clone https://github.com/WorkflowConversion/CTDConverter.git CTDConverter\n-\tgit clone -b topic/cdata https://github.com/bernt-matthias/CTDConverter.git $CTDCONVERTER\n+    #git clone https://github.com/WorkflowConversion/CTDConverter.git CTDConverter\n+    git clone -b topic/fix-selects2 https://github.com/bernt-matthias/CTDConverter.git $CTDCONVERTER\n else\n-\tcd $CTDCONVERTER\n-\tgi'..b'*/\\([^/]\\+\\).xml$@\\1@\' | tr \'\\n\' \'|\' | sed \'s/|$//\')\n+## else\n+##     REX=".*"\n+## fi\n+## echo REX $REX\n+## cat tmp_test_data.sh | egrep "($REX)" >> prepare_test_data.sh\n+## rm tmp_test_data.sh\n \n echo "Execute test shell script"\n chmod u+x prepare_test_data.sh\n@@ -204,14 +212,13 @@\n cd - || exit\n \n \n-###############################################################################\n-## create/update test data for the manually generated tests\n-## - run convert once with the manual tests only and \n-## - update test-data (needs to run 2x)\n-###############################################################################\n+# ###############################################################################\n+# ## create/update test data for the manually generated tests\n+# ## - run convert once with the manual tests only and \n+# ## - update test-data (needs to run 2x)\n+# ###############################################################################\n echo "Execute test shell script for manually curated tests"\n chmod u+x prepare_test_data_manual.sh\n-\n cd ./test-data || exit\n ../prepare_test_data_manual.sh\n cd - || exit\n@@ -220,22 +227,28 @@\n ###############################################################################\n ## auto generate tests\n ###############################################################################\n+\n echo "Write test macros to $autotests"\n echo "<macros>" > "$autotests"\n-for i in $(ls *xml |grep -v macros)\n+\n+for i in $(ls ctd/*ctd)\n do\n-\tb=$(basename "$i" .xml)\n-\tget_tests2 "$b" >> "$autotests"\n+    b=$(basename "$i" .ctd)\n+    get_tests2 "$b" >> "$autotests"\n done\n echo "</macros>" >> "$autotests"\n \n-echo "Create test data links"\n-link_tmp_files\n+# echo "Create test data links"\n+# Breaks DecoyDatabase\n+# link_tmp_files\n \n # tests for tools using output_prefix parameters can not be auto generated\n # hence we output the tests for manual curation in macros_test.xml\n # and remove them from the autotests\n-# -> OpenSwathFileSplitter IDRipper MzMLSplitter\n+# -> OpenSwathFileSplitter IDRipper MzMLSplitter SeedListGenerator\n+# TODO reevaluate in >2.8 \n+# - https://github.com/OpenMS/OpenMS/pull/5873\n+# - https://github.com/OpenMS/OpenMS/pull/5912\n #\n # Furthermore we remove tests for tools without binaries in conda\n # -> MSFragger MaRaClusterAdapter NovorAdapter \n@@ -243,23 +256,23 @@\n # not able to specify composite test data  \n # -> SpectraSTSearchAdapter \n if [[ ! -z "$1" ]]; then\n-\techo "" > macros_discarded_auto.xml\n-\tfor i in OpenSwathFileSplitter IDRipper MzMLSplitter MSFraggerAdapter MaRaClusterAdapter NovorAdapter SpectraSTSearchAdapter\n-\tdo\n-\t\techo "<xml name=\\"manutest_$i\\">" >>  macros_discarded_auto.xml\n-\t\txmlstarlet sel -t -c "/macros/xml[@name=\'autotest_$i\']/test" macros_autotest.xml >>  macros_discarded_auto.xml\n-\t\techo "</xml>"  >>  macros_discarded_auto.xml\n-\t\txmlstarlet ed -d "/macros/xml[@name=\'autotest_$i\']/test" macros_autotest.xml > tmp\n-\t\tmv tmp macros_autotest.xml\n-\tdone\n-\t>&2 echo "discarded autogenerated macros for curation in macros_discarded_auto.xml"\n+    echo "" > macros_discarded_auto.xml\n+    for i in OpenSwathFileSplitter IDRipper MzMLSplitter SeedListGenerator MSFraggerAdapter MaRaClusterAdapter NovorAdapter SpectraSTSearchAdapter\n+    do\n+        echo "<xml name=\\"manutest_$i\\">" >>  macros_discarded_auto.xml\n+        xmlstarlet sel -t -c "/macros/xml[@name=\'autotest_$i\']/test" macros_autotest.xml >>  macros_discarded_auto.xml\n+        echo "</xml>"  >>  macros_discarded_auto.xml\n+        xmlstarlet ed -d "/macros/xml[@name=\'autotest_$i\']/test" macros_autotest.xml > tmp\n+        mv tmp macros_autotest.xml\n+    done\n+    >&2 echo "discarded autogenerated macros for curation in macros_discarded_auto.xml"\n fi\n conda deactivate\n \n ## remove broken symlinks in test-data\n find test-data/ -xtype l -delete\n \n-# if [ ! -z "$created" ]; then\n-# \techo "Removing temporary directory"\n-# \trm -rf "$tmp"\n-# fi\n+if [ ! -z "$created" ]; then\n+    echo "Removing temporary directory"\n+    rm -rf "$tmp"\n+fi\n'
b
diff -r decc397c3b7e -r 6b01678ec2fc test-data/pepnovo_models.loc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/pepnovo_models.loc Thu Dec 01 19:20:52 2022 +0000
b
@@ -0,0 +1,13 @@
+#name value path
+default_models CID_IT_TRYP ${__HERE__}/pepnovo_models/
+default_models LTQ_COMP ${__HERE__}/pepnovo_models/
+default_models DBC4_PEAK ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_TAG5 ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_TAG6 ${__HERE__}/pepnovo_models/
+default_models ITDNV_PEAK ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_SCORE ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_TAG3 ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_DNVPART ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_TAG4 ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_DB ${__HERE__}/pepnovo_models/
+default_models CID_IT_TRYP_CSP ${__HERE__}/pepnovo_models/
b
diff -r decc397c3b7e -r 6b01678ec2fc test-data/random.fa
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/random.fa Thu Dec 01 19:20:52 2022 +0000
b
@@ -0,0 +1,18 @@
+>RND24402 Randomly generated sequence, created by ExPASy tool RandSeq, using average amino acid composition
+LALLTDKYSVTKSIKGYAGQQQKCTDDEGLAEDSAAMSLVPIRAAWTISVSVDLFYLGIV
+TNVTKDSVEHLVGIPLVTHEFMASRCEMRGQVVSATFGSWQKAESKAYRIPLKATPLDEF
+VESAVYLFGGSSNEYECVLIGNSHPVLIFLDIDAVPGARKPRTGFFMAEGFHSKGETRAL
+VGKSPPLGEYRKGAFHFTFPIKEAIRLGPPKKRIMGYRDALEGGLNHYVQTQVLVLLPMI
+QVARRWENGLGLLVGKFLKLPTHPLDLNQVTLCWSEAVTEDNKRFLLTIKTSAQGKSAPT
+SHINYVPQHNSMELMAINGSPFAAQHKSNDEIESMRDLSKLYADAETLESHGERGVRHQA
+TETKISKVTNLRRKLPQLLDLNVVDNACNWESVGAHVLEYVLVNLYLKELQEPKVELQPR
+LNETTMKAGASSLGVESGASAHSFYKGGVSEAKLRFRHVATPAAARIWWCVVMFRINRRY
+DGITYNSVGEQLSGVHEYVRAAQLFGLTTGKNLRSTGIVIIKLSTAIDLECLVQAKPKEA
+YVLANDYIGAKPHPARLETGPALVLFIVETINNDTLNAAILITALGGKFLNVRPDLLFGV
+QALFGCVRMFRHADCTIGREKFVQTEISHKAKFLYEINEFFLERILQFEEAKSPVGAPAY
+DIPIGRGLVMDSSTDLWNIYVVELISGQEKRTGIDPDTPMGTSHNLYMTDARLDERDQRS
+FLNSEFVKPSKLANGSEWADPYVEPDKTEVIAFFPATLIVIMADGSALNGQVCIQPAKDN
+SKMADDLATVHIGQDRPCDWGISASHEYDEVNRPARINGVMMQQLMAEDNQGPGASPRDQ
+MGDADDLKEIKWNKYVIDNEIIGRERGISAERVKIFLGDTLTARGLLDSPPGQTKVFDLR
+PRQSDKNQSGMFKRDQNAMYFPLEYDRIGAQTDTGSLYSTLITKFASISIDLVKLSMPRE
+KQIDEERLHSEFIENQKRSALPAVQKNLACISCVEACRGT
b
diff -r decc397c3b7e -r 6b01678ec2fc test-data/random_RNA.fa
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/random_RNA.fa Thu Dec 01 19:20:52 2022 +0000
b
@@ -0,0 +1,2 @@
+> random RNA
+GUGUUACUGCCACGAAACAAAAUGUUCAAGACACCGGGCGCCAUCUGUAUAUUACUCGCCAAUCAGACGGUCUGCAACGCUACAGACAUGGAGCUCAGCGCUGACGAUGUCGCCGGACCAAGUACGAUCACUUUGCUCGUGCAAAUGUUCGUCCGCAUUGGGCACUAUAACUCGAAUUGUCGAAUCCGGGUGGCGAGCCGCCACUUAUAGGAUAAAUAUUCAAACUAACAUUAUGGCGCCAAAUCUGCAAUCUCUACUUUAGACAUUAUAUACCCACAUUUACAAUUAGAGUUAUUAUUAGUUAACGUGUGCCAGAGCAGGGAUGGCUCUUGUCAGCCAUAGUUGUGUGAACGGGCUGUAUUUCCUUCCUAAUUAUAGAGCGGCACCGGAAAGCAAUGCACGAUCCACGAGGGCACUUCACAUGGUCACAAACAGUCAUUCUGGUACCCUGAUUCGUUCCCGAAAGGGAAGUAUAUACACGGCCCCCGUGUAUAUCGCCAGUCACACGGCAGGAGCGAGAGUUCGUUUGUAUACAUGCCCAGGAGCCUUCUCUAACUUUUGAAGCUGUGCAACUUUGUUGGCGCGUCACCACUAAGUCAGCUUAAUAGACAGCAGAUGGGAGAAUUUACCAUUUCAUUUUGUCCGAGCUGAUACCGGUAGGUCAUCUCUAAUCACCCGUUAUCCUCUCGUAAUAUAAUCGCUACUAAGGUAUGAAGGUGUCUGCGAAAGGUAACGUAAAUCAUUCUCGGCUCCUUGCAAAGUACGACUAGGAUCCAUCGUACACAUCCGGACGAAGAUGUAAAAUUGACGCCCCUGUAGGCCGUGAGACAGACGUGAGCCAAACCAUCUGCUCUACUUCUGGAGGCCUUGAAUAGUGGCGCGUUGUGUAAUCUUAAGAGAGAUUUUACUUGGAAUUACAGCCUACUUUGACCAGUAGCGCAUUGUGAACAAAUAUUCCCGUACGCGUCCAAUUGCAGCAAAACGUGGGCCUGUGUCCAGU
b
diff -r decc397c3b7e -r 6b01678ec2fc tools_blacklist.txt
--- a/tools_blacklist.txt Fri Nov 06 20:31:34 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,21 +0,0 @@
-# seems not possible for 2.5 https://github.com/OpenMS/OpenMS/issues/4426
-# DigestorMotif
-
-# deprecated https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/release/latest/html/UTILS_IDDecoyProbability.html
-# https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/release/latest/html/a16242.html
-IDDecoyProbability
-
-# personal communication with author V. Bafna: 
-# "InsPect is no longer maintained as there are many better tools including MS-GF+"
-InspectAdapter
-
-# licence? see https://github.com/bioconda/bioconda-recipes/issues/18953
-#MSFraggerAdapter
-
-# https://github.com/OpenMS/OpenMS/issues/4550#issuecomment-594065727
-ProteomicsLFQ
-
-# https://github.com/OpenMS/OpenMS/issues/4401
-InclusionExclusionListCreator
-RTPredict
-PTPredict