← Back to issue list

chore(deps): update dependency ruff to v0.1.14

View original Github issue

Metadata

Project
craft-parts
Number
#589
Type
pull request
State
merged
Author
renovate[bot]
Labels
Created
Updated
Closed

Current evaluation

Merged automated dependency update for ruff from v0.1.6 to v0.1.14. Approved by two reviewers with passing CI checks. Updated a single configuration file to apply the new version constraint.

Suggested action:

No scores available.

Issue body

[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [ruff](https://docs.astral.sh/ruff) ([source](https://togithub.com/astral-sh/ruff), [changelog](https://togithub.com/astral-sh/ruff/blob/main/CHANGELOG.md)) | `==0.1.6` -> `==0.1.14` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/ruff/0.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/ruff/0.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/ruff/0.1.6/0.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/ruff/0.1.6/0.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>astral-sh/ruff (ruff)</summary> ### [`v0.1.14`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0114) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.13...v0.1.14) ##### Preview features - \[`flake8-bugbear`] Add fix for `duplicate-value` (`B033`) ([#&#8203;9510](https://togithub.com/astral-sh/ruff/pull/9510)) - \[`flake8-simplify`] Implement `enumerate-for-loop` (`SIM113`) ([#&#8203;7777](https://togithub.com/astral-sh/ruff/pull/7777)) - \[`pygrep_hooks`] Add fix for `deprecated-log-warn` (`PGH002`) ([#&#8203;9519](https://togithub.com/astral-sh/ruff/pull/9519)) - \[`pylint`] Implement `import-private-name` (`C2701`) ([#&#8203;5920](https://togithub.com/astral-sh/ruff/pull/5920)) - \[`refurb`] Implement `regex-flag-alias` with fix (`FURB167`) ([#&#8203;9516](https://togithub.com/astral-sh/ruff/pull/9516)) - \[`ruff`] Add rule and fix to sort contents of `__all__` (`RUF022`) ([#&#8203;9474](https://togithub.com/astral-sh/ruff/pull/9474)) - \[`tryceratops`] Add fix for `error-instead-of-exception` (`TRY400`) ([#&#8203;9520](https://togithub.com/astral-sh/ruff/pull/9520)) ##### Rule changes - \[`flake8-pyi`] Fix `PYI047` false negatives on PEP-695 type aliases ([#&#8203;9566](https://togithub.com/astral-sh/ruff/pull/9566)) - \[`flake8-pyi`] Fix `PYI049` false negatives on call-based `TypedDict`s ([#&#8203;9567](https://togithub.com/astral-sh/ruff/pull/9567)) - \[`pylint`] Exclude `self` and `cls` when counting method arguments (`PLR0917`) ([#&#8203;9563](https://togithub.com/astral-sh/ruff/pull/9563)) ##### CLI - `--show-settings` displays active settings in a far more readable format ([#&#8203;9464](https://togithub.com/astral-sh/ruff/pull/9464)) - Add `--extension` support to the formatter ([#&#8203;9483](https://togithub.com/astral-sh/ruff/pull/9483)) ##### Configuration - Ignore preview status for fixable and unfixable selectors ([#&#8203;9538](https://togithub.com/astral-sh/ruff/pull/9538)) - \[`pycodestyle`] Use the configured tab size when expanding indents ([#&#8203;9506](https://togithub.com/astral-sh/ruff/pull/9506)) ##### Bug fixes - Recursively visit deferred AST nodes ([#&#8203;9541](https://togithub.com/astral-sh/ruff/pull/9541)) - Visit deferred lambdas before type definitions ([#&#8203;9540](https://togithub.com/astral-sh/ruff/pull/9540)) - \[`flake8-simplify`] Avoid some more `enumerate-for-loop` false positives (`SIM113`) ([#&#8203;9515](https://togithub.com/astral-sh/ruff/pull/9515)) - \[`pandas-vet`] Limit inplace diagnostics to methods that accept inplace ([#&#8203;9495](https://togithub.com/astral-sh/ruff/pull/9495)) - \[`pylint`] Add the `__prepare__` method to the list of recognized dunder method ([#&#8203;9529](https://togithub.com/astral-sh/ruff/pull/9529)) - \[`pylint`] Ignore unnecessary dunder calls within dunder definitions ([#&#8203;9496](https://togithub.com/astral-sh/ruff/pull/9496)) - \[`refurb`] Avoid bailing when `reimplemented-operator` is called on function (`FURB118`) ([#&#8203;9556](https://togithub.com/astral-sh/ruff/pull/9556)) - \[`ruff`] Avoid treating named expressions as static keys (`RUF011`) ([#&#8203;9494](https://togithub.com/astral-sh/ruff/pull/9494)) ##### Documentation - Add instructions on using `noqa` with isort rules ([#&#8203;9555](https://togithub.com/astral-sh/ruff/pull/9555)) - Documentation update for URL giving 'page not found' ([#&#8203;9565](https://togithub.com/astral-sh/ruff/pull/9565)) - Fix admonition in dark mode ([#&#8203;9502](https://togithub.com/astral-sh/ruff/pull/9502)) - Update contributing docs to use `cargo bench -p ruff_benchmark` ([#&#8203;9535](https://togithub.com/astral-sh/ruff/pull/9535)) - Update emacs integration section to include `emacs-ruff-format` ([#&#8203;9403](https://togithub.com/astral-sh/ruff/pull/9403)) - \[`flake8-blind-except`] Document exceptions to `blind-except` rule ([#&#8203;9580](https://togithub.com/astral-sh/ruff/pull/9580)) ### [`v0.1.13`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0113) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.12...v0.1.13) ##### Bug fixes - Include base pyproject when initializing cache settings ([#&#8203;9480](https://togithub.com/astral-sh/ruff/pull/9480)) - \[`flake8-simplify`] Account for possibly-empty f-string values in truthiness logic ([#&#8203;9484](https://togithub.com/astral-sh/ruff/pull/9484)) - \[`pylint`] Add the missing period in `unnecessary-dunder-call` ([#&#8203;9485](https://togithub.com/astral-sh/ruff/pull/9485)) - \[`pylint`] Fix `__aenter__` message in `unnecessary-dunder-call` ([#&#8203;9492](https://togithub.com/astral-sh/ruff/pull/9492)) ### [`v0.1.12`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0112) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.11...v0.1.12) ##### Preview features - Formatter: Hug multiline-strings in preview style ([#&#8203;9243](https://togithub.com/astral-sh/ruff/pull/9243)) - \[`flake8-bandit`] Add `ssl-with-no-version` (`S504`) ([#&#8203;9384](https://togithub.com/astral-sh/ruff/pull/9384)) - \[`flake8-bandit`] Implement `ssl-insecure-version` (`S502`) ([#&#8203;9390](https://togithub.com/astral-sh/ruff/pull/9390)) - \[`flake8-bandit`] Implement `ssl-with-bad-defaults` (`S503`) ([#&#8203;9391](https://togithub.com/astral-sh/ruff/pull/9391)) - \[`flake8-bandit`] Implement suspicious import rules (`S4XX`) ([#&#8203;8831](https://togithub.com/astral-sh/ruff/pull/8831)) - \[`flake8-simplify`] Implement `zip-dict-keys-and-values` (`SIM911`) ([#&#8203;9460](https://togithub.com/astral-sh/ruff/pull/9460)) - \[`pyflakes`] Add a fix for `redefined-while-unused` (`F811`) ([#&#8203;9419](https://togithub.com/astral-sh/ruff/pull/9419)) - \[`pylint`] Implement `unnecessary-dunder-call` (`C2801`) ([#&#8203;9166](https://togithub.com/astral-sh/ruff/pull/9166)) - \[`ruff`] Add `parenthesize-chained-operators` (`RUF021`) to enforce parentheses in `a or b and c` ([#&#8203;9440](https://togithub.com/astral-sh/ruff/pull/9440)) ##### Rule changes - \[`flake8-boolean-trap`] Allow Boolean positional arguments in setters ([#&#8203;9429](https://togithub.com/astral-sh/ruff/pull/9429)) - \[`flake8-builtins`] Restrict `builtin-attribute-shadowing` (`A003`) to actual shadowed references ([#&#8203;9462](https://togithub.com/astral-sh/ruff/pull/9462)) - \[`flake8-pyi`] Add fix for `generator-return-from-iter-method` (`PYI058`) ([#&#8203;9355](https://togithub.com/astral-sh/ruff/pull/9355)) - \[`pyflakes`] Don't flag `redefined-while-unused` (`F811`) in `if` branches ([#&#8203;9418](https://togithub.com/astral-sh/ruff/pull/9418)) - \[`pyupgrade`] Add some additional Python 3.12 typing members to `deprecated-import` ([#&#8203;9445](https://togithub.com/astral-sh/ruff/pull/9445)) - \[`ruff`] Add fix for `parenthesize-chained-operators` (`RUF021`) ([#&#8203;9449](https://togithub.com/astral-sh/ruff/pull/9449)) - \[`ruff`] Include subscripts and attributes in static key rule (`RUF011`) ([#&#8203;9416](https://togithub.com/astral-sh/ruff/pull/9416)) - \[`ruff`] Support variable keys in static dictionary key rule (`RUF011`) ([#&#8203;9411](https://togithub.com/astral-sh/ruff/pull/9411)) ##### Formatter - Generate deterministic IDs when formatting notebooks ([#&#8203;9359](https://togithub.com/astral-sh/ruff/pull/9359)) - Allow `# fmt: skip` with interspersed same-line comments ([#&#8203;9395](https://togithub.com/astral-sh/ruff/pull/9395)) - Parenthesize breaking named expressions in match guards ([#&#8203;9396](https://togithub.com/astral-sh/ruff/pull/9396)) ##### Bug fixes - Add cell indexes to all diagnostics ([#&#8203;9387](https://togithub.com/astral-sh/ruff/pull/9387)) - Avoid infinite loop in constant vs. `None` comparisons ([#&#8203;9376](https://togithub.com/astral-sh/ruff/pull/9376)) - Handle raises with implicit alternate branches ([#&#8203;9377](https://togithub.com/astral-sh/ruff/pull/9377)) - Ignore trailing quotes for unclosed l-brace errors ([#&#8203;9388](https://togithub.com/astral-sh/ruff/pull/9388)) - Respect multi-segment submodule imports when resolving qualified names ([#&#8203;9382](https://togithub.com/astral-sh/ruff/pull/9382)) - Use `DisplayParseError` for stdin parser errors ([#&#8203;9409](https://togithub.com/astral-sh/ruff/pull/9409)) - Use `comment_ranges` for isort directive extraction ([#&#8203;9414](https://togithub.com/astral-sh/ruff/pull/9414)) - Use transformed source code for diagnostic locations ([#&#8203;9408](https://togithub.com/astral-sh/ruff/pull/9408)) - \[`flake8-pyi`] Exclude `warnings.deprecated` and `typing_extensions.deprecated` arguments ([#&#8203;9423](https://togithub.com/astral-sh/ruff/pull/9423)) - \[`flake8-pyi`] Fix false negative for `unused-private-protocol` (`PYI046`) with unused generic protocols ([#&#8203;9405](https://togithub.com/astral-sh/ruff/pull/9405)) - \[`pydocstyle`] Disambiguate argument descriptors from section headers ([#&#8203;9427](https://togithub.com/astral-sh/ruff/pull/9427)) - \[`pylint`] Homogenize `PLR0914` message to match other `PLR09XX` rules ([#&#8203;9399](https://togithub.com/astral-sh/ruff/pull/9399)) - \[`ruff`] Allow `Hashable = None` in type annotations (`RUF013`) ([#&#8203;9442](https://togithub.com/astral-sh/ruff/pull/9442)) ##### Documentation - Fix admonition hyperlink colouring ([#&#8203;9385](https://togithub.com/astral-sh/ruff/pull/9385)) - Add missing preview link ([#&#8203;9386](https://togithub.com/astral-sh/ruff/pull/9386)) ### [`v0.1.11`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0111) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.10...v0.1.11) ##### Preview features - \[`pylint`] Implement `super-without-brackets` (`W0245`) ([#&#8203;9257](https://togithub.com/astral-sh/ruff/pull/9257)) ##### Bug fixes - Check path string properly in `python -m ruff` invocations ([#&#8203;9367](https://togithub.com/astral-sh/ruff/pull/9367)) ##### Documentation - Tweak `relative-imports` message ([#&#8203;9365](https://togithub.com/astral-sh/ruff/pull/9365)) - Add fix safety note for `yield-in-for-loop` ([#&#8203;9364](https://togithub.com/astral-sh/ruff/pull/9364)) ### [`v0.1.10`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0110) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.9...v0.1.10) ##### Preview features - Improve `dummy_implementations` preview style formatting ([#&#8203;9240](https://togithub.com/astral-sh/ruff/pull/9240)) - Normalise Hex and unicode escape sequences in strings ([#&#8203;9280](https://togithub.com/astral-sh/ruff/pull/9280)) - Parenthesize long type annotations in annotated assignments ([#&#8203;9210](https://togithub.com/astral-sh/ruff/pull/9210)) - Parenthesize multi-context managers in `with` statements ([#&#8203;9222](https://togithub.com/astral-sh/ruff/pull/9222)) - \[`flake8-pyi`] Implement `generator-return-from-iter-method` (`PYI058`) ([#&#8203;9313](https://togithub.com/astral-sh/ruff/pull/9313)) - \[`pylint`] Implement `empty-comment` (`PLR2044`) ([#&#8203;9174](https://togithub.com/astral-sh/ruff/pull/9174)) - \[`refurb`] Implement `bit-count` (`FURB161`) ([#&#8203;9265](https://togithub.com/astral-sh/ruff/pull/9265)) - \[`ruff`] Add `never-union` rule to detect redundant `typing.NoReturn` and `typing.Never` ([#&#8203;9217](https://togithub.com/astral-sh/ruff/pull/9217)) ##### CLI - Add paths to TOML parse errors ([#&#8203;9358](https://togithub.com/astral-sh/ruff/pull/9358)) - Add row and column numbers to formatter parse errors ([#&#8203;9321](https://togithub.com/astral-sh/ruff/pull/9321)) - Improve responsiveness when invoked via Python ([#&#8203;9315](https://togithub.com/astral-sh/ruff/pull/9315)) - Short rule messages should not end with a period ([#&#8203;9345](https://togithub.com/astral-sh/ruff/pull/9345)) ##### Configuration - Respect runtime-required decorators on functions ([#&#8203;9317](https://togithub.com/astral-sh/ruff/pull/9317)) ##### Bug fixes - Avoid `asyncio-dangling-task` for nonlocal and global bindings ([#&#8203;9263](https://togithub.com/astral-sh/ruff/pull/9263)) - Escape trailing placeholders in rule documentation ([#&#8203;9301](https://togithub.com/astral-sh/ruff/pull/9301)) - Fix continuation detection following multi-line strings ([#&#8203;9332](https://togithub.com/astral-sh/ruff/pull/9332)) - Fix scoping for generators in named expressions in classes ([#&#8203;9248](https://togithub.com/astral-sh/ruff/pull/9248)) - Port from obsolete wsl crate to is-wsl ([#&#8203;9356](https://togithub.com/astral-sh/ruff/pull/9356)) - Remove special pre-visit for module docstrings ([#&#8203;9261](https://togithub.com/astral-sh/ruff/pull/9261)) - Respect `__str__` definitions from super classes ([#&#8203;9338](https://togithub.com/astral-sh/ruff/pull/9338)) - Respect `unused-noqa` via `per-file-ignores` ([#&#8203;9300](https://togithub.com/astral-sh/ruff/pull/9300)) - Respect attribute chains when resolving builtin call paths ([#&#8203;9309](https://togithub.com/astral-sh/ruff/pull/9309)) - Treat all `typing_extensions` members as typing aliases ([#&#8203;9335](https://togithub.com/astral-sh/ruff/pull/9335)) - Use `Display` for formatter parse errors ([#&#8203;9316](https://togithub.com/astral-sh/ruff/pull/9316)) - Wrap subscripted dicts in parens for f-string conversion ([#&#8203;9238](https://togithub.com/astral-sh/ruff/pull/9238)) - \[`flake8-annotations`] Avoid adding return types to stub methods ([#&#8203;9277](https://togithub.com/astral-sh/ruff/pull/9277)) - \[`flake8-annotations`] Respect mixed `return` and `raise` cases in return-type analysis ([#&#8203;9310](https://togithub.com/astral-sh/ruff/pull/9310)) - \[`flake8-bandit`] Don't report violations when `SafeLoader` is imported from `yaml.loader` (`S506`) ([#&#8203;9299](https://togithub.com/astral-sh/ruff/pull/9299)) - \[`pylint`] Avoid panic when comment is preceded by Unicode ([#&#8203;9331](https://togithub.com/astral-sh/ruff/pull/9331)) - \[`pylint`] Change `PLR0917` error message to match other `PLR09XX` messages ([#&#8203;9308](https://togithub.com/astral-sh/ruff/pull/9308)) - \[`refurb`] Avoid false positives for `math-constant` (`FURB152`) ([#&#8203;9290](https://togithub.com/astral-sh/ruff/pull/9290)) ##### Documentation - Expand target name for better rule documentation ([#&#8203;9302](https://togithub.com/astral-sh/ruff/pull/9302)) - Fix typos found by codespell ([#&#8203;9346](https://togithub.com/astral-sh/ruff/pull/9346)) - \[`perflint`] Document `PERF102` fix un-safety ([#&#8203;9351](https://togithub.com/astral-sh/ruff/pull/9351)) - \[`pyupgrade`] Document `UP007` fix un-safety ([#&#8203;9306](https://togithub.com/astral-sh/ruff/pull/9306)) ### [`v0.1.9`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#019) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.8...v0.1.9) ##### Breaking changes - Add site-packages to default exclusions ([#&#8203;9188](https://togithub.com/astral-sh/ruff/pull/9188)) ##### Preview features - Fix: Avoid parenthesizing subscript targets and values ([#&#8203;9209](https://togithub.com/astral-sh/ruff/pull/9209)) - \[`pylint`] Implement `too-many-locals` (`PLR0914`) ([#&#8203;9163](https://togithub.com/astral-sh/ruff/pull/9163)) - Implement `reimplemented_operator` (FURB118) ([#&#8203;9171](https://togithub.com/astral-sh/ruff/pull/9171)) - Add a rule to detect string members in runtime-evaluated unions ([#&#8203;9143](https://togithub.com/astral-sh/ruff/pull/9143)) - Implement `no_blank_line_before_class_docstring` preview style ([#&#8203;9154](https://togithub.com/astral-sh/ruff/pull/9154)) ##### Rule changes - `CONSTANT_CASE` variables are improperly flagged for yoda violation (`SIM300`) ([#&#8203;9164](https://togithub.com/astral-sh/ruff/pull/9164)) - \[`flake8-pyi`] Cover ParamSpecs and TypeVarTuples (`PYI018`) ([#&#8203;9198](https://togithub.com/astral-sh/ruff/pull/9198)) - \[`flake8-bugbear`] Add fix for `zip-without-explicit-strict` (`B905`) ([#&#8203;9176](https://togithub.com/astral-sh/ruff/pull/9176)) - Add fix to automatically remove `print` and `pprint` statements (`T201`, `T203`) ([#&#8203;9208](https://togithub.com/astral-sh/ruff/pull/9208)) - Prefer `Never` to `NoReturn` in auto-typing in Python >= 3.11 (`ANN201`) ([#&#8203;9213](https://togithub.com/astral-sh/ruff/pull/9213)) ##### Formatter - `can_omit_optional_parentheses`: Exit early for unparenthesized expressions ([#&#8203;9125](https://togithub.com/astral-sh/ruff/pull/9125)) - Fix `dynamic` mode with doctests so that it doesn't exceed configured line width ([#&#8203;9129](https://togithub.com/astral-sh/ruff/pull/9129)) - Fix `can_omit_optional_parentheses` for expressions with a right most fstring ([#&#8203;9124](https://togithub.com/astral-sh/ruff/pull/9124)) - Add `target_version` to formatter options ([#&#8203;9220](https://togithub.com/astral-sh/ruff/pull/9220)) ##### CLI - Update `ruff format --check` to display message for already formatted files ([#&#8203;9153](https://togithub.com/astral-sh/ruff/pull/9153)) ##### Bug fixes - Reverse order of arguments for `operator.contains` ([#&#8203;9192](https://togithub.com/astral-sh/ruff/pull/9192)) - Iterate over lambdas in deferred type annotations ([#&#8203;9175](https://togithub.com/astral-sh/ruff/pull/9175)) - Fix panic in `D208` with multibyte indent ([#&#8203;9147](https://togithub.com/astral-sh/ruff/pull/9147)) - Add support for `NoReturn` in auto-return-typing ([#&#8203;9206](https://togithub.com/astral-sh/ruff/pull/9206)) - Allow removal of `typing` from `exempt-modules` ([#&#8203;9214](https://togithub.com/astral-sh/ruff/pull/9214)) - Avoid `mutable-class-default` violations for Pydantic subclasses ([#&#8203;9187](https://togithub.com/astral-sh/ruff/pull/9187)) - Fix dropped union expressions for piped non-types in `PYI055` autofix ([#&#8203;9161](https://togithub.com/astral-sh/ruff/pull/9161)) - Enable annotation quoting for multi-line expressions ([#&#8203;9142](https://togithub.com/astral-sh/ruff/pull/9142)) - Deduplicate edits when quoting annotations ([#&#8203;9140](https://togithub.com/astral-sh/ruff/pull/9140)) - Prevent invalid utf8 indexing in cell magic detection ([#&#8203;9146](https://togithub.com/astral-sh/ruff/pull/9146)) - Avoid nested quotations in auto-quoting fix ([#&#8203;9168](https://togithub.com/astral-sh/ruff/pull/9168)) - Add base-class inheritance detection to flake8-django rules ([#&#8203;9151](https://togithub.com/astral-sh/ruff/pull/9151)) - Avoid `asyncio-dangling-task` violations on shadowed bindings ([#&#8203;9215](https://togithub.com/astral-sh/ruff/pull/9215)) ##### Documentation - Fix blog post URL in changelog ([#&#8203;9119](https://togithub.com/astral-sh/ruff/pull/9119)) - Add error suppression hint for multi-line strings ([#&#8203;9205](https://togithub.com/astral-sh/ruff/pull/9205)) - Fix typo in SemanticModel.parent_expression docstring ([#&#8203;9167](https://togithub.com/astral-sh/ruff/pull/9167)) - Document link between import sorting and formatter ([#&#8203;9117](https://togithub.com/astral-sh/ruff/pull/9117)) ### [`v0.1.8`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#018) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.7...v0.1.8) This release includes opt-in support for formatting Python snippets within docstrings via the `docstring-code-format` setting. [Check out the blog post](https://astral.sh/blog/ruff-v0.1.8) for more details! ##### Preview features - Add `"preserve"` quote-style to mimic Black's skip-string-normalization ([#&#8203;8822](https://togithub.com/astral-sh/ruff/pull/8822)) - Implement `prefer_splitting_right_hand_side_of_assignments` preview style ([#&#8203;8943](https://togithub.com/astral-sh/ruff/pull/8943)) - \[`pycodestyle`] Add fix for `unexpected-spaces-around-keyword-parameter-equals` ([#&#8203;9072](https://togithub.com/astral-sh/ruff/pull/9072)) - \[`pycodestyle`] Add fix for comment-related whitespace rules ([#&#8203;9075](https://togithub.com/astral-sh/ruff/pull/9075)) - \[`pycodestyle`] Allow `sys.path` modifications between imports ([#&#8203;9047](https://togithub.com/astral-sh/ruff/pull/9047)) - \[`refurb`] Implement `hashlib-digest-hex` (`FURB181`) ([#&#8203;9077](https://togithub.com/astral-sh/ruff/pull/9077)) ##### Rule changes - Allow `flake8-type-checking` rules to automatically quote runtime-evaluated references ([#&#8203;6001](https://togithub.com/astral-sh/ruff/pull/6001)) - Allow transparent cell magics in Jupyter Notebooks ([#&#8203;8911](https://togithub.com/astral-sh/ruff/pull/8911)) - \[`flake8-annotations`] Avoid `ANN2xx` fixes for abstract methods with empty bodies ([#&#8203;9034](https://togithub.com/astral-sh/ruff/pull/9034)) - \[`flake8-self`] Ignore underscore references in type annotations ([#&#8203;9036](https://togithub.com/astral-sh/ruff/pull/9036)) - \[`pep8-naming`] Allow class names when `apps.get_model` is a non-string ([#&#8203;9065](https://togithub.com/astral-sh/ruff/pull/9065)) - \[`pycodestyle`] Allow `matplotlib.use` calls to intersperse imports ([#&#8203;9094](https://togithub.com/astral-sh/ruff/pull/9094)) - \[`pyflakes`] Support fixing unused assignments in tuples by renaming variables (`F841`) ([#&#8203;9107](https://togithub.com/astral-sh/ruff/pull/9107)) - \[`pylint`] Add fix for `subprocess-run-without-check` (`PLW1510`) ([#&#8203;6708](https://togithub.com/astral-sh/ruff/pull/6708)) ##### Formatter - Add `docstring-code-format` knob to enable docstring snippet formatting ([#&#8203;8854](https://togithub.com/astral-sh/ruff/pull/8854)) - Use double quotes for all docstrings, including single-quoted docstrings ([#&#8203;9020](https://togithub.com/astral-sh/ruff/pull/9020)) - Implement "dynamic" line width mode for docstring code formatting ([#&#8203;9098](https://togithub.com/astral-sh/ruff/pull/9098)) - Support reformatting Markdown code blocks ([#&#8203;9030](https://togithub.com/astral-sh/ruff/pull/9030)) - add support for formatting reStructuredText code snippets ([#&#8203;9003](https://togithub.com/astral-sh/ruff/pull/9003)) - Avoid trailing comma for single-argument with positional separator ([#&#8203;9076](https://togithub.com/astral-sh/ruff/pull/9076)) - Fix handling of trailing target comment ([#&#8203;9051](https://togithub.com/astral-sh/ruff/pull/9051)) ##### CLI - Hide unsafe fix suggestions when explicitly disabled ([#&#8203;9095](https://togithub.com/astral-sh/ruff/pull/9095)) - Add SARIF support to `--output-format` ([#&#8203;9078](https://togithub.com/astral-sh/ruff/pull/9078)) ##### Bug fixes - Apply unnecessary index rule prior to enumerate rewrite ([#&#8203;9012](https://togithub.com/astral-sh/ruff/pull/9012)) - \[`flake8-err-msg`] Allow `EM` fixes even if `msg` variable is defined ([#&#8203;9059](https://togithub.com/astral-sh/ruff/pull/9059)) - \[`flake8-pie`] Prevent keyword arguments duplication ([#&#8203;8450](https://togithub.com/astral-sh/ruff/pull/8450)) - \[`flake8-pie`] Respect trailing comma in `unnecessary-dict-kwargs` (`PIE804`) ([#&#8203;9015](https://togithub.com/astral-sh/ruff/pull/9015)) - \[`flake8-raise`] Avoid removing parentheses on ctypes.WinError ([#&#8203;9027](https://togithub.com/astral-sh/ruff/pull/9027)) - \[`isort`] Avoid invalid combination of `force-sort-within-types` and `lines-between-types` ([#&#8203;9041](https://togithub.com/astral-sh/ruff/pull/9041)) - \[`isort`] Ensure that from-style imports are always ordered first in `__future__` ([#&#8203;9039](https://togithub.com/astral-sh/ruff/pull/9039)) - \[`pycodestyle`] Allow tab indentation before keyword ([#&#8203;9099](https://togithub.com/astral-sh/ruff/pull/9099)) - \[`pylint`] Ignore `@overrides` and `@overloads` for `too-many-positional` ([#&#8203;9000](https://togithub.com/astral-sh/ruff/pull/9000)) - \[`pyupgrade`] Enable `printf-string-formatting` fix with comments on right-hand side ([#&#8203;9037](https://togithub.com/astral-sh/ruff/pull/9037)) - \[`refurb`] Make `math-constant` (`FURB152`) rule more targeted ([#&#8203;9054](https://togithub.com/astral-sh/ruff/pull/9054)) - \[`refurb`] Support floating-point base in `redundant-log-base` (`FURB163`) ([#&#8203;9100](https://togithub.com/astral-sh/ruff/pull/9100)) - \[`ruff`] Detect `unused-asyncio-dangling-task` (`RUF006`) on unused assignments ([#&#8203;9060](https://togithub.com/astral-sh/ruff/pull/9060)) ### [`v0.1.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#017) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.6...v0.1.7) ##### Preview features - Implement multiline dictionary and list hugging for preview style ([#&#8203;8293](https://togithub.com/astral-sh/ruff/pull/8293)) - Implement the `fix_power_op_line_length` preview style ([#&#8203;8947](https://togithub.com/astral-sh/ruff/pull/8947)) - Use Python version to determine typing rewrite safety ([#&#8203;8919](https://togithub.com/astral-sh/ruff/pull/8919)) - \[`flake8-annotations`] Enable auto-return-type involving `Optional` and `Union` annotations ([#&#8203;8885](https://togithub.com/astral-sh/ruff/pull/8885)) - \[`flake8-bandit`] Implement `django-raw-sql` (`S611`) ([#&#8203;8651](https://togithub.com/astral-sh/ruff/pull/8651)) - \[`flake8-bandit`] Implement `tarfile-unsafe-members` (`S202`) ([#&#8203;8829](https://togithub.com/astral-sh/ruff/pull/8829)) - \[`flake8-pyi`] Implement fix for `unnecessary-literal-union` (`PYI030`) ([#&#8203;7934](https://togithub.com/astral-sh/ruff/pull/7934)) - \[`flake8-simplify`] Extend `dict-get-with-none-default` (`SIM910`) to non-literals ([#&#8203;8762](https://togithub.com/astral-sh/ruff/pull/8762)) - \[`pylint`] - add `unnecessary-list-index-lookup` (`PLR1736`) + autofix ([#&#8203;7999](https://togithub.com/astral-sh/ruff/pull/7999)) - \[`pylint`] - implement R0202 and R0203 with autofixes ([#&#8203;8335](https://togithub.com/astral-sh/ruff/pull/8335)) - \[`pylint`] Implement `repeated-keyword` (`PLe1132`) ([#&#8203;8706](https://togithub.com/astral-sh/ruff/pull/8706)) - \[`pylint`] Implement `too-many-positional` (`PLR0917`) ([#&#8203;8995](https://togithub.com/astral-sh/ruff/pull/8995)) - \[`pylint`] Implement `unnecessary-dict-index-lookup` (`PLR1733`) ([#&#8203;8036](https://togithub.com/astral-sh/ruff/pull/8036)) - \[`refurb`] Implement `redundant-log-base` (`FURB163`) ([#&#8203;8842](https://togithub.com/astral-sh/ruff/pull/8842)) ##### Rule changes - \[`flake8-boolean-trap`] Allow booleans in `@override` methods ([#&#8203;8882](https://togithub.com/astral-sh/ruff/pull/8882)) - \[`flake8-bugbear`] Avoid `B015`,`B018` for last expression in a cell ([#&#8203;8815](https://togithub.com/astral-sh/ruff/pull/8815)) - \[`flake8-pie`] Allow ellipses for enum values in stub files ([#&#8203;8825](https://togithub.com/astral-sh/ruff/pull/8825)) - \[`flake8-pyi`] Check PEP 695 type aliases for `snake-case-type-alias` and `t-suffixed-type-alias` ([#&#8203;8966](https://togithub.com/astral-sh/ruff/pull/8966)) - \[`flake8-pyi`] Check for kwarg and vararg `NoReturn` type annotations ([#&#8203;8948](https://togithub.com/astral-sh/ruff/pull/8948)) - \[`flake8-simplify`] Omit select context managers from `SIM117` ([#&#8203;8801](https://togithub.com/astral-sh/ruff/pull/8801)) - \[`pep8-naming`] Allow Django model loads in `non-lowercase-variable-in-function` (`N806`) ([#&#8203;8917](https://togithub.com/astral-sh/ruff/pull/8917)) - \[`pycodestyle`] Avoid `E703` for last expression in a cell ([#&#8203;8821](https://togithub.com/astral-sh/ruff/pull/8821)) - \[`pycodestyle`] Update `E402` to work at cell level for notebooks ([#&#8203;8872](https://togithub.com/astral-sh/ruff/pull/8872)) - \[`pydocstyle`] Avoid `D100` for Jupyter Notebooks ([#&#8203;8816](https://togithub.com/astral-sh/ruff/pull/8816)) - \[`pylint`] Implement fix for `unspecified-encoding` (`PLW1514`) ([#&#8203;8928](https://togithub.com/astral-sh/ruff/pull/8928)) ##### Formatter - Avoid unstable formatting in ellipsis-only body with trailing comment ([#&#8203;8984](https://togithub.com/astral-sh/ruff/pull/8984)) - Inline trailing comments for type alias similar to assignments ([#&#8203;8941](https://togithub.com/astral-sh/ruff/pull/8941)) - Insert trailing comma when function breaks with single argument ([#&#8203;8921](https://togithub.com/astral-sh/ruff/pull/8921)) ##### CLI - Update `ruff check` and `ruff format` to default to the current directory ([#&#8203;8791](https://togithub.com/astral-sh/ruff/pull/8791)) - Stop at the first resolved parent configuration ([#&#8203;8864](https://togithub.com/astral-sh/ruff/pull/8864)) ##### Configuration - \[`pylint`] Default `max-positional-args` to `max-args` ([#&#8203;8998](https://togithub.com/astral-sh/ruff/pull/8998)) - \[`pylint`] Add `allow-dunder-method-names` setting for `bad-dunder-method-name` (`PLW3201`) ([#&#8203;8812](https://togithub.com/astral-sh/ruff/pull/8812)) - \[`isort`] Add support for `from-first` setting ([#&#8203;8663](https://togithub.com/astral-sh/ruff/pull/8663)) - \[`isort`] Add support for `length-sort` settings ([#&#8203;8841](https://togithub.com/astral-sh/ruff/pull/8841)) ##### Bug fixes - Add support for `@functools.singledispatch` ([#&#8203;8934](https://togithub.com/astral-sh/ruff/pull/8934)) - Avoid off-by-one error in stripping noqa following multi-byte char ([#&#8203;8979](https://togithub.com/astral-sh/ruff/pull/8979)) - Avoid off-by-one error in with-item named expressions ([#&#8203;8915](https://togithub.com/astral-sh/ruff/pull/8915)) - Avoid syntax error via invalid ur string prefix ([#&#8203;8971](https://togithub.com/astral-sh/ruff/pull/8971)) - Avoid underflow in `get_model` matching ([#&#8203;8965](https://togithub.com/astral-sh/ruff/pull/8965)) - Avoid unnecessary index diagnostics when value is modified ([#&#8203;8970](https://togithub.com/astral-sh/ruff/pull/8970)) - Convert over-indentation rule to use number of characters ([#&#8203;8983](https://togithub.com/astral-sh/ruff/pull/8983)) - Detect implicit returns in auto-return-types ([#&#8203;8952](https://togithub.com/astral-sh/ruff/pull/8952)) - Fix start >= end error in over-indentation ([#&#8203;8982](https://togithub.com/astral-sh/ruff/pull/8982)) - Ignore `@overload` and `@override` methods for too-many-arguments checks ([#&#8203;8954](https://togithub.com/astral-sh/ruff/pull/8954)) - Lexer start of line is false only for `Mode::Expression` ([#&#8203;8880](https://togithub.com/astral-sh/ruff/pull/8880)) - Mark `pydantic_settings.BaseSettings` as having default copy semantics ([#&#8203;8793](https://togithub.com/astral-sh/ruff/pull/8793)) - Respect dictionary unpacking in `NamedTuple` assignments ([#&#8203;8810](https://togithub.com/astral-sh/ruff/pull/8810)) - Respect local subclasses in `flake8-type-checking` ([#&#8203;8768](https://togithub.com/astral-sh/ruff/pull/8768)) - Support type alias statements in simple statement positions ([#&#8203;8916](https://togithub.com/astral-sh/ruff/pull/8916)) - \[`flake8-annotations`] Avoid filtering out un-representable types in return annotation ([#&#8203;8881](https://togithub.com/astral-sh/ruff/pull/8881)) - \[`flake8-pie`] Retain extra ellipses in protocols and abstract methods ([#&#8203;8769](https://togithub.com/astral-sh/ruff/pull/8769)) - \[`flake8-pyi`] Respect local enum subclasses in `simple-defaults` (`PYI052`) ([#&#8203;8767](https://togithub.com/astral-sh/ruff/pull/8767)) - \[`flake8-trio`] Use correct range for `TRIO115` fix ([#&#8203;8933](https://togithub.com/astral-sh/ruff/pull/8933)) - \[`flake8-trio`] Use full arguments range for zero-sleep-call ([#&#8203;8936](https://togithub.com/astral-sh/ruff/pull/8936)) - \[`isort`] fix: mark `__main__` as first-party import ([#&#8203;8805](https://togithub.com/astral-sh/ruff/pull/8805)) - \[`pep8-naming`] Avoid `N806` errors for type alias statements ([#&#8203;8785](https://togithub.com/astral-sh/ruff/pull/8785)) - \[`perflint`] Avoid `PERF101` if there's an append in loop body ([#&#8203;8809](https://togithub.com/astral-sh/ruff/pull/8809)) - \[`pycodestyle`] Allow space-before-colon after end-of-slice ([#&#8203;8838](https://togithub.com/astral-sh/ruff/pull/8838)) - \[`pydocstyle`] Avoid non-character breaks in `over-indentation` (`D208`) ([#&#8203;8866](https://togithub.com/astral-sh/ruff/pull/8866)) - \[`pydocstyle`] Ignore underlines when determining docstring logical lines ([#&#8203;8929](https://togithub.com/astral-sh/ruff/pull/8929)) - \[`pylint`] Extend `self-assigning-variable` to multi-target assignments ([#&#8203;8839](https://togithub.com/astral-sh/ruff/pull/8839)) - \[`tryceratops`] Avoid repeated triggers in nested `tryceratops` diagnostics ([#&#8203;8772](https://togithub.com/astral-sh/ruff/pull/8772)) ##### Documentation - Add advice for fixing RUF008 when mutability is not desired ([#&#8203;8853](https://togithub.com/astral-sh/ruff/pull/8853)) - Added the command to run ruff using pkgx to the installation.md ([#&#8203;8955](https://togithub.com/astral-sh/ruff/pull/8955)) - Document fix safety for flake8-comprehensions and some pyupgrade rules ([#&#8203;8918](https://togithub.com/astral-sh/ruff/pull/8918)) - Fix doc formatting for zero-sleep-call ([#&#8203;8937](https://togithub.com/astral-sh/ruff/pull/8937)) - Remove duplicate imports from os-stat documentation ([#&#8203;8930](https://togithub.com/astral-sh/ruff/pull/8930)) - Replace generated reference to MkDocs ([#&#8203;8806](https://togithub.com/astral-sh/ruff/pull/8806)) - Update Arch Linux package URL in installation.md ([#&#8203;8802](https://togithub.com/astral-sh/ruff/pull/8802)) - \[`flake8-pyi`] Fix error in `t-suffixed-type-alias` (`PYI043`) example ([#&#8203;8963](https://togithub.com/astral-sh/ruff/pull/8963)) - \[`flake8-pyi`] Improve motivation for `custom-type-var-return-type` (`PYI019`) ([#&#8203;8766](https://togithub.com/astral-sh/ruff/pull/8766)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - "every weekend" in timezone Etc/UTC. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/canonical/craft-parts). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuMTM1LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged automated dependency update for ruff from v0.1.6 to v0.1.14. Approved by two reviewers with passing CI checks. Updated a single configuration file to apply the new version constraint.
qwen3.6-35b-a3b-mtp-q6 Automated dependency update for ruff from 0.1.6 to 0.1.14 was successfully merged. The Renovate bot pull request passed validation and was integrated into the main branch.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#423 chore(deps): update dependency ruff to v0.1.6 rockcraft merged Merged automated dependency update upgrading ruff from v0.1.1 to v0.1.6. Approved by two reviewers, passed CI checks, and applied with a minimal two-line change across two files.
97%
#177 chore(deps): update dependency ruff to v0.1.15 starbase merged Successfully merged automated dependency update upgrading ruff from 0.0.267 to 0.1.15. The change passed CI checks, maintained 100% test coverage, and updated the project's linting tool to the latest release.
95%
#69 chore(deps): update dependency ruff to v0.0.269 starbase merged Merged automated dependency update upgrading ruff from v0.0.267 to v0.0.269. Passed CI checks and reviewer approval before integration.
95%
#709 chore(deps): update dependency ruff to v0.4.3 craft-parts merged Merged automated dependency update for ruff from 0.3.5 to 0.4.3. Passed CI, received two approvals, and was applied via Renovate bot automerge, updating a single configuration file.
94%
#387 chore(deps): update dependency ruff to v0.1.1 rockcraft merged Renovate bot updated the ruff dependency from 0.0.256 to 0.1.1. The change was approved by two reviewers, passed CI checks, and successfully merged.
94%
#4417 chore(deps): update ruff to 0.1.1 and fix lint issues snapcraft merged Merged dependency update upgrading ruff to 0.1.1 and resolving linting errors across 19 files. Approved by two reviewers, passed CI, and increased coverage by 0.01%. A newer ruff version was released shortly after merge.
93%
#165 chore(deps): update dependency lint/ruff to v0.1.7 craft-application merged Merged an automated dependency update for lint/ruff from v0.1.6 to v0.1.7. Approved by two reviewers, passed CI checks, and successfully integrated into the main branch.
93%
#1071 chore(deps): update dependency ruff to v0.0.261 charmcraft merged Automatically merged via Renovate bot to update the ruff dependency from v0.0.256 to v0.0.261. The change passed CI checks and received reviewer approval before automerge.
92%
#230 chore(deps): update dependency lint/ruff to v0.1.15 craft-cli merged Merged automated dependency update upgrading lint/ruff from v0.1.14 to v0.1.15. Approved by two reviewers, passed CI checks, and maintained 94.81% test coverage across a single file change.
92%
#129 chore(deps): update dependency lint/ruff to v0.1.2 craft-application merged Dependency update for lint/ruff from v0.1.1 to v0.1.2 was approved by two reviewers, passed CI checks, and successfully merged.
92%