Mercurial > repos > iuc > multiqc
changeset 30:26ee5e11ecbe draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/multiqc commit d4b9696c6c533ca1841c22b52bb3e73833e2e0d4
| author | iuc |
|---|---|
| date | Thu, 15 Jan 2026 20:39:44 +0000 |
| parents | e4dd4c0622f6 |
| children | |
| files | checkm2_plugin.xml fastp_plugin.xml macros.xml multiqc.xml samtools_plugin.xml sylphtax_plugin.xml test-data/checkm2-wrong.tsv test-data/checkm2.tsv test-data/sylphtax.sylphmpa |
| diffstat | 9 files changed, 134 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/checkm2_plugin.xml Thu Jan 15 20:39:44 2026 +0000 @@ -0,0 +1,47 @@ +<macros> + <token name="@CHECKM2_COMMAND@"><![CDATA[ + #set $pattern = "Name\tCompleteness\tContamination\tCompleteness_Model_Used\tTranslation_Table_Used" + @LN_FILES@ + ]]></token> + <xml name="checkm2_form"> + <param name="input" type="data" format="tabular" multiple="true" label="Output of CheckM2" help="It should be the quality report from CheckM2"/> + </xml> + <xml name="checkm2_test"> + <test expect_num_outputs="3"> + <repeat name="results"> + <conditional name="software_cond"> + <param name="software" value="checkm2"/> + <param name="input" value="checkm2.tsv"/> + </conditional> + </repeat> + <param name="title" value="Title of the report"/> + <param name="comment" value="Commment for the report"/> + <param name="flat" value="true"/> + <param name="export" value="true"/> + <output name="html_report"> + <assert_contents> + <has_text text="Title of the report"/> + <has_text text="Commment for the report"/> + <has_text text="CheckM2"/> + </assert_contents> + </output> + <output_collection name="plots" type="list" count="0"/> + </test> + <!-- This test use a Checkm2 TSV file with wrong required headers to check error handling. + Some checkm2 column names are parameter-dependent and the checkm2 multiQC module rely on a specific column pattern. + An issue has been opened : https://github.com/MultiQC/MultiQC/issues/3466 + There is a stdio rule in macro that need to be removed once the issue is fixed --> + <test expect_failure="true" expect_exit_code="1"> + <repeat name="results"> + <conditional name="software_cond"> + <param name="software" value="checkm2"/> + <param name="input" value="checkm2-wrong.tsv"/> + </conditional> + </repeat> + <param name="title" value="Title of the report"/> + <param name="comment" value="Commment for the report"/> + <param name="flat" value="true"/> + <param name="export" value="true"/> + </test> + </xml> +</macros>
--- a/fastp_plugin.xml Fri Oct 10 20:12:28 2025 +0000 +++ b/fastp_plugin.xml Thu Jan 15 20:39:44 2026 +0000 @@ -38,7 +38,7 @@ <has_text text="fastp-after_filtering_q30_rate"/> <has_text text="bwa-mem-fastq1_fq"/> <has_n_lines n="3"/> - <has_n_columns n="8"/> + <has_n_columns n="10"/> </assert_contents> </output> <output_collection name="plots" type="list" count="15"/>
--- a/macros.xml Fri Oct 10 20:12:28 2025 +0000 +++ b/macros.xml Thu Jan 15 20:39:44 2026 +0000 @@ -1,6 +1,6 @@ <macros> - <token name="@TOOL_VERSION@">1.27</token> - <token name="@VERSION_SUFFIX@">4</token> + <token name="@TOOL_VERSION@">1.33</token> + <token name="@VERSION_SUFFIX@">0</token> <xml name="bio_tools"> <xrefs> <xref type="bio.tools">multiqc</xref> @@ -11,6 +11,16 @@ <requirement type="package" version="@TOOL_VERSION@">multiqc</requirement> </requirements> </xml> + <!--This stdio rule is temporary because of an issue with CheckM2 report columns, it needs to be removed when the issue is fixed --> + <xml name="stdio"> + <stdio> + <regex + match="Module 'checkm2: .*not found in the file.*" + source="both" + level="fatal" + description="Invalid CheckM2 TSV file: required header not found" /> + </stdio> + </xml> <xml name="citations"> <citations> <citation type="doi">10.1101/gr.244293.118</citation> @@ -184,11 +194,11 @@ <has_text text="slamdunk-retained"/> <has_text text="C2"/> <has_n_lines n="11"/> - <has_n_columns n="22"/> + <has_n_columns n="24"/> </assert_contents> </output> <output_collection name="plots" type="list" count="29"/> - <output_collection name="png_plot" type="list" count="38"/> + <output_collection name="png_plot" type="list" count="36"/> </test> <!--Test 02--> <test expect_num_outputs="2"> @@ -482,7 +492,7 @@ <has_text text="qualimap"/> <has_text text="samblaster_duplicates"/> <has_text text="quast-stats"/> - <has_text text="samtools-flagstat-dp"/> + <has_text text="samtools-flagstat-pct"/> <has_text text="snpeff"/> </assert_contents> </output> @@ -507,8 +517,8 @@ <has_text text="snpeff_csv"/> <has_text text="bamtools-mapped_reads_pct"/> <has_text text="bamtools-duplicates_pct"/> - <has_n_lines n="22"/> - <has_n_columns n="50"/> + <has_n_lines n="23"/> + <has_n_columns n="55"/> </assert_contents> </output> </test> @@ -528,7 +538,7 @@ </repeat> <output name="html_report" ftype="html"> <assert_contents> - <has_size value="4766687" delta="500"/> + <has_size value="2142211" delta="500"/> </assert_contents> </output> <!--output name="stats" ftype="tabular"> @@ -576,7 +586,7 @@ </assert_contents> </element> </output_collection> - <output_collection name="png_plot" type="list" count="11"/> + <output_collection name="png_plot" type="list" count="9"/> </test> <!--Test 06-->
--- a/multiqc.xml Fri Oct 10 20:12:28 2025 +0000 +++ b/multiqc.xml Thu Jan 15 20:39:44 2026 +0000 @@ -21,6 +21,7 @@ <import>salmon_plugin.xml</import> <import>samtools_plugin.xml</import> <import>star_plugin.xml</import> + <import>sylphtax_plugin.xml</import> <import>trimmomatic_plugin.xml</import> <import>vcftools_plugin.xml</import> <import>kraken_plugin.xml</import> @@ -28,6 +29,7 @@ <import>bakta_plugin.xml</import> <import>freyja_plugin.xml</import> <import>checkm_plugin.xml</import> + <import>checkm2_plugin.xml</import> <import>pairtools_plugin.xml</import> <import>porechop_plugin.xml</import> <import>snippy_plugin.xml</import> @@ -41,6 +43,7 @@ </macros> <expand macro="bio_tools"/> <expand macro="requirements"/> + <expand macro="stdio"/> <version_command>multiqc --version</version_command> <command detect_errors="aggressive"> <![CDATA[ @@ -148,6 +151,8 @@ @LN_FILES@ #else if str($repeat.software_cond.software) == "star": @STAR_COMMAND@ + #elif str($repeat.software_cond.software) == "sylphtax" + @SYLPHTAX_COMMAND@ #elif str($repeat.software_cond.software) == "tophat" #for $file in $repeat.software_cond.input @ESCAPE_IDENTIFIER@ @@ -168,6 +173,8 @@ @FREYJA_COMMAND@ #elif str($repeat.software_cond.software) == "checkm" @CHECKM_COMMAND@ + #elif str($repeat.software_cond.software) == "checkm2" + @CHECKM2_COMMAND@ #elif str($repeat.software_cond.software) == "pairtools" @PAIRTOOLS_COMMAND@ #elif str($repeat.software_cond.software) == "porechop" @@ -297,6 +304,7 @@ <option value="snpeff">SnpEff</option> <option value="sortmerna">SortMeRNA</option> <option value="star">STAR</option> + <option value="sylphtax">Sylph-tax</option> <!--<option value="supernova">Supernova</option>--> <!--<option value="theta2">THeTA2</option>--> <option value="tophat">TopHat2 (TopHat2 is deprecated you should not use it)</option> @@ -307,6 +315,7 @@ <option value="bakta">Bakta</option> <option value="freyja">Freyja</option> <option value="checkm">CheckM</option> + <option value="checkm2">CheckM2</option> <option value="pairtools">pairtools</option> <option value="porechop">Porechop</option> <option value="snippy">Snippy</option> @@ -406,6 +415,9 @@ <when value="star"> <expand macro="star_form"/> </when> + <when value="sylphtax"> + <expand macro="sylphtax_form"/> + </when> <when value="tophat"> <param name="input" type="data" format="txt,tabular,tsv,csv" multiple="true" label="Output of TopHat2"/> </when> @@ -430,6 +442,9 @@ <when value="checkm"> <expand macro="checkm_form"/> </when> + <when value="checkm2"> + <expand macro="checkm2_form"/> + </when> <when value="pairtools"> <expand macro="pairtools_form"/> </when> @@ -553,6 +568,8 @@ <expand macro="nonpareil_test"/> <expand macro="gtdbtk_test"/> <expand macro="sambamba_test"/> + <expand macro="checkm2_test"/> + <expand macro="sylphtax_test"/> <!--expand macro="vcftools_test"/> Does not work, did it ever worked? --> </tests>
--- a/samtools_plugin.xml Fri Oct 10 20:12:28 2025 +0000 +++ b/samtools_plugin.xml Thu Jan 15 20:39:44 2026 +0000 @@ -78,7 +78,7 @@ <assert_contents> <has_text text="Title of the report"/> <has_text text="Commment for the report"/> - <has_text text="samtools-flagstat-dp"/> + <has_text text="samtools-flagstat-pct"/> </assert_contents> </output> <output name="stats">
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sylphtax_plugin.xml Thu Jan 15 20:39:44 2026 +0000 @@ -0,0 +1,34 @@ +<macros> + <token name="@SYLPHTAX_COMMAND@"><![CDATA[ + #for $file in $repeat.software_cond.input + @ESCAPE_IDENTIFIER@ + #set file_path = os.path.join($software_dir, str($identifier) + '.sylphmpa') + ln -s '$file' '$file_path' && + #end for + ]]></token> + <xml name="sylphtax_form"> + <param name="input" type="data" format="tabular" multiple="true" label="Output of Sylph-tax" help="It should be the sylphmpa report from Sylph-tax"/> + </xml> + <xml name="sylphtax_test"> + <test expect_num_outputs="3"> + <repeat name="results"> + <conditional name="software_cond"> + <param name="software" value="sylphtax"/> + <param name="input" value="sylphtax.sylphmpa"/> + </conditional> + </repeat> + <param name="title" value="Title of the report"/> + <param name="comment" value="Commment for the report"/> + <param name="flat" value="true"/> + <param name="export" value="true"/> + <output name="html_report"> + <assert_contents> + <has_text text="Title of the report"/> + <has_text text="Commment for the report"/> + <has_text text="Sylph-tax"/> + </assert_contents> + </output> + <output_collection name="plots" type="list" count="8"/> + </test> + </xml> +</macros>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/checkm2-wrong.tsv Thu Jan 15 20:39:44 2026 +0000 @@ -0,0 +1,3 @@ +Name Completeness_General Contamination Completeness_Specific Completeness_Model_Used Additional_Notes +test1.faa 26.36 0.0 15.9 Neural Network (Specific Model) None +test2.faa 96.06 0.05 99.44 Neural Network (Specific Model) None
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/checkm2.tsv Thu Jan 15 20:39:44 2026 +0000 @@ -0,0 +1,2 @@ +Name Completeness Contamination Completeness_Model_Used Translation_Table_Used Coding_Density Contig_N50 Average_Gene_Length Genome_Size GC_Content Total_Coding_Sequences Total_Contigs Max_Contig_Length Additional_Notes +HSMA33OT_bin_430.fasta 80.96 5.95 Neural Network (Specific Model) 11 0.896 3599 275.0511202958451 4224255 0.41 4597 1478 27196 None
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/sylphtax.sylphmpa Thu Jan 15 20:39:44 2026 +0000 @@ -0,0 +1,10 @@ +#SampleID raw_reads_metag_test.fastq Taxonomies_used:['OceanDNA'] +clade_name relative_abundance sequence_abundance ANI (if strain-level) Coverage (if strain-level) +d__Bacteria 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria|c__Gammaproteobacteria 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria|c__Gammaproteobacteria|o__Enterobacterales 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria|c__Gammaproteobacteria|o__Enterobacterales|f__Enterobacteriaceae 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria|c__Gammaproteobacteria|o__Enterobacterales|f__Enterobacteriaceae|g__Escherichia 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria|c__Gammaproteobacteria|o__Enterobacterales|f__Enterobacteriaceae|g__Escherichia|s__Escherichia flexneri 100.0 100.0 NA NA +d__Bacteria|p__Proteobacteria|c__Gammaproteobacteria|o__Enterobacterales|f__Enterobacteriaceae|g__Escherichia|s__Escherichia flexneri|t__OceanDNA-b35151.fa.gz 100.0 100.0 98.0 0.042
