docs: note about parameter inheritance when using the "use rule with" pattern#3500
Conversation
📝 WalkthroughWalkthroughThis pull request updates the documentation for Snakemake workflows in the Changes
Possibly related PRs
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
docs/snakefiles/rules.rst (1)
2934-2939: Enhance Clarity for Parameter Inheritance NoteThe new note clearly describes the behavior for modifying the
paramsproperty usingwith. It accurately explains that:
- Unmodified keyword
paramsare inherited.- Positional
paramsprovided afterwithcompletely replace the original positional ones.- All other properties (e.g.
input,output, etc.) are entirely overwritten by those specified afterwith.To further improve clarity, consider:
- Replacing terms like “are overwritten” with “are replaced” for consistency with the notion of replacement.
- Adding a brief example or bullet points to illustrate the difference between keyword and positional parameter handling.
For example, you might consider this diff for refinement:
- Positional `params` arguments of the original rule are overwritten, if positional `params` arguments are given after `with`. + Positional `params` arguments of the original rule are replaced when new positional arguments are provided after `with`.This would enhance readability and ensure the documentation is immediately clear to users.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
docs/snakefiles/rules.rst(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (34)
- GitHub Check: tests (10, windows-latest, py312)
- GitHub Check: tests (10, ubuntu-latest, py312)
- GitHub Check: tests (10, ubuntu-latest, py311)
- GitHub Check: tests (9, windows-latest, py312)
- GitHub Check: tests (9, ubuntu-latest, py312)
- GitHub Check: tests (9, ubuntu-latest, py311)
- GitHub Check: tests (8, windows-latest, py312)
- GitHub Check: tests (8, ubuntu-latest, py312)
- GitHub Check: tests (8, ubuntu-latest, py311)
- GitHub Check: tests (7, windows-latest, py312)
- GitHub Check: tests (7, ubuntu-latest, py312)
- GitHub Check: tests (7, ubuntu-latest, py311)
- GitHub Check: tests (6, windows-latest, py312)
- GitHub Check: tests (6, ubuntu-latest, py312)
- GitHub Check: tests (6, ubuntu-latest, py311)
- GitHub Check: tests (5, macos-latest, py312)
- GitHub Check: tests (5, windows-latest, py312)
- GitHub Check: tests (5, ubuntu-latest, py312)
- GitHub Check: tests (5, ubuntu-latest, py311)
- GitHub Check: tests (4, macos-latest, py312)
- GitHub Check: tests (4, windows-latest, py312)
- GitHub Check: tests (4, ubuntu-latest, py312)
- GitHub Check: tests (4, ubuntu-latest, py311)
- GitHub Check: tests (3, windows-latest, py312)
- GitHub Check: tests (3, ubuntu-latest, py312)
- GitHub Check: tests (3, ubuntu-latest, py311)
- GitHub Check: tests (2, macos-latest, py312)
- GitHub Check: tests (2, windows-latest, py312)
- GitHub Check: tests (2, ubuntu-latest, py312)
- GitHub Check: tests (2, ubuntu-latest, py311)
- GitHub Check: tests (1, macos-latest, py312)
- GitHub Check: tests (1, windows-latest, py312)
- GitHub Check: tests (1, ubuntu-latest, py312)
- GitHub Check: tests (1, ubuntu-latest, py311)
🤖 I have created a release *beep* *boop* --- ## [9.1.4](v9.1.3...v9.1.4) (2025-04-01) ### Bug Fixes * Fix map call in report creation ([#3503](#3503)) ([44754cc](44754cc)) * in the report, do not render toggle labels if there is more than one label eligible for a toggle ([#3502](#3502)) ([3be8ca9](3be8ca9)) * only inform about storage cleanup in case of --verbose mode ([#3494](#3494)) ([62bbbf5](62bbbf5)) * provide causing rule to workflow error during checkpoint handling ([#3499](#3499)) ([b4cbe5d](b4cbe5d)) * rerun-trigger regression ([#3492](#3492)) ([811742d](811742d)) ### Documentation * note about parameter inheritance when using the "use rule with" pattern ([#3500](#3500)) ([8f6a8eb](8f6a8eb)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
… pattern (snakemake#3500) ### Description <!--Add a description of your PR here--> ### QC <!-- Make sure that you can tick the boxes below. --> * [x] The PR contains a test case for the changes or the changes are already covered by an existing test case. * [x] The documentation (`docs/`) is updated to reflect the changes or this is not necessary (e.g. if the change does neither modify the language nor the behavior or functionalities of Snakemake). <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Documentation** - Enhanced guidance on modifying workflow rule parameters. - Clarifies that when updating parameters, unaltered keyword arguments are preserved while new positional arguments and other properties (like inputs and outputs) fully replace existing values. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
🤖 I have created a release *beep* *boop* --- ## [9.1.4](snakemake/snakemake@v9.1.3...v9.1.4) (2025-04-01) ### Bug Fixes * Fix map call in report creation ([snakemake#3503](snakemake#3503)) ([44754cc](snakemake@44754cc)) * in the report, do not render toggle labels if there is more than one label eligible for a toggle ([snakemake#3502](snakemake#3502)) ([3be8ca9](snakemake@3be8ca9)) * only inform about storage cleanup in case of --verbose mode ([snakemake#3494](snakemake#3494)) ([62bbbf5](snakemake@62bbbf5)) * provide causing rule to workflow error during checkpoint handling ([snakemake#3499](snakemake#3499)) ([b4cbe5d](snakemake@b4cbe5d)) * rerun-trigger regression ([snakemake#3492](snakemake#3492)) ([811742d](snakemake@811742d)) ### Documentation * note about parameter inheritance when using the "use rule with" pattern ([snakemake#3500](snakemake#3500)) ([8f6a8eb](snakemake@8f6a8eb)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Description
QC
docs/) is updated to reflect the changes or this is not necessary (e.g. if the change does neither modify the language nor the behavior or functionalities of Snakemake).Summary by CodeRabbit