Skip to content

[BIG] Adding spoQC to spatialaxe and many other changes - #206

Open
heylf wants to merge 43 commits into
nf-core:devfrom
heylf:spoqc
Open

[BIG] Adding spoQC to spatialaxe and many other changes#206
heylf wants to merge 43 commits into
nf-core:devfrom
heylf:spoqc

Conversation

@heylf

@heylf heylf commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

1. Adding spoQC

  • Added the entire spoQC quality-control subworkflow: subworkflows/local/spoqc/main.nf plus 31 new local modules under modules/local/spoQC/ (ambient, analysis_category, analysis_cluster, analysis_overview, annotation, bubble, cell, cellcycle, combine_masks, doublet, finalreport, general, hqcr_celltype, hqcr_ident, hqpr_bounding_box, hqpr_celltype, hqpr_clustering, hqpr_metrices, hqpr_refinement, hqtr_ac, hqtr_bounding_box, hqtr_celltype, hqtr_clustering, hqtr_metrices, hqtr_qv, hqtr_refinement, marker, model, transcript, void, whole_slide), each with its own main.nf, meta.yml, and nf-test suite (tests/main.nf.test + snapshot).
  • Wired spoQC into workflows/spatialaxe.nf.
  • Added bin/spatialdata_write.py support for spoQC's SpatialData output.
  • New test configs: conf/tests/test_spoqc.config, conf/tests/test_full_spoqc.config

Comment

Note

The tool will be released soon. It comes with proper documentation and spatialaxe will reference this documentation.

2. spatialaxe resource-label rework

  • conf/base.config: single process_high/process_low-style labels with a combinatorial label system; process_{tiny,low,mid,high,xl}_cpus, _mem, and _time labels, each scaling with task.attempt.

3. nf-schema plugin upgrade (2.5.1 → 2.7.2)

  • nextflow.config: bumped the plugin version.
  • subworkflows/nf-core/utils_nfschema_plugin/main.nf: added a cli_typecast input, renamed parametersSchemaparameters_schema across option maps, fixed --help text resolution.
  • subworkflows/nf-core/utils_nextflow_pipeline/main.nf: rewrote dumpParametersToJSON to use groovy.json.JsonGenerator with converters for Path/Duration/MemoryUnit/VersionNumber, replacing the old JsonOutput/FilesEx approach.
  • subworkflows/local/utils_nfcore_spatialaxe_pipeline/main.nf: passes the new cli_typecast argument through.
  • nextflow_schema.json: cleanup — removed redundant "default": false entries, added "default": true for cell_segmentation_only, added numeric defaults for max_x/max_y, normalized float defaults, unicode-escaped µm.
  • modules.json / ro-crate-metadata.json: regenerated to match.

4. Bigger test-data support

  • Added nf-core/unzip module usage so the pipeline can unpack the larger test dataset.
  • Added assets/samplesheet_full.csv, conf/test_full.config

5. Samplesheet redefintion

  • sample,bundle,image,annotation,stainings: samplesheet allows for two additional optional columns annotation,stainings that are useful for the QC subworkflow.

6. Rework of subworkflow and pipeline for proper qc mode

  • spatialdata_write_meta_merge/main.nf: Change to subworkflow to account for proper qc mode.
  • Change to bin/spatialdata_write.py: Adding an all mode to set all available features to True, which is important for QC.
  • Added bin/spatialdata_write.py support for spoQC's SpatialData output.

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
  • 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).

heylf and others added 30 commits July 23, 2026 15:51
dev to spoqc branch to avoid merge conflic
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown

Warning

Newer version of the nf-core template is available.

Your pipeline is using an old version of the nf-core template: 4.0.3.
Please update your pipeline to the latest version.

For more documentation on how to update your pipeline, please see the Synchronisation documentation.

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown

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

Posted for pipeline commit 14a6a10

+| ✅ 289 tests passed       |+
#| ❔   8 tests were ignored |#
#| ❔   1 tests had warnings |#
!| ❗   6 tests had warnings |!
Details

❗ Test warnings:

  • files_exist - File not found: conf/igenomes.config
  • files_exist - File not found: conf/igenomes_ignored.config
  • pipeline_todos - TODO string in main.nf: Optionally add in-text citation tools to this list.
  • pipeline_todos - TODO string in main.nf: Optionally add bibliographic entries to this list.
  • schema_lint - Schema 'description' should be 'A pipeline for spatialomics 10x Xenium In Situ data.'
    Found: 'A pipeline to process spatialomics data from 10x Xenium In Situ or 10x Atera.'
  • schema_description - No description provided in schema for parameter: spoqc

❔ Tests ignored:

  • files_exist - File is ignored: .github/workflows/awsfulltest.yml
  • files_exist - File is ignored: .github/workflows/awstest.yml
  • files_exist - File is ignored: .github/workflows/linting_comment.yml
  • files_unchanged - File ignored due to lint config: .github/PULL_REQUEST_TEMPLATE.md
  • files_unchanged - File ignored due to lint config: assets/nf-core-spatialaxe_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-spatialaxe_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-spatialaxe_logo_dark.png
  • files_unchanged - File ignored due to lint config: .gitignore or .prettierignore

❔ Tests fixed:

✅ Tests passed:

Run details

  • nf-core/tools version 4.0.3
  • Run at 2026-08-07 16:04:16

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown

❌ nf-test failed with latest Nextflow version

Note

Tests with Nextflow's latest version failed but it will not cause a CI workflow failure.
Please check if the failure is expected with newer (edge-)releases of Nextflow or if it needs fixing.

  • docker | latest-everything | Shard 5/12

See the full run for details.

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.

1 participant