Skip to content

Deprecate OpenMS experimental design format, enforce SDRF-only input#639

Merged
ypriverol merged 17 commits into
devfrom
copilot/deprecate-openms-schema-input
Jan 19, 2026
Merged

Deprecate OpenMS experimental design format, enforce SDRF-only input#639
ypriverol merged 17 commits into
devfrom
copilot/deprecate-openms-schema-input

Conversation

Copilot AI commented Jan 14, 2026

Copy link
Copy Markdown
Contributor

Deprecate OpenMS schema as input and allow CSV/TSV/SDRF formats

Completed Changes

  • Update input_check subworkflow to always treat input as SDRF (remove conditional logic)
  • Update create_input_channel subworkflow to remove PREPROCESS_EXPDESIGN branch
  • Remove unnecessary is_sdrf parameter from CREATE_INPUT_CHANNEL workflow
  • Update quantms.nf to call CREATE_INPUT_CHANNEL without is_sdrf parameter
  • Update nextflow_schema.json to allow .csv, .tsv, and .sdrf file extensions
  • Update nextflow_schema.json description to remove OpenMS experimental design references
  • Update docs/usage.md to remove OpenMS experimental design references
  • Update README.md to clarify SDRF can use .csv, .tsv, or .sdrf extensions
  • Move CHANGELOG.md entry to version 1.8.0 (Unreleased) as requested
  • Address all code review feedback

Summary

This PR deprecates the OpenMS experimental design format as input and simplifies the pipeline to always expect SDRF format. The input parameter now accepts .csv, .tsv, or .sdrf file extensions, all treated as SDRF format.

Breaking Changes

  • OpenMS experimental design TSV files (without SDRF structure) are no longer supported
  • All input files must now be in SDRF format
  • Parameters --labelling_type and --acquisition_method no longer determine input file type
  • Test datasets using OpenMS format will need to be converted to SDRF

Benefits

  • Simplified codebase with reduced conditional logic
  • Single input schema aligns with nf-core best practices
  • Better compatibility with cloud interfaces (Seqera Datastudios, Explorer)
  • Standardization on SDRF format for proteomics metadata
Original prompt

This section details on the original issue you should resolve

<issue_title>Deprecate openms tsv as an option for SDRF input and allow csv AND tsv</issue_title>
<issue_description>A lot of plugins and other systems interfacing with nextflow require or default to creating samplesheet inputs as CSV for nextflow/nf-core pipelines. And cloud storage interface like Seqera Datastudios and Explorer have special rendering cases for CSV and TSV only.
In general I think the nf-core way is to have only ONE schema for the input parameter.

Therefore I think we should:

  • deprecate allowing two formats (i.e. deprecate the openms schema)
  • revert or only additionally allow .sdrf
  • definitely allow csv and tsv as alternative suffixes

@ypriverol </issue_description>

<agent_instructions>Deprecate openms schema as input. Always expect SDRF. Remove all if cases regarding that. If csv or tsv or sdrf, always assume SDRF. Note this in CHANGELOG. Update param docs and schemas.</agent_instructions>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

ypriverol and others added 2 commits January 9, 2026 13:33
Release 1.7.0 - Major changes with quantms-rescoring
@coderabbitai

coderabbitai Bot commented Jan 14, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

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

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.


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

Copilot AI and others added 3 commits January 14, 2026 08:43
Co-authored-by: jpfeuffer <8102638+jpfeuffer@users.noreply.github.com>
…tion

Co-authored-by: jpfeuffer <8102638+jpfeuffer@users.noreply.github.com>
Co-authored-by: jpfeuffer <8102638+jpfeuffer@users.noreply.github.com>
Copilot AI changed the title [WIP] Deprecate openms schema for SDRF input and update formats Deprecate OpenMS experimental design format, enforce SDRF-only input Jan 14, 2026
Copilot AI requested a review from jpfeuffer January 14, 2026 08:50
Comment thread CHANGELOG.md Outdated
Comment thread nextflow_schema.json Outdated
@github-actions

This comment was marked as outdated.

Co-authored-by: jpfeuffer <8102638+jpfeuffer@users.noreply.github.com>
@jpfeuffer
jpfeuffer changed the base branch from master to dev January 14, 2026 08:56
Copilot AI requested a review from jpfeuffer January 14, 2026 08:56
@github-actions

github-actions Bot commented Jan 14, 2026

Copy link
Copy Markdown

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

Posted for pipeline commit 5f22aa8

+| ✅ 110 tests passed       |+
#| ❔  19 tests were ignored |#
#| ❔   1 tests had warnings |#
!| ❗   3 tests had warnings |!
Details

❗ Test warnings:

  • pipeline_todos - TODO string in nextflow.config: Specify any additional parameters here
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/quantms/quantms/subworkflows/local/dda_id/main.nf: _ ch_software_versions = ch_software_versions.mix(PHOSPHO_SCORING.out.versions.ifEmpty(null))
    _
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/quantms/quantms/subworkflows/local/id/main.nf: _ ch_software_versions = ch_software_versions.mix(PHOSPHO_SCORING.out.versions.ifEmpty(null))
    _

❔ Tests ignored:

❔ Tests fixed:

✅ Tests passed:

Run details

  • nf-core/tools version 3.5.1
  • Run at 2026-01-17 12:38:29

@ypriverol

Copy link
Copy Markdown
Member

@daichengxin @jpfeuffer @copilot I tihink this feature should be more in the repo: https://github.com/bigbio/quantms-utils

@daichengxin

Copy link
Copy Markdown
Collaborator

Agreed. quantms-utils has already sdrf-pipelines package.

@jpfeuffer

Copy link
Copy Markdown
Collaborator

@ypriverol Which feature?

@jpfeuffer

Copy link
Copy Markdown
Collaborator

@nf-core-bot fix linting

@ypriverol

Copy link
Copy Markdown
Member

@copilot can you make sure that prettier works?

@jpfeuffer

Copy link
Copy Markdown
Collaborator

The idea was to allow csv. We shouldnt artificially constrain people.

@ypriverol

Copy link
Copy Markdown
Member

sdrf is not a comma-delimited format, we should promote sdrf.tsv?

@jpfeuffer

Copy link
Copy Markdown
Collaborator

True but there is no real technical reason why. If quoted properly it can be any separator. The problem is that all other nfcore pipelines do not restrict the format of their samplesheets. It can always be Jason, yaml, CSV, tsv.
Only we restrict it artificially

@jpfeuffer

Copy link
Copy Markdown
Collaborator

I am fine if the majority here thinks we should not allow it. But I will have to fork the pipeline then because I have upstream dependencies that only write CSV files.

@ypriverol

ypriverol commented Jan 17, 2026

Copy link
Copy Markdown
Member

OK, you can allow that but better to do not have the example in csv?

@jpfeuffer

Copy link
Copy Markdown
Collaborator

Ok but let me test it with it. We can delete it after

@ypriverol

Copy link
Copy Markdown
Member

Ok but let me test it with it. We can delete it after

@jpfeuffer can you also check also the experimental design with MSstats is failing, I guess is because we have not to many ids between the experimental factor values?

@jpfeuffer

Copy link
Copy Markdown
Collaborator

It's probably just the different tolerance settings that were given as parameters before (and now must be in the SDRF), leading to less/no proteins.

@ypriverol

Copy link
Copy Markdown
Member

@jpfeuffer This should be read to merge.

@ypriverol
ypriverol merged commit eeae581 into dev Jan 19, 2026
83 of 89 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

Deprecate openms tsv as an option for SDRF input and allow csv AND tsv

4 participants