From 9bd01176f9a02e3f45e26b5b89c7daa28cda2de8 Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 10:36:31 +1200 Subject: [PATCH 1/9] Made the hic param pattern more flexible --- .github/workflows/ci.yml | 31 ++++- .gitignore | 4 + CHANGELOG.md | 15 +++ CITATION.cff | 2 +- cleanNXF.sh | 4 + docs/parameters.md | 12 +- docs/usage.md | 2 +- nextflow.config | 2 +- nextflow_schema.json | 4 +- nf-test.config | 8 ++ tests/hicparam/assemblysheet.csv | 2 + tests/hicparam/hic/Dummy_hic_1.merged.fq.gz | Bin 0 -> 21 bytes tests/hicparam/hic/Dummy_hic_2.merged.fq.gz | Bin 0 -> 21 bytes tests/hicparam/hicparam.nf | 10 ++ tests/hicparam/hicparam.nf.test | 118 ++++++++++++++++++++ tests/hicparam/params.json | 9 ++ tests/hicparam/test_genome.fa.gz | Bin 0 -> 21 bytes 17 files changed, 211 insertions(+), 12 deletions(-) create mode 100644 nf-test.config create mode 100644 tests/hicparam/assemblysheet.csv create mode 100644 tests/hicparam/hic/Dummy_hic_1.merged.fq.gz create mode 100644 tests/hicparam/hic/Dummy_hic_2.merged.fq.gz create mode 100644 tests/hicparam/hicparam.nf create mode 100644 tests/hicparam/hicparam.nf.test create mode 100644 tests/hicparam/params.json create mode 100644 tests/hicparam/test_genome.fa.gz diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 715ae17c..6dc6a435 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,10 +30,11 @@ jobs: - invalid - stub - noltr + - hicparam include: - OPTION_STUB: "" - OPTION_STUB: "-stub" - TEST_PARAMS: stub + TEST_PARAMS: [stub, hicparam] steps: - name: Check out pipeline code uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4 @@ -55,3 +56,31 @@ jobs: -params-file \ ./tests/${{ matrix.TEST_PARAMS }}/params.json \ ${{ matrix.OPTION_STUB }} + + nf-test: + name: Run nf-tests + # Only run on push if this is the nf-core dev branch (merged PRs) + if: "${{ github.event_name != 'push' || (github.event_name == 'push' && github.repository == 'plant-food-research-open/assemblyqc') }}" + runs-on: ubuntu-latest + strategy: + matrix: + NXF_VER: + - "23.04.0" + steps: + - name: Check out pipeline code + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4 + + - name: Install Nextflow + uses: nf-core/setup-nextflow@v2 + with: + version: ${{ matrix.NXF_VER }} + + - name: Install nf-test + uses: nf-core/setup-nf-test@v1.1.2 + + - name: Run nf-tests + run: | + nf-test \ + test \ + --verbose \ + tests diff --git a/.gitignore b/.gitignore index 00c62de8..837a2cd1 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,7 @@ testing* # PFR files *.stdout *.stderr + +# nf-test files +.nf-test/ +.nf-test.log diff --git a/CHANGELOG.md b/CHANGELOG.md index 99cc4b45..07436f19 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,21 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## v2.1.1+dev - [19-Sep-2024] + +### `Added` + +1. Configured nf-test for function testing + +### `Fixed` + +1. Made the `hic` param pattern more flexible as `^SR\w+$|^\S+\{1,2\}[\w\.]*\.f(ast)?q\.gz$` + +### `Dependencies` + +1. Nextflow!>=23.04.0 +2. nf-validation@1.1.3 + ## v2.1.0 - [31-July-2024] ### `Added` diff --git a/CITATION.cff b/CITATION.cff index 63044f81..27d51814 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -25,7 +25,7 @@ authors: - family-names: "Deng" given-names: "Cecilia" title: "AssemblyQC: A Nextflow pipeline for reproducible reporting of assembly quality" -version: 2.1.0 +version: 2.1.1+dev date-released: 2024-07-30 url: "https://github.com/Plant-Food-Research-Open/assemblyqc" doi: 10.1093/bioinformatics/btae477 diff --git a/cleanNXF.sh b/cleanNXF.sh index 8c64a3e0..81b8d855 100755 --- a/cleanNXF.sh +++ b/cleanNXF.sh @@ -9,3 +9,7 @@ do rm -rf "work/$i" done echo "Cleaned work..." + +rm -f .nf-test.log +rm -rf .nf-test +echo "Cleaned nf-test..." diff --git a/docs/parameters.md b/docs/parameters.md index d99bb66d..de300d51 100644 --- a/docs/parameters.md +++ b/docs/parameters.md @@ -66,12 +66,12 @@ A Nextflow pipeline which evaluates assembly quality with multiple QC tools and ## HiC options -| Parameter | Description | Type | Default | Required | Hidden | -| -------------------- | -------------------------------------------------------------------------------------- | --------- | ------------------------------------------------- | -------- | ------ | -| `hic` | HiC reads path provided as a SRA ID or as paired reads with pattern '\*{1,2}.fastq.gz' | `string` | | | | -| `hic_skip_fastp` | Skip HiC read trimming | `boolean` | | | | -| `hic_skip_fastqc` | Skip HiC read QC | `boolean` | | | | -| `hic_fastp_ext_args` | Additional parameters for fastp trimming | `string` | --qualified_quality_phred 20 --length_required 50 | | | +| Parameter | Description | Type | Default | Required | Hidden | +| -------------------- | ---------------------------------------------------------------------------------------- | --------- | ------------------------------------------------- | -------- | ------ | +| `hic` | HiC reads path provided as a SRA ID or as paired reads such as 'hic_reads{1,2}.fastq.gz' | `string` | | | | +| `hic_skip_fastp` | Skip HiC read trimming | `boolean` | | | | +| `hic_skip_fastqc` | Skip HiC read QC | `boolean` | | | | +| `hic_fastp_ext_args` | Additional parameters for fastp trimming | `string` | --qualified_quality_phred 20 --length_required 50 | | | ## Synteny options diff --git a/docs/usage.md b/docs/usage.md index 82117eb5..509fdbd2 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -90,7 +90,7 @@ This section provides additional information for parameters. It does not list al ### HiC -- `hic`: Path to reads provided as a SRA ID or as a path to paired reads with pattern '\*{1,2}.(fastq|fq).gz'. These reads are applied to each assembly listed by `input`. +- `hic`: Path to reads provided as a SRA ID or as a path to paired reads such as 'hic_reads{1,2}.fastq.gz'. These reads are applied to each assembly listed by `input`. ### Synteny analysis diff --git a/nextflow.config b/nextflow.config index 88c9454a..1704bca6 100644 --- a/nextflow.config +++ b/nextflow.config @@ -283,7 +283,7 @@ manifest { description = """A Nextflow pipeline which evaluates assembly quality with multiple QC tools and presents the results in a unified html report.""" mainScript = 'main.nf' nextflowVersion = '!>=23.04.0' - version = '2.1.0' + version = '2.1.1+dev' doi = 'https://doi.org/10.1093/bioinformatics/btae477' } diff --git a/nextflow_schema.json b/nextflow_schema.json index 04dd3634..7c8f50bd 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -213,8 +213,8 @@ "properties": { "hic": { "type": "string", - "description": "HiC reads path provided as a SRA ID or as paired reads with pattern '*{1,2}.fastq.gz'", - "pattern": "^SR\\w+$|^\\S+\\{1,2\\}\\.f(ast)?q\\.gz$" + "description": "HiC reads path provided as a SRA ID or as paired reads such as 'hic_reads{1,2}.fastq.gz'", + "pattern": "^SR\\w+$|^\\S+\\{1,2\\}[\\w\\.]*\\.f(ast)?q\\.gz$" }, "hic_skip_fastp": { "type": "boolean", diff --git a/nf-test.config b/nf-test.config new file mode 100644 index 00000000..9d4198ff --- /dev/null +++ b/nf-test.config @@ -0,0 +1,8 @@ +config { + + testsDir "tests" + workDir ".nf-test" + configFile "nextflow.config" + profile "" + +} diff --git a/tests/hicparam/assemblysheet.csv b/tests/hicparam/assemblysheet.csv new file mode 100644 index 00000000..19e256c0 --- /dev/null +++ b/tests/hicparam/assemblysheet.csv @@ -0,0 +1,2 @@ +tag,fasta +test,tests/hicparam/test_genome.fa.gz diff --git a/tests/hicparam/hic/Dummy_hic_1.merged.fq.gz b/tests/hicparam/hic/Dummy_hic_1.merged.fq.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c9b1af9f7e4886783022336f7c6c31ee79ebfaa GIT binary patch literal 21 ccmb2|=3od3c%8<;{FsShGTU_{Mg|5306@eAGXMYp literal 0 HcmV?d00001 diff --git a/tests/hicparam/hic/Dummy_hic_2.merged.fq.gz b/tests/hicparam/hic/Dummy_hic_2.merged.fq.gz new file mode 100644 index 0000000000000000000000000000000000000000..c71c1e807cbe1ea2f78c1abdea440ae46e5f178c GIT binary patch literal 21 ccmb2|=3s~oc%8<;{FsShGTU_{Mg|5306|>^JOBUy literal 0 HcmV?d00001 diff --git a/tests/hicparam/hicparam.nf b/tests/hicparam/hicparam.nf new file mode 100644 index 00000000..f3080271 --- /dev/null +++ b/tests/hicparam/hicparam.nf @@ -0,0 +1,10 @@ +import groovy.json.JsonSlurper + +def checkHiCParam(paramValue, schema) { + def jsonSlurper = new JsonSlurper() + def jsonContent = jsonSlurper.parse ( file ( schema, checkIfExists: true ) ) + def pattern = jsonContent.definitions.hic_options.properties.hic.pattern + def match = paramValue ==~ pattern + + return match +} diff --git a/tests/hicparam/hicparam.nf.test b/tests/hicparam/hicparam.nf.test new file mode 100644 index 00000000..0de1293a --- /dev/null +++ b/tests/hicparam/hicparam.nf.test @@ -0,0 +1,118 @@ +nextflow_function { + + name "checkHiCParam" + script "./hicparam.nf" + function "checkHiCParam" + + test("Dummy_hic.R{1,2}.fq.gz") { + when { + function { + """ + input[0] = "Dummy_hic.R{1,2}.fq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert function.result + } + } + + test("Dummy_hic.{1,2}.fq.gz") { + when { + function { + """ + input[0] = "Dummy_hic.{1,2}.fq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert function.result + } + } + + test("Dummy_hic{1,2}.fastq.gz") { + when { + function { + """ + input[0] = "Dummy_hic{1,2}.fastq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert function.result + } + } + + test("Dummy_hic.R{1,2}.merged.fq.gz") { + when { + function { + """ + input[0] = "Dummy_hic.R{1,2}.merged.fq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert function.result + } + } + + test("Dummy_hic{1,2}_merged.samtools._check.fq.gz") { + when { + function { + """ + input[0] = "Dummy_hic{1,2}_merged.samtools._check.fq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert function.result + } + } + + test("CK13_02_hic_R{1,2}.merged.fastq.gz") { + when { + function { + """ + input[0] = "CK13_02_hic_R{1,2}.merged.fastq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert function.result + } + } + + test("CK13_02_hic_1.merged.fastq.gz -- fail") { + when { + function { + """ + input[0] = "CK13_02_hic_1.merged.fastq.gz" + input[1] = "$baseDir/nextflow_schema.json" + """ + } + } + + then { + assert function.success + assert ! function.result + } + } +} diff --git a/tests/hicparam/params.json b/tests/hicparam/params.json new file mode 100644 index 00000000..2f0c2d51 --- /dev/null +++ b/tests/hicparam/params.json @@ -0,0 +1,9 @@ +{ + "config_profile_name": "Test to verify hic param validation", + "config_profile_description": "Test to verify hic param validation", + "input": "tests/hicparam/assemblysheet.csv", + "hic": "tests/hicparam/hic/Dummy_hic_{1,2}.merged.fq.gz", + "max_cpus": 2, + "max_memory": "6.GB", + "max_time": "6.h" +} diff --git a/tests/hicparam/test_genome.fa.gz b/tests/hicparam/test_genome.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..1a720c1f68ed6c8c0d0c598ecd22b96aff9a2bd8 GIT binary patch literal 21 ccmb2|=3q#2d!5F>{FsShGTU_{Mg|5306`K3Hvj+t literal 0 HcmV?d00001 From 8ae19835eba5e8cba33315abc43d9b86a93408eb Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 10:42:20 +1200 Subject: [PATCH 2/9] Fixed test matrix --- .github/workflows/ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6dc6a435..9c0a86ca 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,9 @@ jobs: include: - OPTION_STUB: "" - OPTION_STUB: "-stub" - TEST_PARAMS: [stub, hicparam] + TEST_PARAMS: stub + - OPTION_STUB: "-stub" + TEST_PARAMS: hicparam steps: - name: Check out pipeline code uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4 From 1ea766b26722958a457decbd0289389a06d2d3ee Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 11:21:15 +1200 Subject: [PATCH 3/9] Updated modules to remove Bioconda defaults channel --- CHANGELOG.md | 1 + modules.json | 90 ++++---- modules/gallvp/busco/busco/environment.yml | 2 - modules/gallvp/busco/busco/tests/main.nf.test | 2 +- .../busco/busco/tests/main.nf.test.snap | 6 +- .../gallvp/busco/generateplot/environment.yml | 2 - modules/gallvp/bwa/index/environment.yml | 2 - modules/gallvp/bwa/mem/environment.yml | 6 +- modules/gallvp/bwa/mem/tests/main.nf.test | 139 +++--------- .../gallvp/bwa/mem/tests/main.nf.test.snap | 203 ++++++++++++++---- modules/gallvp/cat/cat/environment.yml | 2 - .../custom/relabelfasta/environment.yml | 5 +- .../custom/restoregffids/environment.yml | 5 +- .../custom/shortenfastaids/environment.yml | 4 - modules/gallvp/gffread/environment.yml | 2 - modules/gallvp/gt/gff3/environment.yml | 2 - .../gallvp/gt/gff3validator/environment.yml | 2 - .../gt/gff3validator/tests/main.nf.test | 8 +- modules/gallvp/gt/stat/environment.yml | 2 - modules/gallvp/ltrfinder/environment.yml | 2 - modules/gallvp/ltrharvest/environment.yml | 2 - .../gallvp/ltrretriever/lai/environment.yml | 2 - .../ltrretriever/ltrretriever/environment.yml | 2 - modules/gallvp/plotsr/environment.yml | 4 - modules/gallvp/samblaster/environment.yml | 3 - modules/gallvp/samtools/faidx/environment.yml | 3 - modules/gallvp/seqkit/seq/environment.yml | 2 - modules/gallvp/syri/environment.yml | 4 - .../sratoolsncbisettings/environment.yml | 2 - .../nf-core/fastavalidator/environment.yml | 2 - .../nf-core/fastavalidator/tests/main.nf.test | 4 +- modules/nf-core/fastp/environment.yml | 2 - modules/nf-core/fastqc/environment.yml | 2 - modules/nf-core/fastqc/main.nf | 5 +- .../nf-core/fcs/fcsadaptor/environment.yml | 2 - .../nf-core/fcs/fcsadaptor/tests/main.nf.test | 6 +- modules/nf-core/gunzip/environment.yml | 2 - .../nf-core/merqury/hapmers/environment.yml | 2 - .../merqury/hapmers/tests/main.nf.test | 6 +- .../nf-core/merqury/merqury/environment.yml | 2 - .../merqury/merqury/tests/main.nf.test | 14 +- modules/nf-core/meryl/count/environment.yml | 2 - .../nf-core/meryl/unionsum/environment.yml | 2 - .../nf-core/minimap2/align/environment.yml | 3 - modules/nf-core/seqkit/rmdup/environment.yml | 2 - modules/nf-core/seqkit/seq/environment.yml | 2 - modules/nf-core/seqkit/seq/tests/main.nf.test | 12 +- modules/nf-core/seqkit/sort/environment.yml | 2 - .../nf-core/seqkit/sort/tests/main.nf.test | 12 +- .../sratools/fasterqdump/environment.yml | 2 - .../nf-core/sratools/prefetch/environment.yml | 2 - modules/nf-core/sratools/prefetch/main.nf | 2 +- modules/nf-core/tidk/explore/environment.yml | 2 - .../nf-core/tidk/explore/tests/main.nf.test | 17 +- .../tidk/explore/tests/main.nf.test.snap | 99 +++++++-- modules/nf-core/tidk/plot/environment.yml | 2 - modules/nf-core/tidk/plot/tests/main.nf.test | 8 +- .../nf-core/tidk/plot/tests/main.nf.test.snap | 16 +- modules/nf-core/tidk/search/environment.yml | 2 - .../nf-core/tidk/search/tests/main.nf.test | 24 +-- .../tidk/search/tests/main.nf.test.snap | 168 +++++++++++++-- .../nf-core/umitools/extract/environment.yml | 2 - modules/nf-core/untar/environment.yml | 2 - .../tests/main.nf.test | 12 +- .../nf-core/utils_nextflow_pipeline/main.nf | 24 +-- .../tests/nextflow.config | 2 +- .../nf-core/utils_nfcore_pipeline/main.nf | 45 ++-- 67 files changed, 581 insertions(+), 447 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 07436f19..92317694 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### `Fixed` 1. Made the `hic` param pattern more flexible as `^SR\w+$|^\S+\{1,2\}[\w\.]*\.f(ast)?q\.gz$` +2. Updated modules to remove Bioconda `defaults` channel ### `Dependencies` diff --git a/modules.json b/modules.json index eaf1e089..f20e4b05 100644 --- a/modules.json +++ b/modules.json @@ -7,107 +7,107 @@ "gallvp": { "busco/busco": { "branch": "main", - "git_sha": "ab92c438688c1f4a3753b65914bfd2e6319cebb2", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_gxf_busco_plot"] }, "busco/generateplot": { "branch": "main", - "git_sha": "ab92c438688c1f4a3753b65914bfd2e6319cebb2", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_gxf_busco_plot"] }, "bwa/index": { "branch": "main", - "git_sha": "3cba9e138cf07f2db778a7ad6aae0ab707948c74", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fastq_bwa_mem_samblaster"] }, "bwa/mem": { "branch": "main", - "git_sha": "3cba9e138cf07f2db778a7ad6aae0ab707948c74", + "git_sha": "a203a6035aed3f9b345ee380f5d497ca98504d98", "installed_by": ["fastq_bwa_mem_samblaster"] }, "cat/cat": { "branch": "main", - "git_sha": "490f8ab54c632d84f99edd6f208305ac5e283ab3", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_ltrretriever_lai"] }, "custom/relabelfasta": { "branch": "main", - "git_sha": "775762619b57101ca800269b6ecda0b915fb9913", + "git_sha": "a203a6035aed3f9b345ee380f5d497ca98504d98", "installed_by": ["modules"] }, "custom/restoregffids": { "branch": "main", - "git_sha": "490f8ab54c632d84f99edd6f208305ac5e283ab3", + "git_sha": "a203a6035aed3f9b345ee380f5d497ca98504d98", "installed_by": ["fasta_ltrretriever_lai"] }, "custom/shortenfastaids": { "branch": "main", - "git_sha": "490f8ab54c632d84f99edd6f208305ac5e283ab3", + "git_sha": "a203a6035aed3f9b345ee380f5d497ca98504d98", "installed_by": ["fasta_ltrretriever_lai"] }, "gffread": { "branch": "main", - "git_sha": "c04bf39d67027e044a6eaed0b7b0439fd8866fc7", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_gxf_busco_plot"] }, "gt/gff3": { "branch": "main", - "git_sha": "c68acf8c8993f85be6e417d0db1bbf3a919f9226", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["gff3_gt_gff3_gff3validator_stat"] }, "gt/gff3validator": { "branch": "main", - "git_sha": "49bbf276b8aeda94bf69a982cdb6d68d7dc5ea4e", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["gff3_gt_gff3_gff3validator_stat"] }, "gt/stat": { "branch": "main", - "git_sha": "c68acf8c8993f85be6e417d0db1bbf3a919f9226", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["gff3_gt_gff3_gff3validator_stat"] }, "ltrfinder": { "branch": "main", - "git_sha": "db7fb043c5557cf06a49a1edbed16e282a7dffb2", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_ltrretriever_lai"] }, "ltrharvest": { "branch": "main", - "git_sha": "db7fb043c5557cf06a49a1edbed16e282a7dffb2", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_ltrretriever_lai"] }, "ltrretriever/lai": { "branch": "main", - "git_sha": "490f8ab54c632d84f99edd6f208305ac5e283ab3", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_ltrretriever_lai"] }, "ltrretriever/ltrretriever": { "branch": "main", - "git_sha": "490f8ab54c632d84f99edd6f208305ac5e283ab3", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_ltrretriever_lai"] }, "plotsr": { "branch": "main", - "git_sha": "665454056d9cc2a1e1a392505ca8bf975ae1b711", + "git_sha": "a203a6035aed3f9b345ee380f5d497ca98504d98", "installed_by": ["modules"] }, "samblaster": { "branch": "main", - "git_sha": "53518187fb1f596f4779da061cd35ce9f973c06e", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fastq_bwa_mem_samblaster"] }, "samtools/faidx": { "branch": "main", - "git_sha": "c68acf8c8993f85be6e417d0db1bbf3a919f9226", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["gff3_gt_gff3_gff3validator_stat"] }, "seqkit/seq": { "branch": "main", - "git_sha": "8ec55a2c8e4ce3af070393768f6c2c57f5c34076", + "git_sha": "cc6ea1f3e96e8264d2cc99afed31bcf3b0bb03ca", "installed_by": ["fasta_ltrretriever_lai"] }, "syri": { "branch": "main", - "git_sha": "836bb223521eeaa08d65c1b7f4b82be1272a1964", + "git_sha": "a203a6035aed3f9b345ee380f5d497ca98504d98", "installed_by": ["modules"] } } @@ -142,107 +142,107 @@ "nf-core": { "custom/sratoolsncbisettings": { "branch": "master", - "git_sha": "5caf7640a9ef1d18d765d55339be751bb0969dfa", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fastq_download_prefetch_fasterqdump_sratools"] }, "fastavalidator": { "branch": "master", - "git_sha": "89ff95427f695086369d7927a3c17cea2a37a382", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "fastp": { "branch": "master", - "git_sha": "1ceaa8ba4d0fd886dbca0e545815d905b7407de7", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fastq_fastqc_umitools_fastp"] }, "fastqc": { "branch": "master", - "git_sha": "46eca555142d6e597729fcb682adcc791796f514", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fastq_fastqc_umitools_fastp"] }, "fcs/fcsadaptor": { "branch": "master", - "git_sha": "f0732b3df35850d3eb16feee0ba1c0192b05bbcb", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "gunzip": { "branch": "master", - "git_sha": "4e5f4687318f24ba944a13609d3ea6ebd890737d", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "merqury/hapmers": { "branch": "master", - "git_sha": "deadc7dfc8cd06aee6ab133df43242212ae1f8fb", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "merqury/merqury": { "branch": "master", - "git_sha": "5f7195c5a3e889a03c31c43aec72a65f8b1f9282", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "meryl/count": { "branch": "master", - "git_sha": "2910aa889fd3497727d87854148a0e0aa1105da3", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "meryl/unionsum": { "branch": "master", - "git_sha": "1c72d95476a2edf92ee4f08dc4321b3c50cd3c13", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "minimap2/align": { "branch": "master", - "git_sha": "a33ef9475558c6b8da08c5f522ddaca1ec810306", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "seqkit/rmdup": { "branch": "master", - "git_sha": "85a37a184b03960e4908c100af934def04466b6d", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] }, "seqkit/seq": { "branch": "master", - "git_sha": "2be41ca2cc780eca4293d1b0dd3850b0b7ac40a3", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fasta_explore_search_plot_tidk", "fasta_ltrretriever_lai"] }, "seqkit/sort": { "branch": "master", - "git_sha": "2be41ca2cc780eca4293d1b0dd3850b0b7ac40a3", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fasta_explore_search_plot_tidk"] }, "sratools/fasterqdump": { "branch": "master", - "git_sha": "dd935314930f972117455672f89e5cb0794719e5", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fastq_download_prefetch_fasterqdump_sratools", "modules"] }, "sratools/prefetch": { "branch": "master", - "git_sha": "dd935314930f972117455672f89e5cb0794719e5", + "git_sha": "368e6c90b91adbd171e7c0a1c85a700b86a915af", "installed_by": ["fastq_download_prefetch_fasterqdump_sratools", "modules"] }, "tidk/explore": { "branch": "master", - "git_sha": "fad335b31b32d78f89a8340373d3ccfc0f2b18b5", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fasta_explore_search_plot_tidk"] }, "tidk/plot": { "branch": "master", - "git_sha": "d54cd1d823f151854825da8ffe7289bcbf77206b", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fasta_explore_search_plot_tidk"] }, "tidk/search": { "branch": "master", - "git_sha": "669a329f4aa37f5b7f03776c2ed1cd0ef122c626", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fasta_explore_search_plot_tidk"] }, "umitools/extract": { "branch": "master", - "git_sha": "b4919e9a2b4d8b71061e601633db4600a3858fa1", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["fastq_fastqc_umitools_fastp"] }, "untar": { "branch": "master", - "git_sha": "4e5f4687318f24ba944a13609d3ea6ebd890737d", + "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48", "installed_by": ["modules"] } } @@ -251,7 +251,7 @@ "nf-core": { "fasta_explore_search_plot_tidk": { "branch": "master", - "git_sha": "2be41ca2cc780eca4293d1b0dd3850b0b7ac40a3", + "git_sha": "ab80a04707104a4baf39341581dfbced5da05479", "installed_by": ["subworkflows"] }, "fastq_download_prefetch_fasterqdump_sratools": { @@ -266,12 +266,12 @@ }, "utils_nextflow_pipeline": { "branch": "master", - "git_sha": "5caf7640a9ef1d18d765d55339be751bb0969dfa", + "git_sha": "d20fb2a9cc3e2835e9d067d1046a63252eb17352", "installed_by": ["subworkflows"] }, "utils_nfcore_pipeline": { "branch": "master", - "git_sha": "92de218a329bfc9a9033116eb5f65fd270e72ba3", + "git_sha": "2fdce49d30c0254f76bc0f13c55c17455c1251ab", "installed_by": ["subworkflows"] }, "utils_nfvalidation_plugin": { diff --git a/modules/gallvp/busco/busco/environment.yml b/modules/gallvp/busco/busco/environment.yml index 06a5d930..5b918b45 100644 --- a/modules/gallvp/busco/busco/environment.yml +++ b/modules/gallvp/busco/busco/environment.yml @@ -1,7 +1,5 @@ -name: busco_busco channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::busco=5.7.1 diff --git a/modules/gallvp/busco/busco/tests/main.nf.test b/modules/gallvp/busco/busco/tests/main.nf.test index 829bd285..e0eb735c 100644 --- a/modules/gallvp/busco/busco/tests/main.nf.test +++ b/modules/gallvp/busco/busco/tests/main.nf.test @@ -126,7 +126,7 @@ nextflow_process { } assert snapshot( - process.out.batch_summary[0][1], + file(process.out.batch_summary[0][1]).name, process.out.full_table[0][1], process.out.missing_busco_list[0][1], process.out.versions[0] diff --git a/modules/gallvp/busco/busco/tests/main.nf.test.snap b/modules/gallvp/busco/busco/tests/main.nf.test.snap index 1b6411bc..1140d5de 100644 --- a/modules/gallvp/busco/busco/tests/main.nf.test.snap +++ b/modules/gallvp/busco/busco/tests/main.nf.test.snap @@ -146,7 +146,7 @@ }, "test_busco_genome_multi_fasta": { "content": [ - "test-bacteria_odb10-busco.batch_summary.txt:md5,fcd3c208913e8abda3d6742c43fec5fa", + "test-bacteria_odb10-busco.batch_summary.txt", [ "full_table.tsv:md5,c657edcc7d0de0175869717551df6e83", "full_table.tsv:md5,638fe7590f442c57361554dae330eca1" @@ -159,9 +159,9 @@ ], "meta": { "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nextflow": "24.04.4" }, - "timestamp": "2024-05-03T13:23:50.255602" + "timestamp": "2024-08-22T11:24:24.828742" }, "test_busco_eukaryote_metaeuk": { "content": [ diff --git a/modules/gallvp/busco/generateplot/environment.yml b/modules/gallvp/busco/generateplot/environment.yml index 1ca5babb..766c0f40 100644 --- a/modules/gallvp/busco/generateplot/environment.yml +++ b/modules/gallvp/busco/generateplot/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "busco_generateplot" channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::busco=5.7.1 diff --git a/modules/gallvp/bwa/index/environment.yml b/modules/gallvp/bwa/index/environment.yml index 126e0034..d8789a20 100644 --- a/modules/gallvp/bwa/index/environment.yml +++ b/modules/gallvp/bwa/index/environment.yml @@ -1,7 +1,5 @@ -name: bwa_index channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::bwa=0.7.18 diff --git a/modules/gallvp/bwa/mem/environment.yml b/modules/gallvp/bwa/mem/environment.yml index 3aa9f0cc..ef7b966c 100644 --- a/modules/gallvp/bwa/mem/environment.yml +++ b/modules/gallvp/bwa/mem/environment.yml @@ -1,10 +1,8 @@ -name: bwa_mem channels: - conda-forge - bioconda - - defaults + dependencies: - bwa=0.7.18 - # renovate: datasource=conda depName=bioconda/samtools - - samtools=1.20 - htslib=1.20.0 + - samtools=1.20 diff --git a/modules/gallvp/bwa/mem/tests/main.nf.test b/modules/gallvp/bwa/mem/tests/main.nf.test index a8f55e4f..5aa072a7 100644 --- a/modules/gallvp/bwa/mem/tests/main.nf.test +++ b/modules/gallvp/bwa/mem/tests/main.nf.test @@ -9,21 +9,21 @@ nextflow_process { script "../main.nf" process "BWA_MEM" - test("Single-End") { - - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } + setup { + run("BWA_INDEX") { + script "../../index/main.nf" + process { + """ + input[0] = [ + [id: 'test'], + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + ] + """ } } + } + + test("Single-End") { when { process { @@ -49,7 +49,8 @@ nextflow_process { process.out.csi, process.out.crai, process.out.versions, - file(process.out.bam[0][1]).name + bam(process.out.bam[0][1]).getHeaderMD5(), + bam(process.out.bam[0][1]).getReadsMD5() ).match() } ) @@ -59,20 +60,6 @@ nextflow_process { test("Single-End Sort") { - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } - } - } - when { process { """ @@ -97,7 +84,8 @@ nextflow_process { process.out.csi, process.out.crai, process.out.versions, - file(process.out.bam[0][1]).name + bam(process.out.bam[0][1]).getHeaderMD5(), + bam(process.out.bam[0][1]).getReadsMD5() ).match() } ) @@ -107,20 +95,6 @@ nextflow_process { test("Paired-End") { - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } - } - } - when { process { """ @@ -146,7 +120,8 @@ nextflow_process { process.out.csi, process.out.crai, process.out.versions, - file(process.out.bam[0][1]).name + bam(process.out.bam[0][1]).getHeaderMD5(), + bam(process.out.bam[0][1]).getReadsMD5() ).match() } ) @@ -156,20 +131,6 @@ nextflow_process { test("Paired-End Sort") { - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } - } - } - when { process { """ @@ -195,7 +156,8 @@ nextflow_process { process.out.csi, process.out.crai, process.out.versions, - file(process.out.bam[0][1]).name + bam(process.out.bam[0][1]).getHeaderMD5(), + bam(process.out.bam[0][1]).getReadsMD5() ).match() } ) @@ -205,20 +167,6 @@ nextflow_process { test("Paired-End - no fasta") { - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } - } - } - when { process { """ @@ -244,7 +192,8 @@ nextflow_process { process.out.csi, process.out.crai, process.out.versions, - file(process.out.bam[0][1]).name + bam(process.out.bam[0][1]).getHeaderMD5(), + bam(process.out.bam[0][1]).getReadsMD5() ).match() } ) @@ -253,20 +202,9 @@ nextflow_process { } test("Single-end - stub") { + options "-stub" - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } - } - } + when { process { """ @@ -286,30 +224,15 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot( - file(process.out.bam[0][1]).name, - file(process.out.csi[0][1]).name, - process.out.versions - ).match() } + { assert snapshot(process.out).match() } ) } } test("Paired-end - stub") { + options "-stub" - setup { - run("BWA_INDEX") { - script "../../index/main.nf" - process { - """ - input[0] = [ - [id: 'test'], - file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) - ] - """ - } - } - } + when { process { """ @@ -330,11 +253,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot( - file(process.out.bam[0][1]).name, - file(process.out.csi[0][1]).name, - process.out.versions - ).match() } + { assert snapshot(process.out).match() } ) } } diff --git a/modules/gallvp/bwa/mem/tests/main.nf.test.snap b/modules/gallvp/bwa/mem/tests/main.nf.test.snap index 038ee7b7..2079ea22 100644 --- a/modules/gallvp/bwa/mem/tests/main.nf.test.snap +++ b/modules/gallvp/bwa/mem/tests/main.nf.test.snap @@ -13,13 +13,14 @@ [ "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" ], - "test.bam" + "b6d9cb250261a4c125413c5d867d87a7", + "798439cbd7fd81cbcc5078022dc5479d" ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:44:32.953673185" + "timestamp": "2024-08-02T12:22:28.051598" }, "Single-End Sort": { "content": [ @@ -35,13 +36,14 @@ [ "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" ], - "test.bam" + "848434ae4b79cfdcb2281c60b33663ce", + "94fcf617f5b994584c4e8d4044e16b4f" ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:44:45.27066093" + "timestamp": "2024-08-02T12:22:39.671154" }, "Paired-End": { "content": [ @@ -57,13 +59,14 @@ [ "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" ], - "test.bam" + "5b34d31be84478761f789e3e2e805e31", + "57aeef88ed701a8ebc8e2f0a381b2a6" ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:44:57.706852274" + "timestamp": "2024-08-02T12:22:51.919479" }, "Paired-End Sort": { "content": [ @@ -79,27 +82,91 @@ [ "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" ], - "test.bam" + "69003376d9a8952622d8587b39c3eaae", + "af8628d9df18b2d3d4f6fd47ef2bb872" ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:45:10.376505036" + "timestamp": "2024-08-02T12:23:00.833562" }, "Single-end - stub": { "content": [ - "test.bam", - "test.csi", - [ - "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" - ] + { + "0": [ + [ + { + "id": "test", + "single_end": true + }, + "test.bam:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + + ], + "2": [ + [ + { + "id": "test", + "single_end": true + }, + "test.csi:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "3": [ + [ + { + "id": "test", + "single_end": true + }, + "test.crai:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "4": [ + "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" + ], + "bam": [ + [ + { + "id": "test", + "single_end": true + }, + "test.bam:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "crai": [ + [ + { + "id": "test", + "single_end": true + }, + "test.crai:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "cram": [ + + ], + "csi": [ + [ + { + "id": "test", + "single_end": true + }, + "test.csi:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" + ] + } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:46:07.182072398" + "timestamp": "2024-08-02T12:31:29.46282" }, "Paired-End - no fasta": { "content": [ @@ -115,26 +182,90 @@ [ "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" ], - "test.bam" + "5b34d31be84478761f789e3e2e805e31", + "57aeef88ed701a8ebc8e2f0a381b2a6" ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:45:53.813076501" + "timestamp": "2024-08-02T12:23:09.942545" }, "Paired-end - stub": { "content": [ - "test.bam", - "test.csi", - [ - "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" - ] + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.bam:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + + ], + "2": [ + [ + { + "id": "test", + "single_end": false + }, + "test.csi:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "3": [ + [ + { + "id": "test", + "single_end": false + }, + "test.crai:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "4": [ + "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" + ], + "bam": [ + [ + { + "id": "test", + "single_end": false + }, + "test.bam:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "crai": [ + [ + { + "id": "test", + "single_end": false + }, + "test.crai:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "cram": [ + + ], + "csi": [ + [ + { + "id": "test", + "single_end": false + }, + "test.csi:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,478b816fbd37871f5e8c617833d51d80" + ] + } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.04.4" }, - "timestamp": "2024-05-20T08:46:18.412916364" + "timestamp": "2024-08-02T12:31:37.757037" } } \ No newline at end of file diff --git a/modules/gallvp/cat/cat/environment.yml b/modules/gallvp/cat/cat/environment.yml index 17a04ef2..9b01c865 100644 --- a/modules/gallvp/cat/cat/environment.yml +++ b/modules/gallvp/cat/cat/environment.yml @@ -1,7 +1,5 @@ -name: cat_cat channels: - conda-forge - bioconda - - defaults dependencies: - conda-forge::pigz=2.3.4 diff --git a/modules/gallvp/custom/relabelfasta/environment.yml b/modules/gallvp/custom/relabelfasta/environment.yml index c45ae6ad..04ccfc96 100644 --- a/modules/gallvp/custom/relabelfasta/environment.yml +++ b/modules/gallvp/custom/relabelfasta/environment.yml @@ -1,10 +1,7 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "custom_relabelfasta" channels: - conda-forge - bioconda - - defaults + dependencies: - biopython==1.75 - python==3.8.13 diff --git a/modules/gallvp/custom/restoregffids/environment.yml b/modules/gallvp/custom/restoregffids/environment.yml index 2450c456..68eaa880 100644 --- a/modules/gallvp/custom/restoregffids/environment.yml +++ b/modules/gallvp/custom/restoregffids/environment.yml @@ -1,9 +1,6 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "custom_restoregffids" channels: - conda-forge - bioconda - - defaults + dependencies: - "python=3.10.2" diff --git a/modules/gallvp/custom/shortenfastaids/environment.yml b/modules/gallvp/custom/shortenfastaids/environment.yml index a64758c6..04ccfc96 100644 --- a/modules/gallvp/custom/shortenfastaids/environment.yml +++ b/modules/gallvp/custom/shortenfastaids/environment.yml @@ -1,10 +1,6 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "custom_shortenfastaids" channels: - conda-forge - bioconda - - defaults dependencies: - biopython==1.75 diff --git a/modules/gallvp/gffread/environment.yml b/modules/gallvp/gffread/environment.yml index c6df58ad..ee239841 100644 --- a/modules/gallvp/gffread/environment.yml +++ b/modules/gallvp/gffread/environment.yml @@ -1,7 +1,5 @@ -name: gffread channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::gffread=0.12.7 diff --git a/modules/gallvp/gt/gff3/environment.yml b/modules/gallvp/gt/gff3/environment.yml index 8289fb31..666eb47f 100644 --- a/modules/gallvp/gt/gff3/environment.yml +++ b/modules/gallvp/gt/gff3/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "gt_gff3" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::genometools-genometools=1.6.5" diff --git a/modules/gallvp/gt/gff3validator/environment.yml b/modules/gallvp/gt/gff3validator/environment.yml index ea57ebe0..666eb47f 100644 --- a/modules/gallvp/gt/gff3validator/environment.yml +++ b/modules/gallvp/gt/gff3validator/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "gt_gff3validator" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::genometools-genometools=1.6.5" diff --git a/modules/gallvp/gt/gff3validator/tests/main.nf.test b/modules/gallvp/gt/gff3validator/tests/main.nf.test index 029517c2..c7b71e34 100644 --- a/modules/gallvp/gt/gff3validator/tests/main.nf.test +++ b/modules/gallvp/gt/gff3validator/tests/main.nf.test @@ -40,9 +40,9 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() }, { assert path(process.out.success_log[0][1]).text.contains("input is valid GFF3") }, - { assert process.out.error_log == [] } + { assert process.out.error_log == [] }, + { assert snapshot(process.out).match() }, ) } @@ -88,9 +88,9 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() }, + { assert path(process.out.error_log[0][1]).text.contains("gt gff3validator: error:") }, { assert process.out.success_log == [] }, - { assert path(process.out.error_log[0][1]).text.contains("gt gff3validator: error:") } + { assert snapshot(process.out).match() }, ) } diff --git a/modules/gallvp/gt/stat/environment.yml b/modules/gallvp/gt/stat/environment.yml index dca959b3..666eb47f 100644 --- a/modules/gallvp/gt/stat/environment.yml +++ b/modules/gallvp/gt/stat/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "gt_stat" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::genometools-genometools=1.6.5" diff --git a/modules/gallvp/ltrfinder/environment.yml b/modules/gallvp/ltrfinder/environment.yml index 7f354597..2932d5cf 100644 --- a/modules/gallvp/ltrfinder/environment.yml +++ b/modules/gallvp/ltrfinder/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "ltrfinder" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::ltr_finder_parallel=1.1" diff --git a/modules/gallvp/ltrharvest/environment.yml b/modules/gallvp/ltrharvest/environment.yml index 9337fe23..c6cac36f 100644 --- a/modules/gallvp/ltrharvest/environment.yml +++ b/modules/gallvp/ltrharvest/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "ltrharvest" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::ltr_harvest_parallel=1.1" diff --git a/modules/gallvp/ltrretriever/lai/environment.yml b/modules/gallvp/ltrretriever/lai/environment.yml index e0e49682..f1c392a2 100644 --- a/modules/gallvp/ltrretriever/lai/environment.yml +++ b/modules/gallvp/ltrretriever/lai/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "ltrretriever_lai" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::LTR_retriever=2.9.9" diff --git a/modules/gallvp/ltrretriever/ltrretriever/environment.yml b/modules/gallvp/ltrretriever/ltrretriever/environment.yml index f49f07e7..f1c392a2 100644 --- a/modules/gallvp/ltrretriever/ltrretriever/environment.yml +++ b/modules/gallvp/ltrretriever/ltrretriever/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "ltrretriever_ltrretriever" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::LTR_retriever=2.9.9" diff --git a/modules/gallvp/plotsr/environment.yml b/modules/gallvp/plotsr/environment.yml index 39f05f88..2296253d 100644 --- a/modules/gallvp/plotsr/environment.yml +++ b/modules/gallvp/plotsr/environment.yml @@ -1,9 +1,5 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "plotsr" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::plotsr=1.1.1" diff --git a/modules/gallvp/samblaster/environment.yml b/modules/gallvp/samblaster/environment.yml index ac838241..fc8cd9e5 100644 --- a/modules/gallvp/samblaster/environment.yml +++ b/modules/gallvp/samblaster/environment.yml @@ -1,9 +1,6 @@ -name: samblaster - channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::htslib=1.19.1 diff --git a/modules/gallvp/samtools/faidx/environment.yml b/modules/gallvp/samtools/faidx/environment.yml index f8450fa5..b98cbb99 100644 --- a/modules/gallvp/samtools/faidx/environment.yml +++ b/modules/gallvp/samtools/faidx/environment.yml @@ -1,9 +1,6 @@ -name: samtools_faidx - channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::htslib=1.20 diff --git a/modules/gallvp/seqkit/seq/environment.yml b/modules/gallvp/seqkit/seq/environment.yml index 74e0dd76..4f8058a9 100644 --- a/modules/gallvp/seqkit/seq/environment.yml +++ b/modules/gallvp/seqkit/seq/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "seqkit_seq" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::seqkit=2.8.1" diff --git a/modules/gallvp/syri/environment.yml b/modules/gallvp/syri/environment.yml index 0a34f206..34cca0d0 100644 --- a/modules/gallvp/syri/environment.yml +++ b/modules/gallvp/syri/environment.yml @@ -1,9 +1,5 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "syri" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::syri=1.7.0" diff --git a/modules/nf-core/custom/sratoolsncbisettings/environment.yml b/modules/nf-core/custom/sratoolsncbisettings/environment.yml index 44a1b008..cd4c3fbe 100644 --- a/modules/nf-core/custom/sratoolsncbisettings/environment.yml +++ b/modules/nf-core/custom/sratoolsncbisettings/environment.yml @@ -1,7 +1,5 @@ -name: custom_sratoolsncbisettings channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::sra-tools=3.0.8 diff --git a/modules/nf-core/fastavalidator/environment.yml b/modules/nf-core/fastavalidator/environment.yml index 70f346ef..44d55c1f 100644 --- a/modules/nf-core/fastavalidator/environment.yml +++ b/modules/nf-core/fastavalidator/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "fastavalidator" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::py_fasta_validator=0.6" diff --git a/modules/nf-core/fastavalidator/tests/main.nf.test b/modules/nf-core/fastavalidator/tests/main.nf.test index bb8c22cf..39b00d8b 100644 --- a/modules/nf-core/fastavalidator/tests/main.nf.test +++ b/modules/nf-core/fastavalidator/tests/main.nf.test @@ -15,7 +15,7 @@ nextflow_process { """ input[0] = [ [ id:'test', single_end:false ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } @@ -40,7 +40,7 @@ nextflow_process { """ input[0] = [ [ id:'test', single_end:false ], // meta map - file(params.test_data['sarscov2']['genome']['genome_gff3'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.gff3', checkIfExists: true) ] """ } diff --git a/modules/nf-core/fastp/environment.yml b/modules/nf-core/fastp/environment.yml index 70389e66..26d4aca5 100644 --- a/modules/nf-core/fastp/environment.yml +++ b/modules/nf-core/fastp/environment.yml @@ -1,7 +1,5 @@ -name: fastp channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::fastp=0.23.4 diff --git a/modules/nf-core/fastqc/environment.yml b/modules/nf-core/fastqc/environment.yml index 1787b38a..691d4c76 100644 --- a/modules/nf-core/fastqc/environment.yml +++ b/modules/nf-core/fastqc/environment.yml @@ -1,7 +1,5 @@ -name: fastqc channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::fastqc=0.12.1 diff --git a/modules/nf-core/fastqc/main.nf b/modules/nf-core/fastqc/main.nf index d79f1c86..d8989f48 100644 --- a/modules/nf-core/fastqc/main.nf +++ b/modules/nf-core/fastqc/main.nf @@ -26,7 +26,10 @@ process FASTQC { def rename_to = old_new_pairs*.join(' ').join(' ') def renamed_files = old_new_pairs.collect{ old_name, new_name -> new_name }.join(' ') - def memory_in_mb = MemoryUnit.of("${task.memory}").toUnit('MB') + // The total amount of allocated RAM by FastQC is equal to the number of threads defined (--threads) time the amount of RAM defined (--memory) + // https://github.com/s-andrews/FastQC/blob/1faeea0412093224d7f6a07f777fad60a5650795/fastqc#L211-L222 + // Dividing the task.memory by task.cpu allows to stick to requested amount of RAM in the label + def memory_in_mb = MemoryUnit.of("${task.memory}").toUnit('MB') / task.cpus // FastQC memory value allowed range (100 - 10000) def fastqc_memory = memory_in_mb > 10000 ? 10000 : (memory_in_mb < 100 ? 100 : memory_in_mb) diff --git a/modules/nf-core/fcs/fcsadaptor/environment.yml b/modules/nf-core/fcs/fcsadaptor/environment.yml index b11cd415..14207ff6 100644 --- a/modules/nf-core/fcs/fcsadaptor/environment.yml +++ b/modules/nf-core/fcs/fcsadaptor/environment.yml @@ -1,7 +1,5 @@ -name: fcs_fcsadaptor channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::false_flag # False flag to pass nf-core/lint diff --git a/modules/nf-core/fcs/fcsadaptor/tests/main.nf.test b/modules/nf-core/fcs/fcsadaptor/tests/main.nf.test index 13c80264..13caacea 100644 --- a/modules/nf-core/fcs/fcsadaptor/tests/main.nf.test +++ b/modules/nf-core/fcs/fcsadaptor/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_process { """ input[0] = [ [ id: 'test' ], - file(params.test_data['bacteroides_fragilis']['genome']['genome_fna_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/prokaryotes/bacteroides_fragilis/genome/genome.fna.gz', checkIfExists: true) ] """ } @@ -44,7 +44,7 @@ nextflow_process { when { process { """ - def input_file_lines = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true).text.split('\\n') + def input_file_lines = file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true).text.split('\\n') def file_with_adapters = file('sarscov2_with_adapters.fasta') file_with_adapters.text = ( input_file_lines[0..<(input_file_lines.size()/2)] @@ -89,7 +89,7 @@ nextflow_process { """ input[0] = [ [ id: 'test' ], - file(params.test_data['bacteroides_fragilis']['genome']['genome_fna_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/prokaryotes/bacteroides_fragilis/genome/genome.fna.gz', checkIfExists: true) ] """ } diff --git a/modules/nf-core/gunzip/environment.yml b/modules/nf-core/gunzip/environment.yml index dfc02a7b..c7794856 100644 --- a/modules/nf-core/gunzip/environment.yml +++ b/modules/nf-core/gunzip/environment.yml @@ -1,8 +1,6 @@ -name: gunzip channels: - conda-forge - bioconda - - defaults dependencies: - conda-forge::grep=3.11 - conda-forge::sed=4.8 diff --git a/modules/nf-core/merqury/hapmers/environment.yml b/modules/nf-core/merqury/hapmers/environment.yml index 5f7977cd..93a0c984 100644 --- a/modules/nf-core/merqury/hapmers/environment.yml +++ b/modules/nf-core/merqury/hapmers/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "merqury_hapmers" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::merqury=1.3" diff --git a/modules/nf-core/merqury/hapmers/tests/main.nf.test b/modules/nf-core/merqury/hapmers/tests/main.nf.test index 9a254aaf..8dcfa0d6 100644 --- a/modules/nf-core/merqury/hapmers/tests/main.nf.test +++ b/modules/nf-core/merqury/hapmers/tests/main.nf.test @@ -17,7 +17,7 @@ nextflow_process { """ input[0] = [ [ id:'child' ], // meta map - file(params.test_data['homo_sapiens']['illumina']['test2_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test2_1.fastq.gz', checkIfExists: true) ] input[1] = 21 """ @@ -30,7 +30,7 @@ nextflow_process { """ input[0] = [ [ id:'maternal' ], // meta map - file(params.test_data['homo_sapiens']['illumina']['test_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_1.fastq.gz', checkIfExists: true) ] input[1] = 21 """ @@ -43,7 +43,7 @@ nextflow_process { """ input[0] = [ [ id:'paternal' ], // meta map - file(params.test_data['homo_sapiens']['illumina']['test_2_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_2.fastq.gz', checkIfExists: true) ] input[1] = 21 """ diff --git a/modules/nf-core/merqury/merqury/environment.yml b/modules/nf-core/merqury/merqury/environment.yml index 722c47c1..a62b4b92 100644 --- a/modules/nf-core/merqury/merqury/environment.yml +++ b/modules/nf-core/merqury/merqury/environment.yml @@ -1,7 +1,5 @@ -name: merqury_merqury channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::merqury=1.3 diff --git a/modules/nf-core/merqury/merqury/tests/main.nf.test b/modules/nf-core/merqury/merqury/tests/main.nf.test index 34c7b46c..46a07c02 100644 --- a/modules/nf-core/merqury/merqury/tests/main.nf.test +++ b/modules/nf-core/merqury/merqury/tests/main.nf.test @@ -19,8 +19,8 @@ nextflow_process { input[0] = [ [ id:'test', single_end:false ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test_1_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_2_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_1.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_2.fastq.gz', checkIfExists: true) ] ] input[1] = 21 @@ -46,7 +46,7 @@ nextflow_process { """ assembly = [ [ id:'test', single_end:false ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] input[0] = MERYL_UNIONSUM.out.meryl_db.join( Channel.value( assembly ) ) """ @@ -91,7 +91,7 @@ nextflow_process { input[0] = [ [ id:'test', single_end:false ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test2_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test2_1.fastq.gz', checkIfExists: true) ] ] input[1] = 21 @@ -106,7 +106,7 @@ nextflow_process { input[0] = [ [ id:'test', single_end:false ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test2_2_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test2_2.fastq.gz', checkIfExists: true) ] ] input[1] = 21 @@ -120,7 +120,7 @@ nextflow_process { """ ch_assembly = Channel.value([ [ id:'test', single_end:false ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ]) ch_input = MERYL_UNIONSUM.out.meryl_db @@ -170,7 +170,7 @@ nextflow_process { """ assembly = [ [ id:'test', single_end:false ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] input[0] = MERYL_UNIONSUM.out.meryl_db.join( Channel.value( assembly ) ) """ diff --git a/modules/nf-core/meryl/count/environment.yml b/modules/nf-core/meryl/count/environment.yml index 808565ee..e37d7901 100644 --- a/modules/nf-core/meryl/count/environment.yml +++ b/modules/nf-core/meryl/count/environment.yml @@ -1,7 +1,5 @@ -name: meryl_count channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::meryl=1.4.1 diff --git a/modules/nf-core/meryl/unionsum/environment.yml b/modules/nf-core/meryl/unionsum/environment.yml index b8bdcbe8..e37d7901 100644 --- a/modules/nf-core/meryl/unionsum/environment.yml +++ b/modules/nf-core/meryl/unionsum/environment.yml @@ -1,7 +1,5 @@ -name: meryl_unionsum channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::meryl=1.4.1 diff --git a/modules/nf-core/minimap2/align/environment.yml b/modules/nf-core/minimap2/align/environment.yml index 41e8fe9f..dc6476b7 100644 --- a/modules/nf-core/minimap2/align/environment.yml +++ b/modules/nf-core/minimap2/align/environment.yml @@ -1,9 +1,6 @@ -name: minimap2_align - channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::htslib=1.20 diff --git a/modules/nf-core/seqkit/rmdup/environment.yml b/modules/nf-core/seqkit/rmdup/environment.yml index 6cb8fe9d..4f8058a9 100644 --- a/modules/nf-core/seqkit/rmdup/environment.yml +++ b/modules/nf-core/seqkit/rmdup/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "seqkit_rmdup" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::seqkit=2.8.1" diff --git a/modules/nf-core/seqkit/seq/environment.yml b/modules/nf-core/seqkit/seq/environment.yml index 74e0dd76..4f8058a9 100644 --- a/modules/nf-core/seqkit/seq/environment.yml +++ b/modules/nf-core/seqkit/seq/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "seqkit_seq" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::seqkit=2.8.1" diff --git a/modules/nf-core/seqkit/seq/tests/main.nf.test b/modules/nf-core/seqkit/seq/tests/main.nf.test index 3ed23945..9fd1c085 100644 --- a/modules/nf-core/seqkit/seq/tests/main.nf.test +++ b/modules/nf-core/seqkit/seq/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } @@ -37,7 +37,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta.gz', checkIfExists: true) ] """ } @@ -58,7 +58,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fastq/test_1.fastq.gz', checkIfExists: true) ] """ } @@ -79,7 +79,7 @@ nextflow_process { """ input[0] = [ [ id:'test_1' ], // meta map - file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fastq/test_1.fastq.gz', checkIfExists: true) ] """ } @@ -103,7 +103,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } @@ -127,7 +127,7 @@ nextflow_process { """ input[0] = [ [ id:'genome' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } diff --git a/modules/nf-core/seqkit/sort/environment.yml b/modules/nf-core/seqkit/sort/environment.yml index 3a02d156..4f8058a9 100644 --- a/modules/nf-core/seqkit/sort/environment.yml +++ b/modules/nf-core/seqkit/sort/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "seqkit_sort" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::seqkit=2.8.1" diff --git a/modules/nf-core/seqkit/sort/tests/main.nf.test b/modules/nf-core/seqkit/sort/tests/main.nf.test index e6f143dd..467d50b0 100644 --- a/modules/nf-core/seqkit/sort/tests/main.nf.test +++ b/modules/nf-core/seqkit/sort/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } @@ -37,7 +37,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta.gz', checkIfExists: true) ] """ } @@ -58,7 +58,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fastq/test_1.fastq.gz', checkIfExists: true) ] """ } @@ -79,7 +79,7 @@ nextflow_process { """ input[0] = [ [ id:'test_1' ], // meta map - file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fastq/test_1.fastq.gz', checkIfExists: true) ] """ } @@ -103,7 +103,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } @@ -127,7 +127,7 @@ nextflow_process { """ input[0] = [ [ id:'genome' ], // meta map - file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) ] """ } diff --git a/modules/nf-core/sratools/fasterqdump/environment.yml b/modules/nf-core/sratools/fasterqdump/environment.yml index 4011b691..970dfbc0 100644 --- a/modules/nf-core/sratools/fasterqdump/environment.yml +++ b/modules/nf-core/sratools/fasterqdump/environment.yml @@ -1,8 +1,6 @@ -name: sratools_fasterqdump channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::sra-tools=3.0.8 - conda-forge::pigz=2.6 diff --git a/modules/nf-core/sratools/prefetch/environment.yml b/modules/nf-core/sratools/prefetch/environment.yml index 0abad336..6596bc7c 100644 --- a/modules/nf-core/sratools/prefetch/environment.yml +++ b/modules/nf-core/sratools/prefetch/environment.yml @@ -1,8 +1,6 @@ -name: sratools_prefetch channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::sra-tools=3.1.0 - conda-forge::curl=8.5.0 diff --git a/modules/nf-core/sratools/prefetch/main.nf b/modules/nf-core/sratools/prefetch/main.nf index 46e7cb3f..74838d53 100644 --- a/modules/nf-core/sratools/prefetch/main.nf +++ b/modules/nf-core/sratools/prefetch/main.nf @@ -13,7 +13,7 @@ process SRATOOLS_PREFETCH { path certificate output: - tuple val(meta), path(id), emit: sra + tuple val(meta), path(id, type: 'dir'), emit: sra path 'versions.yml' , emit: versions when: diff --git a/modules/nf-core/tidk/explore/environment.yml b/modules/nf-core/tidk/explore/environment.yml index 4fe55407..22eb538b 100644 --- a/modules/nf-core/tidk/explore/environment.yml +++ b/modules/nf-core/tidk/explore/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "tidk_explore" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::tidk=0.2.41" diff --git a/modules/nf-core/tidk/explore/tests/main.nf.test b/modules/nf-core/tidk/explore/tests/main.nf.test index a04fee61..4869dab0 100644 --- a/modules/nf-core/tidk/explore/tests/main.nf.test +++ b/modules/nf-core/tidk/explore/tests/main.nf.test @@ -17,7 +17,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_21_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/chr21/sequence/genome.fasta', checkIfExists: true) ] """ } @@ -26,8 +26,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } @@ -40,7 +39,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] """ } @@ -49,9 +48,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out.explore_tsv).match("no_top_sequence_explore_tsv") }, - { assert process.out.top_sequence == [] }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } @@ -66,7 +63,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_21_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/chr21/sequence/genome.fasta', checkIfExists: true) ] """ } @@ -75,9 +72,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert process.out.explore_tsv != null }, - { assert process.out.top_sequence != null }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } diff --git a/modules/nf-core/tidk/explore/tests/main.nf.test.snap b/modules/nf-core/tidk/explore/tests/main.nf.test.snap index c46d31c1..800c375d 100644 --- a/modules/nf-core/tidk/explore/tests/main.nf.test.snap +++ b/modules/nf-core/tidk/explore/tests/main.nf.test.snap @@ -42,27 +42,98 @@ ] } ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, "timestamp": "2023-12-05T14:13:24.14906" }, - "no_top_sequence_explore_tsv": { + "stub": { "content": [ - [ - [ - { - "id": "test" - }, - "test.tidk.explore.tsv:md5,27b8513be5478ea2b846a407b3639c01" + { + "0": [ + [ + { + "id": "test" + }, + "test.tidk.explore.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "test" + }, + "test.top.sequence.txt:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + "versions.yml:md5,8de27958aee1d1fc9075e8046114bdb5" + ], + "explore_tsv": [ + [ + { + "id": "test" + }, + "test.tidk.explore.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "top_sequence": [ + [ + { + "id": "test" + }, + "test.top.sequence.txt:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,8de27958aee1d1fc9075e8046114bdb5" ] - ] + } ], - "timestamp": "2023-12-05T14:16:18.982423" + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-08T10:15:45.144639" }, - "versions": { + "homo_sapiens-genome_fasta-no_top_sequence": { "content": [ - [ - "versions.yml:md5,8de27958aee1d1fc9075e8046114bdb5" - ] + { + "0": [ + [ + { + "id": "test" + }, + "test.tidk.explore.tsv:md5,27b8513be5478ea2b846a407b3639c01" + ] + ], + "1": [ + + ], + "2": [ + "versions.yml:md5,8de27958aee1d1fc9075e8046114bdb5" + ], + "explore_tsv": [ + [ + { + "id": "test" + }, + "test.tidk.explore.tsv:md5,27b8513be5478ea2b846a407b3639c01" + ] + ], + "top_sequence": [ + + ], + "versions": [ + "versions.yml:md5,8de27958aee1d1fc9075e8046114bdb5" + ] + } ], - "timestamp": "2023-12-05T14:13:24.198311" + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-08T10:15:33.44005" } } \ No newline at end of file diff --git a/modules/nf-core/tidk/plot/environment.yml b/modules/nf-core/tidk/plot/environment.yml index ed1706e3..22eb538b 100644 --- a/modules/nf-core/tidk/plot/environment.yml +++ b/modules/nf-core/tidk/plot/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "tidk_plot" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::tidk=0.2.41" diff --git a/modules/nf-core/tidk/plot/tests/main.nf.test b/modules/nf-core/tidk/plot/tests/main.nf.test index e267c157..e807d7fc 100644 --- a/modules/nf-core/tidk/plot/tests/main.nf.test +++ b/modules/nf-core/tidk/plot/tests/main.nf.test @@ -20,7 +20,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], - file(params.test_data['homo_sapiens']['genome']['genome_21_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/chr21/sequence/genome.fasta', checkIfExists: true) ] input[1] = 'TTAGGG' """ @@ -39,8 +39,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } @@ -64,8 +63,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } diff --git a/modules/nf-core/tidk/plot/tests/main.nf.test.snap b/modules/nf-core/tidk/plot/tests/main.nf.test.snap index 5de9533e..e28d5aea 100644 --- a/modules/nf-core/tidk/plot/tests/main.nf.test.snap +++ b/modules/nf-core/tidk/plot/tests/main.nf.test.snap @@ -26,16 +26,12 @@ ] } ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, "timestamp": "2023-12-05T14:29:24.721706" }, - "versions": { - "content": [ - [ - "versions.yml:md5,b850b0d8b9add80d7863cc62e3f32c99" - ] - ], - "timestamp": "2023-12-05T14:29:55.412674" - }, "stub": { "content": [ { @@ -63,6 +59,10 @@ ] } ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, "timestamp": "2023-12-16T18:50:29.344319" } } \ No newline at end of file diff --git a/modules/nf-core/tidk/search/environment.yml b/modules/nf-core/tidk/search/environment.yml index eaf92acc..22eb538b 100644 --- a/modules/nf-core/tidk/search/environment.yml +++ b/modules/nf-core/tidk/search/environment.yml @@ -1,9 +1,7 @@ --- # yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json -name: "tidk_search" channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::tidk=0.2.41" diff --git a/modules/nf-core/tidk/search/tests/main.nf.test b/modules/nf-core/tidk/search/tests/main.nf.test index 6dcbe577..cb8b5393 100644 --- a/modules/nf-core/tidk/search/tests/main.nf.test +++ b/modules/nf-core/tidk/search/tests/main.nf.test @@ -18,7 +18,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] input[1] = 'TTAGGG' """ @@ -28,9 +28,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out.bedgraph).match("bedgraph") }, - { assert snapshot(process.out.versions).match("versions") }, - { assert process.out.tsv == [] } + { assert snapshot(process.out).match() } ) } @@ -43,7 +41,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] input[1] = 'TTAGGG' """ @@ -53,9 +51,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out.tsv).match("tsv") }, - { assert snapshot(process.out.versions).match("versions") }, - { assert process.out.bedgraph == [] } + { assert snapshot(process.out).match() } ) } @@ -71,7 +67,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] input[1] = 'TTAGGG' """ @@ -81,9 +77,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert process.out.bedgraph != null }, - { assert process.out.tsv == [] }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } @@ -98,7 +92,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] input[1] = 'TTAGGG' """ @@ -108,9 +102,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert process.out.bedgraph == [] }, - { assert process.out.tsv != null }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } diff --git a/modules/nf-core/tidk/search/tests/main.nf.test.snap b/modules/nf-core/tidk/search/tests/main.nf.test.snap index 15aedd25..69515c83 100644 --- a/modules/nf-core/tidk/search/tests/main.nf.test.snap +++ b/modules/nf-core/tidk/search/tests/main.nf.test.snap @@ -1,36 +1,158 @@ { - "bedgraph": { + "stub-tsv": { "content": [ - [ - [ - { - "id": "test" - }, - "test.bedgraph:md5,8277cc74bf083f51584ba6d2b8a8013f" + { + "0": [ + [ + { + "id": "test" + }, + "test.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + + ], + "2": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" + ], + "bedgraph": [ + + ], + "tsv": [ + [ + { + "id": "test" + }, + "test.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" ] - ] + } ], - "timestamp": "2023-12-05T09:53:52.893139" + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-08T10:29:23.918538" }, - "versions": { + "homo_sapiens-genome_fasta-bedgraph": { "content": [ - [ - "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" - ] + { + "0": [ + + ], + "1": [ + [ + { + "id": "test" + }, + "test.bedgraph:md5,8277cc74bf083f51584ba6d2b8a8013f" + ] + ], + "2": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" + ], + "bedgraph": [ + [ + { + "id": "test" + }, + "test.bedgraph:md5,8277cc74bf083f51584ba6d2b8a8013f" + ] + ], + "tsv": [ + + ], + "versions": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" + ] + } + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-08T10:29:11.515308" + }, + "homo_sapiens-genome_fasta-tsv": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.tsv:md5,5b44a89396f412eb571ea240ef9deedd" + ] + ], + "1": [ + + ], + "2": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" + ], + "bedgraph": [ + + ], + "tsv": [ + [ + { + "id": "test" + }, + "test.tsv:md5,5b44a89396f412eb571ea240ef9deedd" + ] + ], + "versions": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" + ] + } ], - "timestamp": "2023-12-05T09:53:52.89726" + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-08T10:29:15.661774" }, - "tsv": { + "stub-bedgraph": { "content": [ - [ - [ - { - "id": "test" - }, - "test.tsv:md5,5b44a89396f412eb571ea240ef9deedd" + { + "0": [ + + ], + "1": [ + [ + { + "id": "test" + }, + "test.bedgraph:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" + ], + "bedgraph": [ + [ + { + "id": "test" + }, + "test.bedgraph:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "tsv": [ + + ], + "versions": [ + "versions.yml:md5,6baeeb0e50c9bea6975173a329179f8e" ] - ] + } ], - "timestamp": "2023-12-05T09:53:56.455271" + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-08T10:29:19.802171" } } \ No newline at end of file diff --git a/modules/nf-core/umitools/extract/environment.yml b/modules/nf-core/umitools/extract/environment.yml index aab452d1..9f9e03c4 100644 --- a/modules/nf-core/umitools/extract/environment.yml +++ b/modules/nf-core/umitools/extract/environment.yml @@ -1,7 +1,5 @@ -name: umitools_extract channels: - conda-forge - bioconda - - defaults dependencies: - bioconda::umi_tools=1.1.5 diff --git a/modules/nf-core/untar/environment.yml b/modules/nf-core/untar/environment.yml index 4f498244..c7794856 100644 --- a/modules/nf-core/untar/environment.yml +++ b/modules/nf-core/untar/environment.yml @@ -1,8 +1,6 @@ -name: untar channels: - conda-forge - bioconda - - defaults dependencies: - conda-forge::grep=3.11 - conda-forge::sed=4.8 diff --git a/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test b/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test index 6bc13bac..d06617fb 100644 --- a/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test +++ b/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test @@ -23,11 +23,11 @@ nextflow_workflow { input[0] = Channel.of( [ [ id:'test' ], - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ], [ [ id:'test2' ], - file(params.test_data['homo_sapiens']['genome']['genome_21_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/chr21/sequence/genome.fasta', checkIfExists: true) ] ) input[1] = Channel.of( @@ -62,11 +62,11 @@ nextflow_workflow { input[0] = Channel.of( [ [ id:'test' ], - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ], [ [ id:'test2' ], - file(params.test_data['homo_sapiens']['genome']['genome_21_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/chr21/sequence/genome.fasta', checkIfExists: true) ] ) input[1] = Channel.of( @@ -97,11 +97,11 @@ nextflow_workflow { input[0] = Channel.of( [ [ id:'test' ], - file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ], [ [ id:'test2' ], - file(params.test_data['homo_sapiens']['genome']['genome_21_fasta'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/chr21/sequence/genome.fasta', checkIfExists: true) ] ) input[1] = [] diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/main.nf b/subworkflows/nf-core/utils_nextflow_pipeline/main.nf index ac31f28f..28e32b20 100644 --- a/subworkflows/nf-core/utils_nextflow_pipeline/main.nf +++ b/subworkflows/nf-core/utils_nextflow_pipeline/main.nf @@ -2,10 +2,6 @@ // Subworkflow with functionality that may be useful for any Nextflow pipeline // -import org.yaml.snakeyaml.Yaml -import groovy.json.JsonOutput -import nextflow.extension.FilesEx - /* ======================================================================================== SUBWORKFLOW DEFINITION @@ -58,7 +54,7 @@ workflow UTILS_NEXTFLOW_PIPELINE { // Generate version string // def getWorkflowVersion() { - String version_string = "" + def version_string = "" as String if (workflow.manifest.version) { def prefix_v = workflow.manifest.version[0] != 'v' ? 'v' : '' version_string += "${prefix_v}${workflow.manifest.version}" @@ -79,10 +75,10 @@ def dumpParametersToJSON(outdir) { def timestamp = new java.util.Date().format( 'yyyy-MM-dd_HH-mm-ss') def filename = "params_${timestamp}.json" def temp_pf = new File(workflow.launchDir.toString(), ".${filename}") - def jsonStr = JsonOutput.toJson(params) - temp_pf.text = JsonOutput.prettyPrint(jsonStr) + def jsonStr = groovy.json.JsonOutput.toJson(params) + temp_pf.text = groovy.json.JsonOutput.prettyPrint(jsonStr) - FilesEx.copyTo(temp_pf.toPath(), "${outdir}/pipeline_info/params_${timestamp}.json") + nextflow.extension.FilesEx.copyTo(temp_pf.toPath(), "${outdir}/pipeline_info/params_${timestamp}.json") temp_pf.delete() } @@ -90,7 +86,7 @@ def dumpParametersToJSON(outdir) { // When running with -profile conda, warn if channels have not been set-up appropriately // def checkCondaChannels() { - Yaml parser = new Yaml() + def parser = new org.yaml.snakeyaml.Yaml() def channels = [] try { def config = parser.load("conda config --show channels".execute().text) @@ -102,14 +98,16 @@ def checkCondaChannels() { // Check that all channels are present // This channel list is ordered by required channel priority. - def required_channels_in_order = ['conda-forge', 'bioconda', 'defaults'] + def required_channels_in_order = ['conda-forge', 'bioconda'] def channels_missing = ((required_channels_in_order as Set) - (channels as Set)) as Boolean // Check that they are in the right order def channel_priority_violation = false - def n = required_channels_in_order.size() - for (int i = 0; i < n - 1; i++) { - channel_priority_violation |= !(channels.indexOf(required_channels_in_order[i]) < channels.indexOf(required_channels_in_order[i+1])) + + required_channels_in_order.eachWithIndex { channel, index -> + if (index < required_channels_in_order.size() - 1) { + channel_priority_violation |= !(channels.indexOf(channel) < channels.indexOf(required_channels_in_order[index+1])) + } } if (channels_missing | channel_priority_violation) { diff --git a/subworkflows/nf-core/utils_nextflow_pipeline/tests/nextflow.config b/subworkflows/nf-core/utils_nextflow_pipeline/tests/nextflow.config index d0a926bf..a09572e5 100644 --- a/subworkflows/nf-core/utils_nextflow_pipeline/tests/nextflow.config +++ b/subworkflows/nf-core/utils_nextflow_pipeline/tests/nextflow.config @@ -3,7 +3,7 @@ manifest { author = """nf-core""" homePage = 'https://127.0.0.1' description = """Dummy pipeline""" - nextflowVersion = '!>=23.04.0' + nextflowVersion = '!>=23.04.0' version = '9.9.9' doi = 'https://doi.org/10.5281/zenodo.5070524' } diff --git a/subworkflows/nf-core/utils_nfcore_pipeline/main.nf b/subworkflows/nf-core/utils_nfcore_pipeline/main.nf index 14558c39..cbd8495b 100644 --- a/subworkflows/nf-core/utils_nfcore_pipeline/main.nf +++ b/subworkflows/nf-core/utils_nfcore_pipeline/main.nf @@ -2,9 +2,6 @@ // Subworkflow with utility functions specific to the nf-core pipeline template // -import org.yaml.snakeyaml.Yaml -import nextflow.extension.FilesEx - /* ======================================================================================== SUBWORKFLOW DEFINITION @@ -34,7 +31,7 @@ workflow UTILS_NFCORE_PIPELINE { // Warn if a -profile or Nextflow config has not been provided to run the pipeline // def checkConfigProvided() { - valid_config = true + def valid_config = true as Boolean if (workflow.profile == 'standard' && workflow.configFiles.size() <= 1) { log.warn "[$workflow.manifest.name] You are attempting to run the pipeline without any custom configuration!\n\n" + "This will be dependent on your local compute environment but can be achieved via one or more of the following:\n" + @@ -66,11 +63,13 @@ def checkProfileProvided(nextflow_cli_args) { // def workflowCitation() { def temp_doi_ref = "" - String[] manifest_doi = workflow.manifest.doi.tokenize(",") + def manifest_doi = workflow.manifest.doi.tokenize(",") // Using a loop to handle multiple DOIs // Removing `https://doi.org/` to handle pipelines using DOIs vs DOI resolvers // Removing ` ` since the manifest.doi is a string and not a proper list - for (String doi_ref: manifest_doi) temp_doi_ref += " https://doi.org/${doi_ref.replace('https://doi.org/', '').replace(' ', '')}\n" + manifest_doi.each { doi_ref -> + temp_doi_ref += " https://doi.org/${doi_ref.replace('https://doi.org/', '').replace(' ', '')}\n" + } return "If you use ${workflow.manifest.name} for your analysis please cite:\n\n" + "* The pipeline\n" + temp_doi_ref + "\n" + @@ -84,7 +83,7 @@ def workflowCitation() { // Generate workflow version string // def getWorkflowVersion() { - String version_string = "" + def version_string = "" as String if (workflow.manifest.version) { def prefix_v = workflow.manifest.version[0] != 'v' ? 'v' : '' version_string += "${prefix_v}${workflow.manifest.version}" @@ -102,8 +101,8 @@ def getWorkflowVersion() { // Get software versions for pipeline // def processVersionsFromYAML(yaml_file) { - Yaml yaml = new Yaml() - versions = yaml.load(yaml_file).collectEntries { k, v -> [ k.tokenize(':')[-1], v ] } + def yaml = new org.yaml.snakeyaml.Yaml() + def versions = yaml.load(yaml_file).collectEntries { k, v -> [ k.tokenize(':')[-1], v ] } return yaml.dumpAsMap(versions).trim() } @@ -124,7 +123,7 @@ def workflowVersionToYAML() { def softwareVersionsToYAML(ch_versions) { return ch_versions .unique() - .map { processVersionsFromYAML(it) } + .map { version -> processVersionsFromYAML(version) } .unique() .mix(Channel.of(workflowVersionToYAML())) } @@ -134,19 +133,19 @@ def softwareVersionsToYAML(ch_versions) { // def paramsSummaryMultiqc(summary_params) { def summary_section = '' - for (group in summary_params.keySet()) { + summary_params.keySet().each { group -> def group_params = summary_params.get(group) // This gets the parameters of that particular group if (group_params) { summary_section += "

