diff hifiasm.xml @ 22:5d365d5cbe9d draft default tip

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/hifiasm commit ed3c07cc67bacb7c1c5a929d5f427536a35db5ca
author iuc
date Mon, 24 Mar 2025 18:10:21 +0000
parents 170061c052ad
children
line wrap: on
line diff
--- a/hifiasm.xml	Mon Mar 10 08:09:25 2025 +0000
+++ b/hifiasm.xml	Mon Mar 24 18:10:21 2025 +0000
@@ -1,7 +1,7 @@
 <tool id="hifiasm" name="Hifiasm" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@">
     <description>haplotype-resolved de novo assembler for PacBio Hifi reads</description>
     <macros>
-        <token name="@TOOL_VERSION@">0.24.0</token>
+        <token name="@TOOL_VERSION@">0.25.0</token>
         <token name="@VERSION_SUFFIX@">0</token>
         <token name="@FORMATS@">fasta,fasta.gz,fastq,fastq.gz</token>
         <xml name="reads">
@@ -72,6 +72,9 @@
             #end if
         #end if
         hifiasm
+        #if str($mode.mode_selector) == 'ont':
+            --ont
+        #end if
         -t \${GALAXY_SLOTS:-1}
         -o output
         -f $filter_bits
@@ -88,6 +91,8 @@
             #if $advanced_options.hg_size
                 --hg-size $advanced_options.hg_size
             #end if
+            --rl-cut $advanced_options.rl_cut
+            --sc-cut $advanced_options.sc_cut
 
         #end if
         #if str($assembly_options.assembly_selector) == 'set':
@@ -181,11 +186,15 @@
         <conditional name="mode">
             <param name="mode_selector" type="select" label="Assembly mode">
                 <option value="standard">Standard</option>
+                <option value="ont">ONT</option>
                 <option value="trio">Trio mode</option>
             </param>
             <when value="standard">
                 <expand macro="reads"/>
             </when>
+            <when value="ont">
+                <expand macro="reads"/>
+            </when>
             <when value="trio">
                 <expand macro="reads"/>
                 <conditional name="trioinput">
@@ -303,6 +312,8 @@
                     </sanitizer>
                     <validator type="regex">[0-9kKmMGg]+</validator>
                 </param>
+                <param argument="--rl-cut" type="integer" min="0" value="1000" optional="true" label="ONT Read length cutoff" help="Filter out ONT simplex reads shorter than specified length for assembly"/>
+                <param argument="--sc-cut" type="integer" min="0" value="10" optional="true" label="ONT Base Quality Score cutoff" help="Filter out ONT simplex reads with mean base quality score specified value for assembly"/>
             </when>
         </conditional>
         <conditional name="scaffolding_options">
@@ -319,18 +330,18 @@
         <param name="bins_out" type="boolean" label="Output .bin files (used for development and debugging)?" truevalue="yes" falsevalue="no"/> 
     </inputs>
     <outputs>
-        <!--Standard mode-->
+        <!--Standard and ONT mode-->
         <data name="raw_unitigs" format="gfa1" from_work_dir="output.r_utg.gfa" label="${tool.name} on ${on_string}: haplotype-resolved raw unitig graph for pseudohaplotype assembly">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'blank'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'blank'</filter>
         </data>
         <data name="processed_unitigs" format="gfa1" from_work_dir="output.p_utg.gfa" label="${tool.name} on ${on_string}: processed unitig graph for pseudohaplotype assembly">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'blank'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'blank'</filter>
         </data>
         <data name="primary_contig_graph" format="gfa1" from_work_dir="output.p_ctg.gfa" label="${tool.name} on ${on_string}: primary assembly contig graph for pseudohaplotype assembly">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'blank'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'blank'</filter>
         </data>
         <data name="alternate_contig_graph" format="gfa1" from_work_dir="output.a_ctg.gfa" label="${tool.name} on ${on_string}: alternate assembly contig graph for pseudohaplotype assembly">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'blank'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'blank'</filter>
         </data>
         <!--Trio outputs without Hi-c reads-->
         <data name="hap1_contigs" format="gfa1" from_work_dir="output.dip.hap1.p_ctg.gfa" label="${tool.name} on ${on_string}: hap1.p_ctg contig graph">
