Skip to content

Update Parabricks to 4.8.0-1 (with samtools 1.25 and Picard 3.5.0) - #641

Merged
eduard-watchmaker merged 5 commits into
taps_v2from
parabricks-4.8
Nov 11, 2026
Merged

eduard-watchmaker merged 5 commits into
taps_v2from
parabricks-4.8

Conversation

@eduard-watchmaker

Copy link
Copy Markdown
Contributor

Updates Parabricks to 4.8.0-1 (from 4.6.0-1), plus samtools 1.25 and Picard 3.5.0, which the GPU alignment paths use. Builds on #638, so the base is taps_v2; it can be retargeted to dev once #638 is merged.

Changes

  • parabricks/fq2bam and parabricks/fq2bammeth from nf-core/modules master (Parabricks 4.8.0-1).
  • The modules and subworkflows around them, also from master:
    • modules: samtools sort/index/stats/flagstat/idxstats 1.25; Picard markduplicates/addorreplacereadgroups 3.5.0; methyldackel/*; bwa/mem;
    • subworkflows: fastq_align_dedup_bwameth, fastq_align_dedup_bwamem, fastq_align_bwa, bam_sort_stats_samtools, bam_stats_samtools, bam_methyldackel.
  • samtools/faidx also moves to samtools 1.25, so the pipeline uses one samtools version.
  • fq2bam now takes the known-sites index too, so the known_sites placeholder passed to FASTQ_ALIGN_DEDUP_BWAMEM gains an element.
  • Container config files regenerated (nf-core pipelines lint --fix container_configs).
  • New GPU test tests/bwamem_taps_use_gpu.nf.test for --aligner bwamem --taps, which runs parabricks/fq2bam. Until now only fq2bammeth had a GPU test.

Testing

  • CPU nf-test: all 53 tests pass on native x86_64 (Docker, Nextflow 25.10.4) with regenerated snapshots. The snapshot diffs are only the samtools and Picard versions, plus the samtools .stats files, which record the samtools version.
  • GPU, Parabricks 4.6 vs 4.8. I ran both GPU test cases (fq2bammeth and fq2bam TAPS) on AWS Batch (L40S) with taps_v2 and with this branch, then compared the outputs:
    • all BAM records are identical (positions, flags, CIGARs, sequences), as are the MethylDackel bedGraphs, rastair calls, flagstat/idxstats and duplicate metrics;
    • the one difference: Parabricks 4.8 fq2bam adds the MC (mate CIGAR) tag to the 20 unmapped reads whose mate is mapped, in the paired-end Ecoli_10K_methylated sample, as bwa mem does.
  • GPU snapshots. No GPU was available for nf-test here, so I built the GPU snapshots from those Batch outputs. To check the method, the Parabricks 4.6 outputs reproduce the current CI-made bwameth_use_gpu snapshot exactly (versions, file list, md5s and BAM read hashes). If the T4 runners disagree, @nf-core-bot update gpu snapshot path:<test> will regenerate them.
  • nf-core pipelines lint: 501 passed, 0 failed.

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).
  • Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
  • CHANGELOG.md is updated.

Generated by Claude Code

🤖 Generated with Claude Code

eduard-watchmaker and others added 2 commits November 11, 2026 13:23
Update parabricks/fq2bam and parabricks/fq2bammeth (4.8.0-1), the samtools
and Picard modules (1.25, 3.5.0), methyldackel and bwa/mem, and the
fastq_align_dedup_bwameth, fastq_align_dedup_bwamem, fastq_align_bwa,
bam_sort_stats_samtools, bam_stats_samtools and bam_methyldackel subworkflows
to nf-core/modules master. fq2bam now takes known sites with their index.

Add a GPU test for --aligner bwamem --taps (parabricks/fq2bam). Snapshots for
the CPU tests were regenerated on x86_64; the GPU snapshots were built from
AWS Batch GPU runs whose Parabricks 4.6 outputs reproduce the existing GPU
snapshot exactly.

Generated by Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@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.2.1.
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 Nov 11, 2026 •

Copy link
Copy Markdown

nf-core pipelines lint overall result: Passed ✅ ⚠️

Posted for pipeline commit 4cb0ac8

+| ✅ 257 tests passed       |+
#| ❔   8 tests were ignored |#
!| ❗   2 tests had warnings |!
Details

❗ Test warnings:

  • pipeline_todos - TODO string in CONTRIBUTING.md: Add any pipeline specific contribution guidelines here, such as coding styles, procedures, checklists etc.
  • pipeline_todos - TODO string in awsfulltest.yml: You can customise AWS full pipeline tests as required

❔ Tests ignored:

  • files_exist - File is ignored: lib/nfcore_external_java_deps.jar
  • files_exist - File is ignored: conf/modules.config
  • files_exist - File is ignored: .github/workflows/ci.yml
  • files_unchanged - File ignored due to lint config: assets/nf-core-methylseq_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-methylseq_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-methylseq_logo_dark.png
  • files_unchanged - File ignored due to lint config: .gitignore or .prettierignore
  • modules_config - modules_config

✅ Tests passed:

Run details

  • nf-core/tools version 4.2.2
  • Run at 2026-11-11 21:56:42

eduard-watchmaker and others added 2 commits November 11, 2026 14:28
Ignore the Parabricks fq2bam BAMs (parabricks/*.bam, *.bai) in snapshots, as
for the other alignment BAMs: their headers hold run-specific paths, so the
md5 changes between runs. Their reads are still checked through
getReadsMD5, which drops leading zeros.

Generated by Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@eduard-watchmaker eduard-watchmaker self-assigned this Nov 11, 2026
Generated by Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@eduard-watchmaker
eduard-watchmaker marked this pull request as ready for review November 11, 2026 22:26
@eduard-watchmaker
eduard-watchmaker requested a review from a team as a code owner November 11, 2026 22:26
@eduard-watchmaker
eduard-watchmaker merged commit 7fdbdd4 into taps_v2 Nov 11, 2026
101 checks passed
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.

1 participant