Skip to content

Add RNAFramework analysis modules (rf-count, rf-norm, rf-fold)#1

Merged
Vicbeg merged 4 commits intodevfrom
dev-pm
Feb 25, 2026
Merged

Add RNAFramework analysis modules (rf-count, rf-norm, rf-fold)#1
Vicbeg merged 4 commits intodevfrom
dev-pm

Conversation

@pmb59
Copy link
Member

@pmb59 pmb59 commented Feb 25, 2026

Summary

  • Add local modules for rf-count, rf-norm, and rf-fold using dincarnato/rnaframework:2.9.6
  • Pipeline now runs the full RT-stop/MaP analysis: BAM → RC → XML reactivities → predicted structures
  • Add condition and group samplesheet columns for treated/untreated/denatured grouping in rf-norm
  • Move inline SAMTOOLS_FAIDX_LOCAL process to a proper modules/local/ module

nf-core compliance fixes

  • Fix missing software versions collection (all modules now tracked)
  • Fill toolCitationText / toolBibliographyText with all 7 tools; remove TODO comments
  • Fix fasta help_text (was referencing BWA)
  • Add enum constraint to principle parameter schema
  • Restore email_template.html to processed version; suppress files_unchanged lint for logo and email template in .nf-core.yml
  • Fix nf_test_content lint: add versions.yml path assertion to workflow test
  • Fill in pipeline introduction in README.md

Notes

  • rf-norm defaults to Rouskin (sm=2) for RT-stop and Zubradt (sm=4) for MaP — both work without untreated controls. Override
    via ext.args in a custom config when controls are available.
  • The condition and group samplesheet columns require a follow-up update to merge_metadata.py in
    rnacentral-probing-metadata-main to be populated automatically (TODO comments mark the relevant locations).

@github-actions
Copy link

github-actions bot commented Feb 25, 2026

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

Posted for pipeline commit 8494486

+| ✅ 212 tests passed       |+
#| ❔   4 tests were ignored |#
#| ❔   1 tests had warnings |#
!| ❗  24 tests had warnings |!
Details

❗ Test warnings:

  • readme - README contains the placeholder zenodo.XXXXXXX. This should be replaced with the zenodo doi (after the first release).
  • pipeline_todos - TODO string in nextflow.config: Specify your pipeline's command line flags
  • pipeline_todos - TODO string in nextflow.config: Optionally, you can add a pipeline-specific nf-core config at https://github.com/nf-core/configs
  • pipeline_todos - TODO string in nextflow.config: Update the field with the details of the contributors to your pipeline. New with Nextflow version 24.10.0
  • pipeline_todos - TODO string in README.md: TODO nf-core:
  • pipeline_todos - TODO string in README.md: Include a figure that guides the user through the major workflow steps. Many nf-core
  • pipeline_todos - TODO string in README.md: Fill in short bullet-pointed list of the default steps in the pipeline 1. Read QC (FastQC)2. Present QC for raw reads (MultiQC)
  • pipeline_todos - TODO string in README.md: Describe the minimum required steps to execute the pipeline, e.g. how to prepare samplesheets.
  • pipeline_todos - TODO string in README.md: update the following command to include all required parameters for a minimal example
  • pipeline_todos - TODO string in README.md: If applicable, make list of people who have also contributed
  • pipeline_todos - TODO string in README.md: Add citation for pipeline after first release. Uncomment lines below and update Zenodo doi and badge at the top of this file.
  • pipeline_todos - TODO string in README.md: Add bibliography of tools and data used in your pipeline
  • pipeline_todos - TODO string in main.nf: Remove this line if you don't need a FASTA file
  • pipeline_todos - TODO string in base.config: Check the defaults for all processes
  • pipeline_todos - TODO string in base.config: Customise requirements for specific processes.
  • pipeline_todos - TODO string in test_full.config: Specify the paths to your full test data ( on nf-core/test-datasets or directly in repositories, e.g. SRA)
  • pipeline_todos - TODO string in test_full.config: Give any required params for the test so that command line flags are not needed
  • pipeline_todos - TODO string in test.config: Specify the paths to your test data on nf-core/test-datasets
  • pipeline_todos - TODO string in test.config: Give any required params for the test so that command line flags are not needed
  • pipeline_todos - TODO string in awsfulltest.yml: You can customise AWS full pipeline tests as required
  • pipeline_todos - TODO string in methods_description_template.yml: #Update the HTML below to your preferred methods description, e.g. add publication citation for this pipeline
  • pipeline_todos - TODO string in usage.md: Add documentation about anything specific to running your pipeline. For general topics, please point to (and add to) the main nf-core website.
  • pipeline_todos - TODO string in output.md: Write this documentation describing your workflow's output
  • pipeline_todos - TODO string in nextflow.config: Specify any additional parameters here

❔ Tests ignored:

  • files_unchanged - File ignored due to lint config: assets/email_template.html
  • files_unchanged - File ignored due to lint config: assets/nf-core-rnastructurome_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-rnastructurome_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-rnastructurome_logo_dark.png

❔ Tests fixed:

✅ Tests passed:

Run details

  • nf-core/tools version 3.5.2
  • Run at 2026-02-25 01:45:28

@pmb59 pmb59 requested a review from Vicbeg February 25, 2026 01:24
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should this not be if you have RT-stop and untreated then default it nm=1, if you have RT-stop and no untreated then nm=2. And the same idea for MaP? Otherwise default would be to do the one that doesnt require untreated always even if we have untreated right?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Should we also consider replicates here? So that different replicates of the same cell-line (if they exist) are processed independently? You would suppose that people will indicate which replicate it is in the name, but it might also be worth taking it from a column in the YAML to avoid confusion

Copy link
Member Author

Choose a reason for hiding this comment

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

If RNA framework can deal with replicates, then yes, we should consider them here

Copy link
Collaborator

@Vicbeg Vicbeg left a comment

Choose a reason for hiding this comment

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

Amazing you did all of this so fast! Thanks for the help! Just had a couple of questions/suggestions for how the files are analysed based on their groupings

@Vicbeg Vicbeg merged commit 3a190de into dev Feb 25, 2026
7 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.

2 participants