Skip to content

Save analysis-ready FASTQs for every host removal route - #782

Open
stev004 wants to merge 7 commits into
nf-core:devfrom
stev004:analysis-ready-hostremoval
Open

stev004 wants to merge 7 commits into
nf-core:devfrom
stev004:analysis-ready-hostremoval

Conversation

@stev004

@stev004 stev004 commented Oct 24, 2026 •

Copy link
Copy Markdown

Closes #775.

With host removal on, --save_analysis_ready_fastqs missed the host-removed reads:

  • minimap2: SAMTOOLS_FASTQ writes *_other.fastq.gz, but the pattern was *.fq.gz
  • deacon and hostile: no analysis_ready_fastqs entry at all

I've added the missing entries and fixed the pattern. DEACON_FILTER now also uses ${meta.id}_${meta.run_accession} as its prefix, like the other host removal steps, because runs from the same sample were overwriting each other in deacon/filter/. That also changes melon's output names and sylph's report for single-run samples, so the default snapshot is updated too.

To test it, save_analysis_ready_fastqs is now on in test_falcobbduk (bowtie2 and minimap2), test_alternativepreprocessing (hostile) and test_fastpnonpareilkrakenuniq (deacon). I got the new file names for bowtie2/minimap2 and deacon from local runs. Hostile runs out of memory on my machine, so I worked out its names from how prinseq++ and hostile name their outputs, and CI will confirm those.

PR checklist

  • This comment contains a description of changes (with reason).
  • If you've fixed a bug or added code that should be tested, add tests!
  • Make sure your code lints (nf-core pipelines lint).
  • Output Documentation in docs/output.md is updated.
  • CHANGELOG.md is updated.

This was AI-assisted (Claude Code). I've gone through all the changes and test runs myself and understand them.

🤖 Generated with Claude Code

