diff IDFilter.xml @ 16:093a52644633 draft default tip

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 5c080b1e2b99f1c88f4557e9fec8c45c9d23b906
author galaxyp
date Fri, 14 Jun 2024 21:42:57 +0000
parents a5d785af0ad8
children
line wrap: on
line diff
--- a/IDFilter.xml	Thu Dec 01 19:21:56 2022 +0000
+++ b/IDFilter.xml	Fri Jun 14 21:42:57 2024 +0000
@@ -1,8 +1,7 @@
-<?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: [ID Processing]-->
+<!--Proposed Tool Section: [File Filtering / Extraction / Merging]-->
 <tool id="IDFilter" name="IDFilter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
-  <description>Filters results from protein or peptide identification engines based on different criteria.</description>
+  <description>Filters results from protein or peptide identification engines based on different criteria</description>
   <macros>
     <token name="@EXECUTABLE@">IDFilter</token>
     <import>macros.xml</import>
@@ -15,27 +14,27 @@
 
 ## Preprocessing
 mkdir in &&
-ln -s '$in' 'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)' &&
+cp '$in' 'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)' &&
 mkdir out &&
 #if $whitelist.proteins:
   mkdir whitelist.proteins &&
-  ln -s '$whitelist.proteins' 'whitelist.proteins/${re.sub("[^\w\-_]", "_", $whitelist.proteins.element_identifier)}.$gxy2omsext($whitelist.proteins.ext)' &&
+  cp '$whitelist.proteins' 'whitelist.proteins/${re.sub("[^\w\-_]", "_", $whitelist.proteins.element_identifier)}.$gxy2omsext($whitelist.proteins.ext)' &&
 #end if
 #if $whitelist.peptides:
   mkdir whitelist.peptides &&
-  ln -s '$whitelist.peptides' 'whitelist.peptides/${re.sub("[^\w\-_]", "_", $whitelist.peptides.element_identifier)}.$gxy2omsext($whitelist.peptides.ext)' &&
+  cp '$whitelist.peptides' 'whitelist.peptides/${re.sub("[^\w\-_]", "_", $whitelist.peptides.element_identifier)}.$gxy2omsext($whitelist.peptides.ext)' &&
 #end if
 #if $blacklist.proteins:
   mkdir blacklist.proteins &&
-  ln -s '$blacklist.proteins' 'blacklist.proteins/${re.sub("[^\w\-_]", "_", $blacklist.proteins.element_identifier)}.$gxy2omsext($blacklist.proteins.ext)' &&
+  cp '$blacklist.proteins' 'blacklist.proteins/${re.sub("[^\w\-_]", "_", $blacklist.proteins.element_identifier)}.$gxy2omsext($blacklist.proteins.ext)' &&
 #end if
 #if $blacklist.peptides:
   mkdir blacklist.peptides &&
-  ln -s '$blacklist.peptides' 'blacklist.peptides/${re.sub("[^\w\-_]", "_", $blacklist.peptides.element_identifier)}.$gxy2omsext($blacklist.peptides.ext)' &&
+  cp '$blacklist.peptides' 'blacklist.peptides/${re.sub("[^\w\-_]", "_", $blacklist.peptides.element_identifier)}.$gxy2omsext($blacklist.peptides.ext)' &&
 #end if
 #if $in_silico_digestion.fasta:
   mkdir in_silico_digestion.fasta &&
-  ln -s '$in_silico_digestion.fasta' 'in_silico_digestion.fasta/${re.sub("[^\w\-_]", "_", $in_silico_digestion.fasta.element_identifier)}.$gxy2omsext($in_silico_digestion.fasta.ext)' &&
+  cp '$in_silico_digestion.fasta' 'in_silico_digestion.fasta/${re.sub("[^\w\-_]", "_", $in_silico_digestion.fasta.element_identifier)}.$gxy2omsext($in_silico_digestion.fasta.ext)' &&
 #end if
 
 ## Main program call
