Expand linting/styling QC - #28
Conversation
There was a problem hiding this comment.
Pull request overview
This PR expands the project’s Pixi-based quality-control tooling to support linting/formatting not only Python, but also Markdown and TOML—preparing the repo for upcoming documentation work related to #27.
Changes:
- Refactors
qc/apply-qctasks and introduces astylefeature with dedicated lint/format tasks for Python, Markdown, and TOML. - Adds a separate Pixi environment (
style) to install optional formatting/linting tools. - Updates the lockfile accordingly and applies a minor README formatting tweak.
Reviewed changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
pixi.toml |
Adds a style feature + environment and new lint/style task graph; updates top-level QC tasks. |
pixi.lock |
Captures the new style environment resolution and dependency set. |
README.md |
Adds a blank line after the title. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
📝 WalkthroughWalkthroughUpdated README with a one-line descriptive subtitle; reworked Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
pixi.toml (1)
29-34: Verify ruff version and consider pinning mdformat versions.
ruff version
>=0.12.11,<0.13: This version range seems unusually high. Please verify this is the intended version.Unpinned mdformat dependencies: Using
"*"formdformatandmdformat-gfmmay lead to reproducibility issues if breaking changes are introduced in future versions. Consider adding version constraints similar to other dependencies.,
What is the latest version of ruff Python linter?🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@pixi.toml` around lines 29 - 34, Verify the ruff version range and pin the mdformat packages: confirm the intended ruff constraint (the current key "ruff" should be validated against the latest ruff release) and adjust it if it's too restrictive or incorrect (e.g., set a realistic upper bound like <0.13 only if you verified compatibility), and replace the wildcard "*" for "mdformat" and "mdformat-gfm" with explicit version constraints (e.g., lock to a tested minor/patch range) to ensure reproducible builds; update the entries for the keys ruff, mdformat, and mdformat-gfm accordingly after checking the latest ruff release and the compatible mdformat versions.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@pixi.toml`:
- Around line 11-12: The qc and apply-qc tasks reference target tasks (lint and
style) that are defined under feature.style.tasks and thus aren't available in
the default environment because no-default-feature = true; fix this by moving
the lint and style task definitions from [feature.style.tasks] into the global
[tasks] section so qc and apply-qc can delegate to them without requiring
--environment style, update any feature-specific settings accordingly, and keep
qc and apply-qc entries as-is to preserve CI usage of pixi run qc.
---
Nitpick comments:
In `@pixi.toml`:
- Around line 29-34: Verify the ruff version range and pin the mdformat
packages: confirm the intended ruff constraint (the current key "ruff" should be
validated against the latest ruff release) and adjust it if it's too restrictive
or incorrect (e.g., set a realistic upper bound like <0.13 only if you verified
compatibility), and replace the wildcard "*" for "mdformat" and "mdformat-gfm"
with explicit version constraints (e.g., lock to a tested minor/patch range) to
ensure reproducible builds; update the entries for the keys ruff, mdformat, and
mdformat-gfm accordingly after checking the latest ruff release and the
compatible mdformat versions.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 01178378-d14e-4134-b392-ec269ffaa977
⛔ Files ignored due to path filters (1)
pixi.lockis excluded by!**/*.lock
📒 Files selected for processing (2)
README.mdpixi.toml
5eee92e to
2345969
Compare
There was a problem hiding this comment.
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 `@pixi.toml`:
- Around line 49-53: The pixi task aliases currently use string values ("qc" =
"lint" and "apply-qc" = "style") which Pixi treats as shell commands; change
these keys to use depends-on task references instead so they point to the
existing tasks "lint" and "style" (i.e., replace the string assignments for qc
and apply-qc with depends-on references that list the target task names) so
running the alias executes the referenced task rather than a shell command.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 1557496e-3971-4842-ae15-a1fd7c9c3415
⛔ Files ignored due to path filters (1)
pixi.lockis excluded by!**/*.lock
📒 Files selected for processing (1)
pixi.toml
2345969 to
5f478da
Compare
Currently finds all md files and runs mdformat on them, wrapping lines to 80 characters.
Leave the name apply-qc for backwards compatability.
Not needed in default.
5f478da to
e6a8a10
Compare
For my intended coming changes addressing #27, I wanted to make sure tools for styling/linting md and toml files are available.
Summary by CodeRabbit
Documentation
Chores