Dev#6
Open
nickhsmith wants to merge 6298 commits into
Open
Conversation
This reverts commit 53958c6.
Enable the Condel plugin for VEP annotation to calculate Consensus Deleteriousness scores for missense mutations using SIFT and PolyPhen-2 predictions. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add usage documentation for the Condel VEP plugin. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Enable the Mastermind plugin for VEP annotation to retrieve citation counts from the Mastermind Genomic Search Engine for variants. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add usage documentation for the Mastermind VEP plugin including optional parameters. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add support for the VEP Phenotypes plugin which retrieves overlapping phenotype information from Ensembl's phenotype annotation databases. The plugin maps phenotype data to genomic features including genes, variants, and QTLs. Parameters: - --vep_phenotypes: Enable the plugin - --phenotypes_file: Optional path to phenotype GFF/GVF file (auto-downloads if not specified) - --phenotypes_include_types: Optional filter for feature types (Gene, Variation, QTL, StructuralVariation) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add Condel plugin
Add VEP Mastermind plugin
…2143) <!-- # nf-core/sarek pull request Many thanks for contributing to nf-core/sarek! Please fill in the appropriate checklist below (delete whatever is not relevant). These are the most common things requested on pull requests (PRs). Remember that PRs should be made against the dev branch, unless you're preparing a pipeline release. Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) --> ## PR checklist Related to #2030 - [ ] This comment contains a description of changes (with reason). - [ ] If you've fixed a bug or added code that should be tested, add tests! - [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) - [ ] If necessary, also make a PR on the nf-core/sarek _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. - [ ] Make sure your code lints (`nf-core pipelines lint`). - [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`). - [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`). - [ ] Usage Documentation in `docs/usage.md` is updated. - [ ] Output Documentation in `docs/output.md` is updated. - [ ] `CHANGELOG.md` is updated. - [ ] `README.md` is updated (including new tool citations and authors/contributors).
Update vcf_annotate_snpeff subworkflow
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: nf-core-bot <core@nf-co.re> Closes: #2107
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Fixes #2151
## Summary - Replace the hand-rolled `imNotification` / `hook_url` / `slackreport.json` mechanism with the [`nf-slack` plugin](https://seqeralabs.github.io/nf-slack/) - Slack notifications are now configured via the `SLACK_WEBHOOK_URL` environment variable and the plugin's `slack {}` config scope in `nextflow.config` - Remove `assets/slackreport.json`, `assets/adaptivecard.json`, the `imNotification()` function, and the `hook_url` parameter ## Migration Users previously using `--hook_url` or the `HOOK_URL` env var should now set `SLACK_WEBHOOK_URL` instead. The nf-slack plugin handles on-start, on-complete, and on-error notifications automatically. ## Test plan - [ ] Run pipeline with `SLACK_WEBHOOK_URL` set and verify Slack notification is received - [ ] Run pipeline without `SLACK_WEBHOOK_URL` and verify no errors (plugin disabled gracefully) - [ ] Verify email notifications still work as before 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…eCaller (#2146) ## Summary - Closes #1282 - The pipeline now errors immediately when `--no_intervals` is used with `--joint_germline` and `haplotypecaller`, since GenomicsDB cannot operate without intervals - Sentieon tools (haplotyper, dnascope) are not affected as they don't use GenomicsDB - Separated the missing VQSR resources warning from the `no_intervals` check for clarity ## Test plan - [ ] Run with `--tools haplotypecaller --joint_germline --no_intervals` and confirm the pipeline exits with a clear error message - [ ] Run with `--tools sentieon_haplotyper --joint_germline --no_intervals` and confirm it still works (no error) - [ ] Run normal joint germline HaplotypeCaller with intervals to confirm no regression 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: FriederikeHanssen <friederike.hanssen@seqera.io> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Closes: #2118
Fixing strict syntax errors so that I can test with Nextflow 26.04 The main change is removing if statements from config. You should be able to just remove them without generating tons of false warnings, since the strict syntax can validate process selectors against conditional processes as well. I was able to run the `test` profile with these changes on 26.03.0-edge --------- Co-authored-by: Famke Bäuerle <45968370+famosab@users.noreply.github.com> Co-authored-by: Famke Bäuerle <famke.baeuerle@gmail.com>
<!-- # nf-core/sarek pull request Many thanks for contributing to nf-core/sarek! Please fill in the appropriate checklist below (delete whatever is not relevant). These are the most common things requested on pull requests (PRs). Remember that PRs should be made against the dev branch, unless you're preparing a pipeline release. Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) --> ## 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! - [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) - [ ] If necessary, also make a PR on the nf-core/sarek _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. - [ ] Make sure your code lints (`nf-core pipelines lint`). - [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`). - [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`). - [ ] Usage Documentation in `docs/usage.md` is updated. - [ ] Output Documentation in `docs/output.md` is updated. - [x] `CHANGELOG.md` is updated. - [ ] `README.md` is updated (including new tool citations and authors/contributors).
… (#2188) Bumps all 9 sentieon vendored modules (applyvarcal, bwamem, dedup, dnamodelapply, dnascope, gvcftyper, haplotyper, tnscope, varcal) from pinned SHA 256557155... to nf-core/modules HEAD 7ad1622c6... Notable upstream changes pulled in: * sentieon/gvcftyper now honours its staged `--interval` input. Joint runs no longer produce overlapping records at interval boundaries. * sentieon/varcal multi-`--resource:` parsing in the List branch is fixed; sarek's igenomes.config style of packing multiple resources into one string (e.g. known_indels_vqsr for hg38) now passes through correctly instead of leaving an orphan `--resource:mills,…` literal. * All sentieon modules now emit versions via `topic: versions` (emit name `versions_sentieon`). Removed the explicit `versions.mix(SENTIEON_*.out.versions)` calls in 8 local subworkflows — sarek's `softwareVersionsToYAML` already collects topic emissions via `channel.topic("versions")`, so they're picked up automatically. Co-authored-by: Maxime U. Garcia <max.u.garcia@gmail.com>
…ing (#2189) Co-authored-by: nf-core-bot <core@nf-co.re> Co-authored-by: Maxime U Garcia <max.u.garcia@gmail.com>
…-core subworkflows, add htslib to ensemblvep/vep (#2194)
Co-authored-by: nf-core-bot <core@nf-co.re> Co-authored-by: Maxime U Garcia <max.u.garcia@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
## What this fixes `--save_output_as_bam` was broken in several ways. This PR makes it work end-to-end and tightens an existing safeguard. ### User-visible behaviour - With `--save_output_as_bam`: markduplicates, sentieon dedup, and recalibration all publish BAM directly. No more silently-skipped variant calling, no more duplicate-emission errors. - Without `--save_output_as_bam`: BAM files no longer appear in `preprocessing/converted/cram_to_bam/` as a side-effect of cnvkit/msisensor2/muse running. The conversion still happens for those tools (they need BAM input), it's just not published. - `--use_gatk_spark markduplicates` + `--save_mapped` now errors at parameter validation, regardless of `--save_output_as_bam`. Previously it produced a name-sorted, unindexable mapped BAM/CRAM (#1949). ### How Instead of always producing CRAM and converting back to BAM, the relevant processes now output the requested format directly: - `APPLYBQSR`, `GATK4_MARKDUPLICATES`, `GATK4SPARK_MARKDUPLICATES`, and `SENTIEON_DEDUP` have `ext.prefix`/`ext.suffix` conditional on `params.save_output_as_bam`. - `bam_applybqsr`, `bam_markduplicates`, `bam_markduplicates_spark`, and `bam_sentieon_dedup` each expose a single `alignment` channel that mixes their BAM and CRAM output branches — only one is ever populated per sample, so there is no duplicate emission to join on. - CSV restart files derive the data type from the actual filename instead of a brittle `.minus(".cram")` hack. - The conditional `CRAM_TO_BAM`/`CRAM_TO_BAM_RECAL` conversion steps at the preprocessing stages are gone. The variant-calling-stage `CRAM_TO_BAM` (needed for cnvkit/msisensor2/muse BAM input) still runs but now only publishes its output when `--save_output_as_bam` is set. ### Issues closed - Closes #2136 — `GATK4_APPLYBQSR` duplicate-emission on left channel - Closes #2064 — same, right channel - Closes #2149 — variant calling silently skipped when APPLYBQSR emitted `.recal.bam` but downstream looked for `.recal.cram` - Closes #2148 — converted BAMs published in `preprocessing/converted/cram_to_bam/` without the flag - Closes #2078 — sentieon dedup + `--save_output_as_bam --save_mapped` join mismatch - Closes #2132 — `.md.cram.metrics` instead of `.md.bam.metrics` when saving as BAM - Closes #1894 — restart from `--step prepare_recalibration` with BAM input - Closes #1949 — Spark markduplicates + `--save_mapped` produced unindexable output ### Test plan - [x] `nf-test test tests/save_output_as_bam.nf.test --profile debug,test,docker` — both scenarios pass - [x] `nf-test test tests/default.nf.test --profile debug,test,docker` — default test passes (no BAM artifacts without flag) - [ ] With `--save_output_as_bam`: BAM files in `preprocessing/markduplicates/` and `preprocessing/recalibrated/`, variant calling runs - [ ] Without flag: only CRAM files, no `preprocessing/converted/cram_to_bam/` artifacts - [ ] With intervals (WGS): no duplicate emission errors - [ ] With sentieon dedup: BAM published to `preprocessing/sentieon_dedup/` when flag is set - [ ] `--use_gatk_spark markduplicates --save_mapped` errors out at parameter validation 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: Maxime U Garcia <max.u.garcia@gmail.com>
…nda/share (#2196) ### Problem `vep_version` was set to `115.0-0` in `nextflow.config` but the container ships `ensembl-vep=115.2` via conda, which installs to `/opt/conda/share/ensembl-vep-115.2-1`. The `loftee_path` in `conf/modules/annotate.config` still referenced `/usr/local/share/`, resulting in a broken LoFTEE plugin path for anyone enabling `--vep_loftee`. ### Fix - Updated `vep_version` from `115.0-0` to `115.2-1` in `nextflow.config` - Fixed `loftee_path` from `/usr/local/share/ensembl-vep-${params.vep_version}` to `/opt/conda/share/ensembl-vep-${params.vep_version}` in `conf/modules/annotate.config` - Updated the default and help_text in `nextflow_schema.json` This mirrors the same fix applied in [nf-core/rnavar#307](nf-core/rnavar#307).
Co-authored-by: Friederike Hanssen <friederike.hanssen@seqera.io>
## Description Follow-up to #2199. Adds the missing flowing dots at entry points of the animated metro map (`docs/images/sarek_subway_animated.svg`): - **Core (green) line** — dots for the additional `bam/cram` entry points (markduplicates, prepare-recalibration, applyBQSR areas) and the `vcf` entry point near the variant-calling block. Each dot drops from its file onto the line and flows into variant calling, matching the existing fastq/ubam/cram entry style. - **Germline (blue) line** — a dot entering from the `cram` file along the previously-empty upper express track. The existing germline dots only rode the lower track, so the cram entry had no flowing dot. All new dots flow *into* the line (file → line) and reuse the existing white-dot styling; durations are scaled to keep dot speed consistent with the existing animation. SVG-only change — no pipeline logic affected. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
## Description Reverts the `controlfreec/assesssignificance` submodule from `control-freec` 11.6b (`hde5307d_3`) back to 11.6 (`h1b792b2_1`). ## Changes - `modules/nf-core/controlfreec/assesssignificance/environment.yml` — `control-freec=11.6b` → `control-freec=11.6` - `modules/nf-core/controlfreec/assesssignificance/main.nf` — container `11.6b--hde5307d_3` → `11.6--h1b792b2_1` - `modules.json` — pin updated `git_sha` 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
<!-- # nf-core/sarek pull request Many thanks for contributing to nf-core/sarek! Please fill in the appropriate checklist below (delete whatever is not relevant). These are the most common things requested on pull requests (PRs). Remember that PRs should be made against the dev branch, unless you're preparing a pipeline release. Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) --> ## 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! - [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) - [ ] If necessary, also make a PR on the nf-core/sarek _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. - [ ] Make sure your code lints (`nf-core pipelines lint`). - [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`). - [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`). - [ ] Usage Documentation in `docs/usage.md` is updated. - [ ] Output Documentation in `docs/output.md` is updated. - [ ] `CHANGELOG.md` is updated. - [ ] `README.md` is updated (including new tool citations and authors/contributors). --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Addresses review feedback from #2168 (Release 3.9.0). ## Changes **CHANGELOG** - Document the varlociraptor `--force-samples` behaviour change (#2055) — merge now proceeds by renaming colliding sample columns instead of failing - Document the UMI consensus `groupKey` fix that strips `sample_lane_id` so `groupTuple` can merge lanes from the same sample (#2117) - Add the missing `sentieon` `202503.01 → 202503.02` dependency bump (#2188) **Cleanup** - Remove the obsolete `test_azure` / `test_full_azure` / `test_full_germline_azure` profiles from `nextflow.config` — `cloudtest.yml` no longer dispatches them and they were not referenced anywhere else - Drop a dead commented-out `ext.when` line in `conf/modules/aligner_parabricks.config` ## Reviewer questions resolved without code changes - **`null` in test snapshot CLI strings** (`intervals`, `joint_calling_haplotypecaller`): the `null`s are in the nf-test snapshot label/key strings, not real command lines. The params come from a separate `params:` map where Groovy `null` == unset; nothing interpolates `"null"` into a tool command. No change needed. - **Empty Picard histogram files** (`save_output_as_bam` snapshot): legitimately-empty MultiQC data exports (no data to plot on the small test dataset). The identical empty md5 appears in 14 other sarek snapshots — a pre-existing suite-wide pattern, not introduced here. - **`cli_typecast` `null`** in `utils_nfcore_sarek_pipeline`: stock nf-schema template value (`null` = default typecasting behaviour). Resolved on the original PR. - **cloudtest `vars` → `secrets`**: left as-is; cloud tests run. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR checklist
scrape_software_versions.pynf-core lint .).nextflow run . -profile test,docker).docs/usage.mdis updated.docs/output.mdis updated.CHANGELOG.mdis updated.README.mdis updated (including new tool citations and authors/contributors).