Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .nf-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ lint:
nf_core_version: 3.3.2
repository_type: pipeline
template:
author: Bailey PJ, Botvinnik O, Marques de Almeida F, Peltzer A, Sturm G
author: Bailey PJ, Botvinnik O, Marques de Almeida F, Peltzer A, Sturm G, Dongze H
description: Pipeline for processing 10x Genomics single cell rnaseq data
force: false
is_nfcore: true
name: scrnaseq
org: nf-core
outdir: .
version: 2.8.0dev
version: 4.1.0
25 changes: 18 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,31 @@
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## v4.1.0dev
## v4.1.0 - 2025-08-01

### Features

- Update nextflow_schema.json
- Fix simpleaf protocol name for 10xv4 ([#452](https://github.com/nf-core/scrnaseq/pull/452))
- Fix the workflow for cellranger-arc alignment and add new test with 10x multiome dataset ([#441](https://github.com/nf-core/scrnaseq/pull/441))
- Update `nf-core/cellranger` modules to tool verson `9.0.1` ([#467](https://github.com/nf-core/scrnaseq/pull/467)).
- Fix igenomes usage to correctly handle fasta and gtf files ([#469](https://github.com/nf-core/scrnaseq/pull/469)).
- Update `cellranger/multi` module to latest version with nf-core tools ([#482](https://github.com/nf-core/scrnaseq/pull/482)).
- Adapt pipeline to also parse `OCM` barcodes for `cellranger/multi` and update its documentation ([#482](https://github.com/nf-core/scrnaseq/pull/482)).
- Fix that skip_multiqc parameter did not work ([#479](https://github.com/nf-core/scrnaseq/pull/479)).
- Update `nf-core/cellranger` modules to tool version `9.0.1` ([#467](https://github.com/nf-core/scrnaseq/pull/467))
- Fix igenomes usage to correctly handle fasta and gtf files ([#469](https://github.com/nf-core/scrnaseq/pull/469))
- Update `cellranger/multi` module to latest version with nf-core tools ([#482](https://github.com/nf-core/scrnaseq/pull/482))
- Adapt pipeline to also parse `OCM` barcodes for `cellranger/multi` and update its documentation ([#482](https://github.com/nf-core/scrnaseq/pull/482))
- Fix that skip_multiqc parameter did not work ([#479](https://github.com/nf-core/scrnaseq/pull/479))
- Add the `accelerator` process directive to the `process_gpu` label ([#477](https://github.com/nf-core/scrnaseq/pull/477))
- Refactor iGenomes handling to expose params object pipeline-wide ([#483](https://github.com/nf-core/scrnaseq/pull/483))

### Documentation

- Update nextflow_schema.json ([#453](https://github.com/nf-core/scrnaseq/pull/453))
- Update `--cellranger_index` docs to point out that the base index directory is needed ([#458](https://github.com/nf-core/scrnaseq/pull/458))
- Update protocol documentation ([#459](https://github.com/nf-core/scrnaseq/pull/459))

### Chore

- Add ruff pre-commit check as linter/autoformatter for python scripts ([#464](https://github.com/nf-core/scrnaseq/pull/464))
- Template update for nf-core/tools v3.2.1 ([#466](https://github.com/nf-core/scrnaseq/pull/466))
- Template update for nf-core/tools v3.3.2 ([#474](https://github.com/nf-core/scrnaseq/pull/474))

## v4.0.0 - 2025-03-10

Expand Down
4 changes: 2 additions & 2 deletions assets/multiqc_config.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
report_comment: >
This report has been generated by the <a href="https://github.com/nf-core/scrnaseq/tree/dev"
This report has been generated by the <a href="https://github.com/nf-core/scrnaseq/releases/tag/4.1.0"
target="_blank">nf-core/scrnaseq</a> analysis pipeline. For information about how
to interpret these results, please see the <a href="https://nf-co.re/scrnaseq/dev/docs/output"
to interpret these results, please see the <a href="https://nf-co.re/scrnaseq/4.1.0/docs/output"
target="_blank">documentation</a>.
report_section_order:
"nf-core-scrnaseq-methods-description":
Expand Down
2 changes: 1 addition & 1 deletion nextflow.config
Original file line number Diff line number Diff line change
Expand Up @@ -343,7 +343,7 @@ manifest {
mainScript = 'main.nf'
defaultBranch = 'master'
nextflowVersion = '!>=24.10.5'
version = '4.1.0dev'
version = '4.1.0'
doi = '10.5281/zenodo.3568187'
}

Expand Down
2 changes: 1 addition & 1 deletion nf-test.config
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,6 @@ config {

// load the necessary plugins
plugins {
load "[email protected].3"
load "[email protected].5"
}
}
67 changes: 38 additions & 29 deletions ro-crate-metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
{
"@id": "./",
"@type": "Dataset",
"creativeWorkStatus": "InProgress",
"datePublished": "2025-07-08T11:39:16+00:00",
"creativeWorkStatus": "Stable",
"datePublished": "2025-08-01T12:39:51+00:00",
"description": "<h1>\n <picture>\n <source media=\"(prefers-color-scheme: dark)\" srcset=\"docs/images/nf-core-scrnaseq_logo_dark.png\">\n <img alt=\"nf-core/scrnaseq\" src=\"docs/images/nf-core-scrnaseq_logo_light.png\">\n </picture>\n</h1>\n\n[![GitHub Actions CI Status](https://github.com/nf-core/scrnaseq/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/scrnaseq/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/scrnaseq/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/scrnaseq/actions/workflows/linting.yml)\n[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/scrnaseq/results)\n[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.3568187-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.3568187)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.10.5-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.2-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.2)\n[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)\n[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)\n[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/scrnaseq)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23scrnaseq-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/scrnaseq)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n\n## Introduction\n\n**nf-core/scrnaseq** is a bioinformatics best-practice analysis pipeline for processing 10x Genomics single-cell RNA-seq data.\n\nThis is a community effort in building a pipeline capable to support:\n\n- SimpleAF(Alevin-Fry) + AlevinQC\n- STARSolo\n- Kallisto + BUStools\n- Cellranger\n\n> [!IMPORTANT]\n> Cellranger is a commercial tool from 10X Genomics Inc. and falls under the EULA from 10X Genomics Inc. The container provided for the CellRanger functionality in this pipeline has been built by the nf-core community and is therefore _not supported by 10X genomics_ directly. We are in discussions with 10X on how to improve the user experience and licence situation for both us as a community as well as 10X and end users and will update this statement here accordingly.\n\n## Documentation\n\nThe nf-core/scrnaseq pipeline comes with documentation about the pipeline [usage](https://nf-co.re/scrnaseq/usage), [parameters](https://nf-co.re/scrnaseq/parameters) and [output](https://nf-co.re/scrnaseq/output).\n\n![scrnaseq workflow](docs/images/scrnaseq_pipeline_V3.0-metro_clean.png)\n\n## Usage\n\n> [!NOTE]\n> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) with `-profile test` before running the workflow on actual data.\n\nFirst, prepare a samplesheet with your input data that looks as follows:\n\n`samplesheet.csv`:\n\n```csv\nsample,fastq_1,fastq_2,expected_cells\npbmc8k,pbmc8k_S1_L007_R1_001.fastq.gz,pbmc8k_S1_L007_R2_001.fastq.gz,10000\npbmc8k,pbmc8k_S1_L008_R1_001.fastq.gz,pbmc8k_S1_L008_R2_001.fastq.gz,10000\n```\n\nEach row represents a fastq file (single-end) or a pair of fastq files (paired end).\n\nNow, you can run the pipeline using:\n\n```bash\nnextflow run nf-core/scrnaseq \\\n -profile <docker/singularity/.../institute> \\\n --input samplesheet.csv \\\n --fasta GRCm38.p6.genome.chr19.fa \\\n --gtf gencode.vM19.annotation.chr19.gtf \\\n --protocol 10XV2 \\\n --aligner <simpleaf/kallisto/star/cellranger> \\\n --outdir <OUTDIR>\n```\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/scrnaseq/usage) and the [parameter documentation](https://nf-co.re/scrnaseq/parameters).\n\n## Decision Tree for users\n\nThe nf-core/scrnaseq pipeline features several paths to analyze your single cell data. Future additions will also be done soon, e.g. the addition of multi-ome analysis types. To aid users in analyzing their data, we have added a decision tree to help people decide on what type of analysis they want to run and how to choose appropriate parameters for that.\n\n```mermaid\ngraph TD\n A[sc RNA] -->|alevin-fry| B(h5ad/seurat/mtx matrices)\n A[sc RNA] -->|CellRanger| B(h5ad/seurat/mtx matrices)\n A[sc RNA] -->|kbpython| B(h5ad/seurat/mtx matrices)\n A[sc RNA] -->|STARsolo| B(h5ad/seurat/mtx matrices)\n```\n\nOptions for the respective alignment method can be found [here](https://nf-co.re/scrnaseq/docs/usage/#aligning-options) to choose between methods.\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/scrnaseq/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/scrnaseq/output).\n\n## Credits\n\nnf-core/scrnaseq was originally written by Bailey PJ, Botvinnik O, Marques de Almeida F, Gabernet G, Peltzer A, Sturm G.\n\nWe thank the following people and teams for their extensive assistance in the development of this pipeline:\n\n- @heylf\n- @KevinMenden\n- @FloWuenne\n- @rob-p\n- [GHGA](https://www.ghga.de/)\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#scrnaseq` channel](https://nfcore.slack.com/channels/scrnaseq) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\nIf you use nf-core/scrnaseq for your analysis, please cite it using the following doi: [10.5281/zenodo.3568187](https://doi.org/10.5281/zenodo.3568187)\n\nThe basic benchmarks that were used as motivation for incorporating the available modular workflows can be found in [this publication](https://www.biorxiv.org/content/10.1101/673285v2).\n\nWe offer all three paths for the processing of scRNAseq data so it remains up to the user to decide which pipeline workflow is chosen for a particular analysis question.\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n",
"hasPart": [
{
Expand Down Expand Up @@ -108,7 +108,7 @@
},
"mentions": [
{
"@id": "#244931f2-1b9e-455a-a8b4-139a382be3a1"
"@id": "#d42b5d10-79f6-4e28-83e9-a0b50343b820"
}
],
"name": "nf-core/scrnaseq"
Expand Down Expand Up @@ -137,19 +137,22 @@
],
"creator": [
{
"@id": "https://orcid.org/0000-0001-5010-9539"
"@id": "https://orcid.org/0000-0001-9584-7842"
},
{
"@id": "https://orcid.org/0000-0003-4412-7970"
"@id": "https://orcid.org/0000-0002-6503-2180"
},
{
"@id": "https://orcid.org/0000-0002-6503-2180"
"@id": "https://orcid.org/0000-0002-2705-1727"
},
{
"@id": "#[email protected]"
},
{
"@id": "https://orcid.org/0000-0002-4639-0935"
},
{
"@id": "https://orcid.org/0000-0001-9584-7842"
"@id": "https://orcid.org/0000-0001-5010-9539"
},
{
"@id": "#[email protected]"
Expand All @@ -158,11 +161,11 @@
"@id": "#[email protected]"
},
{
"@id": "#[email protected]"
"@id": "https://orcid.org/0000-0003-4412-7970"
}
],
"dateCreated": "",
"dateModified": "2025-07-08T11:39:16Z",
"dateModified": "2025-08-01T12:39:51Z",
"dct:conformsTo": "https://bioschemas.org/profiles/ComputationalWorkflow/1.0-RELEASE/",
"keywords": [
"nf-core",
Expand Down Expand Up @@ -191,10 +194,10 @@
},
"url": [
"https://github.com/nf-core/scrnaseq",
"https://nf-co.re/scrnaseq/dev/"
"https://nf-co.re/scrnaseq/4.1.0/"
],
"version": [
"4.1.0dev"
"4.1.0"
]
},
{
Expand All @@ -210,11 +213,11 @@
"version": "!>=24.10.5"
},
{
"@id": "#244931f2-1b9e-455a-a8b4-139a382be3a1",
"@id": "#d42b5d10-79f6-4e28-83e9-a0b50343b820",
"@type": "TestSuite",
"instance": [
{
"@id": "#72edb790-585a-4a53-862b-83177c420bf1"
"@id": "#33a6fef4-8636-4fc4-9035-63bea60f3fb6"
}
],
"mainEntity": {
Expand All @@ -223,7 +226,7 @@
"name": "Test suite for nf-core/scrnaseq"
},
{
"@id": "#72edb790-585a-4a53-862b-83177c420bf1",
"@id": "#33a6fef4-8636-4fc4-9035-63bea60f3fb6",
"@type": "TestInstance",
"name": "GitHub Actions workflow for testing nf-core/scrnaseq",
"resource": "repos/nf-core/scrnaseq/actions/workflows/nf-test.yml",
Expand Down Expand Up @@ -367,34 +370,40 @@
"url": "https://nf-co.re/"
},
{
"@id": "https://orcid.org/0000-0001-5010-9539",
"@type": "Person",
"email": "[email protected]",
"name": "Sangram Keshari Sahu"
},
{
"@id": "https://orcid.org/0000-0003-4412-7970",
"@id": "https://orcid.org/0000-0001-9584-7842",
"@type": "Person",
"email": "[email protected]",
"name": "Olga Botvinnik"
"email": "[email protected]",
"name": "Gregor Sturm"
},
{
"@id": "https://orcid.org/0000-0002-6503-2180",
"@type": "Person",
"email": "[email protected]",
"name": "Alexander Peltzer"
},
{
"@id": "https://orcid.org/0000-0002-2705-1727",
"@type": "Person",
"email": "[email protected]",
"name": "Leon Hafner"
},
{
"@id": "#[email protected]",
"@type": "Person",
"email": "[email protected]",
"name": "Rob Syme"
},
{
"@id": "https://orcid.org/0000-0002-4639-0935",
"@type": "Person",
"email": "[email protected]",
"name": "Nico Trummer"
},
{
"@id": "https://orcid.org/0000-0001-9584-7842",
"@id": "https://orcid.org/0000-0001-5010-9539",
"@type": "Person",
"email": "[email protected]",
"name": "Gregor Sturm"
"email": "[email protected]",
"name": "Sangram Keshari Sahu"
},
{
"@id": "#[email protected]",
Expand All @@ -409,10 +418,10 @@
"name": "Felipe Marques de Almeida"
},
{
"@id": "#[email protected]",
"@id": "https://orcid.org/0000-0003-4412-7970",
"@type": "Person",
"email": "rob.syme@gmail.com",
"name": "Rob Syme"
"email": "olga.botvinnik@gmail.com",
"name": "Olga Botvinnik"
}
]
}
2 changes: 1 addition & 1 deletion tests/main_pipeline_cellranger.nf.test
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ nextflow_pipeline {
// Number of successful tasks
workflow.trace.succeeded().size(),
// pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions
removeNextflowVersion("$params.outdir/pipeline_info/nf_core_scrnaseq_software_mqc_versions.yml"),
removeFromYamlMap("$params.outdir/pipeline_info/nf_core_scrnaseq_software_mqc_versions.yml", "Workflow"),
// All stable path name, with a relative path
stable_name,
// All files with stable contents
Expand Down
13 changes: 5 additions & 8 deletions tests/main_pipeline_cellranger.nf.test.snap
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,10 @@
"fastqc": "0.12.1"
},
"MTX_TO_H5AD": {
"python": "3.12.5",
"scanpy": "1.10.2",
"anndata": "0.10.8",
"pandas": "2.2.2",
"anndata": "0.10.8"
},
"Workflow": {
"nf-core/scrnaseq": "v4.1.0dev"
"python": "3.12.5",
"scanpy": "1.10.2"
}
},
[
Expand Down Expand Up @@ -383,8 +380,8 @@
],
"meta": {
"nf-test": "0.9.2",
"nextflow": "24.10.1"
"nextflow": "25.04.6"
},
"timestamp": "2025-08-01T11:05:37.982319489"
"timestamp": "2025-08-04T08:28:33.037302748"
}
}
2 changes: 1 addition & 1 deletion tests/main_pipeline_cellrangerarc.nf.test
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ nextflow_pipeline {
// Number of successful tasks
workflow.trace.succeeded().size(),
// pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions
removeNextflowVersion("$params.outdir/pipeline_info/nf_core_scrnaseq_software_mqc_versions.yml"),
removeFromYamlMap("$params.outdir/pipeline_info/nf_core_scrnaseq_software_mqc_versions.yml", "Workflow"),
// All stable path name, with a relative path
stable_name,
// All files with stable contents
Expand Down
Loading
Loading