$group

\n" summary_section += "
\n" - for (param in group_params.keySet()) { + group_params.keySet().sort().each { param -> summary_section += "
$param
${group_params.get(param) ?: 'N/A'}
\n" } summary_section += "
\n" } } - String yaml_file_text = "id: '${workflow.manifest.name.replace('/','-')}-summary'\n" + def yaml_file_text = "id: '${workflow.manifest.name.replace('/','-')}-summary'\n" as String yaml_file_text += "description: ' - this information is collected when the pipeline is started.'\n" yaml_file_text += "section_name: '${workflow.manifest.name} Workflow Summary'\n" yaml_file_text += "section_href: 'https://github.com/${workflow.manifest.name}'\n" @@ -161,7 +160,7 @@ def paramsSummaryMultiqc(summary_params) { // nf-core logo // def nfCoreLogo(monochrome_logs=true) { - Map colors = logColours(monochrome_logs) + def colors = logColours(monochrome_logs) as Map String.format( """\n ${dashedLine(monochrome_logs)} @@ -180,7 +179,7 @@ def nfCoreLogo(monochrome_logs=true) { // Return dashed line // def dashedLine(monochrome_logs=true) { - Map colors = logColours(monochrome_logs) + def colors = logColours(monochrome_logs) as Map return "-${colors.dim}----------------------------------------------------${colors.reset}-" } @@ -188,7 +187,7 @@ def dashedLine(monochrome_logs=true) { // ANSII colours used for terminal logging // def logColours(monochrome_logs=true) { - Map colorcodes = [:] + def colorcodes = [:] as Map // Reset / Meta colorcodes['reset'] = monochrome_logs ? '' : "\033[0m" @@ -287,7 +286,7 @@ def completionEmail(summary_params, email, email_on_fail, plaintext_email, outdi } def summary = [:] - for (group in summary_params.keySet()) { + summary_params.keySet().sort().each { group -> summary << summary_params[group] } @@ -344,10 +343,10 @@ def completionEmail(summary_params, email, email_on_fail, plaintext_email, outdi def sendmail_html = sendmail_template.toString() // Send the HTML e-mail - Map colors = logColours(monochrome_logs) + def colors = logColours(monochrome_logs) as Map if (email_address) { try { - if (plaintext_email) { throw GroovyException('Send plaintext e-mail, not HTML') } + if (plaintext_email) { throw new org.codehaus.groovy.GroovyException('Send plaintext e-mail, not HTML') } // Try to send HTML e-mail using sendmail def sendmail_tf = new File(workflow.launchDir.toString(), ".sendmail_tmp.html") sendmail_tf.withWriter { w -> w << sendmail_html } @@ -364,13 +363,13 @@ def completionEmail(summary_params, email, email_on_fail, plaintext_email, outdi // Write summary e-mail HTML to a file def output_hf = new File(workflow.launchDir.toString(), ".pipeline_report.html") output_hf.withWriter { w -> w << email_html } - FilesEx.copyTo(output_hf.toPath(), "${outdir}/pipeline_info/pipeline_report.html"); + nextflow.extension.FilesEx.copyTo(output_hf.toPath(), "${outdir}/pipeline_info/pipeline_report.html"); output_hf.delete() // Write summary e-mail TXT to a file def output_tf = new File(workflow.launchDir.toString(), ".pipeline_report.txt") output_tf.withWriter { w -> w << email_txt } - FilesEx.copyTo(output_tf.toPath(), "${outdir}/pipeline_info/pipeline_report.txt"); + nextflow.extension.FilesEx.copyTo(output_tf.toPath(), "${outdir}/pipeline_info/pipeline_report.txt"); output_tf.delete() } @@ -378,7 +377,7 @@ def completionEmail(summary_params, email, email_on_fail, plaintext_email, outdi // Print pipeline summary on completion // def completionSummary(monochrome_logs=true) { - Map colors = logColours(monochrome_logs) + def colors = logColours(monochrome_logs) as Map if (workflow.success) { if (workflow.stats.ignoredCount == 0) { log.info "-${colors.purple}[$workflow.manifest.name]${colors.green} Pipeline completed successfully${colors.reset}-" @@ -395,7 +394,7 @@ def completionSummary(monochrome_logs=true) { // def imNotification(summary_params, hook_url) { def summary = [:] - for (group in summary_params.keySet()) { + summary_params.keySet().sort().each { group -> summary << summary_params[group] } From dd06148c59c59ded70824f6c58ed7e2b8b1480c4 Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 11:25:49 +1200 Subject: [PATCH 4/9] Fixed flowchart syntax --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3ae86dfa..9e258aee 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ flowchart LR forEachTag(Assembly) ==> VALIDATE_FORMAT[VALIDATE FORMAT] - VALIDATE_FORMAT ==> ncbiFCS[NCBI FCS\nADAPTOR] + VALIDATE_FORMAT ==> ncbiFCS[NCBI FCS ADAPTOR] ncbiFCS ==> Check{Check} VALIDATE_FORMAT ==> ncbiGX[NCBI FCS GX] From e1a10b60db3bc3398a6e4189587efe0da529eb6a Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 11:28:02 +1200 Subject: [PATCH 5/9] Updated changelog --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 07436f19..93956a29 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### `Fixed` -1. Made the `hic` param pattern more flexible as `^SR\w+$|^\S+\{1,2\}[\w\.]*\.f(ast)?q\.gz$` +1. Made the `hic` param pattern more flexible as `^SR\w+$|^\S+\{1,2\}[\w\.]*\.f(ast)?q\.gz$` [#130](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/130) +2. Fixed flowchart syntax to remove '\n' [#132](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/132) ### `Dependencies` From e494dda4f156deb1cfb6890725e2cbc9522491dc Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 14:09:08 +1200 Subject: [PATCH 6/9] Now gff files for circular molecules can have end coordinates greater than the sequence length --- CHANGELOG.md | 3 +- modules.json | 2 +- .../gff3_gt_gff3_gff3validator_stat/main.nf | 49 ++++++++++++++- .../tests/main.nf.test | 33 +++++++++- .../tests/main.nf.test.snap | 61 +++++++++++++++++++ 5 files changed, 142 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d8c13200..1a7a0783 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,7 +13,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 1. Made the `hic` param pattern more flexible as `^SR\w+$|^\S+\{1,2\}[\w\.]*\.f(ast)?q\.gz$` [#130](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/130) 2. Fixed flowchart syntax to remove '\n' [#132](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/132) -3. Updated modules to remove Bioconda `defaults` channel +3. Updated modules to remove Bioconda `defaults` channel [#135](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/135) +4. Now gff files for circular molecules can have end coordinates greater than the sequence length [#129](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/129) ### `Dependencies` diff --git a/modules.json b/modules.json index f20e4b05..86cf046a 100644 --- a/modules.json +++ b/modules.json @@ -131,7 +131,7 @@ }, "gff3_gt_gff3_gff3validator_stat": { "branch": "main", - "git_sha": "775762619b57101ca800269b6ecda0b915fb9913", + "git_sha": "58c5f9e695b9e03d43e4c59d9339af7c93f0acbe", "installed_by": ["subworkflows"] } } diff --git a/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/main.nf b/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/main.nf index 07608710..291f675e 100644 --- a/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/main.nf +++ b/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/main.nf @@ -129,19 +129,62 @@ def checkGff3FastaCorrespondence(meta, gff3File, faiFile) { def end = parts[4].toInteger() def seqLength = sequenceLengths[name].toInteger() - if (start > seqLength || end > seqLength) { + if ( start > seqLength ) { return [ meta, [], // success log [ "Failed to validate gff3: ${gff3File.name}", - "Coordinates exceed sequence length in GFF3 file:", + "Start coordinates exceed sequence length in the GFF3 file:", + "Sequence: $name", + "Sequence length: $seqLength", + "Start: $start" + ] // error log + ] + } + + if ( end > seqLength ) { + + // Check if the sequence is defined as a circular region + // Otherwise, fail + def regionLine = gff3Lines.find { + def _parts = it.split('\t') + + _parts[0] == "$name" && _parts[2] == 'region' + } + + if ( ! regionLine ) { + return [ + meta, + [], // success log + [ + "Failed to validate gff3: ${gff3File.name}", + "End coordinates exceed sequence length and the sequence attributes are also missing in GFF3 file:", + "Sequence: $name", + "Sequence length: $seqLength", + "End: $end" + ] // error log + ] + } + + def regionAtts = regionLine.split('\t')[8] + def isCircular = regionAtts.contains('circular=true') + + // Models on circular molecules are allowed to exceed sequence length + if ( isCircular ) { continue } + + return [ + meta, + [], // success log + [ + "Failed to validate gff3: ${gff3File.name}", + "End coordinates exceed length of a non-circular sequence in GFF3 file:", "Sequence: $name", "Sequence length: $seqLength", - "Start: $start", "End: $end" ] // error log ] + } } diff --git a/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test b/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test index 6098d7da..d8a32cdf 100644 --- a/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test +++ b/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test @@ -114,7 +114,38 @@ nextflow_workflow { workflow.out.valid_gff3, workflow.out.versions).match() }, - { assert path(workflow.out.log_for_invalid_gff3[0][1]).text.contains('Coordinates exceed sequence length in GFF3 file') } + { assert path(workflow.out.log_for_invalid_gff3[0][1]).text.contains('Start coordinates exceed sequence length in the GFF3 file') } + ) + } + } + + test("sarscov2 - fasta - circular_region - pass") { + + when { + workflow { + """ + def circular_gff = new File('circular_gff.gff') + circular_gff.text = [ + '##gff-version 3', + 'MT192765.1 Genbank region 1 29829 . + . circular=true', + 'MT192765.1 Genbank gene 29551 39667 . + . ID=gene1', + 'MT192765.1 Genbank CDS 29551 39667 . + 0 Parent=gene1' + ].join('\\n') + + input[0] = Channel.of([ [ id:'test' ], // meta map + circular_gff.toPath() + ]) + input[1] = Channel.of([ [ id:'test' ], + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + ]) + """ + } + } + + then { + assertAll( + { assert workflow.success}, + { assert snapshot(workflow.out).match() } ) } } diff --git a/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test.snap b/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test.snap index e81b4459..660f7e0b 100644 --- a/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test.snap +++ b/subworkflows/gallvp/gff3_gt_gff3_gff3validator_stat/tests/main.nf.test.snap @@ -63,6 +63,67 @@ }, "timestamp": "2024-07-29T16:22:06.684959" }, + "sarscov2 - fasta - circular_region - pass": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.gt.gff3:md5,b3bb01b18b8eeac28922ab55c5c6c939" + ] + ], + "1": [ + [ + { + "id": "test" + }, + "test.yml:md5,545b8e290cfa8a93fd0ff01ad9daee08" + ] + ], + "2": [ + + ], + "3": [ + "versions.yml:md5,0cb9519e626e5128d8495cf29b7d59ff", + "versions.yml:md5,80555fe6e28e9564cb534f5478842286", + "versions.yml:md5,8a418ac34d045b0cdac812eb2dc9c106", + "versions.yml:md5,c89b081a13c68acc5326e43ca9104344" + ], + "gff3_stats": [ + [ + { + "id": "test" + }, + "test.yml:md5,545b8e290cfa8a93fd0ff01ad9daee08" + ] + ], + "log_for_invalid_gff3": [ + + ], + "valid_gff3": [ + [ + { + "id": "test" + }, + "test.gt.gff3:md5,b3bb01b18b8eeac28922ab55c5c6c939" + ] + ], + "versions": [ + "versions.yml:md5,0cb9519e626e5128d8495cf29b7d59ff", + "versions.yml:md5,80555fe6e28e9564cb534f5478842286", + "versions.yml:md5,8a418ac34d045b0cdac812eb2dc9c106", + "versions.yml:md5,c89b081a13c68acc5326e43ca9104344" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.4" + }, + "timestamp": "2024-09-19T13:53:32.901064" + }, "sarscov2-genome_gff3-homo_sapiens-genome_fasta-correspondence_fail": { "content": [ [ From 36455bb7443c0128aafdc1bfe065a483cd4e0ab3 Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Thu, 19 Sep 2024 14:35:17 +1200 Subject: [PATCH 7/9] Version bump to 2.1.1 --- CHANGELOG.md | 2 +- CITATION.cff | 2 +- nextflow.config | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a7a0783..d4b28408 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## v2.1.1+dev - [19-Sep-2024] +## v2.1.1 - [19-Sep-2024] ### `Added` diff --git a/CITATION.cff b/CITATION.cff index 27d51814..eff317d2 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -25,7 +25,7 @@ authors: - family-names: "Deng" given-names: "Cecilia" title: "AssemblyQC: A Nextflow pipeline for reproducible reporting of assembly quality" -version: 2.1.1+dev +version: 2.1.1 date-released: 2024-07-30 url: "https://github.com/Plant-Food-Research-Open/assemblyqc" doi: 10.1093/bioinformatics/btae477 diff --git a/nextflow.config b/nextflow.config index 1704bca6..b161bdd7 100644 --- a/nextflow.config +++ b/nextflow.config @@ -283,7 +283,7 @@ manifest { description = """A Nextflow pipeline which evaluates assembly quality with multiple QC tools and presents the results in a unified html report.""" mainScript = 'main.nf' nextflowVersion = '!>=23.04.0' - version = '2.1.1+dev' + version = '2.1.1' doi = 'https://doi.org/10.1093/bioinformatics/btae477' } From dd3440bddf07d2777fc952f31f2e0eb39e8d20b1 Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Fri, 20 Sep 2024 09:34:10 +1200 Subject: [PATCH 8/9] Formatted mermaid chart --- CHANGELOG.md | 2 +- README.md | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d4b28408..1b85ecdd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## v2.1.1 - [19-Sep-2024] +## v2.1.1 - [20-Sep-2024] ### `Added` diff --git a/README.md b/README.md index 9e258aee..de13e09d 100644 --- a/README.md +++ b/README.md @@ -30,24 +30,24 @@ flowchart LR forEachTag(Assembly) ==> VALIDATE_FORMAT[VALIDATE FORMAT] - VALIDATE_FORMAT ==> ncbiFCS[NCBI FCS ADAPTOR] + VALIDATE_FORMAT ==> ncbiFCS[NCBI FCS ADAPTOR] ncbiFCS ==> Check{Check} - VALIDATE_FORMAT ==> ncbiGX[NCBI FCS GX] + VALIDATE_FORMAT ==> ncbiGX[NCBI FCS GX] ncbiGX ==> Check Check ==> |Clean|Run(Run) Check ==> |Contamination|Skip(Skip All) Skip ==> REPORT - VALIDATE_FORMAT ==> GFF_STATS[GENOMETOOLS GT STAT] + VALIDATE_FORMAT ==> GFF_STATS[GENOMETOOLS GT STAT] - Run ==> ASS_STATS[ASSEMBLATHON STATS] + Run ==> ASS_STATS[ASSEMBLATHON STATS] Run ==> BUSCO Run ==> TIDK Run ==> LAI Run ==> KRAKEN2 - Run ==> HIC_CONTACT_MAP[HIC CONTACT MAP] + Run ==> HIC_CONTACT_MAP[HIC CONTACT MAP] Run ==> MUMMER Run ==> MINIMAP2 Run ==> MERQURY From 18b81fb73a9a0e2f3c36f6fff5e63cc29b1fa894 Mon Sep 17 00:00:00 2001 From: Usman Rashid Date: Fri, 20 Sep 2024 10:13:33 +1200 Subject: [PATCH 9/9] Fixed the branch protection GitHub action --- .github/workflows/branch.yml | 2 +- CHANGELOG.md | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/branch.yml b/.github/workflows/branch.yml index 4bfbab63..c5f090a7 100644 --- a/.github/workflows/branch.yml +++ b/.github/workflows/branch.yml @@ -13,7 +13,7 @@ jobs: - name: Check PRs if: github.repository == 'plant-food-research-open/assemblyqc' run: | - { [[ ${{github.event.pull_request.head.repo.full_name }} == plant-food-research-open/assemblyqc ]] && [[ $GITHUB_HEAD_REF == "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]] + { [[ ${{ github.event.pull_request.head.repo.full_name }} == Plant-Food-Research-Open/assemblyqc ]] && [[ $GITHUB_HEAD_REF == "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]] # If the above check failed, post a comment on the PR explaining the failure # NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets diff --git a/CHANGELOG.md b/CHANGELOG.md index 1b85ecdd..a0a472db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 2. Fixed flowchart syntax to remove '\n' [#132](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/132) 3. Updated modules to remove Bioconda `defaults` channel [#135](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/135) 4. Now gff files for circular molecules can have end coordinates greater than the sequence length [#129](https://github.com/Plant-Food-Research-Open/assemblyqc/issues/129) +5. Fixed the branch protection GitHub action ### `Dependencies`