chore(deps-dev): pin ruff lint rule set to historic default - #23
Merged
Conversation
ruff 0.16 expands its default lint rule set (~59 -> 413 rules). This repo sets no explicit select, so a bump to ruff 0.16 (e.g. widening the version ceiling to <0.17) makes 'ruff check' fail on newly-default rules (I001, LOG009). Pin the historic default (E + F, plus the existing C901) and move the settings under the [lint] section so a 0.16 upgrade is behavior-neutral; adopting the new categories is a separate, deliberate decision.
bgrant
force-pushed
the
chore/pin-ruff-lint-rule-set
branch
from
August 7, 2026 20:31
0b95bd7 to
fdf9942
Compare
bgrant
enabled auto-merge (squash)
August 7, 2026 20:36
rohansroy
approved these changes
Aug 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Pin the ruff lint rule set to the historic default so a future ruff 0.16.x upgrade stays behavior-neutral.
ruff 0.16 expanded its default lint rule set (roughly 59 to 413 rules). This project's
[tool.ruff]sets no explicitselect, so it inherits whatever ruff's default is. When ruff 0.16 is installed,ruff check .(thestatic/test-alltargets) begins failing on newly-default rules that fire on existing code —I001(import sorting) andLOG009(undocumentedlogging.WARNconstant).This change:
lint.select = ["E4", "E7", "E9", "F"]to pin the historic default rule categories (E + F).lint.section, which also clears ruff'stop-level linter settings are deprecatedwarning.C901complexity check vialint.extend-select.Adopting the newly-default rule categories is left as a separate, deliberate decision.
Verification
ruff 0.16.0 check .against this branch reportsAll checks passed!(exit 0), with no deprecation warning. Without the pin, the same ruff 0.16.0 run reports 4 errors (I001,LOG009x2) and fails the build.Context
This unblocks the pending Dependabot dev-dependencies bump (#22), which widens the ruff ceiling to
<0.17.0and currently fails CI for exactly this reason.