@@ -347,19 +358,19 @@
         </data>
         <!-- Stardand mode with Hi-C partition outputs -->
         <data name="hic_pcontig_graph" format="gfa1" from_work_dir="output.hic.p_ctg.gfa" label="${tool.name} ${on_string}: Hi-C primary contig graph">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'set'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'set'</filter>
         </data>
         <data name="hic_acontig_graph" format="gfa1" from_work_dir="output.hic.a_ctg.gfa" label="${tool.name} ${on_string}: Hi-C alternate contig graph">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'set'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'set'</filter>
         </data>
         <data name="hic_balanced_contig_hap1_graph" format="gfa1" from_work_dir="output.hic.hap1.p_ctg.gfa" label="${tool.name} ${on_string}: Hi-C hap1 balanced contig graph hap1">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'set'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'set'</filter>
         </data>
         <data name="hic_balanced_contig_hap2_graph" format="gfa1" from_work_dir="output.hic.hap2.p_ctg.gfa" label="${tool.name} ${on_string}: Hi-C hap2 balanced contig graph hap2">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'set'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'set'</filter>
         </data>
         <data name="hic_raw_initig" format="gfa1" from_work_dir="output.hic.r_utg.gfa" label="${tool.name} ${on_string}: Hi-C raw unitig">
-            <filter>mode['mode_selector'] == 'standard' and hic_partition['hic_partition_selector'] == 'set'</filter>
+            <filter>mode['mode_selector'] != 'trio' and hic_partition['hic_partition_selector'] == 'set'</filter>
         </data>
         <!--Trio outputs with Hi-c reads-->
         <data name="hap1_contigs_hic" format="gfa1" from_work_dir="output.hic.bench.r_utg.gfa" label="${tool.name} on ${on_string}: raw unitig graph">
@@ -436,13 +447,13 @@
                     <has_size value="83914" delta="500"/>
                 </assert_contents>
             </output>
-            <output name="hic_balanced_contig_hap1_graph" ftype="gfa1" >
+            <output name="hic_balanced_contig_hap1_graph" ftype="gfa1">
                 <assert_contents>
                     <has_text_matching expression="^S"/>
                     <has_size value="83914" delta="500"/>
                 </assert_contents>
             </output>
-            <output name="hic_raw_initig" ftype="gfa1" >
+            <output name="hic_raw_initig" ftype="gfa1">
                 <assert_contents>
                     <has_text_matching expression="^S"/>
                     <has_size value="83904" delta="500"/>
@@ -606,6 +617,15 @@
                 </assert_contents>
             </output>
         </test>
+        <!-- TEST 16: ONT mode -->
+        <test expect_num_outputs="5">
+            <param name="reads" location="https://zenodo.org/records/15075976/files/ont.fastq.gz" ftype="fasta.gz"/>
+            <param name="filter_bits" value="0"/>
+            <param name="mode_selector" value="ont"/>
+            <output name="raw_unitigs" file="hifiasm-out1-ont-raw.gfa" ftype="gfa1"/>
+            <output name="processed_unitigs" file="hifiasm-out1-ont-processed.gfa" ftype="gfa1"/>
+            <output name="primary_contig_graph" file="hifiasm-out1-ont-primary.gfa" ftype="gfa1"/>
+        </test>
     </tests>
     <help><![CDATA[
 .. class:: infomark
@@ -622,6 +642,7 @@
 **Assembly mode**
 
 - *Standard*: Standard assembly can be run in pseudohaplotype mode, or with Hi-C phasing using Hi-C reads from the same individual.
+- *ONT*: Enables direct, haplotype-resolved assembly of Oxford Nanopore simplex R10 reads with integrated error correction, optimizing for contiguity without requiring pre-corrected input.
 - *Trio*: When parental short reads are available, hifiasm can generate a pair of haplotype-resolved assemblies with trio binning.
 
 ----