Each host removal route (bowtie2/minimap2, deacon, hostile) should save
both short- and long-read output to analysis_ready_fastqs, and deacon
should keep separate outputs per run (nf-core#775).
- SAMTOOLS_FASTQ: match *_other.fastq.gz, the long reads passed on downstream
- HOSTILE_CLEAN_SHORTREADS/LONGREADS and DEACON_FILTER: publish to analysis_ready_fastqs
- DEACON_FILTER: name outputs <sample>_<run> so runs of one sample don't overwrite each other

Fixes nf-core#775
nf-core lint (nf_test_content) wants every pipeline test to cover
versions.yml. The hostile test checks the file exists, as it has no
snapshot.
Also restore ro-crate-metadata.json, which a local lint run had
reformatted.
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review 🔄 Running since 2026-10-24T05:53:31.719831Z c8e8595 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

Copy link
Copy Markdown

Warning

Newer version of the nf-core template is available.

Your pipeline is using an old version of the nf-core template: 4.1.0.
Please update your pipeline to the latest version.

For more documentation on how to update your pipeline, please see the Synchronisation documentation.

@github-actions

github-actions Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

nf-core pipelines lint overall result: Passed ✅

Posted for pipeline commit 2203ec6

+| ✅ 344 tests passed       |+
#| ❔   4 tests were ignored |#
#| ❔   1 tests had warnings |#
Details

❔ Tests ignored:

  • files_exist - File is ignored: conf/igenomes.config
  • files_exist - File is ignored: conf/igenomes_ignored.config
  • files_exist - File is ignored: .github/workflows/linting_comment.yml
  • files_unchanged - File ignored due to lint config: .github/PULL_REQUEST_TEMPLATE.md

❔ Tests fixed:

✅ Tests passed:

  • files_exist - File found: .gitattributes
  • files_exist - File found: .gitignore
  • files_exist - File found: .nf-core.yml
  • files_exist - File found: .prettierignore
  • files_exist - File found: .prettierrc.yml
  • files_exist - File found: CHANGELOG.md
  • files_exist - File found: CITATIONS.md
  • files_exist - File found: CODE_OF_CONDUCT.md
  • files_exist - File found: LICENSE or LICENSE.md or LICENCE or LICENCE.md
  • files_exist - File found: nextflow_schema.json
  • files_exist - File found: nextflow.config
  • files_exist - File found: README.md
  • files_exist - File found: .github/.dockstore.yml
  • files_exist - File found: .github/ISSUE_TEMPLATE/bug_report.yml
  • files_exist - File found: .github/ISSUE_TEMPLATE/config.yml
  • files_exist - File found: .github/ISSUE_TEMPLATE/feature_request.yml
  • files_exist - File found: .github/PULL_REQUEST_TEMPLATE.md
  • files_exist - File found: .github/workflows/branch.yml
  • files_exist - File found: .github/workflows/nf-test.yml
  • files_exist - File found: .github/actions/get-shards/action.yml
  • files_exist - File found: .github/actions/nf-test/action.yml
  • files_exist - File found: .github/workflows/pr-comment.yml
  • files_exist - File found: .github/workflows/linting.yml
  • files_exist - File found: assets/email_template.html
  • files_exist - File found: assets/email_template.txt
  • files_exist - File found: assets/sendmail_template.txt
  • files_exist - File found: assets/nf-core-taxprofiler_logo_light.png
  • files_exist - File found: conf/modules.config
  • files_exist - File found: conf/test.config
  • files_exist - File found: conf/test_full.config
  • files_exist - File found: docs/CONTRIBUTING.md
  • files_exist - File found: docs/images/nf-core-taxprofiler_logo_light.png
  • files_exist - File found: docs/images/nf-core-taxprofiler_logo_dark.png
  • files_exist - File found: docs/output.md
  • files_exist - File found: docs/README.md
  • files_exist - File found: docs/README.md
  • files_exist - File found: docs/usage.md
  • files_exist - File found: nf-test.config
  • files_exist - File found: tests/default.nf.test
  • files_exist - File found: main.nf
  • files_exist - File found: assets/multiqc_config.yml
  • files_exist - File found: conf/base.config
  • files_exist - File found: .github/workflows/awstest.yml
  • files_exist - File found: .github/workflows/awsfulltest.yml
  • files_exist - File found: modules.json
  • files_exist - File found: ro-crate-metadata.json
  • files_exist - File not found check: .github/ISSUE_TEMPLATE/bug_report.md
  • files_exist - File not found check: .github/ISSUE_TEMPLATE/feature_request.md
  • files_exist - File not found check: .github/workflows/push_dockerhub.yml
  • files_exist - File not found check: .markdownlint.yml
  • files_exist - File not found check: .nf-core.yaml
  • files_exist - File not found check: .yamllint.yml
  • files_exist - File not found check: bin/markdown_to_html.r
  • files_exist - File not found check: conf/aws.config
  • files_exist - File not found check: docs/images/nf-core-taxprofiler_logo.png
  • files_exist - File not found check: lib/Checks.groovy
  • files_exist - File not found check: lib/Completion.groovy
  • files_exist - File not found check: lib/NfcoreTemplate.groovy
  • files_exist - File not found check: lib/Utils.groovy
  • files_exist - File not found check: lib/Workflow.groovy
  • files_exist - File not found check: lib/WorkflowMain.groovy
  • files_exist - File not found check: lib/WorkflowTaxprofiler.groovy
  • files_exist - File not found check: parameters.settings.json
  • files_exist - File not found check: pipeline_template.yml
  • files_exist - File not found check: Singularity
  • files_exist - File not found check: lib/nfcore_external_java_deps.jar
  • files_exist - File not found check: .travis.yml
  • nextflow_config - Found nf-schema plugin
  • nextflow_config - Config variable found: manifest.name
  • nextflow_config - Config variable found: manifest.nextflowVersion
  • nextflow_config - Config variable found: manifest.description
  • nextflow_config - Config variable found: manifest.version
  • nextflow_config - Config variable found: manifest.homePage
  • nextflow_config - Config variable found: timeline.enabled
  • nextflow_config - Config variable found: trace.enabled
  • nextflow_config - Config variable found: report.enabled
  • nextflow_config - Config variable found: dag.enabled
  • nextflow_config - Config variable found: process.cpus
  • nextflow_config - Config variable found: process.memory
  • nextflow_config - Config variable found: process.time
  • nextflow_config - Config variable found: params.outdir
  • nextflow_config - Config variable found: params.input
  • nextflow_config - Config variable found: manifest.mainScript
  • nextflow_config - Config variable found: timeline.file
  • nextflow_config - Config variable found: trace.file
  • nextflow_config - Config variable found: report.file
  • nextflow_config - Config variable found: dag.file
  • nextflow_config - Config variable (correctly) not found: params.nf_required_version
  • nextflow_config - Config variable (correctly) not found: params.container
  • nextflow_config - Config variable (correctly) not found: params.singleEnd
  • nextflow_config - Config variable (correctly) not found: params.igenomesIgnore
  • nextflow_config - Config variable (correctly) not found: params.name
  • nextflow_config - Config variable (correctly) not found: params.enable_conda
  • nextflow_config - Config variable (correctly) not found: params.max_cpus
  • nextflow_config - Config variable (correctly) not found: params.max_memory
  • nextflow_config - Config variable (correctly) not found: params.max_time
  • nextflow_config - Config variable (correctly) not found: params.validationFailUnrecognisedParams
  • nextflow_config - Config variable (correctly) not found: params.validationLenientMode
  • nextflow_config - Config variable (correctly) not found: params.validationSchemaIgnoreParams
  • nextflow_config - Config variable (correctly) not found: params.validationShowHiddenParams
  • nextflow_config - Config variable (correctly) not found: validation.failUnrecognisedParams
  • nextflow_config - Config variable (correctly) not found: validation.failUnrecognisedHeaders
  • nextflow_config - Config timeline.enabled had correct value: True
  • nextflow_config - Config report.enabled had correct value: True
  • nextflow_config - Config trace.enabled had correct value: True
  • nextflow_config - Config dag.enabled had correct value: True
  • nextflow_config - Config manifest.name began with nf-core/
  • nextflow_config - Config manifest.homePage began with https://github.com/nf-core/
  • nextflow_config - Config dag.file ended with .html
  • nextflow_config - Config variable manifest.nextflowVersion started with >= or !>=
  • nextflow_config - Config manifest.version ends in dev: 2.0.2dev
  • nextflow_config - Config params.custom_config_version is set to master
  • nextflow_config - Config params.custom_config_base is set to https://raw.githubusercontent.com/nf-core/configs/master
  • nextflow_config - Lines for loading custom profiles found
  • nextflow_config - nextflow.config contains configuration profile test
  • nextflow_config - Config default value correct: params.preprocessing_qc_tool= fastqc
  • nextflow_config - Config default value correct: params.shortread_qc_tool= fastp
  • nextflow_config - Config default value correct: params.shortread_qc_minlength= 15
  • nextflow_config - Config default value correct: params.shortread_complexityfilter_tool= bbduk
  • nextflow_config - Config default value correct: params.shortread_complexityfilter_entropy= 0.3
  • nextflow_config - Config default value correct: params.shortread_complexityfilter_bbduk_windowsize= 50
  • nextflow_config - Config default value correct: params.shortread_complexityfilter_fastp_threshold= 30
  • nextflow_config - Config default value correct: params.shortread_complexityfilter_prinseqplusplus_mode= entropy
  • nextflow_config - Config default value correct: params.shortread_complexityfilter_prinseqplusplus_dustscore= 0.5
  • nextflow_config - Config default value correct: params.longread_adapterremoval_tool= porechop_abi
  • nextflow_config - Config default value correct: params.longread_filter_tool= nanoq
  • nextflow_config - Config default value correct: params.longread_qc_qualityfilter_minlength= 1000
  • nextflow_config - Config default value correct: params.longread_qc_qualityfilter_keeppercent= 90
  • nextflow_config - Config default value correct: params.longread_qc_qualityfilter_targetbases= 500000000
  • nextflow_config - Config default value correct: params.longread_qc_qualityfilter_minquality= 7
  • nextflow_config - Config default value correct: params.shortread_redundancyestimation_mode= kmer
  • nextflow_config - Config default value correct: params.shortread_hostremoval_tool= deacon
  • nextflow_config - Config default value correct: params.longread_hostremoval_tool= deacon
  • nextflow_config - Config default value correct: params.diamond_output_format= tsv
  • nextflow_config - Config default value correct: params.kaiju_taxon_rank= species
  • nextflow_config - Config default value correct: params.krakenuniq_batch_size= 20
  • nextflow_config - Config default value correct: params.malt_mode= BlastN
  • nextflow_config - Config default value correct: params.motus_longprep_splittinglength= 300
  • nextflow_config - Config default value correct: params.motus_longprep_minlen= 50
  • nextflow_config - Config default value correct: params.ganon_report_type= reads
  • nextflow_config - Config default value correct: params.ganon_report_rank= default
  • nextflow_config - Config default value correct: params.ganon_report_toppercentile= 0
  • nextflow_config - Config default value correct: params.ganon_report_mincount= 0
  • nextflow_config - Config default value correct: params.ganon_report_maxcount= 0
  • nextflow_config - Config default value correct: params.sylph_data_type= relative_abundance
  • nextflow_config - Config default value correct: params.standardisation_taxpasta_format= tsv
  • nextflow_config - Config default value correct: params.custom_config_version= master
  • nextflow_config - Config default value correct: params.custom_config_base= https://raw.githubusercontent.com/nf-core/configs/master
  • nextflow_config - Config default value correct: params.publish_dir_mode= copy
  • nextflow_config - Config default value correct: params.max_multiqc_email_size= 25.MB
  • nextflow_config - Config default value correct: params.validate_params= true
  • nextflow_config - Config default value correct: params.pipelines_testdata_base_path= https://raw.githubusercontent.com/nf-core/test-datasets/
  • nf_test_content - 'tests/test_nopreprocessing.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_nopreprocessing.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_nopreprocessing.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_nopreprocessing.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_malt.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_malt.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_malt.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_malt.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_falcobbduk.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_falcobbduk.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_falcobbduk.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_falcobbduk.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_minimal.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_minimal.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_minimal.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_minimal.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_alternativepreprocessing.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_alternativepreprocessing.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_alternativepreprocessing.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_alternativepreprocessing.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_motus.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_motus.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_motus.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_fastpnonpareilkrakenuniq.nf.test' contains outdir parameter
  • nf_test_content - 'tests/test_fastpnonpareilkrakenuniq.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_fastpnonpareilkrakenuniq.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/test_fastpnonpareilkrakenuniq.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/default.nf.test' contains outdir parameter
  • nf_test_content - 'tests/default.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/default.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/default.nf.test' snapshots a 'versions.yml' file
  • nf_test_content - 'tests/nextflow.config' contains modules_testdata_base_path
  • nf_test_content - 'tests/nextflow.config' contains pipelines_testdata_base_path
  • nf_test_content - 'nf-test.config' sets a testsDir
  • nf_test_content - 'nf-test.config' sets a workDir
  • nf_test_content - 'nf-test.config' sets a configFile
  • files_unchanged - .gitattributes matches the template
  • files_unchanged - .prettierrc.yml matches the template
  • files_unchanged - CODE_OF_CONDUCT.md matches the template
  • files_unchanged - LICENSE matches the template
  • files_unchanged - .github/.dockstore.yml matches the template
  • files_unchanged - .github/ISSUE_TEMPLATE/bug_report.yml matches the template
  • files_unchanged - .github/ISSUE_TEMPLATE/config.yml matches the template
  • files_unchanged - .github/ISSUE_TEMPLATE/feature_request.yml matches the template
  • files_unchanged - .github/workflows/branch.yml matches the template
  • files_unchanged - .github/workflows/pr-comment.yml matches the template
  • files_unchanged - .github/workflows/linting.yml matches the template
  • files_unchanged - assets/email_template.html matches the template
  • files_unchanged - assets/email_template.txt matches the template
  • files_unchanged - assets/sendmail_template.txt matches the template
  • files_unchanged - assets/nf-core-taxprofiler_logo_light.png matches the template
  • files_unchanged - docs/images/nf-core-taxprofiler_logo_light.png matches the template
  • files_unchanged - docs/images/nf-core-taxprofiler_logo_dark.png matches the template
  • files_unchanged - docs/README.md matches the template
  • files_unchanged - .gitignore matches the template
  • files_unchanged - .prettierignore matches the template
  • actions_nf_test - '.github/workflows/nf-test.yml' is triggered on expected events
  • actions_nf_test - '.github/workflows/nf-test.yml' checks minimum NF version
  • actions_awstest - '.github/workflows/awstest.yml' is triggered correctly
  • actions_awsfulltest - .github/workflows/awsfulltest.yml is triggered correctly
  • actions_awsfulltest - .github/workflows/awsfulltest.yml does not use -profile test
  • readme - README Nextflow minimum version badge matched config. Badge: 26.04.6, Config: 26.04.6
  • readme - README nf-core template version badge found.
  • readme - README Zenodo placeholder was replaced with DOI.
  • pipeline_todos - No TODO strings found
  • pipeline_if_empty_null - No ifEmpty(null) strings found
  • plugin_includes - No wrong validation plugin imports have been found
  • pipeline_name_conventions - Name adheres to nf-core convention
  • template_strings - Did not find any Jinja template strings (0 files)
  • schema_lint - Schema lint passed
  • schema_lint - Schema title + description lint passed
  • schema_lint - Input mimetype lint passed: 'text/csv'
  • schema_params - Schema matched params returned from nextflow config
  • system_exit - No System.exit calls found
  • actions_schema_validation - Workflow validation passed: pr-comment.yml
  • actions_schema_validation - Workflow validation passed: branch.yml
  • actions_schema_validation - Workflow validation passed: labeler.yml
  • actions_schema_validation - Workflow validation passed: nf-test.yml
  • actions_schema_validation - Workflow validation passed: awsfulltest.yml
  • actions_schema_validation - Workflow validation passed: download_pipeline.yml
  • actions_schema_validation - Workflow validation passed: awstest.yml
  • actions_schema_validation - Workflow validation passed: clean-up.yml
  • actions_schema_validation - Workflow validation passed: template-version-comment.yml
  • actions_schema_validation - Workflow validation passed: fix_linting.yml
  • actions_schema_validation - Workflow validation passed: linting.yml
  • actions_schema_validation - Workflow validation passed: release-announcements.yml
  • merge_markers - No merge markers found in pipeline files
  • modules_json - Only installed modules found in modules.json
  • multiqc_config - assets/multiqc_config.yml found and not ignored.
  • multiqc_config - assets/multiqc_config.yml contains report_section_order
  • multiqc_config - assets/multiqc_config.yml contains export_plots
  • multiqc_config - assets/multiqc_config.yml contains report_comment
  • multiqc_config - assets/multiqc_config.yml follows the ordering scheme of the minimally required plugins.
  • multiqc_config - assets/multiqc_config.yml contains a matching 'report_comment'.
  • multiqc_config - assets/multiqc_config.yml contains 'export_plots: true'.
  • modules_structure - modules directory structure is correct 'modules/nf-core/TOOL/SUBTOOL'
  • local_component_structure - local subworkflows directory structure is correct 'subworkflows/local/TOOL/SUBTOOL'
  • base_config - conf/base.config found and not ignored.
  • base_config - BRACKEN_BRACKEN found in conf/base.config and Nextflow scripts.
  • base_config - CENTRIFUGE_KREPORT found in conf/base.config and Nextflow scripts.
  • base_config - KRAKENTOOLS_COMBINEKREPORTS_CENTRIFUGE found in conf/base.config and Nextflow scripts.
  • base_config - MEGAN_RMA2INFO_TSV found in conf/base.config and Nextflow scripts.
  • base_config - MEGAN_RMA2INFO_KRONA found in conf/base.config and Nextflow scripts.
  • base_config - FALCO found in conf/base.config and Nextflow scripts.
  • modules_config - conf/modules.config found and not ignored.
  • modules_config - UNTAR found in conf/modules.config and Nextflow scripts.
  • modules_config - FASTQC found in conf/modules.config and Nextflow scripts.
  • modules_config - FASTQC_PROCESSED found in conf/modules.config and Nextflow scripts.
  • modules_config - FALCO found in conf/modules.config and Nextflow scripts.
  • modules_config - FALCO_PROCESSED found in conf/modules.config and Nextflow scripts.
  • modules_config - FASTP_SINGLE found in conf/modules.config and Nextflow scripts.
  • modules_config - FASTP_PAIRED found in conf/modules.config and Nextflow scripts.
  • modules_config - ADAPTERREMOVAL_SINGLE found in conf/modules.config and Nextflow scripts.
  • modules_config - ADAPTERREMOVAL_PAIRED found in conf/modules.config and Nextflow scripts.
  • modules_config - NONPAREIL_NONPAREIL found in conf/modules.config and Nextflow scripts.
  • modules_config - NONPAREIL_CURVE found in conf/modules.config and Nextflow scripts.
  • modules_config - NONPAREIL_SET found in conf/modules.config and Nextflow scripts.
  • modules_config - NONPAREIL_NONPAREILCURVESR found in conf/modules.config and Nextflow scripts.
  • modules_config - CAT_FASTQ found in conf/modules.config and Nextflow scripts.
  • modules_config - PORECHOP_PORECHOP found in conf/modules.config and Nextflow scripts.
  • modules_config - PORECHOP_ABI found in conf/modules.config and Nextflow scripts.
  • modules_config - FILTLONG found in conf/modules.config and Nextflow scripts.
  • modules_config - NANOQ found in conf/modules.config and Nextflow scripts.
  • modules_config - BBMAP_BBDUK found in conf/modules.config and Nextflow scripts.
  • modules_config - PRINSEQPLUSPLUS found in conf/modules.config and Nextflow scripts.
  • modules_config - BOWTIE2_BUILD found in conf/modules.config and Nextflow scripts.
  • modules_config - BOWTIE2_ALIGN found in conf/modules.config and Nextflow scripts.
  • modules_config - SAMTOOLS_INDEX found in conf/modules.config and Nextflow scripts.
  • modules_config - MINIMAP2_INDEX found in conf/modules.config and Nextflow scripts.
  • modules_config - MINIMAP2_ALIGN found in conf/modules.config and Nextflow scripts.
  • modules_config - SAMTOOLS_VIEW found in conf/modules.config and Nextflow scripts.
  • modules_config - SAMTOOLS_FASTQ found in conf/modules.config and Nextflow scripts.
  • modules_config - SAMTOOLS_STATS found in conf/modules.config and Nextflow scripts.
  • modules_config - HOSTILE_FETCH_SHORTREADS found in conf/modules.config and Nextflow scripts.
  • modules_config - HOSTILE_CLEAN_SHORTREADS found in conf/modules.config and Nextflow scripts.
  • modules_config - HOSTILE_FETCH_LONGREADS found in conf/modules.config and Nextflow scripts.
  • modules_config - HOSTILE_CLEAN_LONGREADS found in conf/modules.config and Nextflow scripts.
  • modules_config - DEACON_INDEX found in conf/modules.config and Nextflow scripts.
  • modules_config - DEACON_FILTER found in conf/modules.config and Nextflow scripts.
  • modules_config - MERGE_RUNS found in conf/modules.config and Nextflow scripts.
  • modules_config - MALT_RUN found in conf/modules.config and Nextflow scripts.
  • modules_config - MEGAN_RMA2INFO_TSV found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKEN2_KRAKEN2 found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKEN2STANDARDREPORT found in conf/modules.config and Nextflow scripts.
  • modules_config - BRACKEN_BRACKEN found in conf/modules.config and Nextflow scripts.
  • modules_config - BRACKEN_COMBINEBRACKENOUTPUTS found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKENTOOLS_COMBINEKREPORTS_KRAKEN found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKENUNIQ_PRELOADEDKRAKENUNIQ found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKENTOOLS_KREPORT2KRONA found in conf/modules.config and Nextflow scripts.
  • modules_config - KRONA_KTIMPORTTEXT found in conf/modules.config and Nextflow scripts.
  • modules_config - MEGAN_RMA2INFO_KRONA found in conf/modules.config and Nextflow scripts.
  • modules_config - KRONA_KTIMPORTTAXONOMY found in conf/modules.config and Nextflow scripts.
  • modules_config - METAPHLAN_METAPHLAN found in conf/modules.config and Nextflow scripts.
  • modules_config - METAPHLAN_MERGEMETAPHLANTABLES found in conf/modules.config and Nextflow scripts.
  • modules_config - CENTRIFUGE_CENTRIFUGE found in conf/modules.config and Nextflow scripts.
  • modules_config - CENTRIFUGE_KREPORT found in conf/modules.config and Nextflow scripts.
  • modules_config - CENTRIFUGER_CENTRIFUGER found in conf/modules.config and Nextflow scripts.
  • modules_config - CENTRIFUGER_QUANTIFICATION found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKENTOOLS_COMBINEKREPORTS_CENTRIFUGE found in conf/modules.config and Nextflow scripts.
  • modules_config - KRAKENTOOLS_COMBINEKREPORTS_CENTRIFUGER found in conf/modules.config and Nextflow scripts.
  • modules_config - KAIJU_KAIJU found in conf/modules.config and Nextflow scripts.
  • modules_config - KAIJU_KAIJU2TABLE_SINGLE found in conf/modules.config and Nextflow scripts.
  • modules_config - KAIJU_KAIJU2TABLE_COMBINED found in conf/modules.config and Nextflow scripts.
  • modules_config - KAIJU_KAIJU2KRONA found in conf/modules.config and Nextflow scripts.
  • modules_config - DIAMOND_BLASTX found in conf/modules.config and Nextflow scripts.
  • modules_config - MOTUS_PROFILE found in conf/modules.config and Nextflow scripts.
  • modules_config - MOTUS_PREPLONG found in conf/modules.config and Nextflow scripts.
  • modules_config - MOTUS_MERGE found in conf/modules.config and Nextflow scripts.
  • modules_config - KMCP_SEARCH found in conf/modules.config and Nextflow scripts.
  • modules_config - KMCP_PROFILE found in conf/modules.config and Nextflow scripts.
  • modules_config - GANON_CLASSIFY found in conf/modules.config and Nextflow scripts.
  • modules_config - GANON_REPORT found in conf/modules.config and Nextflow scripts.
  • modules_config - GANON_TABLE found in conf/modules.config and Nextflow scripts.
  • modules_config - SYLPH_PROFILE found in conf/modules.config and Nextflow scripts.
  • modules_config - SYLPHTAX_TAXPROF found in conf/modules.config and Nextflow scripts.
  • modules_config - SYLPHTAX_MERGE found in conf/modules.config and Nextflow scripts.
  • modules_config - MELON found in conf/modules.config and Nextflow scripts.
  • modules_config - METACACHE_QUERY found in conf/modules.config and Nextflow scripts.
  • modules_config - TAXPASTA_MERGE found in conf/modules.config and Nextflow scripts.
  • modules_config - TAXPASTA_STANDARDISE found in conf/modules.config and Nextflow scripts.
  • modules_config - MULTIQC found in conf/modules.config and Nextflow scripts.
  • nfcore_yml - Repository type in .nf-core.yml is valid: pipeline
  • nfcore_yml - nf-core version in .nf-core.yml is set to the latest version: 4.1.0
  • rocrate_readme_sync - RO-Crate description matches the README.md.
  • container_configs - conf/containers_conda_lock_files_amd64.config is up to date
  • container_configs - conf/containers_conda_lock_files_arm64.config is up to date
  • container_configs - conf/containers_docker_amd64.config is up to date
  • container_configs - conf/containers_docker_arm64.config is up to date
  • container_configs - conf/containers_singularity_https_amd64.config is up to date
  • container_configs - conf/containers_singularity_https_arm64.config is up to date
  • container_configs - conf/containers_singularity_oras_amd64.config is up to date
  • container_configs - conf/containers_singularity_oras_arm64.config is up to date

Run details

  • nf-core/tools version 4.1.0
  • Run at 2026-10-24 18:32:33

@github-actions

github-actions Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

❌ nf-test failed with latest Nextflow version

Note

Tests with Nextflow's latest version failed but it will not cause a CI workflow failure.
Please check if the failure is expected with newer (edge-)releases of Nextflow or if it needs fixing.

  • ❌ docker | latest-everything | Shard 5/5

See the full run for details.

melon names its output after the input file, and sylph's report
includes it, so the run accession now shows up there too.

@jfy133 jfy133 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Conceptually fix makes sense, just have some comments around the fix itself

Comment thread CHANGELOG.md Outdated

### `Fixed`

- [#782](https://github.com/nf-core/taxprofiler/pull/782) Fixed empty `analysis_ready_fastqs` after host removal with minimap2, hostile or deacon, and deacon outputs of runs from the same sample overwriting each other (by @stev004)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [#782](https://github.com/nf-core/taxprofiler/pull/782) Fixed empty `analysis_ready_fastqs` after host removal with minimap2, hostile or deacon, and deacon outputs of runs from the same sample overwriting each other (by @stev004)
- [#782](https://github.com/nf-core/taxprofiler/pull/782) Fixed empty `analysis_ready_fastqs/` after host removal with minimap2, hostile or deacon, and deacon outputs of runs from the same sample overwriting each other (by @stev004)

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, thanks.

Comment thread tests/test_analysisreadyfastqs.nf.test Outdated
@@ -0,0 +1,98 @@
nextflow_pipeline {

name "Test analysis-ready FASTQs after host removal"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we need a whole separate test for this, do not already have a test including this step turned on in one of the other profiles? 🤔

Or if indeed do not have any existing test testing this, can we merge this test with one of the existing ones?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point. I've dropped the separate test and turned it on in the existing bowtie2/minimap2, hostile and deacon tests instead.

One thing I noticed: with run merging on, the per-run reads end up in there next to the merged ones. Looks like a separate bug, so I can open an issue for it.

Comment thread tests/test_analysisreadyfastqs.nf.test Outdated
test("-profile test_minimal --save_analysis_ready_fastqs - bowtie2 and minimap2 host removal") {

when {
params {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this test is restrained ,we actually specify all params in a dedicated netzflow config file under test/ to have the ability to run the test configuration without nf-test itself. See the other tests for examples

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not needed now the separate test is gone.

Instead of a separate test, turn on save_analysis_ready_fastqs in
test_falcobbduk (bowtie2/minimap2), test_alternativepreprocessing
(hostile) and test_fastpnonpareilkrakenuniq (deacon). Also take the
CHANGELOG wording from review.

@jfy133 jfy133 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM but let's wait for @sofstam to test it properly :)

@sofstam

sofstam commented Oct 26, 2026

Copy link
Copy Markdown
Collaborator

Will do it during the week :) Thanks for the quick review @jfy133

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants