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

Changeset 13:ff9d0d1c2c1c (2022-12-01)
Previous changeset 12:4af4658187e3 (2020-11-06) Next changeset 14:a421b4ddf47c (2024-06-14)
Commit message:
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 3d1e5f37fd16524a415f707772eeb7ead848c5e3
modified:
SemanticValidator.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 4af4658187e3 -r ff9d0d1c2c1c 404-urls.patch
--- a/404-urls.patch Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c OMSSAAdapter.patch
--- a/OMSSAAdapter.patch Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c PepNovoAdapter.patch
--- a/PepNovoAdapter.patch Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c SemanticValidator.xml
--- a/SemanticValidator.xml Fri Nov 06 20:13:35 2020 +0000
+++ b/SemanticValidator.xml Thu Dec 01 18:57:56 2022 +0000
[
@@ -1,13 +1,11 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
 <!--Proposed Tool Section: [Utilities]-->
-<tool id="SemanticValidator" name="SemanticValidator" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@" profile="20.05">
+<tool id="SemanticValidator" name="SemanticValidator" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
   <description>SemanticValidator for semantically validating certain XML files.</description>
   <macros>
     <token name="@EXECUTABLE@">SemanticValidator</token>
     <import>macros.xml</import>
-    <import>macros_autotest.xml</import>
-    <import>macros_test.xml</import>
   </macros>
   <expand macro="requirements"/>
   <expand macro="stdio"/>
@@ -20,9 +18,14 @@
 ln -s '$in' 'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)' &&
 mkdir mapping_file &&
 ln -s '$mapping_file' 'mapping_file/${re.sub("[^\w\-_]", "_", $mapping_file.element_identifier)}.$gxy2omsext($mapping_file.ext)' &&
-#if $cv:
-  mkdir cv &&
-  ${ ' '.join(["ln -s '%s' 'cv/%s.%s' &&" % (_, re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $cv if _]) }
+#if $cv_cond.cv:
+  mkdir cv_cond.cv &&
+  #if $cv_cond.cv_select == "no"
+  mkdir ${' '.join(["'cv_cond.cv/%s'" % (i) for i, f in enumerate($cv_cond.cv) if f])} && 
+  ${' '.join(["ln -s '%s' 'cv_cond.cv/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($cv_cond.cv) if f])}
+  #else
+  ln -s '$cv_cond.cv' 'cv_cond.cv/${re.sub("[^\w\-_]", "_", $cv_cond.cv.element_identifier)}.$gxy2omsext($cv_cond.cv.ext)' &&
+  #end if
 #end if
 
 ## Main program call
@@ -35,9 +38,13 @@
 'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)'
 -mapping_file
 'mapping_file/${re.sub("[^\w\-_]", "_", $mapping_file.element_identifier)}.$gxy2omsext($mapping_file.ext)'
-#if $cv:
+#if $cv_cond.cv:
   -cv
-  ${' '.join(["'cv/%s.%s'"%(re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $cv if _])}
+  #if $cv_cond.cv_select == "no"
+  ${' '.join(["'cv_cond.cv/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($cv_cond.cv) if f])}
+  #else
+  'cv_cond.cv/${re.sub("[^\w\-_]", "_", $cv_cond.cv.element_identifier)}.$gxy2omsext($cv_cond.cv.ext)'
+  #end if
 #end if
 | tee '$stdout'
 
@@ -50,13 +57,24 @@
     <configfile name="hardcoded_json"><![CDATA[{"log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
   </configfiles>
   <inputs>
-    <param name="in" argument="-in" type="data" format="mzdata,mzid,mzml,traml,xml" optional="false" label="Input file (any xml file)" help=" select mzdata,mzid,mzml,traml,xml data sets(s)"/>
-    <param name="mapping_file" argument="-mapping_file" type="data" format="xml" optional="false" label="Mapping file which is used to semantically validate the given XML file against this mapping file (see 'share/OpenMS/MAPPING' for templates)" help=" select xml data sets(s)"/>
-    <param name="cv" argument="-cv" type="data" format="obo" multiple="true" optional="true" label="Controlled Vocabulary files containg the CV terms (if left empty, a set of default files are used)" help=" select obo data sets(s)"/>
+    <param argument="-in" type="data" format="mzdata,mzid,mzml,traml,xml" optional="false" label="Input file (any xml file)" help=" select mzdata,mzid,mzml,traml,xml data sets(s)"/>
+    <param argument="-mapping_file" type="data" format="xml" optional="false" label="Mapping file which is used to semantically validate the given XML file against this mapping file (see 'share/OpenMS/MAPPING' for templates)" help=" select xml data sets(s)"/>
+    <conditional name="cv_cond">
+      <param name="cv_select" type="select" label="Run tool in batch mode for -cv">
+        <option value="no">No: process all datasets jointly</option>
+        <option value="yes">Yes: process each dataset in an independent job</option>
+      </param>
+      <when value="no">
+        <param argument="-cv" type="data" format="obo" multiple="true" optional="true" label="Controlled Vocabulary files containg the CV terms (if left empty, a set of default files are used)" help=" select obo data sets(s)"/>
+      </when>
+      <when value="yes">
+        <param argument="-cv" type="data" format="obo" multiple="false" optional="true" label="Controlled Vocabulary files containg the CV terms (if left empty, a set of default files are used)" help=" select obo data sets(s)"/>
+      </when>
+    </conditional>
     <expand macro="adv_opts_macro">
-      <param name="force" argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
-      <param name="test" argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
-        <expand macro="list_string_san"/>
+      <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
+      <param argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
+        <expand macro="list_string_san" name="test"/>
       </param>
     </expand>
     <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs">
@@ -71,13 +89,18 @@
       <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
     </data>
   </outputs>
-  <tests>
-    <expand macro="autotest_SemanticValidator"/>
-    <expand macro="manutest_SemanticValidator"/>
-  </tests>
+  <tests><test expect_num_outputs="1"><!-- just chosen an arbitrary input (same as XMLValidator) and autgenerated output-->
+    <param name="adv_opts|test" value="true"/>
+    <param name="in" ftype="mzml" value="FileFilter_1_input.mzML"/>
+    <param name="mapping_file" ftype="xml" value="MAPPING/ms-mapping.xml"/>
+    <output name="stdout" ftype="txt" value="SemanticValidator.stdout" lines_diff="4">
+       <assert_contents><has_text text="Congratulations, the file is valid!"/></assert_contents>
+    </output>
+  </test>
+</tests>
   <help><![CDATA[SemanticValidator for semantically validating certain XML files.
 
 
-For more information, visit http://www.openms.de/doxygen/release/2.6.0/html/UTILS_SemanticValidator.html]]></help>
+For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/UTILS_SemanticValidator.html]]></help>
   <expand macro="references"/>
 </tool>
b
diff -r 4af4658187e3 -r ff9d0d1c2c1c filetypes.txt
--- a/filetypes.txt Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c fill_ctd.py
--- a/fill_ctd.py Fri Nov 06 20:13:35 2020 +0000
+++ b/fill_ctd.py Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c fill_ctd_clargs.py
--- a/fill_ctd_clargs.py Fri Nov 06 20:13:35 2020 +0000
+++ b/fill_ctd_clargs.py Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c generate-foo.sh
--- a/generate-foo.sh Fri Nov 06 20:13:35 2020 +0000
+++ b/generate-foo.sh Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c generate.sh
--- a/generate.sh Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c hardcoded_params.json
--- a/hardcoded_params.json Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c macros.xml
--- a/macros.xml Fri Nov 06 20:13:35 2020 +0000
+++ b/macros.xml Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c macros_autotest.xml
--- a/macros_autotest.xml Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c macros_discarded_auto.xml
--- a/macros_discarded_auto.xml Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c macros_test.xml
--- a/macros_test.xml Fri Nov 06 20:13:35 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 4af4658187e3 -r ff9d0d1c2c1c prepare_test_data_manual.sh
--- a/prepare_test_data_manual.sh Fri Nov 06 20:13:35 2020 +0000
+++ b/prepare_test_data_manual.sh Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c readme.md
--- a/readme.md Fri Nov 06 20:13:35 2020 +0000
+++ b/readme.md Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c test-data.sh
--- a/test-data.sh Fri Nov 06 20:13:35 2020 +0000
+++ b/test-data.sh Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c test-data/pepnovo_models.loc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/pepnovo_models.loc Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c test-data/random.fa
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/random.fa Thu Dec 01 18:57:56 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 4af4658187e3 -r ff9d0d1c2c1c test-data/random_RNA.fa
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/random_RNA.fa Thu Dec 01 18:57:56 2022 +0000
b
@@ -0,0 +1,2 @@
+> random RNA
+GUGUUACUGCCACGAAACAAAAUGUUCAAGACACCGGGCGCCAUCUGUAUAUUACUCGCCAAUCAGACGGUCUGCAACGCUACAGACAUGGAGCUCAGCGCUGACGAUGUCGCCGGACCAAGUACGAUCACUUUGCUCGUGCAAAUGUUCGUCCGCAUUGGGCACUAUAACUCGAAUUGUCGAAUCCGGGUGGCGAGCCGCCACUUAUAGGAUAAAUAUUCAAACUAACAUUAUGGCGCCAAAUCUGCAAUCUCUACUUUAGACAUUAUAUACCCACAUUUACAAUUAGAGUUAUUAUUAGUUAACGUGUGCCAGAGCAGGGAUGGCUCUUGUCAGCCAUAGUUGUGUGAACGGGCUGUAUUUCCUUCCUAAUUAUAGAGCGGCACCGGAAAGCAAUGCACGAUCCACGAGGGCACUUCACAUGGUCACAAACAGUCAUUCUGGUACCCUGAUUCGUUCCCGAAAGGGAAGUAUAUACACGGCCCCCGUGUAUAUCGCCAGUCACACGGCAGGAGCGAGAGUUCGUUUGUAUACAUGCCCAGGAGCCUUCUCUAACUUUUGAAGCUGUGCAACUUUGUUGGCGCGUCACCACUAAGUCAGCUUAAUAGACAGCAGAUGGGAGAAUUUACCAUUUCAUUUUGUCCGAGCUGAUACCGGUAGGUCAUCUCUAAUCACCCGUUAUCCUCUCGUAAUAUAAUCGCUACUAAGGUAUGAAGGUGUCUGCGAAAGGUAACGUAAAUCAUUCUCGGCUCCUUGCAAAGUACGACUAGGAUCCAUCGUACACAUCCGGACGAAGAUGUAAAAUUGACGCCCCUGUAGGCCGUGAGACAGACGUGAGCCAAACCAUCUGCUCUACUUCUGGAGGCCUUGAAUAGUGGCGCGUUGUGUAAUCUUAAGAGAGAUUUUACUUGGAAUUACAGCCUACUUUGACCAGUAGCGCAUUGUGAACAAAUAUUCCCGUACGCGUCCAAUUGCAGCAAAACGUGGGCCUGUGUCCAGU
b
diff -r 4af4658187e3 -r ff9d0d1c2c1c tools_blacklist.txt
--- a/tools_blacklist.txt Fri Nov 06 20:13:35 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