Skip to content

feat: various changes to accomodate new wf catalog features#27

Merged
m-jahn merged 3 commits into
snakemake-workflows:mainfrom
MPUSP:catalog_features
Mar 27, 2026
Merged

feat: various changes to accomodate new wf catalog features#27
m-jahn merged 3 commits into
snakemake-workflows:mainfrom
MPUSP:catalog_features

Conversation

@m-jahn

@m-jahn m-jahn commented Mar 26, 2026

Copy link
Copy Markdown
Member
  • this PR implements some changes with regard to two new features in the wf catalog which I'll try to advertise a bit more in the future:
    • tube maps will be built as long as there is .test subdir which supports running a test case (snakemake -c 1 -d .test --forceall --rulegraph)
    • there's no longer a need to have manually curated table of wf params in the README. As long as the wf has a config.schema.y(a)ml file, this will be used to render a table automatically
  • example: here or here
  • the idea is to have as little manual curation as possible for workflow docs and automate the most
  • other minor formatting changes and updates, closes bump superlinter verison in github actions workflow to v8 #25

Summary by CodeRabbit

  • New Features

    • Added defaults and stricter types/required fields for key workflow configuration parameters.
  • Documentation

    • Updated README with workflow diagram and parameter table note.
    • Streamlined configuration docs by removing the separate Parameters section.
  • Dependencies

    • Bumped tool versions for FastQC and MultiQC; updated CI action versions.
  • Chores

    • Updated license year range.

@coderabbitai

coderabbitai Bot commented Mar 26, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 072504f0-4f28-4ae1-99c9-2f575445132d

📥 Commits

Reviewing files that changed from the base of the PR and between dbadc80 and 5835ce7.

📒 Files selected for processing (2)
  • .github/workflows/conventional-prs.yaml
  • .github/workflows/main.yaml
✅ Files skipped from review due to trivial changes (2)
  • .github/workflows/conventional-prs.yaml
  • .github/workflows/main.yaml

📝 Walkthrough

Walkthrough

Updates include a license year range bump, small README edits, removal of a parameters table from config docs, repositioning of a Snakemake default_target, rule tweaks and tool version bumps, and an expanded config JSON-schema with added types, defaults, and required fields.

Changes

Cohort / File(s) Summary
Documentation & License
LICENSE, README.md, config/README.md
Updated LICENSE copyright span to 2021-2026; added one sentence to README.md Usage about workflow diagram and parameter table; removed the standalone "Parameters" section from config/README.md.
Snakemake top-level
workflow/Snakefile
Moved default_target: True out of the input: block to be a direct key under rule all.
Snakemake rules
workflow/rules/process_reads.smk
Reordered log/message placements across several rules; replaced shell backtick extraction with params.output_prefix for simulate_reads and updated DWGSIM invocation; moved fastqc threads: 1 into rule header; bumped tool wrapper versions (fastqc v6.0.0→v7.6.0, multiqc v6.0.0→v8.1.1).
Configuration schema
workflow/schemas/config.schema.yaml
Added type: object at root; updated sample_sheet description and default (config/samples.tsv); added default "" and required status for get_genome.ncbi_ftp; changed simulate_reads.read_length/read_number from numberinteger, added defaults (100, 10000) and marked them required; expanded top-level required to include get_genome and simulate_reads.
CI workflows
.github/workflows/main.yaml, .github/workflows/conventional-prs.yaml
Bumped GitHub Action major versions: actions/checkout@v4@v6 and super-linter v7→v8 in main.yaml; updated amannn/action-semantic-pull-request v5→v6 in conventional-prs.yaml.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Poem

🐰 The license hops forward, years in tow,
Docs trimmed neat where old tables used to show,
Rules shuffle logs and tools get new shoes,
Schema counts numbers with integer pews,
I nibble a carrot and sigh—workflows grow.

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title is vague and overly generic; 'various changes' and 'accommodate new wf catalog features' lack specificity about what was actually changed. Consider a more specific title that describes the main change, such as 'refactor: prepare workflow for catalog schema-based documentation' or 'feat: add config schema support for auto-generated parameter tables'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@workflow/schemas/config.schema.yaml`:
- Around line 15-18: The schema currently sets a required field
get_genome.ncbi_ftp with default: "" which makes an empty-but-present value
possible; remove the empty default (delete default: "") and instead add a
non-empty constraint (e.g., minLength: 1 or a URI/hostname pattern) for property
ncbi_ftp so the validator rejects blank values; update any docs/examples rather
than changing requiredness, and ensure the consumer in process_reads.smk (the
wget usage) will only receive a validated, non-empty URL.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 49921d3a-d7eb-4c43-b462-a5dd4c45e143

📥 Commits

Reviewing files that changed from the base of the PR and between edc3127 and dbadc80.

📒 Files selected for processing (6)
  • LICENSE
  • README.md
  • config/README.md
  • workflow/Snakefile
  • workflow/rules/process_reads.smk
  • workflow/schemas/config.schema.yaml
💤 Files with no reviewable changes (1)
  • config/README.md

Comment thread workflow/schemas/config.schema.yaml
@m-jahn
m-jahn requested a review from dlaehnemann March 26, 2026 07:53

@dlaehnemann dlaehnemann left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Nice. I didn't know about these features, but appreciate them.

One additional thing to maybe add, would be extensive comments in the config/config.yaml file itself. But this could also be done in a separate pull request. This is where I usually put information on the kinds of values each setting can have.

Comment thread workflow/rules/process_reads.smk
@m-jahn
m-jahn merged commit 7842e34 into snakemake-workflows:main Mar 27, 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.

bump superlinter verison in github actions workflow to v8

2 participants