@@ -79,30 +78,30 @@
     <configfile name="hardcoded_json"><![CDATA[{"log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
   </configfiles>
   <inputs>
-    <param argument="-in" type="data" format="consensusxml,idxml" optional="false" label="input file" help=" select consensusxml,idxml data sets(s)"/>
+    <param argument="-in" type="data" format="consensusxml,idxml" label="input file" help=" select consensusxml,idxml data sets(s)"/>
     <param argument="-var_mods" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Keep only peptide hits with variable modifications (as defined in the 'SearchParameters' section of the input file)" help=""/>
     <param argument="-remove_shared_peptides" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Only peptides matching exactly one protein are kept" help="Remember that isoforms count as different proteins!"/>
     <param argument="-keep_unreferenced_protein_hits" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Proteins not referenced by a peptide are retained in the IDs" help=""/>
     <param argument="-remove_decoys" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Remove proteins according to the information in the user parameters" help="Usually used in combination with 'delete_unreferenced_peptide_hits'"/>
     <param argument="-delete_unreferenced_peptide_hits" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Peptides not referenced by any protein are deleted in the IDs" help="Usually used in combination with 'score:prot' or 'thresh:prot'"/>
     <section name="precursor" title="Filtering by precursor attributes (RT, m/z, charge, length)" help="" expanded="false">
-      <param name="rt" argument="-precursor:rt" type="text" optional="true" value=":" label="Retention time range to extract" help="">
+      <param name="rt" argument="-precursor:rt" type="text" value=":" label="Retention time range to extract" help="">
         <expand macro="list_string_san" name="rt"/>
       </param>
-      <param name="mz" argument="-precursor:mz" type="text" optional="true" value=":" label="Mass-to-charge range to extract" help="">
+      <param name="mz" argument="-precursor:mz" type="text" value=":" label="Mass-to-charge range to extract" help="">
         <expand macro="list_string_san" name="mz"/>
       </param>
-      <param name="length" argument="-precursor:length" type="text" optional="true" value=":" label="Keep only peptide hits with a sequence length in this range" help="">
+      <param name="length" argument="-precursor:length" type="text" value=":" label="Keep only peptide hits with a sequence length in this range" help="">
         <expand macro="list_string_san" name="length"/>
       </param>
-      <param name="charge" argument="-precursor:charge" type="text" optional="true" value=":" label="Keep only peptide hits with charge states in this range" help="">
+      <param name="charge" argument="-precursor:charge" type="text" value=":" label="Keep only peptide hits with charge states in this range" help="">
         <expand macro="list_string_san" name="charge"/>
       </param>
     </section>
     <section name="score" title="Filtering by peptide/protein score" help="" expanded="false">
-      <param name="pep" argument="-score:pep" type="float" optional="true" value="0.0" label="The score which should be reached by a peptide hit to be kept" help=""/>
-      <param name="prot" argument="-score:prot" type="float" optional="true" value="0.0" label="The score which should be reached by a protein hit to be kept" help="All proteins are filtered based on their singleton scores irrespective of grouping. Use in combination with 'delete_unreferenced_peptide_hits' to remove affected peptides"/>
-      <param name="protgroup" argument="-score:protgroup" type="float" optional="true" value="0.0" label="The score which should be reached by a protein group to be kept" help="Performs group level score filtering (including groups of single proteins). Use in combination with 'delete_unreferenced_peptide_hits' to remove affected peptides"/>
+      <param name="pep" argument="-score:pep" type="float" value="0.0" label="The score which should be reached by a peptide hit to be kept" help=""/>
+      <param name="prot" argument="-score:prot" type="float" value="0.0" label="The score which should be reached by a protein hit to be kept" help="All proteins are filtered based on their singleton scores irrespective of grouping. Use in combination with 'delete_unreferenced_peptide_hits' to remove affected peptides"/>
+      <param name="protgroup" argument="-score:protgroup" type="float" value="0.0" label="The score which should be reached by a protein group to be kept" help="Performs group level score filtering (including groups of single proteins). Use in combination with 'delete_unreferenced_peptide_hits' to remove affected peptides"/>
     </section>
     <section name="whitelist" title="Filtering by whitelisting (only peptides/proteins from a given set can pass)" help="" expanded="false">
       <param name="proteins" argument="-whitelist:proteins" type="data" format="fasta" optional="true" label="Filename of a FASTA file containing protein sequences" help="All peptides that are not referencing a protein in this file are removed.. All proteins whose accessions are not present in this file are removed select fasta data sets(s)"/>
@@ -112,7 +111,7 @@
       </param>
       <param name="peptides" argument="-whitelist:peptides" type="data" format="idxml" optional="true" label="Only peptides with the same sequence and modification assignment as any peptide in this file are kept" help="Use with 'whitelist:ignore_modifications' to only compare by sequence..  select idxml data sets(s)"/>
       <param name="ignore_modifications" argument="-whitelist:ignore_modifications" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Compare whitelisted peptides by sequence only" help=""/>
-      <param name="modifications" argument="-whitelist:modifications" multiple="true" type="select" optional="true" label="Keep only peptides with sequences that contain (any of) the selected modification(s)" help="">
+      <param name="modifications" argument="-whitelist:modifications" type="select" multiple="true" optional="true" label="Keep only peptides with sequences that contain (any of) the selected modification(s)" help="">
         <option value="15N-oxobutanoic (N-term C)">15N-oxobutanoic (N-term C)</option>
         <option value="15N-oxobutanoic (Protein N-term S)">15N-oxobutanoic (Protein N-term S)</option>
         <option value="15N-oxobutanoic (Protein N-term T)">15N-oxobutanoic (Protein N-term T)</option>
@@ -122,6 +121,10 @@
         <option value="2-succinyl (C)">2-succinyl (C)</option>
         <option value="2HPG (R)">2HPG (R)</option>
         <option value="3-deoxyglucosone (R)">3-deoxyglucosone (R)</option>
+        <option value="3-hydroxybenzyl-phosphate (K)">3-hydroxybenzyl-phosphate (K)</option>
+        <option value="3-hydroxybenzyl-phosphate (S)">3-hydroxybenzyl-phosphate (S)</option>
+        <option value="3-hydroxybenzyl-phosphate (T)">3-hydroxybenzyl-phosphate (T)</option>
+        <option value="3-hydroxybenzyl-phosphate (Y)">3-hydroxybenzyl-phosphate (Y)</option>
         <option value="3-phosphoglyceryl (K)">3-phosphoglyceryl (K)</option>
         <option value="3sulfo (N-term)">3sulfo (N-term)</option>
         <option value="4-ONE (C)">4-ONE (C)</option>
@@ -211,6 +214,7 @@
         <option value="AMTzHexNAc2 (N)">AMTzHexNAc2 (N)</option>
         <option value="AMTzHexNAc2 (S)">AMTzHexNAc2 (S)</option>
         <option value="AMTzHexNAc2 (T)">AMTzHexNAc2 (T)</option>
+        <option value="Andro-H2O (C)">Andro-H2O (C)</option>
         <option value="Archaeol (C)">Archaeol (C)</option>
         <option value="Arg (N-term)">Arg (N-term)</option>
         <option value="Arg-&gt;Ala (R)">Arg-&gt;Ala (R)</option>
@@ -314,6 +318,7 @@
         <option value="Biotin-phenacyl (H)">Biotin-phenacyl (H)</option>
         <option value="Biotin-phenacyl (S)">Biotin-phenacyl (S)</option>
         <option value="Biotin-tyramide (Y)">Biotin-tyramide (Y)</option>
+        <option value="Biotin:Aha-DADPS (M)">Biotin:Aha-DADPS (M)</option>
         <option value="Biotin:Cayman-10013 (C)">Biotin:Cayman-10013 (C)</option>
         <option value="Biotin:Cayman-10141 (C)">Biotin:Cayman-10141 (C)</option>
         <option value="Biotin:Invitrogen-M1602 (C)">Biotin:Invitrogen-M1602 (C)</option>
@@ -346,7 +351,6 @@
         <option value="BITC (N-term)">BITC (N-term)</option>
         <option value="BMP-piperidinol (C)">BMP-piperidinol (C)</option>
         <option value="BMP-piperidinol (M)">BMP-piperidinol (M)</option>
-        <option value="Bodipy (C)">Bodipy (C)</option>
         <option value="Brij35 (N-term)">Brij35 (N-term)</option>
         <option value="Brij58 (N-term)">Brij58 (N-term)</option>
         <option value="Bromo (F)">Bromo (F)</option>
@@ -778,9 +782,9 @@
         <option value="Dehydrated (T)">Dehydrated (T)</option>
         <option value="Dehydrated (Y)">Dehydrated (Y)</option>
         <option value="Dehydro (C)">Dehydro (C)</option>
+        <option value="Delta:H(-1)N(-1)18O(1) (N)">Delta:H(-1)N(-1)18O(1) (N)</option>
         <option value="Delta:H(-4)O(2) (W)">Delta:H(-4)O(2) (W)</option>
         <option value="Delta:H(-4)O(3) (W)">Delta:H(-4)O(3) (W)</option>
-        <option value="Delta:H(1)N(-1)18O(1) (N)">Delta:H(1)N(-1)18O(1) (N)</option>
         <option value="Delta:H(10)C(8)O(1) (K)">Delta:H(10)C(8)O(1) (K)</option>
         <option value="Delta:H(2)C(2) (H)">Delta:H(2)C(2) (H)</option>
         <option value="Delta:H(2)C(2) (K)">Delta:H(2)C(2) (K)</option>
@@ -790,7 +794,6 @@
         <option value="Delta:H(2)C(3)O(1) (K)">Delta:H(2)C(3)O(1) (K)</option>
         <option value="Delta:H(2)C(3)O(1) (R)">Delta:H(2)C(3)O(1) (R)</option>
         <option value="Delta:H(2)C(5) (K)">Delta:H(2)C(5) (K)</option>
-        <option value="Delta:H(3)C(3)O(2) (K)">Delta:H(3)C(3)O(2) (K)</option>
         <option value="Delta:H(4)C(2) (H)">Delta:H(4)C(2) (H)</option>
         <option value="Delta:H(4)C(2) (K)">Delta:H(4)C(2) (K)</option>
         <option value="Delta:H(4)C(2) (N-term)">Delta:H(4)C(2) (N-term)</option>
@@ -802,6 +805,7 @@
         <option value="Delta:H(4)C(3)O(1) (H)">Delta:H(4)C(3)O(1) (H)</option>
         <option value="Delta:H(4)C(3)O(1) (K)">Delta:H(4)C(3)O(1) (K)</option>
         <option value="Delta:H(4)C(3)O(1) (R)">Delta:H(4)C(3)O(1) (R)</option>
+        <option value="Delta:H(4)C(3)O(2) (K)">Delta:H(4)C(3)O(2) (K)</option>
         <option value="Delta:H(4)C(5)O(1) (R)">Delta:H(4)C(5)O(1) (R)</option>
         <option value="Delta:H(4)C(6) (K)">Delta:H(4)C(6) (K)</option>
         <option value="Delta:H(5)C(2) (P)">Delta:H(5)C(2) (P)</option>
@@ -1374,7 +1378,6 @@
         <option value="Ethanolyl (C)">Ethanolyl (C)</option>
         <option value="Ethanolyl (K)">Ethanolyl (K)</option>
         <option value="Ethanolyl (R)">Ethanolyl (R)</option>
-        <option value="Ethoxyformyl (H)">Ethoxyformyl (H)</option>
         <option value="Ethyl (C-term)">Ethyl (C-term)</option>
         <option value="Ethyl (D)">Ethyl (D)</option>
         <option value="Ethyl (E)">Ethyl (E)</option>
@@ -1468,6 +1471,7 @@
         <option value="Gln-&gt;Xle (Q)">Gln-&gt;Xle (Q)</option>
         <option value="Glu (E)">Glu (E)</option>
         <option value="Glu (Protein C-term)">Glu (Protein C-term)</option>
+        <option value="Glu+O(2) (H)">Glu+O(2) (H)</option>
         <option value="Glu-&gt;Ala (E)">Glu-&gt;Ala (E)</option>
         <option value="Glu-&gt;Arg (E)">Glu-&gt;Arg (E)</option>
         <option value="Glu-&gt;Asn (E)">Glu-&gt;Asn (E)</option>
@@ -1482,7 +1486,6 @@
         <option value="Glu-&gt;Pro (E)">Glu-&gt;Pro (E)</option>
         <option value="Glu-&gt;pyro-Glu (N-term E)">Glu-&gt;pyro-Glu (N-term E)</option>
         <option value="Glu-&gt;pyro-Glu+Methyl (N-term E)">Glu-&gt;pyro-Glu+Methyl (N-term E)</option>
-        <option value="Glu-&gt;pyro-Glu+Methyl:2H(2)13C (N-term E)">Glu-&gt;pyro-Glu+Methyl:2H(2)13C (N-term E)</option>
         <option value="Glu-&gt;pyro-Glu+Methyl:2H(2)13C(1) (N-term E)">Glu-&gt;pyro-Glu+Methyl:2H(2)13C(1) (N-term E)</option>
         <option value="Glu-&gt;Ser (E)">Glu-&gt;Ser (E)</option>
         <option value="Glu-&gt;Thr (E)">Glu-&gt;Thr (E)</option>
@@ -1506,6 +1509,7 @@
         <option value="Gly (K)">Gly (K)</option>
         <option value="Gly (S)">Gly (S)</option>
         <option value="Gly (T)">Gly (T)</option>
+        <option value="Gly+O(2) (H)">Gly+O(2) (H)</option>
         <option value="Gly-&gt;Ala (G)">Gly-&gt;Ala (G)</option>
         <option value="Gly-&gt;Arg (G)">Gly-&gt;Arg (G)</option>
         <option value="Gly-&gt;Asn (G)">Gly-&gt;Asn (G)</option>
@@ -1896,6 +1900,7 @@
         <option value="Hex(6)HexNAc(4)Me(3) (N)">Hex(6)HexNAc(4)Me(3) (N)</option>
         <option value="Hex(6)HexNAc(4)Me(3)Pent(1) (N)">Hex(6)HexNAc(4)Me(3)Pent(1) (N)</option>
         <option value="Hex(6)HexNAc(5) (N)">Hex(6)HexNAc(5) (N)</option>
+        <option value="Hex(6)HexNAc(5)NeuAc(3) (N)">Hex(6)HexNAc(5)NeuAc(3) (N)</option>
         <option value="Hex(6)Phos(1) (S)">Hex(6)Phos(1) (S)</option>
         <option value="Hex(6)Phos(1) (T)">Hex(6)Phos(1) (T)</option>
         <option value="Hex(6)Phos(3) (S)">Hex(6)Phos(3) (S)</option>
@@ -1907,6 +1912,9 @@
         <option value="Hex(7)HexNAc(3) (N)">Hex(7)HexNAc(3) (N)</option>
         <option value="Hex(7)HexNAc(3)Phos(1) (N)">Hex(7)HexNAc(3)Phos(1) (N)</option>
         <option value="Hex(7)HexNAc(4) (N)">Hex(7)HexNAc(4) (N)</option>
+        <option value="Hex(7)HexNAc(6) (N)">Hex(7)HexNAc(6) (N)</option>
+        <option value="Hex(7)HexNAc(6) (S)">Hex(7)HexNAc(6) (S)</option>
+        <option value="Hex(7)HexNAc(6) (T)">Hex(7)HexNAc(6) (T)</option>
         <option value="Hex(7)Phos(3) (S)">Hex(7)Phos(3) (S)</option>
         <option value="Hex(7)Phos(3) (T)">Hex(7)Phos(3) (T)</option>
         <option value="Hex(8)HexNAc(1) (N)">Hex(8)HexNAc(1) (N)</option>
@@ -1962,6 +1970,7 @@
         <option value="HexNAc(4) (T)">HexNAc(4) (T)</option>
         <option value="HexNAc(5) (S)">HexNAc(5) (S)</option>
         <option value="HexNAc(5) (T)">HexNAc(5) (T)</option>
+        <option value="His+O(2) (H)">His+O(2) (H)</option>
         <option value="His-&gt;Ala (H)">His-&gt;Ala (H)</option>
         <option value="His-&gt;Arg (H)">His-&gt;Arg (H)</option>
         <option value="His-&gt;Asn (H)">His-&gt;Asn (H)</option>
@@ -2099,11 +2108,14 @@
         <option value="iTRAQ8plex:13C(6)15N(2) (K)">iTRAQ8plex:13C(6)15N(2) (K)</option>
         <option value="iTRAQ8plex:13C(6)15N(2) (N-term)">iTRAQ8plex:13C(6)15N(2) (N-term)</option>
         <option value="iTRAQ8plex:13C(6)15N(2) (Y)">iTRAQ8plex:13C(6)15N(2) (Y)</option>
+        <option value="Kdo (S)">Kdo (S)</option>
+        <option value="Kdo (T)">Kdo (T)</option>
         <option value="Label:13C(1)2H(3) (M)">Label:13C(1)2H(3) (M)</option>
         <option value="Label:13C(1)2H(3)+Oxidation (M)">Label:13C(1)2H(3)+Oxidation (M)</option>
         <option value="Label:13C(2)15N(2) (K)">Label:13C(2)15N(2) (K)</option>
         <option value="Label:13C(3) (A)">Label:13C(3) (A)</option>
         <option value="Label:13C(3)15N(1) (A)">Label:13C(3)15N(1) (A)</option>
+        <option value="Label:13C(3)15N(1) (S)">Label:13C(3)15N(1) (S)</option>
         <option value="Label:13C(4) (M)">Label:13C(4) (M)</option>
         <option value="Label:13C(4)+Oxidation (M)">Label:13C(4)+Oxidation (M)</option>
         <option value="Label:13C(4)15N(1) (D)">Label:13C(4)15N(1) (D)</option>
@@ -2188,13 +2200,16 @@
         <option value="LG-lactam-K (K)">LG-lactam-K (K)</option>
         <option value="LG-lactam-K (Protein N-term)">LG-lactam-K (Protein N-term)</option>
         <option value="LG-lactam-R (R)">LG-lactam-R (R)</option>
+        <option value="LG-pyrrole (C)">LG-pyrrole (C)</option>
         <option value="LG-pyrrole (K)">LG-pyrrole (K)</option>
         <option value="LG-pyrrole (N-term)">LG-pyrrole (N-term)</option>
         <option value="Lipoyl (K)">Lipoyl (K)</option>
         <option value="LRGG (K)">LRGG (K)</option>
         <option value="LRGG+dimethyl (K)">LRGG+dimethyl (K)</option>
         <option value="LRGG+methyl (K)">LRGG+methyl (K)</option>
+        <option value="LTX+Lophotoxin (Y)">LTX+Lophotoxin (Y)</option>
         <option value="Lys (N-term)">Lys (N-term)</option>
+        <option value="Lys+O(2) (H)">Lys+O(2) (H)</option>
         <option value="Lys-&gt;Ala (K)">Lys-&gt;Ala (K)</option>
         <option value="Lys-&gt;Allysine (K)">Lys-&gt;Allysine (K)</option>
         <option value="Lys-&gt;AminoadipicAcid (K)">Lys-&gt;AminoadipicAcid (K)</option>
@@ -2229,6 +2244,7 @@
         <option value="Malonyl (C)">Malonyl (C)</option>
         <option value="Malonyl (K)">Malonyl (K)</option>
         <option value="Malonyl (S)">Malonyl (S)</option>
+        <option value="MBS+peptide (C)">MBS+peptide (C)</option>
         <option value="MDCC (C)">MDCC (C)</option>
         <option value="MeMePhosphorothioate (S)">MeMePhosphorothioate (S)</option>
         <option value="Menadione (C)">Menadione (C)</option>
@@ -2240,6 +2256,7 @@
         <option value="MesitylOxide (H)">MesitylOxide (H)</option>
         <option value="MesitylOxide (K)">MesitylOxide (K)</option>
         <option value="MesitylOxide (Protein N-term)">MesitylOxide (Protein N-term)</option>
+        <option value="Met+O(2) (H)">Met+O(2) (H)</option>
         <option value="Met-&gt;Aha (M)">Met-&gt;Aha (M)</option>
         <option value="Met-&gt;Ala (M)">Met-&gt;Ala (M)</option>
         <option value="Met-&gt;Arg (M)">Met-&gt;Arg (M)</option>
@@ -2423,7 +2440,6 @@
         <option value="Nmethylmaleimide+water (C)">Nmethylmaleimide+water (C)</option>
         <option value="NO_SMX_SEMD (C)">NO_SMX_SEMD (C)</option>
         <option value="NO_SMX_SIMD (C)">NO_SMX_SIMD (C)</option>
-        <option value="NO_SMX_SMCT (C)">NO_SMX_SMCT (C)</option>
         <option value="NP40 (N-term)">NP40 (N-term)</option>
         <option value="NQIGG (K)">NQIGG (K)</option>
         <option value="O-Dimethylphosphate (S)">O-Dimethylphosphate (S)</option>
@@ -2511,6 +2527,10 @@
         <option value="Phe-&gt;Tyr (F)">Phe-&gt;Tyr (F)</option>
         <option value="Phe-&gt;Val (F)">Phe-&gt;Val (F)</option>
         <option value="Phe-&gt;Xle (F)">Phe-&gt;Xle (F)</option>
+        <option value="phenyl-phosphate (K)">phenyl-phosphate (K)</option>
+        <option value="phenyl-phosphate (S)">phenyl-phosphate (S)</option>
+        <option value="phenyl-phosphate (T)">phenyl-phosphate (T)</option>
+        <option value="phenyl-phosphate (Y)">phenyl-phosphate (Y)</option>
         <option value="Phenylisocyanate (N-term)">Phenylisocyanate (N-term)</option>
         <option value="Phenylisocyanate:2H(5) (N-term)">Phenylisocyanate:2H(5) (N-term)</option>
         <option value="phenylsulfonylethyl (C)">phenylsulfonylethyl (C)</option>
@@ -2525,6 +2545,7 @@
         <option value="Phospho (Y)">Phospho (Y)</option>
         <option value="Phosphoadenosine (H)">Phosphoadenosine (H)</option>
         <option value="Phosphoadenosine (K)">Phosphoadenosine (K)</option>
+        <option value="Phosphoadenosine (S)">Phosphoadenosine (S)</option>
         <option value="Phosphoadenosine (T)">Phosphoadenosine (T)</option>
         <option value="Phosphoadenosine (Y)">Phosphoadenosine (Y)</option>
         <option value="PhosphoCytidine (S)">PhosphoCytidine (S)</option>
@@ -2556,6 +2577,7 @@
         <option value="Phytochromobilin (C)">Phytochromobilin (C)</option>
         <option value="Piperidine (K)">Piperidine (K)</option>
         <option value="Piperidine (N-term)">Piperidine (N-term)</option>
+        <option value="Pro+O(2) (H)">Pro+O(2) (H)</option>
         <option value="Pro-&gt;Ala (P)">Pro-&gt;Ala (P)</option>
         <option value="Pro-&gt;Arg (P)">Pro-&gt;Arg (P)</option>
         <option value="Pro-&gt;Asn (P)">Pro-&gt;Asn (P)</option>
@@ -2633,18 +2655,30 @@
         <option value="QTGG (K)">QTGG (K)</option>
         <option value="Quinone (W)">Quinone (W)</option>
         <option value="Quinone (Y)">Quinone (Y)</option>
+        <option value="RBS-ID_Uridine (A)">RBS-ID_Uridine (A)</option>
+        <option value="RBS-ID_Uridine (C)">RBS-ID_Uridine (C)</option>
+        <option value="RBS-ID_Uridine (D)">RBS-ID_Uridine (D)</option>
+        <option value="RBS-ID_Uridine (E)">RBS-ID_Uridine (E)</option>
+        <option value="RBS-ID_Uridine (F)">RBS-ID_Uridine (F)</option>
+        <option value="RBS-ID_Uridine (G)">RBS-ID_Uridine (G)</option>
+        <option value="RBS-ID_Uridine (H)">RBS-ID_Uridine (H)</option>
+        <option value="RBS-ID_Uridine (I)">RBS-ID_Uridine (I)</option>
+        <option value="RBS-ID_Uridine (K)">RBS-ID_Uridine (K)</option>
+        <option value="RBS-ID_Uridine (L)">RBS-ID_Uridine (L)</option>
+        <option value="RBS-ID_Uridine (M)">RBS-ID_Uridine (M)</option>
+        <option value="RBS-ID_Uridine (N)">RBS-ID_Uridine (N)</option>
+        <option value="RBS-ID_Uridine (P)">RBS-ID_Uridine (P)</option>
+        <option value="RBS-ID_Uridine (Q)">RBS-ID_Uridine (Q)</option>
+        <option value="RBS-ID_Uridine (R)">RBS-ID_Uridine (R)</option>
+        <option value="RBS-ID_Uridine (S)">RBS-ID_Uridine (S)</option>
+        <option value="RBS-ID_Uridine (T)">RBS-ID_Uridine (T)</option>
+        <option value="RBS-ID_Uridine (V)">RBS-ID_Uridine (V)</option>
+        <option value="RBS-ID_Uridine (W)">RBS-ID_Uridine (W)</option>
+        <option value="RBS-ID_Uridine (Y)">RBS-ID_Uridine (Y)</option>
         <option value="Retinylidene (K)">Retinylidene (K)</option>
         <option value="RNPXL (N-term K)">RNPXL (N-term K)</option>
         <option value="RNPXL (N-term R)">RNPXL (N-term R)</option>
         <option value="RNPXlink1 (C)">RNPXlink1 (C)</option>
-        <option value="RNPXlink2 (F)">RNPXlink2 (F)</option>
-        <option value="RNPXlink2 (K)">RNPXlink2 (K)</option>
-        <option value="RNPXlink2 (L)">RNPXlink2 (L)</option>
-        <option value="RNPXlink3 (C)">RNPXlink3 (C)</option>
-        <option value="RNPXlink3 (F)">RNPXlink3 (F)</option>
-        <option value="RNPXlink4 (C)">RNPXlink4 (C)</option>
-        <option value="RNPXlink5 (F)">RNPXlink5 (F)</option>
-        <option value="RNPXlink5 (Y)">RNPXlink5 (Y)</option>
         <option value="s-GlcNAc (S)">s-GlcNAc (S)</option>
         <option value="s-GlcNAc (T)">s-GlcNAc (T)</option>
         <option value="Saligenin (H)">Saligenin (H)</option>
@@ -2672,6 +2706,9 @@
         <option value="shTMT (K)">shTMT (K)</option>
         <option value="shTMT (N-term)">shTMT (N-term)</option>
         <option value="shTMT (Protein N-term)">shTMT (Protein N-term)</option>
+        <option value="shTMTpro (K)">shTMTpro (K)</option>
+        <option value="shTMTpro (N-term)">shTMTpro (N-term)</option>
+        <option value="shTMTpro (Protein N-term)">shTMTpro (Protein N-term)</option>
         <option value="SMA (K)">SMA (K)</option>
         <option value="SMA (N-term)">SMA (N-term)</option>
         <option value="spermidine (Q)">spermidine (Q)</option>
@@ -2847,7 +2884,6 @@
         <option value="Tyr-&gt;Trp (Y)">Tyr-&gt;Trp (Y)</option>
         <option value="Tyr-&gt;Val (Y)">Tyr-&gt;Val (Y)</option>
         <option value="Tyr-&gt;Xle (Y)">Tyr-&gt;Xle (Y)</option>
-        <option value="Ub-amide (C)">Ub-amide (C)</option>
         <option value="Ub-Br2 (C)">Ub-Br2 (C)</option>
         <option value="Ub-fluorescein (C)">Ub-fluorescein (C)</option>
         <option value="Ub-VME (C)">Ub-VME (C)</option>
@@ -3051,7 +3087,7 @@
       </param>
       <param name="peptides" argument="-blacklist:peptides" type="data" format="idxml" optional="true" label="Peptides with the same sequence and modification assignment as any peptide in this file are filtered out" help="Use with 'blacklist:ignore_modifications' to only compare by sequence..  select idxml data sets(s)"/>
       <param name="ignore_modifications" argument="-blacklist:ignore_modifications" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Compare blacklisted peptides by sequence only" help=""/>
-      <param name="modifications" argument="-blacklist:modifications" multiple="true" type="select" optional="true" label="Remove all peptides with sequences that contain (any of) the selected modification(s)" help="">
+      <param name="modifications" argument="-blacklist:modifications" type="select" multiple="true" optional="true" label="Remove all peptides with sequences that contain (any of) the selected modification(s)" help="">
         <option value="15N-oxobutanoic (N-term C)">15N-oxobutanoic (N-term C)</option>
         <option value="15N-oxobutanoic (Protein N-term S)">15N-oxobutanoic (Protein N-term S)</option>
         <option value="15N-oxobutanoic (Protein N-term T)">15N-oxobutanoic (Protein N-term T)</option>
@@ -3061,6 +3097,10 @@
         <option value="2-succinyl (C)">2-succinyl (C)</option>
         <option value="2HPG (R)">2HPG (R)</option>
         <option value="3-deoxyglucosone (R)">3-deoxyglucosone (R)</option>
+        <option value="3-hydroxybenzyl-phosphate (K)">3-hydroxybenzyl-phosphate (K)</option>
+        <option value="3-hydroxybenzyl-phosphate (S)">3-hydroxybenzyl-phosphate (S)</option>
+        <option value="3-hydroxybenzyl-phosphate (T)">3-hydroxybenzyl-phosphate (T)</option>
+        <option value="3-hydroxybenzyl-phosphate (Y)">3-hydroxybenzyl-phosphate (Y)</option>
         <option value="3-phosphoglyceryl (K)">3-phosphoglyceryl (K)</option>
         <option value="3sulfo (N-term)">3sulfo (N-term)</option>
         <option value="4-ONE (C)">4-ONE (C)</option>
@@ -3150,6 +3190,7 @@
         <option value="AMTzHexNAc2 (N)">AMTzHexNAc2 (N)</option>
         <option value="AMTzHexNAc2 (S)">AMTzHexNAc2 (S)</option>
         <option value="AMTzHexNAc2 (T)">AMTzHexNAc2 (T)</option>
+        <option value="Andro-H2O (C)">Andro-H2O (C)</option>
         <option value="Archaeol (C)">Archaeol (C)</option>
         <option value="Arg (N-term)">Arg (N-term)</option>
         <option value="Arg-&gt;Ala (R)">Arg-&gt;Ala (R)</option>
@@ -3253,6 +3294,7 @@
         <option value="Biotin-phenacyl (H)">Biotin-phenacyl (H)</option>
         <option value="Biotin-phenacyl (S)">Biotin-phenacyl (S)</option>
         <option value="Biotin-tyramide (Y)">Biotin-tyramide (Y)</option>
+        <option value="Biotin:Aha-DADPS (M)">Biotin:Aha-DADPS (M)</option>
         <option value="Biotin:Cayman-10013 (C)">Biotin:Cayman-10013 (C)</option>
         <option value="Biotin:Cayman-10141 (C)">Biotin:Cayman-10141 (C)</option>
         <option value="Biotin:Invitrogen-M1602 (C)">Biotin:Invitrogen-M1602 (C)</option>
@@ -3285,7 +3327,6 @@
         <option value="BITC (N-term)">BITC (N-term)</option>
         <option value="BMP-piperidinol (C)">BMP-piperidinol (C)</option>
         <option value="BMP-piperidinol (M)">BMP-piperidinol (M)</option>
-        <option value="Bodipy (C)">Bodipy (C)</option>
         <option value="Brij35 (N-term)">Brij35 (N-term)</option>
         <option value="Brij58 (N-term)">Brij58 (N-term)</option>
         <option value="Bromo (F)">Bromo (F)</option>
@@ -3717,9 +3758,9 @@
         <option value="Dehydrated (T)">Dehydrated (T)</option>
         <option value="Dehydrated (Y)">Dehydrated (Y)</option>
         <option value="Dehydro (C)">Dehydro (C)</option>
+        <option value="Delta:H(-1)N(-1)18O(1) (N)">Delta:H(-1)N(-1)18O(1) (N)</option>
         <option value="Delta:H(-4)O(2) (W)">Delta:H(-4)O(2) (W)</option>
         <option value="Delta:H(-4)O(3) (W)">Delta:H(-4)O(3) (W)</option>
-        <option value="Delta:H(1)N(-1)18O(1) (N)">Delta:H(1)N(-1)18O(1) (N)</option>
         <option value="Delta:H(10)C(8)O(1) (K)">Delta:H(10)C(8)O(1) (K)</option>
         <option value="Delta:H(2)C(2) (H)">Delta:H(2)C(2) (H)</option>
         <option value="Delta:H(2)C(2) (K)">Delta:H(2)C(2) (K)</option>
@@ -3729,7 +3770,6 @@
         <option value="Delta:H(2)C(3)O(1) (K)">Delta:H(2)C(3)O(1) (K)</option>
         <option value="Delta:H(2)C(3)O(1) (R)">Delta:H(2)C(3)O(1) (R)</option>
         <option value="Delta:H(2)C(5) (K)">Delta:H(2)C(5) (K)</option>
-        <option value="Delta:H(3)C(3)O(2) (K)">Delta:H(3)C(3)O(2) (K)</option>
         <option value="Delta:H(4)C(2) (H)">Delta:H(4)C(2) (H)</option>
         <option value="Delta:H(4)C(2) (K)">Delta:H(4)C(2) (K)</option>
         <option value="Delta:H(4)C(2) (N-term)">Delta:H(4)C(2) (N-term)</option>
@@ -3741,6 +3781,7 @@
         <option value="Delta:H(4)C(3)O(1) (H)">Delta:H(4)C(3)O(1) (H)</option>
         <option value="Delta:H(4)C(3)O(1) (K)">Delta:H(4)C(3)O(1) (K)</option>
         <option value="Delta:H(4)C(3)O(1) (R)">Delta:H(4)C(3)O(1) (R)</option>
+        <option value="Delta:H(4)C(3)O(2) (K)">Delta:H(4)C(3)O(2) (K)</option>
         <option value="Delta:H(4)C(5)O(1) (R)">Delta:H(4)C(5)O(1) (R)</option>
         <option value="Delta:H(4)C(6) (K)">Delta:H(4)C(6) (K)</option>
         <option value="Delta:H(5)C(2) (P)">Delta:H(5)C(2) (P)</option>
@@ -4313,7 +4354,6 @@
         <option value="Ethanolyl (C)">Ethanolyl (C)</option>
         <option value="Ethanolyl (K)">Ethanolyl (K)</option>
         <option value="Ethanolyl (R)">Ethanolyl (R)</option>
-        <option value="Ethoxyformyl (H)">Ethoxyformyl (H)</option>
         <option value="Ethyl (C-term)">Ethyl (C-term)</option>
         <option value="Ethyl (D)">Ethyl (D)</option>
         <option value="Ethyl (E)">Ethyl (E)</option>
@@ -4407,6 +4447,7 @@
         <option value="Gln-&gt;Xle (Q)">Gln-&gt;Xle (Q)</option>
         <option value="Glu (E)">Glu (E)</option>
         <option value="Glu (Protein C-term)">Glu (Protein C-term)</option>
+        <option value="Glu+O(2) (H)">Glu+O(2) (H)</option>
         <option value="Glu-&gt;Ala (E)">Glu-&gt;Ala (E)</option>
         <option value="Glu-&gt;Arg (E)">Glu-&gt;Arg (E)</option>
         <option value="Glu-&gt;Asn (E)">Glu-&gt;Asn (E)</option>
@@ -4421,7 +4462,6 @@
         <option value="Glu-&gt;Pro (E)">Glu-&gt;Pro (E)</option>
         <option value="Glu-&gt;pyro-Glu (N-term E)">Glu-&gt;pyro-Glu (N-term E)</option>
         <option value="Glu-&gt;pyro-Glu+Methyl (N-term E)">Glu-&gt;pyro-Glu+Methyl (N-term E)</option>
-        <option value="Glu-&gt;pyro-Glu+Methyl:2H(2)13C (N-term E)">Glu-&gt;pyro-Glu+Methyl:2H(2)13C (N-term E)</option>
         <option value="Glu-&gt;pyro-Glu+Methyl:2H(2)13C(1) (N-term E)">Glu-&gt;pyro-Glu+Methyl:2H(2)13C(1) (N-term E)</option>
         <option value="Glu-&gt;Ser (E)">Glu-&gt;Ser (E)</option>
         <option value="Glu-&gt;Thr (E)">Glu-&gt;Thr (E)</option>
@@ -4445,6 +4485,7 @@
         <option value="Gly (K)">Gly (K)</option>
         <option value="Gly (S)">Gly (S)</option>
         <option value="Gly (T)">Gly (T)</option>
+        <option value="Gly+O(2) (H)">Gly+O(2) (H)</option>
         <option value="Gly-&gt;Ala (G)">Gly-&gt;Ala (G)</option>
         <option value="Gly-&gt;Arg (G)">Gly-&gt;Arg (G)</option>
         <option value="Gly-&gt;Asn (G)">Gly-&gt;Asn (G)</option>
@@ -4835,6 +4876,7 @@
         <option value="Hex(6)HexNAc(4)Me(3) (N)">Hex(6)HexNAc(4)Me(3) (N)</option>
         <option value="Hex(6)HexNAc(4)Me(3)Pent(1) (N)">Hex(6)HexNAc(4)Me(3)Pent(1) (N)</option>
         <option value="Hex(6)HexNAc(5) (N)">Hex(6)HexNAc(5) (N)</option>
+        <option value="Hex(6)HexNAc(5)NeuAc(3) (N)">Hex(6)HexNAc(5)NeuAc(3) (N)</option>
         <option value="Hex(6)Phos(1) (S)">Hex(6)Phos(1) (S)</option>
         <option value="Hex(6)Phos(1) (T)">Hex(6)Phos(1) (T)</option>
         <option value="Hex(6)Phos(3) (S)">Hex(6)Phos(3) (S)</option>
@@ -4846,6 +4888,9 @@
         <option value="Hex(7)HexNAc(3) (N)">Hex(7)HexNAc(3) (N)</option>
         <option value="Hex(7)HexNAc(3)Phos(1) (N)">Hex(7)HexNAc(3)Phos(1) (N)</option>
         <option value="Hex(7)HexNAc(4) (N)">Hex(7)HexNAc(4) (N)</option>
+        <option value="Hex(7)HexNAc(6) (N)">Hex(7)HexNAc(6) (N)</option>
+        <option value="Hex(7)HexNAc(6) (S)">Hex(7)HexNAc(6) (S)</option>
+        <option value="Hex(7)HexNAc(6) (T)">Hex(7)HexNAc(6) (T)</option>
         <option value="Hex(7)Phos(3) (S)">Hex(7)Phos(3) (S)</option>
         <option value="Hex(7)Phos(3) (T)">Hex(7)Phos(3) (T)</option>
         <option value="Hex(8)HexNAc(1) (N)">Hex(8)HexNAc(1) (N)</option>
@@ -4901,6 +4946,7 @@
         <option value="HexNAc(4) (T)">HexNAc(4) (T)</option>
         <option value="HexNAc(5) (S)">HexNAc(5) (S)</option>
         <option value="HexNAc(5) (T)">HexNAc(5) (T)</option>
+        <option value="His+O(2) (H)">His+O(2) (H)</option>
         <option value="His-&gt;Ala (H)">His-&gt;Ala (H)</option>
         <option value="His-&gt;Arg (H)">His-&gt;Arg (H)</option>
         <option value="His-&gt;Asn (H)">His-&gt;Asn (H)</option>
@@ -5038,11 +5084,14 @@
         <option value="iTRAQ8plex:13C(6)15N(2) (K)">iTRAQ8plex:13C(6)15N(2) (K)</option>
         <option value="iTRAQ8plex:13C(6)15N(2) (N-term)">iTRAQ8plex:13C(6)15N(2) (N-term)</option>
         <option value="iTRAQ8plex:13C(6)15N(2) (Y)">iTRAQ8plex:13C(6)15N(2) (Y)</option>
+        <option value="Kdo (S)">Kdo (S)</option>
+        <option value="Kdo (T)">Kdo (T)</option>
         <option value="Label:13C(1)2H(3) (M)">Label:13C(1)2H(3) (M)</option>
         <option value="Label:13C(1)2H(3)+Oxidation (M)">Label:13C(1)2H(3)+Oxidation (M)</option>
         <option value="Label:13C(2)15N(2) (K)">Label:13C(2)15N(2) (K)</option>
         <option value="Label:13C(3) (A)">Label:13C(3) (A)</option>
         <option value="Label:13C(3)15N(1) (A)">Label:13C(3)15N(1) (A)</option>
+        <option value="Label:13C(3)15N(1) (S)">Label:13C(3)15N(1) (S)</option>
         <option value="Label:13C(4) (M)">Label:13C(4) (M)</option>
         <option value="Label:13C(4)+Oxidation (M)">Label:13C(4)+Oxidation (M)</option>
         <option value="Label:13C(4)15N(1) (D)">Label:13C(4)15N(1) (D)</option>
@@ -5127,13 +5176,16 @@
         <option value="LG-lactam-K (K)">LG-lactam-K (K)</option>
         <option value="LG-lactam-K (Protein N-term)">LG-lactam-K (Protein N-term)</option>
         <option value="LG-lactam-R (R)">LG-lactam-R (R)</option>
+        <option value="LG-pyrrole (C)">LG-pyrrole (C)</option>
         <option value="LG-pyrrole (K)">LG-pyrrole (K)</option>
         <option value="LG-pyrrole (N-term)">LG-pyrrole (N-term)</option>
         <option value="Lipoyl (K)">Lipoyl (K)</option>
         <option value="LRGG (K)">LRGG (K)</option>
         <option value="LRGG+dimethyl (K)">LRGG+dimethyl (K)</option>
         <option value="LRGG+methyl (K)">LRGG+methyl (K)</option>
+        <option value="LTX+Lophotoxin (Y)">LTX+Lophotoxin (Y)</option>
         <option value="Lys (N-term)">Lys (N-term)</option>
+        <option value="Lys+O(2) (H)">Lys+O(2) (H)</option>
         <option value="Lys-&gt;Ala (K)">Lys-&gt;Ala (K)</option>
         <option value="Lys-&gt;Allysine (K)">Lys-&gt;Allysine (K)</option>
         <option value="Lys-&gt;AminoadipicAcid (K)">Lys-&gt;AminoadipicAcid (K)</option>
@@ -5168,6 +5220,7 @@
         <option value="Malonyl (C)">Malonyl (C)</option>
         <option value="Malonyl (K)">Malonyl (K)</option>
         <option value="Malonyl (S)">Malonyl (S)</option>
+        <option value="MBS+peptide (C)">MBS+peptide (C)</option>
         <option value="MDCC (C)">MDCC (C)</option>
         <option value="MeMePhosphorothioate (S)">MeMePhosphorothioate (S)</option>
         <option value="Menadione (C)">Menadione (C)</option>
@@ -5179,6 +5232,7 @@
         <option value="MesitylOxide (H)">MesitylOxide (H)</option>
         <option value="MesitylOxide (K)">MesitylOxide (K)</option>
         <option value="MesitylOxide (Protein N-term)">MesitylOxide (Protein N-term)</option>
+        <option value="Met+O(2) (H)">Met+O(2) (H)</option>
         <option value="Met-&gt;Aha (M)">Met-&gt;Aha (M)</option>
         <option value="Met-&gt;Ala (M)">Met-&gt;Ala (M)</option>
         <option value="Met-&gt;Arg (M)">Met-&gt;Arg (M)</option>
@@ -5362,7 +5416,6 @@
         <option value="Nmethylmaleimide+water (C)">Nmethylmaleimide+water (C)</option>
         <option value="NO_SMX_SEMD (C)">NO_SMX_SEMD (C)</option>
         <option value="NO_SMX_SIMD (C)">NO_SMX_SIMD (C)</option>
-        <option value="NO_SMX_SMCT (C)">NO_SMX_SMCT (C)</option>
         <option value="NP40 (N-term)">NP40 (N-term)</option>
         <option value="NQIGG (K)">NQIGG (K)</option>
         <option value="O-Dimethylphosphate (S)">O-Dimethylphosphate (S)</option>
@@ -5450,6 +5503,10 @@
         <option value="Phe-&gt;Tyr (F)">Phe-&gt;Tyr (F)</option>
         <option value="Phe-&gt;Val (F)">Phe-&gt;Val (F)</option>
         <option value="Phe-&gt;Xle (F)">Phe-&gt;Xle (F)</option>
+        <option value="phenyl-phosphate (K)">phenyl-phosphate (K)</option>
+        <option value="phenyl-phosphate (S)">phenyl-phosphate (S)</option>
+        <option value="phenyl-phosphate (T)">phenyl-phosphate (T)</option>
+        <option value="phenyl-phosphate (Y)">phenyl-phosphate (Y)</option>
         <option value="Phenylisocyanate (N-term)">Phenylisocyanate (N-term)</option>
         <option value="Phenylisocyanate:2H(5) (N-term)">Phenylisocyanate:2H(5) (N-term)</option>
         <option value="phenylsulfonylethyl (C)">phenylsulfonylethyl (C)</option>
@@ -5464,6 +5521,7 @@
         <option value="Phospho (Y)">Phospho (Y)</option>
         <option value="Phosphoadenosine (H)">Phosphoadenosine (H)</option>
         <option value="Phosphoadenosine (K)">Phosphoadenosine (K)</option>
+        <option value="Phosphoadenosine (S)">Phosphoadenosine (S)</option>
         <option value="Phosphoadenosine (T)">Phosphoadenosine (T)</option>
         <option value="Phosphoadenosine (Y)">Phosphoadenosine (Y)</option>
         <option value="PhosphoCytidine (S)">PhosphoCytidine (S)</option>
@@ -5495,6 +5553,7 @@
         <option value="Phytochromobilin (C)">Phytochromobilin (C)</option>
         <option value="Piperidine (K)">Piperidine (K)</option>
         <option value="Piperidine (N-term)">Piperidine (N-term)</option>
+        <option value="Pro+O(2) (H)">Pro+O(2) (H)</option>
         <option value="Pro-&gt;Ala (P)">Pro-&gt;Ala (P)</option>
         <option value="Pro-&gt;Arg (P)">Pro-&gt;Arg (P)</option>
         <option value="Pro-&gt;Asn (P)">Pro-&gt;Asn (P)</option>
@@ -5572,18 +5631,30 @@
         <option value="QTGG (K)">QTGG (K)</option>
         <option value="Quinone (W)">Quinone (W)</option>
         <option value="Quinone (Y)">Quinone (Y)</option>
+        <option value="RBS-ID_Uridine (A)">RBS-ID_Uridine (A)</option>
+        <option value="RBS-ID_Uridine (C)">RBS-ID_Uridine (C)</option>
+        <option value="RBS-ID_Uridine (D)">RBS-ID_Uridine (D)</option>
+        <option value="RBS-ID_Uridine (E)">RBS-ID_Uridine (E)</option>
+        <option value="RBS-ID_Uridine (F)">RBS-ID_Uridine (F)</option>
+        <option value="RBS-ID_Uridine (G)">RBS-ID_Uridine (G)</option>
+        <option value="RBS-ID_Uridine (H)">RBS-ID_Uridine (H)</option>
+        <option value="RBS-ID_Uridine (I)">RBS-ID_Uridine (I)</option>
+        <option value="RBS-ID_Uridine (K)">RBS-ID_Uridine (K)</option>
+        <option value="RBS-ID_Uridine (L)">RBS-ID_Uridine (L)</option>
+        <option value="RBS-ID_Uridine (M)">RBS-ID_Uridine (M)</option>
+        <option value="RBS-ID_Uridine (N)">RBS-ID_Uridine (N)</option>
+        <option value="RBS-ID_Uridine (P)">RBS-ID_Uridine (P)</option>
+        <option value="RBS-ID_Uridine (Q)">RBS-ID_Uridine (Q)</option>
+        <option value="RBS-ID_Uridine (R)">RBS-ID_Uridine (R)</option>
+        <option value="RBS-ID_Uridine (S)">RBS-ID_Uridine (S)</option>
+        <option value="RBS-ID_Uridine (T)">RBS-ID_Uridine (T)</option>
+        <option value="RBS-ID_Uridine (V)">RBS-ID_Uridine (V)</option>
+        <option value="RBS-ID_Uridine (W)">RBS-ID_Uridine (W)</option>
+        <option value="RBS-ID_Uridine (Y)">RBS-ID_Uridine (Y)</option>
         <option value="Retinylidene (K)">Retinylidene (K)</option>
         <option value="RNPXL (N-term K)">RNPXL (N-term K)</option>
         <option value="RNPXL (N-term R)">RNPXL (N-term R)</option>
         <option value="RNPXlink1 (C)">RNPXlink1 (C)</option>
-        <option value="RNPXlink2 (F)">RNPXlink2 (F)</option>
-        <option value="RNPXlink2 (K)">RNPXlink2 (K)</option>
-        <option value="RNPXlink2 (L)">RNPXlink2 (L)</option>
-        <option value="RNPXlink3 (C)">RNPXlink3 (C)</option>
-        <option value="RNPXlink3 (F)">RNPXlink3 (F)</option>
-        <option value="RNPXlink4 (C)">RNPXlink4 (C)</option>
-        <option value="RNPXlink5 (F)">RNPXlink5 (F)</option>
-        <option value="RNPXlink5 (Y)">RNPXlink5 (Y)</option>
         <option value="s-GlcNAc (S)">s-GlcNAc (S)</option>
         <option value="s-GlcNAc (T)">s-GlcNAc (T)</option>
         <option value="Saligenin (H)">Saligenin (H)</option>
@@ -5611,6 +5682,9 @@
         <option value="shTMT (K)">shTMT (K)</option>
         <option value="shTMT (N-term)">shTMT (N-term)</option>
         <option value="shTMT (Protein N-term)">shTMT (Protein N-term)</option>
+        <option value="shTMTpro (K)">shTMTpro (K)</option>
+        <option value="shTMTpro (N-term)">shTMTpro (N-term)</option>
+        <option value="shTMTpro (Protein N-term)">shTMTpro (Protein N-term)</option>
         <option value="SMA (K)">SMA (K)</option>
         <option value="SMA (N-term)">SMA (N-term)</option>
         <option value="spermidine (Q)">spermidine (Q)</option>
@@ -5786,7 +5860,6 @@
         <option value="Tyr-&gt;Trp (Y)">Tyr-&gt;Trp (Y)</option>
         <option value="Tyr-&gt;Val (Y)">Tyr-&gt;Val (Y)</option>
         <option value="Tyr-&gt;Xle (Y)">Tyr-&gt;Xle (Y)</option>
-        <option value="Ub-amide (C)">Ub-amide (C)</option>
         <option value="Ub-Br2 (C)">Ub-Br2 (C)</option>
         <option value="Ub-fluorescein (C)">Ub-fluorescein (C)</option>
         <option value="Ub-VME (C)">Ub-VME (C)</option>
@@ -5987,110 +6060,118 @@
     </section>
     <section name="in_silico_digestion" title="This filter option removes peptide hits which are not in the list of in silico peptides generated by the rules specified below" help="" expanded="false">
       <param name="fasta" argument="-in_silico_digestion:fasta" type="data" format="fasta" optional="true" label="fasta protein sequence database" help=" select fasta data sets(s)"/>
-      <param name="enzyme" argument="-in_silico_digestion:enzyme" type="select" optional="true" label="enzyme used for the digestion of the sample" help="">
-        <option value="Trypsin" selected="true">Trypsin</option>
-        <option value="cyanogen-bromide">cyanogen-bromide</option>
-        <option value="Clostripain/P">Clostripain/P</option>
-        <option value="elastase-trypsin-chymotrypsin">elastase-trypsin-chymotrypsin</option>
-        <option value="no cleavage">no cleavage</option>
-        <option value="unspecific cleavage">unspecific cleavage</option>
-        <option value="Arg-C/P">Arg-C/P</option>
-        <option value="Formic_acid">Formic_acid</option>
+      <param name="enzyme" argument="-in_silico_digestion:enzyme" type="select" label="enzyme used for the digestion of the sample" help="">
         <option value="Lys-C">Lys-C</option>
         <option value="Lys-N">Lys-N</option>
-        <option value="leukocyte elastase">leukocyte elastase</option>
-        <option value="proline endopeptidase">proline endopeptidase</option>
-        <option value="glutamyl endopeptidase">glutamyl endopeptidase</option>
-        <option value="Alpha-lytic protease">Alpha-lytic protease</option>
         <option value="Lys-C/P">Lys-C/P</option>
         <option value="PepsinA">PepsinA</option>
         <option value="TrypChymo">TrypChymo</option>
         <option value="Trypsin/P">Trypsin/P</option>
         <option value="V8-DE">V8-DE</option>
         <option value="V8-E">V8-E</option>
+        <option value="leukocyte elastase">leukocyte elastase</option>
+        <option value="Chymotrypsin">Chymotrypsin</option>
+        <option value="Chymotrypsin/P">Chymotrypsin/P</option>
+        <option value="CNBr">CNBr</option>
+        <option value="Formic_acid">Formic_acid</option>
+        <option value="Arg-C">Arg-C</option>
+        <option value="Arg-C/P">Arg-C/P</option>
+        <option value="Asp-N">Asp-N</option>
+        <option value="Asp-N/B">Asp-N/B</option>
         <option value="Asp-N_ambic">Asp-N_ambic</option>
-        <option value="Chymotrypsin">Chymotrypsin</option>
+        <option value="Trypsin" selected="true">Trypsin</option>
+        <option value="proline endopeptidase">proline endopeptidase</option>
+        <option value="glutamyl endopeptidase">glutamyl endopeptidase</option>
+        <option value="Alpha-lytic protease">Alpha-lytic protease</option>
         <option value="2-iodobenzoate">2-iodobenzoate</option>
         <option value="iodosobenzoate">iodosobenzoate</option>
         <option value="staphylococcal protease/D">staphylococcal protease/D</option>
         <option value="proline-endopeptidase/HKR">proline-endopeptidase/HKR</option>
         <option value="Glu-C+P">Glu-C+P</option>
         <option value="PepsinA + P">PepsinA + P</option>
-        <option value="Arg-C">Arg-C</option>
-        <option value="Chymotrypsin/P">Chymotrypsin/P</option>
-        <option value="CNBr">CNBr</option>
-        <option value="Asp-N">Asp-N</option>
-        <option value="Asp-N/B">Asp-N/B</option>
+        <option value="cyanogen-bromide">cyanogen-bromide</option>
+        <option value="Clostripain/P">Clostripain/P</option>
+        <option value="elastase-trypsin-chymotrypsin">elastase-trypsin-chymotrypsin</option>
+        <option value="no cleavage">no cleavage</option>
+        <option value="unspecific cleavage">unspecific cleavage</option>
         <expand macro="list_string_san" name="enzyme"/>
       </param>
-      <param name="specificity" argument="-in_silico_digestion:specificity" type="select" optional="true" label="Specificity of the filte" help="">
+      <param name="specificity" argument="-in_silico_digestion:specificity" type="select" label="Specificity of the filte" help="">
         <option value="none">none</option>
         <option value="semi">semi</option>
         <option value="full" selected="true">full</option>
         <expand macro="list_string_san" name="specificity"/>
       </param>
-      <param name="missed_cleavages" argument="-in_silico_digestion:missed_cleavages" type="integer" optional="true" min="-1" value="-1" label="range of allowed missed cleavages in the peptide sequences" help="By default missed cleavages are ignored"/>
+      <param name="missed_cleavages" argument="-in_silico_digestion:missed_cleavages" type="integer" min="-1" value="-1" label="range of allowed missed cleavages in the peptide sequences" help="By default missed cleavages are ignored"/>
       <param name="methionine_cleavage" argument="-in_silico_digestion:methionine_cleavage" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Allow methionine cleavage at the N-terminus of the protein" help=""/>
     </section>
     <section name="missed_cleavages" title="This filter option removes peptide hits which do not confirm with the allowed missed cleavages specified below" help="" expanded="false">
-      <param name="number_of_missed_cleavages" argument="-missed_cleavages:number_of_missed_cleavages" type="text" optional="true" value=":" label="range of allowed missed cleavages in the peptide sequences" help="For example: 0:1 -&gt; peptides with two or more missed cleavages will be removed,. 0:0 -&gt; peptides with any missed cleavages will be removed">
+      <param name="number_of_missed_cleavages" argument="-missed_cleavages:number_of_missed_cleavages" type="text" value=":" label="range of allowed missed cleavages in the peptide sequences" help="For example: 0:1 -&gt; peptides with two or more missed cleavages will be removed,. 0:0 -&gt; peptides with any missed cleavages will be removed">
         <expand macro="list_string_san" name="number_of_missed_cleavages"/>
       </param>
-      <param name="enzyme" argument="-missed_cleavages:enzyme" type="select" optional="true" label="enzyme used for the digestion of the sample" help="">
-        <option value="Trypsin" selected="true">Trypsin</option>
-        <option value="cyanogen-bromide">cyanogen-bromide</option>
-        <option value="Clostripain/P">Clostripain/P</option>
-        <option value="elastase-trypsin-chymotrypsin">elastase-trypsin-chymotrypsin</option>
-        <option value="no cleavage">no cleavage</option>
-        <option value="unspecific cleavage">unspecific cleavage</option>
-        <option value="Arg-C/P">Arg-C/P</option>
-        <option value="Formic_acid">Formic_acid</option>
+      <param name="enzyme" argument="-missed_cleavages:enzyme" type="select" label="enzyme used for the digestion of the sample" help="">
         <option value="Lys-C">Lys-C</option>
         <option value="Lys-N">Lys-N</option>
-        <option value="leukocyte elastase">leukocyte elastase</option>
-        <option value="proline endopeptidase">proline endopeptidase</option>
-        <option value="glutamyl endopeptidase">glutamyl endopeptidase</option>
-        <option value="Alpha-lytic protease">Alpha-lytic protease</option>
         <option value="Lys-C/P">Lys-C/P</option>
         <option value="PepsinA">PepsinA</option>
         <option value="TrypChymo">TrypChymo</option>
         <option value="Trypsin/P">Trypsin/P</option>
         <option value="V8-DE">V8-DE</option>
         <option value="V8-E">V8-E</option>
+        <option value="leukocyte elastase">leukocyte elastase</option>
+        <option value="Chymotrypsin">Chymotrypsin</option>
+        <option value="Chymotrypsin/P">Chymotrypsin/P</option>
+        <option value="CNBr">CNBr</option>
+        <option value="Formic_acid">Formic_acid</option>
+        <option value="Arg-C">Arg-C</option>
+        <option value="Arg-C/P">Arg-C/P</option>
+        <option value="Asp-N">Asp-N</option>
+        <option value="Asp-N/B">Asp-N/B</option>
         <option value="Asp-N_ambic">Asp-N_ambic</option>
-        <option value="Chymotrypsin">Chymotrypsin</option>
+        <option value="Trypsin" selected="true">Trypsin</option>
+        <option value="proline endopeptidase">proline endopeptidase</option>
+        <option value="glutamyl endopeptidase">glutamyl endopeptidase</option>
+        <option value="Alpha-lytic protease">Alpha-lytic protease</option>
         <option value="2-iodobenzoate">2-iodobenzoate</option>
         <option value="iodosobenzoate">iodosobenzoate</option>
         <option value="staphylococcal protease/D">staphylococcal protease/D</option>
         <option value="proline-endopeptidase/HKR">proline-endopeptidase/HKR</option>
         <option value="Glu-C+P">Glu-C+P</option>
         <option value="PepsinA + P">PepsinA + P</option>
-        <option value="Arg-C">Arg-C</option>
-        <option value="Chymotrypsin/P">Chymotrypsin/P</option>
-        <option value="CNBr">CNBr</option>
-        <option value="Asp-N">Asp-N</option>
-        <option value="Asp-N/B">Asp-N/B</option>
+        <option value="cyanogen-bromide">cyanogen-bromide</option>
+        <option value="Clostripain/P">Clostripain/P</option>
+        <option value="elastase-trypsin-chymotrypsin">elastase-trypsin-chymotrypsin</option>
+        <option value="no cleavage">no cleavage</option>
+        <option value="unspecific cleavage">unspecific cleavage</option>
         <expand macro="list_string_san" name="enzyme"/>
       </param>
     </section>
     <section name="rt" title="Filtering by RT predicted by 'RTPredict'" help="" expanded="false">
-      <param name="p_value" argument="-rt:p_value" type="float" optional="true" min="0.0" max="1.0" value="0.0" label="Retention time filtering by the p-value predicted by RTPredict" help=""/>
-      <param name="p_value_1st_dim" argument="-rt:p_value_1st_dim" type="float" optional="true" min="0.0" max="1.0" value="0.0" label="Retention time filtering by the p-value predicted by RTPredict for first dimension" help=""/>
+      <param name="p_value" argument="-rt:p_value" type="float" min="0.0" max="1.0" value="0.0" label="Retention time filtering by the p-value predicted by RTPredict" help=""/>
+      <param name="p_value_1st_dim" argument="-rt:p_value_1st_dim" type="float" min="0.0" max="1.0" value="0.0" label="Retention time filtering by the p-value predicted by RTPredict for first dimension" help=""/>
     </section>
     <section name="mz" title="Filtering by mass erro" help="" expanded="false">
-      <param name="error" argument="-mz:error" type="float" optional="true" value="-1.0" label="Filtering by deviation to theoretical mass (disabled for negative values)" help=""/>
-      <param name="unit" argument="-mz:unit" type="select" optional="true" label="Absolute or relative erro" help="">
+      <param name="error" argument="-mz:error" type="float" value="-1.0" label="Filtering by deviation to theoretical mass (disabled for negative values)" help=""/>
+      <param name="unit" argument="-mz:unit" type="select" label="Absolute or relative erro" help="">
         <option value="Da">Da</option>
         <option value="ppm" selected="true">ppm</option>
         <expand macro="list_string_san" name="unit"/>
       </param>
     </section>
     <section name="best" title="Filtering best hits per spectrum (for peptides) or from proteins" help="" expanded="false">
-      <param name="n_spectra" argument="-best:n_spectra" type="integer" optional="true" min="0" value="0" label="Keep only the 'n' best spectra" help="(i.e., PeptideIdentifications) (for n &gt; 0). A spectrum is considered better if it has a higher scoring peptide hit than the other spectrum"/>
-      <param name="n_peptide_hits" argument="-best:n_peptide_hits" type="integer" optional="true" min="0" value="0" label="Keep only the 'n' highest scoring peptide hits per spectrum (for n &gt; 0)" help=""/>
-      <param name="n_protein_hits" argument="-best:n_protein_hits" type="integer" optional="true" min="0" value="0" label="Keep only the 'n' highest scoring protein hits (for n &gt; 0)" help=""/>
+      <param name="n_spectra" argument="-best:n_spectra" type="integer" min="0" value="0" label="Keep only the 'n' best spectra" help="(i.e., PeptideIdentifications) (for n &gt; 0). A spectrum is considered better if it has a higher scoring peptide hit than the other spectrum"/>
+      <param name="n_peptide_hits" argument="-best:n_peptide_hits" type="integer" min="0" value="0" label="Keep only the 'n' highest scoring peptide hits per spectrum (for n &gt; 0)" help=""/>
+      <param name="spectrum_per_peptide" argument="-best:spectrum_per_peptide" type="select" label="Keep one spectrum per peptide" help="Value determines if same sequence but different charges or modifications are treated as separate peptides or the same peptide. (default: false = filter disabled)">
+        <option value="false" selected="true">false</option>
+        <option value="sequence">sequence</option>
+        <option value="sequence+charge">sequence+charge</option>
+        <option value="sequence+modification">sequence+modification</option>
+        <option value="sequence+charge+modification">sequence+charge+modification</option>
+        <expand macro="list_string_san" name="spectrum_per_peptide"/>
+      </param>
+      <param name="n_protein_hits" argument="-best:n_protein_hits" type="integer" min="0" value="0" label="Keep only the 'n' highest scoring protein hits (for n &gt; 0)" help=""/>
       <param name="strict" argument="-best:strict" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Keep only the highest scoring peptide hit" help="Similar to n_peptide_hits=1, but if there are ties between two or more highest scoring hits, none are kept"/>
-      <param name="n_to_m_peptide_hits" argument="-best:n_to_m_peptide_hits" type="text" optional="true" value=":" label="Peptide hit rank range to extracts" help="">
+      <param name="n_to_m_peptide_hits" argument="-best:n_to_m_peptide_hits" type="text" value=":" label="Peptide hit rank range to extracts" help="">
         <expand macro="list_string_san" name="n_to_m_peptide_hits"/>
       </param>
     </section>
@@ -6101,7 +6182,7 @@
         <expand macro="list_string_san" name="remove_peptide_hits_by_metavalue"/>
       </param>
       <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="">
+      <param argument="-test" type="hidden" value="False" label="Enables the test mode (needed for internal use only)" help="" optional="true">
         <expand macro="list_string_san" name="test"/>
       </param>
     </expand>
@@ -6115,16 +6196,16 @@
       <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
     </data>
   </outputs>
-  <tests><!-- TOPP_IDFilter_1 -->
+  <tests>
+    <!-- TOPP_IDFilter_1 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_1_input.idXML"/>
-      <output name="out" file="IDFilter_1_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_1_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6143,14 +6224,10 @@
       </section>
       <section name="whitelist">
         <param name="proteins" value="IDFilter_1_input.fas"/>
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6174,6 +6251,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6184,17 +6262,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_3 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_3_input.idXML"/>
-      <output name="out" file="IDFilter_3_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_3_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6212,15 +6292,11 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="peptides" value="IDFilter_3_2_input.idXML"/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6244,6 +6320,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6254,17 +6331,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_4 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_4_input.idXML"/>
-      <output name="out" file="IDFilter_4_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_4_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6282,14 +6361,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6313,6 +6388,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6323,17 +6399,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_5 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_5_input.idXML"/>
-      <output name="out" file="IDFilter_5_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_5_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6351,14 +6429,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6382,6 +6456,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6392,17 +6467,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_5a -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_5_input.idXML"/>
-      <output name="out" file="IDFilter_5_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_5_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6420,14 +6497,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6451,6 +6524,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6461,17 +6535,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_5b -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_5_input.idXML"/>
-      <output name="out" file="IDFilter_5b_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_5b_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6489,14 +6565,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6520,6 +6592,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6530,17 +6603,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_5c -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_5_input.idXML"/>
-      <output name="out" file="IDFilter_5c_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_5c_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6558,14 +6633,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6589,6 +6660,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6599,17 +6671,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_6 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_6_input.idXML"/>
-      <output name="out" file="IDFilter_6_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_6_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6627,14 +6701,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6658,6 +6728,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="2"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="10"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6668,17 +6739,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_7 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="true"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_7_input.idXML"/>
-      <output name="out" file="IDFilter_7_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_7_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6696,14 +6769,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6727,6 +6796,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6737,17 +6807,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_8 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_8_input.idXML"/>
-      <output name="out" file="IDFilter_8_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_8_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6765,14 +6837,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6796,6 +6864,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6806,17 +6875,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_9 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_9_input.idXML"/>
-      <output name="out" file="IDFilter_9_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_9_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6834,14 +6905,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6865,6 +6932,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6875,17 +6943,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_10 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_10_input.idXML"/>
-      <output name="out" file="IDFilter_10_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_10_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6903,14 +6973,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -6934,6 +7000,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -6944,17 +7011,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_11 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_11_input.idXML"/>
-      <output name="out" file="IDFilter_11_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_11_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -6972,14 +7041,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7003,6 +7068,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7013,17 +7079,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_12 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_12_input.idXML"/>
-      <output name="out" file="IDFilter_12_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_12_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7041,14 +7109,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7073,6 +7137,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7083,17 +7148,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_13 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_13_input.idXML"/>
-      <output name="out" file="IDFilter_13_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_13_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7111,14 +7178,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7143,6 +7206,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7153,17 +7217,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_14 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_14_input.idXML"/>
-      <output name="out" file="IDFilter_14_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_14_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7181,14 +7247,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7213,6 +7275,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7223,17 +7286,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_15 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_15_input.idXML"/>
-      <output name="out" file="IDFilter_15_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_15_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7251,14 +7316,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7283,6 +7344,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7293,17 +7355,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_16 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_16_input.idXML"/>
-      <output name="out" file="IDFilter_16_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_16_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7321,14 +7385,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7353,6 +7413,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7363,17 +7424,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_17 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_missed_cleavages_input.idXML"/>
-      <output name="out" file="IDFilter_17_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_17_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7391,14 +7454,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7422,6 +7481,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7432,17 +7492,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_18 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_missed_cleavages_input.idXML"/>
-      <output name="out" file="IDFilter_18_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_18_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7460,14 +7522,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7491,6 +7549,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7501,17 +7560,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_19 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_missed_cleavages_input.idXML"/>
-      <output name="out" file="IDFilter_19_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_19_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7529,14 +7590,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7560,6 +7617,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7570,17 +7628,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_20 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_missed_cleavages_input.idXML"/>
-      <output name="out" file="IDFilter_20_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_20_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7598,14 +7658,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7629,6 +7685,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7639,6 +7696,9 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_21 -->
     <test expect_num_outputs="2">
@@ -7649,7 +7709,7 @@
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_16_input.idXML"/>
-      <output name="out" file="IDFilter_21_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_21_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7667,14 +7727,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7698,6 +7754,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7708,6 +7765,9 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_22 -->
     <test expect_num_outputs="2">
@@ -7718,7 +7778,7 @@
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDFilter_16_input.idXML"/>
-      <output name="out" file="IDFilter_22_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
+      <output name="out" value="IDFilter_22_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7736,14 +7796,10 @@
         <param name="protgroup" value="0.0"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7767,6 +7823,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7777,17 +7834,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_23 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="IDMapper_2_output.consensusXML"/>
-      <output name="out" file="IDFilter_23_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
+      <output name="out" value="IDFilter_23_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7807,12 +7866,9 @@
       <section name="whitelist">
         <param name="protein_accessions" value="&quot;Q9HP81&quot;"/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7836,6 +7892,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7846,17 +7903,19 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_IDFilter_24 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="remove_duplicate_psm" value="false"/>
-        <param name="remove_peptide_hits_by_metavalue" value=""/>
         <param name="force" value="false"/>
         <param name="test" value="true"/>
       </section>
       <param name="in" value="Epifany_3_out.consensusXML"/>
-      <output name="out" file="IDFilter_24_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
+      <output name="out" value="IDFilter_24_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
       <param name="var_mods" value="false"/>
       <param name="remove_shared_peptides" value="false"/>
       <param name="keep_unreferenced_protein_hits" value="false"/>
@@ -7874,14 +7933,10 @@
         <param name="protgroup" value="0.99"/>
       </section>
       <section name="whitelist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
       </section>
       <section name="blacklist">
-        <param name="protein_accessions" value=""/>
         <param name="ignore_modifications" value="false"/>
-        <param name="modifications"/>
         <param name="RegEx" value=""/>
       </section>
       <section name="in_silico_digestion">
@@ -7905,6 +7960,7 @@
       <section name="best">
         <param name="n_spectra" value="0"/>
         <param name="n_peptide_hits" value="0"/>
+        <param name="spectrum_per_peptide" value="false"/>
         <param name="n_protein_hits" value="0"/>
         <param name="strict" value="false"/>
         <param name="n_to_m_peptide_hits" value=":"/>
@@ -7915,11 +7971,14 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
   </tests>
   <help><![CDATA[Filters results from protein or peptide identification engines based on different criteria.
 
 
-For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/TOPP_IDFilter.html]]></help>
+For more information, visit https://openms.de/doxygen/release/3.1.0/html/TOPP_IDFilter.html]]></help>
   <expand macro="references"/>
 </tool>