Skip to content

remove consensusid and move to parquet#708

Merged
ypriverol merged 52 commits into
bigbio:devfrom
daichengxin:dev
Jun 18, 2026
Merged

remove consensusid and move to parquet#708
ypriverol merged 52 commits into
bigbio:devfrom
daichengxin:dev

Conversation

@daichengxin

Copy link
Copy Markdown
Collaborator

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
  • If necessary, also make a PR on the bigbio/quantms branch on the 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).

@qodo-code-review

Copy link
Copy Markdown
Contributor

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@coderabbitai

coderabbitai Bot commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2cc09c77-43c4-4614-bf25-501eb9e33755

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codacy-production

codacy-production Bot commented Jun 6, 2026

Copy link
Copy Markdown

Not up to standards ⛔

🔴 Issues 1 critical · 1 minor

Alerts:
⚠ 2 issues (≤ 0 issues of at least minor severity)

Results:
2 new issues

Category Results
BestPractice 1 minor
Security 1 critical

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@daichengxin daichengxin requested a review from ypriverol June 18, 2026 06:05
@ypriverol ypriverol merged commit 5147de0 into bigbio:dev Jun 18, 2026
38 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the quantms Nextflow pipeline to remove the legacy ConsensusID-based path and standardize identification artifacts around the .idparquet format, while also syncing multiple nf-core/module/template and CI components (Nextflow + nf-core tooling + nf-test).

Changes:

  • Refactors the TMT isobaric workflow to use a new ISOBARIC_WORKFLOW module and routes quant outputs through parquet-compatible steps.
  • Migrates multiple ID-processing steps/modules from idXML to idparquet and removes deprecated modules/subworkflows (ConsensusID, IsobaricAnalyzer-based feature mapper/protein inference/protein quant, etc.).
  • Updates testing and automation: nf-test workflow addition, MultiQC module update, nf-schema plugin bump, Nextflow minimum version bump, and CI/lint workflow changes.

Reviewed changes

