Skip to content

Make QC steps opt-in #71

@edmundmiller

Description

@edmundmiller

Summary

Propose making computationally expensive QC steps opt-in across nf-core pipelines via a --run_qc parameter, improving default pipeline performance while maintaining QC capabilities for users who need them.

Champion

@ewels @edmundmiller

Background & Motivation

Many QC steps across nf-core pipelines are computationally expensive and can be the slowest-running parts of the entire workflow. Examples include:

  • preseq in methylseq
  • Qualimap in both rnaseq and methylseq

Not all users need comprehensive QC for every run, particularly in production environments or when running on large datasets. The current default behavior forces all QC steps to run, regardless of user needs, which significantly impacts runtime and resource usage.

There's a need to establish sane defaults that balance comprehensive quality control with practical performance considerations, while still making it easy for users who need full QC to enable it.

Goals

  • Make expensive QC steps opt-in via a --run_qc parameter (or similar mechanism)
  • Improve default pipeline runtime and resource efficiency for typical use cases
  • Maintain easy access to comprehensive QC for users who need it
  • Start with the Very Important Pipelines to establish patterns

Non-Goals

  • Removing QC functionality entirely from pipelines
  • Breaking existing workflows without providing an easy migration path
  • Making QC so hidden that new users don't discover it exists

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Todo

    Status

    proposed

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions