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

Changeset 10:f522c08e900c (2021-03-12)
Previous changeset 9:37d669de2828 (2021-02-19) Next changeset 11:d72c96ad9a16 (2021-06-15)
Commit message:
"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/maxquant commit 63e45d43f403514ab0ceafaf441d761866f1eb7e"
modified:
macros.xml
maxquant.xml
added:
test-data/05/config.yml
test-data/05/mqpar.xml
test-data/06/config.yml
test-data/06/mqpar.xml
b
diff -r 37d669de2828 -r f522c08e900c macros.xml
--- a/macros.xml Fri Feb 19 21:24:41 2021 +0000
+++ b/macros.xml Fri Mar 12 08:41:06 2021 +0000
b
@@ -65,7 +65,11 @@
                   cont_MYCO:
                   - MYCOPLASMA
                   - '1'
+                #if $search_opts.mbr.match_between_runs == 'True':
+                MQpar_MatchingTimeWindow_num: ${search_opts.mbr.matching_time_window}
+                #else:
                 MQpar_MatchingTimeWindow_num: 0.0
+                #end if
                 MatchBetweenRuns_wA: auto
                 MQpar_firstSearchTol_num: 20.0
                 firstSearch_outOfCalWarnSD_num: 2.0
b
diff -r 37d669de2828 -r f522c08e900c maxquant.xml
--- a/maxquant.xml Fri Feb 19 21:24:41 2021 +0000
+++ b/maxquant.xml Fri Mar 12 08:41:06 2021 +0000
[
b'@@ -1,4 +1,4 @@\n-<tool id="maxquant" name="MaxQuant" version="@VERSION@+galaxy3">\n+<tool id="maxquant" name="MaxQuant" version="@VERSION@+galaxy4">\n     <macros>\n         <xml name="output" token_format="tabular" token_label="default description" token_name="default">\n             <data format="@FORMAT@" label="@LABEL@ for ${on_string}" name="@NAME@">\n@@ -89,7 +89,14 @@\n             lfqStabilizeLargeRatios: ${protein_quant.lfq_opts.lfqStabilizeLargeRatios}\n             lfqRequireMsms: ${protein_quant.lfq_opts.lfqRequireMsms}\n             advancedSiteIntensities: ${protein_quant.lfq_opts.advancedSiteIntensities}\n-            matchBetweenRuns: ${search_opts.match_between_runs}\n+            matchBetweenRuns: ${search_opts.mbr.match_between_runs}\n+            #if $search_opts.mbr.match_between_runs == \'True\':\n+            matchingTimeWindow: ${search_opts.mbr.matching_time_window}\n+            matchingIonMobilityWindow: ${search_opts.mbr.matching_ion_mobility_window}\n+            alignmentTimeWindow: ${search_opts.mbr.alignment_time_window}\n+            alignmentIonMobilityWindow: ${search_opts.mbr.alignment_ion_mobility_window}\n+            matchUnidentifiedFeatures: ${search_opts.mbr.match_unidentified_features}\n+            #end if\n             includeContaminants: ${search_opts.incl_contaminants}\n             minPeptideLengthForUnspecificSearch: ${search_opts.min_pep_length}\n             maxPeptideLengthForUnspecificSearch: ${search_opts.max_pep_length}\n@@ -223,7 +230,78 @@\n                     - [iodoTMT6plex-Cys130,\'\',0,0,0,0,True]\n                     - [iodoTMT6plex-Cys131,\'\',0,0,0,0,True]\n                   #end if\n-                #end if  \n+                #end if\n+                #if $pg.quant_method.select_quant_method == \'reporter_ion_ms3\':\n+                lcmsRunType: \'Reporter ion MS3\'\n+                reporterMassTolerance: 0.003\n+                #if $pg.quant_method.filter_by_pif.filter_pif == \'True\':\n+                reporterPif: ${pg.quant_method.filter_by_pif.reporter_pif}\n+                #else:\n+                reporterPif: 0\n+                #end if\n+                reporterFraction: 0\n+                reporterBasePeakRatio: 0\n+                filterPif: ${pg.quant_method.filter_by_pif.filter_pif}\n+                isobaricLabels:\n+                  #if $pg.quant_method.iso_labels.labeling == \'custom\':\n+                    #for $l in $pg.quant_method.iso_labels.iso_label:\n+                      - [\'$l.internallabel\',\'$l.terminallabel\',$l.cm2,$l.cm1,$l.cp1,$l.cp2,$l.tmtlike]\n+                    #end for\n+                  #end if\n+                  #if $pg.quant_method.iso_labels.labeling == \'tmt2plex\':\n+                    - [TMT2plex-Lys126,TMT2plex-Nter126,0,0,0,0,True]\n+                    - [TMT2plex-Lys127,TMT2plex-Nter127,0,0,0,0,True]\n+                  #end if\n+                  #if $pg.quant_method.iso_labels.labeling == \'tmt6plex\':\n+                    - [TMT6plex-Lys126,TMT6plex-Nter126,0,0,0,0,True]\n+                    - [TMT6plex-Lys127,TMT6plex-Nter127,0,0,0,0,True]\n+                    - [TMT6plex-Lys128,TMT6plex-Nter128,0,0,0,0,True]\n+                    - [TMT6plex-Lys129,TMT6plex-Nter129,0,0,0,0,True]\n+                    - [TMT6plex-Lys130,TMT6plex-Nter130,0,0,0,0,True]\n+                    - [TMT6plex-Lys131,TMT6plex-Nter131,0,0,0,0,True]\n+                  #end if\n+                  #if $pg.quant_method.iso_labels.labeling == \'tmt8plex\':\n+                    - [TMT8plex-Lys126C,TMT8plex-Nter126C,0,0,0,0,True]\n+                    - [TMT8plex-Lys127N,TMT8plex-Nter127N,0,0,0,0,True]\n+                    - [TMT8plex-Lys127C,TMT8plex-Nter127C,0,0,0,0,True]\n+                    - [TMT8plex-Lys128C,TMT8plex-Nter128C,0,0,0,0,True]\n+                    - [TMT8plex-Lys129N,TMT8plex-Nter129N,0,0,0,0,True]\n+                    - [TMT8plex-Lys129C,TMT8plex-Nter129C,0,0,0,0,True]\n+                    - [TMT8plex-Lys130C,TMT8plex-Nter130C,0,0,0,0,True]\n+                    - [TMT8plex-Lys131N,TMT8'..b'="select_quant_method" value="reporter_ion_ms3"/>\n+                    <conditional name="iso_labels">\n+                        <param name="labeling" value="itraq4plex"/>\n+                    </conditional>\n+                    <conditional name="filter_by_pif">\n+                        <param name="filter_pif" value="True"/>\n+                        <param name="reporter_pif" value="0.8"/> <!-- as filter_pif is True this value is used -->\n+                    </conditional>\n+                </conditional>\n+            </repeat>\n+            <param name="dry_run" value="True" />\n+            <param name="output" value="config,mqpar,mzTab" />\n+            <output name="config" file="06/config.yml" lines_diff="2">\n+                <assert_contents>\n+                    <has_text_matching expression="lcmsRunType\\: \\\'Reporter ion MS3\\\'" />\n+                </assert_contents>\n+            </output>\n+            <output name="mqpar" file="06/mqpar.xml" lines_diff="6">\n+                <assert_contents>\n+                    <has_text_matching expression=".lcmsRunType.Reporter ion MS3.\\/lcmsRunType." />\n+                </assert_contents>\n+            </output>\n+        </test>\n         <!-- lfq, testing yaml conf file and mqpar.xml only -->\n         <test expect_num_outputs="2">\n             <param name="ftype" value=".mzxml" />\n@@ -654,6 +882,37 @@\n             <output name="config" file="03/config.yml" lines_diff="2" />\n             <output name="mqpar" file="03/mqpar.xml" lines_diff="10" />\n         </test>\n+        <!-- Test for MBR -->\n+        <test expect_num_outputs="2">\n+            <param name="ftype" value=".mzxml" />\n+            <param name="fasta_files" value="bsa.fasta" />\n+            <param name="identifier_parse_rule" value="^&gt;.*\\|(.*)\\|.*$" />\n+            <param name="description_parse_rule" value="^&gt;.*\\|.*\\|[^ ]+ (.*) OS.*$" />\n+            <param name="min_unique_pep" value="1" />\n+            <param name="ibaq" value="True" />\n+            <param name="match_between_runs" value="True" />\n+            <param name="ibaqLogFit" value="False" />\n+            <repeat name="paramGroups">\n+                <param name="files" value="BSA_min_22"/>\n+                <param name="maxMissedCleavages" value="1"/>\n+                <param name="variableModifications" value="Oxidation (M)" />\n+                <conditional name="quant_method">\n+                    <param name="select_quant_method" value="lfq" />\n+                </conditional>\n+            </repeat>\n+            <param name="dry_run" value="True" />\n+            <param name="output" value="config,mqpar" />\n+            <output name="config" file="05/config.yml" lines_diff="2">\n+                <assert_contents>\n+                    <has_text_matching expression="matchBetweenRuns\\: True" />\n+                </assert_contents>\n+            </output>\n+            <output name="mqpar" file="05/mqpar.xml" lines_diff="4">\n+                <assert_contents>\n+                    <has_text_matching expression=".matchBetweenRuns.True.\\/matchBetweenRuns." />\n+                </assert_contents>\n+            </output>\n+        </test>\n         <!-- silac + fractions with experimental design template, testing yaml conf file and mqpar.xml only -->\n         <test expect_num_outputs="2">\n             <param name="ftype" value=".mzxml" />\n@@ -744,7 +1003,7 @@\n \n         - for two channels: choose options from light and heavy sections\n         - for three channels: choose options from light, medium and heavy sections\n-    - reporter ion ms2: quantifies conventional isobaric labelling samples. Either use the pre-defined labellings with correction factors set to 0 or specify a custom labelling\n+    - reporter ion ms2/ms3: quantifies conventional isobaric labelling samples. Either use the pre-defined labellings with correction factors set to 0 or specify a custom labelling\n - PTXQC quality control: quality control software creates an automatic quality control pdf report \n \n \n'
b
diff -r 37d669de2828 -r f522c08e900c test-data/05/config.yml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/05/config.yml Fri Mar 12 08:41:06 2021 +0000
[
@@ -0,0 +1,45 @@
+
+            fastaFiles: [/tmp/tmp0wswhy4o/files/4/7/7/dataset_4770959a-66d4-405f-a5b5-48d25389063a.dat]
+            parseRules:
+              identifierParseRule: '^>.*\|(.*)\|.*$'
+              descriptionParseRule: '^>.*\|.*\|[^ ]+ (.*) OS.*$'
+            minUniquePeptides: 1
+            minPepLen: 7
+            maxPeptideMass: 4600
+            calcPeakProperties: False
+            writeMzTab: False
+            ibaq: True
+            ibaqLogFit: False
+            separateLfq: False
+            lfqStabilizeLargeRatios: True
+            lfqRequireMsms: True
+            advancedSiteIntensities: True
+            matchBetweenRuns: True
+            matchingTimeWindow: 0.7
+            matchingIonMobilityWindow: 0.05
+            alignmentTimeWindow: 20
+            alignmentIonMobilityWindow: 1
+            matchUnidentifiedFeatures: False
+            includeContaminants: True
+            minPeptideLengthForUnspecificSearch: 8
+            maxPeptideLengthForUnspecificSearch: 25
+            decoyMode: revert
+            peptideFdr: 0.01
+            proteinFdr: 0.01
+            quantMode: 1
+            restrictProteinQuantification: True
+            restrictMods: [Oxidation (M),Acetyl (Protein N-term)]
+            useCounterparts: True
+            paramGroups:
+              - files: ['BSA_min_22.mzxml']
+                maxMissedCleavages: 1
+                fixedModifications: [Carbamidomethyl (C)]
+                variableModifications: [Oxidation (M)]
+                enzymes: [Trypsin/P]
+                enzymeMode: 0
+                lfqMode: 1
+                lfqSkipNorm: True
+                lfqMinEdgesPerNode: 3
+                lfqAvEdgesPerNode: 6
+                lfqMinRatioCount: 2
+        
\ No newline at end of file
b
diff -r 37d669de2828 -r f522c08e900c test-data/05/mqpar.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/05/mqpar.xml Fri Mar 12 08:41:06 2021 +0000
[
b'@@ -0,0 +1,451 @@\n+<?xml version="1.0" ?>\n+<MaxQuantParams>\n+\t<fastaFiles>\n+\t\t<FastaFileInfo>\n+\t\t\t<fastaFilePath>/tmp/tmp0wswhy4o/files/4/7/7/dataset_4770959a-66d4-405f-a5b5-48d25389063a.dat</fastaFilePath>\n+\t\t\t<identifierParseRule>^&gt;.*\\|(.*)\\|.*$</identifierParseRule>\n+\t\t\t<descriptionParseRule>^&gt;.*\\|.*\\|[^ ]+ (.*) OS.*$</descriptionParseRule>\n+\t\t\t<taxonomyParseRule/>\n+\t\t\t<variationParseRule/>\n+\t\t\t<modificationParseRule/>\n+\t\t\t<taxonomyId/>\n+\t\t</FastaFileInfo>\n+\t</fastaFiles>\n+\t<fastaFilesProteogenomics>\n+   </fastaFilesProteogenomics>\n+\t<fastaFilesFirstSearch>\n+   </fastaFilesFirstSearch>\n+\t<fixedSearchFolder/>\n+\t<andromedaCacheSize>350000</andromedaCacheSize>\n+\t<advancedRatios>True</advancedRatios>\n+\t<pvalThres>0.005</pvalThres>\n+\t<neucodeRatioBasedQuantification>False</neucodeRatioBasedQuantification>\n+\t<neucodeStabilizeLargeRatios>False</neucodeStabilizeLargeRatios>\n+\t<rtShift>False</rtShift>\n+\t<separateLfq>False</separateLfq>\n+\t<lfqStabilizeLargeRatios>True</lfqStabilizeLargeRatios>\n+\t<lfqRequireMsms>True</lfqRequireMsms>\n+\t<decoyMode>revert</decoyMode>\n+\t<boxCarMode>all</boxCarMode>\n+\t<includeContaminants>True</includeContaminants>\n+\t<maxPeptideMass>4600</maxPeptideMass>\n+\t<epsilonMutationScore>True</epsilonMutationScore>\n+\t<mutatedPeptidesSeparately>True</mutatedPeptidesSeparately>\n+\t<proteogenomicPeptidesSeparately>True</proteogenomicPeptidesSeparately>\n+\t<minDeltaScoreUnmodifiedPeptides>0</minDeltaScoreUnmodifiedPeptides>\n+\t<minDeltaScoreModifiedPeptides>6</minDeltaScoreModifiedPeptides>\n+\t<minScoreUnmodifiedPeptides>0</minScoreUnmodifiedPeptides>\n+\t<minScoreModifiedPeptides>40</minScoreModifiedPeptides>\n+\t<secondPeptide>True</secondPeptide>\n+\t<matchBetweenRuns>True</matchBetweenRuns>\n+\t<matchUnidentifiedFeatures>False</matchUnidentifiedFeatures>\n+\t<matchBetweenRunsFdr>False</matchBetweenRunsFdr>\n+\t<dependentPeptides>False</dependentPeptides>\n+\t<dependentPeptideFdr>0</dependentPeptideFdr>\n+\t<dependentPeptideMassBin>0</dependentPeptideMassBin>\n+\t<dependentPeptidesBetweenRuns>False</dependentPeptidesBetweenRuns>\n+\t<dependentPeptidesWithinExperiment>False</dependentPeptidesWithinExperiment>\n+\t<dependentPeptidesWithinParameterGroup>False</dependentPeptidesWithinParameterGroup>\n+\t<dependentPeptidesRestrictFractions>False</dependentPeptidesRestrictFractions>\n+\t<dependentPeptidesFractionDifference>0</dependentPeptidesFractionDifference>\n+\t<msmsConnection>False</msmsConnection>\n+\t<ibaq>True</ibaq>\n+\t<top3>False</top3>\n+\t<independentEnzymes>False</independentEnzymes>\n+\t<useDeltaScore>False</useDeltaScore>\n+\t<splitProteinGroupsByTaxonomy>False</splitProteinGroupsByTaxonomy>\n+\t<taxonomyLevel>Species</taxonomyLevel>\n+\t<avalon>False</avalon>\n+\t<nModColumns>3</nModColumns>\n+\t<ibaqLogFit>False</ibaqLogFit>\n+\t<razorProteinFdr>True</razorProteinFdr>\n+\t<deNovoSequencing>False</deNovoSequencing>\n+\t<deNovoVarMods>True</deNovoVarMods>\n+\t<massDifferenceSearch>False</massDifferenceSearch>\n+\t<isotopeCalc>False</isotopeCalc>\n+\t<writePeptidesForSpectrumFile/>\n+\t<intensityPredictionsFile>\n+   </intensityPredictionsFile>\n+\t<minPepLen>7</minPepLen>\n+\t<psmFdrCrosslink>0.01</psmFdrCrosslink>\n+\t<peptideFdr>0.01</peptideFdr>\n+\t<proteinFdr>0.01</proteinFdr>\n+\t<siteFdr>0.01</siteFdr>\n+\t<minPeptideLengthForUnspecificSearch>8</minPeptideLengthForUnspecificSearch>\n+\t<maxPeptideLengthForUnspecificSearch>25</maxPeptideLengthForUnspecificSearch>\n+\t<useNormRatiosForOccupancy>True</useNormRatiosForOccupancy>\n+\t<minPeptides>1</minPeptides>\n+\t<minRazorPeptides>1</minRazorPeptides>\n+\t<minUniquePeptides>1</minUniquePeptides>\n+\t<useCounterparts>True</useCounterparts>\n+\t<advancedSiteIntensities>True</advancedSiteIntensities>\n+\t<customProteinQuantification>False</customProteinQuantification>\n+\t<customProteinQuantificationFile/>\n+\t<minRatioCount>2</minRatioCount>\n+\t<restrictProteinQuantification>True</restrictProteinQuantification>\n+\t<restrictMods>\n+\t\t<string>Oxidation (M)</string>\n+\t\t<string>Acetyl (Protein N-term)</string>\n+\t</restrictMods>\n+\t<matchingTimeWind'..b'<IncludeWater>True</IncludeWater>\n+\t\t\t<IncludeAmmonia>True</IncludeAmmonia>\n+\t\t\t<DependentLosses>True</DependentLosses>\n+\t\t\t<Recalibration>False</Recalibration>\n+\t\t</msmsParams>\n+\t\t<msmsParams>\n+\t\t\t<Name>Unknown</Name>\n+\t\t\t<MatchTolerance>20</MatchTolerance>\n+\t\t\t<MatchToleranceInPpm>True</MatchToleranceInPpm>\n+\t\t\t<DeisotopeTolerance>7</DeisotopeTolerance>\n+\t\t\t<DeisotopeToleranceInPpm>True</DeisotopeToleranceInPpm>\n+\t\t\t<DeNovoTolerance>10</DeNovoTolerance>\n+\t\t\t<DeNovoToleranceInPpm>True</DeNovoToleranceInPpm>\n+\t\t\t<Deisotope>True</Deisotope>\n+\t\t\t<Topx>12</Topx>\n+\t\t\t<TopxInterval>100</TopxInterval>\n+\t\t\t<HigherCharges>True</HigherCharges>\n+\t\t\t<IncludeWater>True</IncludeWater>\n+\t\t\t<IncludeAmmonia>True</IncludeAmmonia>\n+\t\t\t<DependentLosses>True</DependentLosses>\n+\t\t\t<Recalibration>False</Recalibration>\n+\t\t</msmsParams>\n+\t</msmsParamsArray>\n+\t<fragmentationParamsArray>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>CID</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>HCD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>ETD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>PQD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>ETHCD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>ETCID</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>UVPD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>Unknown</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t</fragmentationParamsArray>\n+</MaxQuantParams>\n+\n'
b
diff -r 37d669de2828 -r f522c08e900c test-data/06/config.yml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/06/config.yml Fri Mar 12 08:41:06 2021 +0000
[
@@ -0,0 +1,59 @@
+
+            fastaFiles: [/tmp/tmp0wswhy4o/files/e/e/e/dataset_eee05aed-87d2-4635-87b0-dd7930cc43dc.dat]
+            parseRules:
+              identifierParseRule: '>([^\s]*)'
+              descriptionParseRule: '>(.*)'
+            minUniquePeptides: 0
+            minPepLen: 7
+            maxPeptideMass: 4600
+            calcPeakProperties: False
+            writeMzTab: True
+            separateLfq: False
+            lfqStabilizeLargeRatios: True
+            lfqRequireMsms: True
+            advancedSiteIntensities: True
+            matchBetweenRuns: False
+            includeContaminants: False
+            minPeptideLengthForUnspecificSearch: 7
+            maxPeptideLengthForUnspecificSearch: 24
+            decoyMode: randomize
+            peptideFdr: 0.5
+            proteinFdr: 0.4
+            quantMode: 0
+            restrictProteinQuantification: True
+            restrictMods: [Pro5,Pro6]
+            useCounterparts: True
+            paramGroups:
+              - files: ['BSA_min_23.mzXML']
+                maxMissedCleavages: 2
+                fixedModifications: []
+                variableModifications: [Oxidation (M)]
+                enzymes: [Trypsin/P]
+                enzymeMode: 0
+                lcmsRunType: 'Reporter ion MS3'
+                reporterMassTolerance: 0.003
+                reporterPif: 0
+                reporterFraction: 0
+                reporterBasePeakRatio: 0
+                filterPif: False
+                isobaricLabels:
+                      - ['TMT2plex-Lys126','TMT2plex-Nter126',0.0,0.0,6.7,3.0,True]
+                      - ['TMT2plex-Lys127','TMT2plex-Nter127',0.0,0.0,0.0,0.0,True]
+              - files: ['BSA_min_22.mzxml']
+                maxMissedCleavages: 2
+                fixedModifications: []
+                variableModifications: []
+                enzymes: []
+                enzymeMode: 0
+                lcmsRunType: 'Reporter ion MS3'
+                reporterMassTolerance: 0.003
+                reporterPif: 0.8
+                reporterFraction: 0
+                reporterBasePeakRatio: 0
+                filterPif: True
+                isobaricLabels:
+                    - [iTRAQ4plex-Lys114,iTRAQ4plex-Nter114,0,0,0,0,False]
+                    - [iTRAQ4plex-Lys115,iTRAQ4plex-Nter115,0,0,0,0,False]
+                    - [iTRAQ4plex-Lys116,iTRAQ4plex-Nter116,0,0,0,0,False]
+                    - [iTRAQ4plex-Lys117,iTRAQ4plex-Nter117,0,0,0,0,False]
+        
\ No newline at end of file
b
diff -r 37d669de2828 -r f522c08e900c test-data/06/mqpar.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/06/mqpar.xml Fri Mar 12 08:41:06 2021 +0000
[
b'@@ -0,0 +1,645 @@\n+<?xml version="1.0" ?>\n+<MaxQuantParams>\n+\t<fastaFiles>\n+\t\t<FastaFileInfo>\n+\t\t\t<fastaFilePath>/tmp/tmp0wswhy4o/files/e/e/e/dataset_eee05aed-87d2-4635-87b0-dd7930cc43dc.dat</fastaFilePath>\n+\t\t\t<identifierParseRule>&gt;([^\\s]*)</identifierParseRule>\n+\t\t\t<descriptionParseRule>&gt;(.*)</descriptionParseRule>\n+\t\t\t<taxonomyParseRule/>\n+\t\t\t<variationParseRule/>\n+\t\t\t<modificationParseRule/>\n+\t\t\t<taxonomyId/>\n+\t\t</FastaFileInfo>\n+\t</fastaFiles>\n+\t<fastaFilesProteogenomics>\n+   </fastaFilesProteogenomics>\n+\t<fastaFilesFirstSearch>\n+   </fastaFilesFirstSearch>\n+\t<fixedSearchFolder/>\n+\t<andromedaCacheSize>350000</andromedaCacheSize>\n+\t<advancedRatios>True</advancedRatios>\n+\t<pvalThres>0.005</pvalThres>\n+\t<neucodeRatioBasedQuantification>False</neucodeRatioBasedQuantification>\n+\t<neucodeStabilizeLargeRatios>False</neucodeStabilizeLargeRatios>\n+\t<rtShift>False</rtShift>\n+\t<separateLfq>False</separateLfq>\n+\t<lfqStabilizeLargeRatios>True</lfqStabilizeLargeRatios>\n+\t<lfqRequireMsms>True</lfqRequireMsms>\n+\t<decoyMode>randomize</decoyMode>\n+\t<boxCarMode>all</boxCarMode>\n+\t<includeContaminants>False</includeContaminants>\n+\t<maxPeptideMass>4600</maxPeptideMass>\n+\t<epsilonMutationScore>True</epsilonMutationScore>\n+\t<mutatedPeptidesSeparately>True</mutatedPeptidesSeparately>\n+\t<proteogenomicPeptidesSeparately>True</proteogenomicPeptidesSeparately>\n+\t<minDeltaScoreUnmodifiedPeptides>0</minDeltaScoreUnmodifiedPeptides>\n+\t<minDeltaScoreModifiedPeptides>6</minDeltaScoreModifiedPeptides>\n+\t<minScoreUnmodifiedPeptides>0</minScoreUnmodifiedPeptides>\n+\t<minScoreModifiedPeptides>40</minScoreModifiedPeptides>\n+\t<secondPeptide>True</secondPeptide>\n+\t<matchBetweenRuns>False</matchBetweenRuns>\n+\t<matchUnidentifiedFeatures>False</matchUnidentifiedFeatures>\n+\t<matchBetweenRunsFdr>False</matchBetweenRunsFdr>\n+\t<dependentPeptides>False</dependentPeptides>\n+\t<dependentPeptideFdr>0</dependentPeptideFdr>\n+\t<dependentPeptideMassBin>0</dependentPeptideMassBin>\n+\t<dependentPeptidesBetweenRuns>False</dependentPeptidesBetweenRuns>\n+\t<dependentPeptidesWithinExperiment>False</dependentPeptidesWithinExperiment>\n+\t<dependentPeptidesWithinParameterGroup>False</dependentPeptidesWithinParameterGroup>\n+\t<dependentPeptidesRestrictFractions>False</dependentPeptidesRestrictFractions>\n+\t<dependentPeptidesFractionDifference>0</dependentPeptidesFractionDifference>\n+\t<msmsConnection>False</msmsConnection>\n+\t<ibaq>False</ibaq>\n+\t<top3>False</top3>\n+\t<independentEnzymes>False</independentEnzymes>\n+\t<useDeltaScore>False</useDeltaScore>\n+\t<splitProteinGroupsByTaxonomy>False</splitProteinGroupsByTaxonomy>\n+\t<taxonomyLevel>Species</taxonomyLevel>\n+\t<avalon>False</avalon>\n+\t<nModColumns>3</nModColumns>\n+\t<ibaqLogFit>False</ibaqLogFit>\n+\t<razorProteinFdr>True</razorProteinFdr>\n+\t<deNovoSequencing>False</deNovoSequencing>\n+\t<deNovoVarMods>True</deNovoVarMods>\n+\t<massDifferenceSearch>False</massDifferenceSearch>\n+\t<isotopeCalc>False</isotopeCalc>\n+\t<writePeptidesForSpectrumFile/>\n+\t<intensityPredictionsFile>\n+   </intensityPredictionsFile>\n+\t<minPepLen>7</minPepLen>\n+\t<psmFdrCrosslink>0.01</psmFdrCrosslink>\n+\t<peptideFdr>0.5</peptideFdr>\n+\t<proteinFdr>0.4</proteinFdr>\n+\t<siteFdr>0.01</siteFdr>\n+\t<minPeptideLengthForUnspecificSearch>7</minPeptideLengthForUnspecificSearch>\n+\t<maxPeptideLengthForUnspecificSearch>24</maxPeptideLengthForUnspecificSearch>\n+\t<useNormRatiosForOccupancy>True</useNormRatiosForOccupancy>\n+\t<minPeptides>1</minPeptides>\n+\t<minRazorPeptides>1</minRazorPeptides>\n+\t<minUniquePeptides>0</minUniquePeptides>\n+\t<useCounterparts>True</useCounterparts>\n+\t<advancedSiteIntensities>True</advancedSiteIntensities>\n+\t<customProteinQuantification>False</customProteinQuantification>\n+\t<customProteinQuantificationFile/>\n+\t<minRatioCount>2</minRatioCount>\n+\t<restrictProteinQuantification>True</restrictProteinQuantification>\n+\t<restrictMods>\n+\t\t<string>Pro5</string>\n+\t\t<string>Pro6</string>\n+\t</restrictMods>\n+\t<matchingTimeWindow>0</matchingTimeWindow>\n+\t<matchingIonMobilityWin'..b'<IncludeWater>True</IncludeWater>\n+\t\t\t<IncludeAmmonia>True</IncludeAmmonia>\n+\t\t\t<DependentLosses>True</DependentLosses>\n+\t\t\t<Recalibration>False</Recalibration>\n+\t\t</msmsParams>\n+\t\t<msmsParams>\n+\t\t\t<Name>Unknown</Name>\n+\t\t\t<MatchTolerance>20</MatchTolerance>\n+\t\t\t<MatchToleranceInPpm>True</MatchToleranceInPpm>\n+\t\t\t<DeisotopeTolerance>7</DeisotopeTolerance>\n+\t\t\t<DeisotopeToleranceInPpm>True</DeisotopeToleranceInPpm>\n+\t\t\t<DeNovoTolerance>10</DeNovoTolerance>\n+\t\t\t<DeNovoToleranceInPpm>True</DeNovoToleranceInPpm>\n+\t\t\t<Deisotope>True</Deisotope>\n+\t\t\t<Topx>12</Topx>\n+\t\t\t<TopxInterval>100</TopxInterval>\n+\t\t\t<HigherCharges>True</HigherCharges>\n+\t\t\t<IncludeWater>True</IncludeWater>\n+\t\t\t<IncludeAmmonia>True</IncludeAmmonia>\n+\t\t\t<DependentLosses>True</DependentLosses>\n+\t\t\t<Recalibration>False</Recalibration>\n+\t\t</msmsParams>\n+\t</msmsParamsArray>\n+\t<fragmentationParamsArray>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>CID</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>HCD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>ETD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>PQD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>ETHCD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>ETCID</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>UVPD</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t\t<fragmentationParams>\n+\t\t\t<Name>Unknown</Name>\n+\t\t\t<Connected>False</Connected>\n+\t\t\t<ConnectedScore0>1</ConnectedScore0>\n+\t\t\t<ConnectedScore1>1</ConnectedScore1>\n+\t\t\t<ConnectedScore2>1</ConnectedScore2>\n+\t\t\t<InternalFragments>False</InternalFragments>\n+\t\t\t<InternalFragmentWeight>1</InternalFragmentWeight>\n+\t\t\t<InternalFragmentAas>KRH</InternalFragmentAas>\n+\t\t</fragmentationParams>\n+\t</fragmentationParamsArray>\n+</MaxQuantParams>\n+\n'