Copilot reviewed 113 out of 116 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
workflows/tmt.nf Switches TMT path to ISOBARIC_WORKFLOW + MSSTATS_CONVERTER and updates emitted outputs
workflows/quantms.nf Minor formatting adjustments in versions topic aggregation
tests/default.nf.test Adjusts snapshot inputs to separate stable path vs stable content
subworkflows/nf-core/utils_nfschema_plugin/tests/nextflow.config Bumps nf-schema plugin version used in tests
subworkflows/nf-core/utils_nfschema_plugin/main.nf Improves help handling when --help true is passed
subworkflows/nf-core/utils_nfcore_pipeline/tests/main.nf.test.snap Adds snapshot for new nf-test coverage
subworkflows/nf-core/utils_nfcore_pipeline/tests/main.nf.test Adds nf-test for UTILS_NFCORE_PIPELINE
subworkflows/nf-core/utils_nfcore_pipeline/main.nf Adjusts emit: and removes IM notification helper
subworkflows/local/utils_nfcore_quantms_pipeline/main.nf Removes hook_url / imNotification wiring from completion workflow
subworkflows/local/protein_quant/meta.yml Removes deprecated local protein quant subworkflow metadata
subworkflows/local/protein_quant/main.nf Removes deprecated local protein quant subworkflow implementation
subworkflows/local/protein_inference/meta.yml Removes deprecated local protein inference subworkflow metadata
subworkflows/local/protein_inference/main.nf Removes deprecated local protein inference subworkflow implementation
subworkflows/local/phospho_scoring/main.nf Simplifies PTM localization path to always run ONSITE directly
subworkflows/local/peptide_database_search/main.nf Reworks rescoring/fine-tuning sampling and switches cleaning to parquet outputs
subworkflows/local/feature_mapper/meta.yml Removes deprecated feature mapper subworkflow metadata
subworkflows/local/feature_mapper/main.nf Removes deprecated feature mapper subworkflow implementation
subworkflows/local/dda_id/main.nf Simplifies DDA ID-only workflow; removes PSM conversion step
ro-crate-metadata.json Updates RO-Crate metadata (dates, Nextflow minimum, attribution fields)
README.md Updates Nextflow badge/version and fixes nf-core documentation links
nextflow.config Adds/changes onsite params, bumps Nextflow min version, adjusts publishDir compatibility, removes hook_url
nextflow_schema.json Syncs schema with new onsite params and defaults (e.g., lfq_seeding_algorithm) and removes hook_url
modules/nf-core/multiqc/tests/nextflow.config Adjusts MultiQC test args (-p)
modules/nf-core/multiqc/tests/main.nf.test.snap Updates MultiQC snapshots for new outputs (including parquet)
modules/nf-core/multiqc/tests/main.nf.test Refactors MultiQC module tests for tuple/meta-based IO
modules/nf-core/multiqc/meta.yml Updates module schema to tuple/meta IO and adds container lock metadata
modules/nf-core/multiqc/main.nf Updates MultiQC module to tuple/meta IO and emits versions as tuples (not versions.yml)
modules/nf-core/multiqc/environment.yml Bumps MultiQC conda version to 1.34
modules/nf-core/multiqc/.conda-lock/linux_arm64-bd-d167b8012595a136_1.txt Adds arm64 conda lockfile for MultiQC 1.34
modules/local/utils/spectrum_features/meta.yml Updates expected ID file patterns to .idparquet
modules/local/utils/spectrum_features/main.nf Updates rescoring container and switches CLI to --idparquet
modules/local/utils/psm_conversion/meta.yml Removes deprecated PSM conversion module metadata
modules/local/utils/psm_conversion/main.nf Removes deprecated PSM conversion module implementation
modules/local/utils/psm_clean/meta.yml Updates expected ID file patterns to .idparquet
modules/local/utils/psm_clean/main.nf Updates rescoring container and outputs .idparquet clean IDs
modules/local/utils/msrescore_fine_tuning/meta.yml Updates expected ID file patterns to .idparquet
modules/local/utils/msrescore_fine_tuning/main.nf Updates rescoring container and switches CLI to --idparquet/list handling
modules/local/utils/msrescore_features/meta.yml Updates expected ID file patterns to .idparquet
modules/local/utils/msrescore_features/main.nf Updates rescoring container tag/version
modules/local/openms/sage/meta.yml Updates Sage output pattern to .idparquet
modules/local/openms/sage/main.nf Pins OpenMS thirdparty container version tag
modules/local/openms/proteomicslfq/meta.yml Updates ProteomicsLFQ input pattern to .idparquet
modules/local/openms/proteomicslfq/main.nf Pins container tag and updates debug outputs to .idparquet naming
modules/local/openms/protein_quantifier/meta.yml Removes deprecated ProteinQuantifier module metadata
modules/local/openms/protein_quantifier/main.nf Removes deprecated ProteinQuantifier module implementation
modules/local/openms/protein_inference_generic/meta.yml Removes deprecated ProteinInference module metadata
modules/local/openms/protein_inference_generic/main.nf Removes deprecated ProteinInference module implementation
modules/local/openms/protein_inference_epifany/meta.yml Removes deprecated Epifany module metadata
modules/local/openms/protein_inference_epifany/main.nf Removes deprecated Epifany module implementation
modules/local/openms/percolator/meta.yml Updates Percolator input pattern to .idparquet
modules/local/openms/percolator/main.nf Pins OpenMS thirdparty container version tag
modules/local/openms/msgf/meta.yml Updates MSGF output pattern to .idparquet
modules/local/openms/msgf/main.nf Pins OpenMS thirdparty container version tag
modules/local/openms/isobaric_workflow/meta.yml Adds new OpenMS IsobaricWorkflow module metadata
modules/local/openms/isobaric_workflow/main.nf Adds new OpenMS IsobaricWorkflow process implementation
modules/local/openms/isobaric_analyzer/meta.yml Removes deprecated IsobaricAnalyzer module metadata
modules/local/openms/isobaric_analyzer/main.nf Removes deprecated IsobaricAnalyzer module implementation
modules/local/openms/index_peptides/meta.yml Updates PeptideIndexer IO patterns to .idparquet
modules/local/openms/index_peptides/main.nf Updates PeptideIndexer output extension to .idparquet
modules/local/openms/id_score_switcher/meta.yml Removes deprecated IDScoreSwitcher module metadata
modules/local/openms/id_score_switcher/main.nf Removes deprecated IDScoreSwitcher module implementation
modules/local/openms/id_mapper/meta.yml Removes deprecated IDMapper module metadata
modules/local/openms/id_mapper/main.nf Removes deprecated IDMapper module implementation
modules/local/openms/id_filter/main.nf Updates tag logic to reflect .idparquet suffix handling
modules/local/openms/id_conflict_resolver/meta.yml Removes deprecated IDConflictResolver module metadata
modules/local/openms/id_conflict_resolver/main.nf Removes deprecated IDConflictResolver module implementation
modules/local/openms/generate_decoy_database/main.nf Pins OpenMS thirdparty container version tag
modules/local/openms/false_discovery_rate/meta.yml Removes deprecated FalseDiscoveryRate module metadata
modules/local/openms/false_discovery_rate/main.nf Removes deprecated FalseDiscoveryRate module implementation
modules/local/openms/extractfeatures/main.nf Removes deprecated PSMFeatureExtractor wrapper module
modules/local/openms/consensusid/meta.yml Removes ConsensusID module metadata
modules/local/openms/consensusid/main.nf Removes ConsensusID module implementation
modules/local/openms/comet/meta.yml Updates Comet output pattern to .idparquet
modules/local/openms/comet/main.nf Pins OpenMS thirdparty container version tag
modules/bigbio/onsite/tests/main.nf.test.snap Adds snapshots for updated onsite module tests
modules/bigbio/onsite/tests/main.nf.test Updates onsite tests to use idparquet inputs/outputs and tagging
modules/bigbio/onsite/meta.yml Updates module schema to tuple/meta IO and idparquet patterns
modules/bigbio/onsite/main.nf Updates onsite container, switches to idparquet IO, extends params support
modules/bigbio/onsite/environment.yml Bumps pyonsite to 0.0.4 and updates env schema header
modules.json Updates module/subworkflow git SHAs to match updated installs
main.nf Removes hook_url argument from completion subworkflow call
docs/usage.md Expands/updates onsite parameter documentation
docs/CONTRIBUTING.md Adds contributing guide under docs and links from template/README
conf/tests/test_localize.config Adds onsite tuning params for localization CI profile
conf/modules/shared.config Extends publishDir selector to include ISOBARIC_WORKFLOW
conf/modules/id.config Removes ConsensusID config and updates ID_FILTER suffixes to .idparquet
conf/dev.config Pins dev containers for OpenMS thirdparty and pyonsite
conf/base.config Adjusts default retry exit codes and revises resource labels/defaults
CITATIONS.md Formatting tweak in MultiQC citation blockquote
assets/tmt18plex_default_correction.matrix Formatting normalization (no content change)
assets/slackreport.json Removes Slack notification template asset
assets/multiqc_config.yml Updates pmultiqc ID pattern from *.idXML to *.idparquet
assets/adaptivecard.json Removes MS Teams adaptive card template asset
AGENTS.md Updates examples to refer to .idparquet patterns
.vscode/settings.json Adds tracked VS Code markdown styling setting
.prettierignore Stops ignoring removed notification templates
.pre-commit-config.yaml Updates prettier version, narrows excludes, and adds nextflow-lint hook
.nf-core.yml Bumps nf-core tools version to 4.0.2
.gitignore Simplifies ignore list and adds .lineage/
.github/workflows/template-version-comment.yml Updates pinned action SHAs and doc link
.github/workflows/release-announcements.yml Adds release-toot/Bluesky announcement workflow
.github/workflows/nf-test.yml Adds dedicated nf-test workflow with sharding and profiles
.github/workflows/linting.yml Updates linting workflow to use prek/uv and new action pins
.github/workflows/linting_comment.yml Updates pinned action SHAs
.github/workflows/fix_linting.yml Updates to use prek and nf-core bot token for pushing fixes
.github/workflows/extended_ci.yml Bumps Nextflow version and matrix handling for exec profiles
.github/workflows/download_pipeline.yml Adds workflow to test nf-core pipelines download behavior
.github/workflows/clean-up.yml Updates pinned stale action SHA
.github/workflows/ci.yml Bumps Nextflow version in CI matrix
.github/workflows/branch.yml Updates pinned action SHA
.github/PULL_REQUEST_TEMPLATE.md Updates contributing links and dataset repo reference
.github/actions/nf-test/action.yml Updates action versions/pins for setup tools
.github/actions/get-shards/action.yml Updates setup-nf-test action pin

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +42 to +44
PERCOLATOR(ch_id_files_feats)
ch_rescoring_results = PERCOLATOR.out.id_files_perc
ch_software_versions = ch_software_versions.mix(PERCOLATOR.out.versions)
Comment on lines 105 to 109
.combine(ch_mzmls_search, by: 0)
.toSortedList()
.flatMap()
.randomSample(params.fine_tuning_sample_run, 2025)
.combine(channel.value("sage"))
.groupTuple(by: 3)
Comment on lines 13 to 15
output:
tuple val(meta), path("${id_file.baseName}_*.idXML"), emit: ptm_in_id_onsite
tuple val(meta), path("${prefix}_*.idparquet"), emit: ptm_in_id_onsite
path "versions.yml", emit: versions
cat <<-END_VERSIONS > versions.yml
"${task.process}":
onsite: \$(onsite --version 2>&1 | grep -oP 'version \\K[0-9.]+' || echo "unknown")
onsite: \$(onsite --version 2>&1 | grep -oE 'version \\K[0-9.]+' || echo "unknown")
Comment on lines 48 to 54
- name: Run nf-core pipelines lint
if: ${{ github.base_ref != 'master' }}
if: ${{ github.base_ref != 'master' || github.base_ref != 'main' }}
env:
GITHUB_COMMENTS_URL: ${{ github.event.pull_request.comments_url }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_PR_COMMIT: ${{ github.event.pull_request.head.sha }}
run: nf-core -l lint_log.txt pipelines lint --dir ${GITHUB_WORKSPACE} --markdown lint_results.md
Comment on lines +58 to 60
fragment_unit = params.onsite_fragment_error_units ?: 'Da'
def optional_flags = [add_decoys, compute_all_scores, debug].findAll { a -> a }.join(' \\\n ')
algorithm_cmd = """
Comment on lines +45 to +46
fragment_unit = params.onsite_fragment_error_units ?: 'Da'
def optional_flags = [add_decoys, compute_all_scores, debug].findAll { a -> a }.join(' \\\n ')
@jpfeuffer

Copy link
Copy Markdown
Collaborator

haha shouldnt we do the review BEFORE merging?
Are you going to follow up on the issues?

@jpfeuffer

Copy link
Copy Markdown
Collaborator

But really nice. I will test this soon.

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

Labels

None yet

4 participants