← Back to issue list

chore(deps): update dependency ruff to v0.1.6 - autoclosed

View original Github issue

Metadata

Project
charmcraft
Number
#1390
Type
pull request
State
closed
Author
renovate[bot]
Labels
Created
Updated
Closed

Current evaluation

The ruff v0.1.6 dependency update was closed without merging. A maintainer rejected the PR after the project switched to managing ruff via a snap package instead of pip.

Suggested action:

No scores available.

Issue body

[![Mend Renovate logo banner](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.0.282` -> `==0.1.6` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/ruff/0.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/ruff/0.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/ruff/0.0.282/0.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/ruff/0.0.282/0.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>astral-sh/ruff (ruff)</summary> ### [`v0.1.6`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#016) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.5...v0.1.6) ##### Preview features - \[`flake8-boolean-trap`] Extend `boolean-type-hint-positional-argument` (`FBT001`) to include booleans in unions ([#&#8203;7501](https://togithub.com/astral-sh/ruff/pull/7501)) - \[`flake8-pie`] Extend `reimplemented-list-builtin` (`PIE807`) to `dict` reimplementations ([#&#8203;8608](https://togithub.com/astral-sh/ruff/pull/8608)) - \[`flake8-pie`] Extend `unnecessary-pass` (`PIE790`) to include ellipses (`...`) ([#&#8203;8641](https://togithub.com/astral-sh/ruff/pull/8641)) - \[`flake8-pie`] Implement fix for `unnecessary-spread` (`PIE800`) ([#&#8203;8668](https://togithub.com/astral-sh/ruff/pull/8668)) - \[`flake8-quotes`] Implement `unnecessary-escaped-quote` (`Q004`) ([#&#8203;8630](https://togithub.com/astral-sh/ruff/pull/8630)) - \[`pycodestyle`] Implement fix for `multiple-spaces-after-keyword` (`E271`) and `multiple-spaces-before-keyword` (`E272`) ([#&#8203;8622](https://togithub.com/astral-sh/ruff/pull/8622)) - \[`pycodestyle`] Implement fix for `multiple-spaces-after-operator` (`E222`) and `multiple-spaces-before-operator` (`E221`) ([#&#8203;8623](https://togithub.com/astral-sh/ruff/pull/8623)) - \[`pyflakes`] Extend `is-literal` (`F632`) to include comparisons against mutable initializers ([#&#8203;8607](https://togithub.com/astral-sh/ruff/pull/8607)) - \[`pylint`] Implement `redefined-argument-from-local` (`PLR1704`) ([#&#8203;8159](https://togithub.com/astral-sh/ruff/pull/8159)) - \[`pylint`] Implement fix for `unnecessary-lambda` (`PLW0108`) ([#&#8203;8621](https://togithub.com/astral-sh/ruff/pull/8621)) - \[`refurb`] Implement `if-expr-min-max` (`FURB136`) ([#&#8203;8664](https://togithub.com/astral-sh/ruff/pull/8664)) - \[`refurb`] Implement `math-constant` (`FURB152`) ([#&#8203;8727](https://togithub.com/astral-sh/ruff/pull/8727)) ##### Rule changes - \[`flake8-annotations`] Add autotyping-like return type inference for annotation rules ([#&#8203;8643](https://togithub.com/astral-sh/ruff/pull/8643)) - \[`flake8-future-annotations`] Implement fix for `future-required-type-annotation` (`FA102`) ([#&#8203;8711](https://togithub.com/astral-sh/ruff/pull/8711)) - \[`flake8-implicit-namespace-package`] Avoid missing namespace violations in scripts with shebangs ([#&#8203;8710](https://togithub.com/astral-sh/ruff/pull/8710)) - \[`pydocstyle`] Update `over-indentation` (`D208`) to preserve indentation offsets when fixing overindented lines ([#&#8203;8699](https://togithub.com/astral-sh/ruff/pull/8699)) - \[`pyupgrade`] Refine `timeout-error-alias` (`UP041`) to remove false positives ([#&#8203;8587](https://togithub.com/astral-sh/ruff/pull/8587)) ##### Formatter - Fix instability in `await` formatting with fluent style ([#&#8203;8676](https://togithub.com/astral-sh/ruff/pull/8676)) - Compare formatted and unformatted ASTs during formatter tests ([#&#8203;8624](https://togithub.com/astral-sh/ruff/pull/8624)) - Preserve trailing semicolon for Notebooks ([#&#8203;8590](https://togithub.com/astral-sh/ruff/pull/8590)) ##### CLI - Improve debug printing for resolving origin of config settings ([#&#8203;8729](https://togithub.com/astral-sh/ruff/pull/8729)) - Write unchanged, excluded files to stdout when read via stdin ([#&#8203;8596](https://togithub.com/astral-sh/ruff/pull/8596)) ##### Configuration - \[`isort`] Support disabling sections with `no-sections = true` ([#&#8203;8657](https://togithub.com/astral-sh/ruff/pull/8657)) - \[`pep8-naming`] Support local and dynamic class- and static-method decorators ([#&#8203;8592](https://togithub.com/astral-sh/ruff/pull/8592)) - \[`pydocstyle`] Allow overriding pydocstyle convention rules ([#&#8203;8586](https://togithub.com/astral-sh/ruff/pull/8586)) ##### Bug fixes - Avoid syntax error via importing `trio.lowlevel` ([#&#8203;8730](https://togithub.com/astral-sh/ruff/pull/8730)) - Omit unrolled augmented assignments in `PIE794` ([#&#8203;8634](https://togithub.com/astral-sh/ruff/pull/8634)) - Slice source code instead of generating it for `EM` fixes ([#&#8203;7746](https://togithub.com/astral-sh/ruff/pull/7746)) - Allow whitespace around colon in slices for `whitespace-before-punctuation` (`E203`) ([#&#8203;8654](https://togithub.com/astral-sh/ruff/pull/8654)) - Use function range for `no-self-use` ([#&#8203;8637](https://togithub.com/astral-sh/ruff/pull/8637)) - F-strings doesn't contain bytes literal for `PLW0129` ([#&#8203;8675](https://togithub.com/astral-sh/ruff/pull/8675)) - Improve detection of `TYPE_CHECKING` blocks imported from `typing_extensions` or `_typeshed` ([#&#8203;8429](https://togithub.com/astral-sh/ruff/pull/8429)) - Treat display as a builtin in IPython ([#&#8203;8707](https://togithub.com/astral-sh/ruff/pull/8707)) - Avoid `FURB113` autofix if comments are present ([#&#8203;8494](https://togithub.com/astral-sh/ruff/pull/8494)) - Consider the new f-string tokens for `flake8-commas` ([#&#8203;8582](https://togithub.com/astral-sh/ruff/pull/8582)) - Remove erroneous bad-dunder-name reference ([#&#8203;8742](https://togithub.com/astral-sh/ruff/pull/8742)) - Avoid recommending Self usages in metaclasses ([#&#8203;8639](https://togithub.com/astral-sh/ruff/pull/8639)) - Detect runtime-evaluated base classes defined in the current file ([#&#8203;8572](https://togithub.com/astral-sh/ruff/pull/8572)) - Avoid inserting trailing commas within f-strings ([#&#8203;8574](https://togithub.com/astral-sh/ruff/pull/8574)) - Remove incorrect deprecation label for stdout and stderr ([#&#8203;8743](https://togithub.com/astral-sh/ruff/pull/8743)) - Fix unnecessary parentheses in UP007 fix ([#&#8203;8610](https://togithub.com/astral-sh/ruff/pull/8610)) - Remove repeated and erroneous scoped settings headers in docs ([#&#8203;8670](https://togithub.com/astral-sh/ruff/pull/8670)) - Trim trailing empty strings when converting to f-strings ([#&#8203;8712](https://togithub.com/astral-sh/ruff/pull/8712)) - Fix ordering for `force-sort-within-sections` ([#&#8203;8665](https://togithub.com/astral-sh/ruff/pull/8665)) - Run unicode prefix rule over tokens ([#&#8203;8709](https://togithub.com/astral-sh/ruff/pull/8709)) - Update UP032 to unescape curly braces in literal parts of converted strings ([#&#8203;8697](https://togithub.com/astral-sh/ruff/pull/8697)) - List all ipython builtins ([#&#8203;8719](https://togithub.com/astral-sh/ruff/pull/8719)) ##### Documentation - Document conventions in the FAQ ([#&#8203;8638](https://togithub.com/astral-sh/ruff/pull/8638)) - Redirect from rule codes to rule pages in docs ([#&#8203;8636](https://togithub.com/astral-sh/ruff/pull/8636)) - Fix permalink to convention setting ([#&#8203;8575](https://togithub.com/astral-sh/ruff/pull/8575)) ### [`v0.1.5`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#015) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.4...v0.1.5) ##### Preview features - \[`flake8-bandit`] Implement `mako-templates` (`S702`) ([#&#8203;8533](https://togithub.com/astral-sh/ruff/pull/8533)) - \[`flake8-trio`] Implement `TRIO105` ([#&#8203;8490](https://togithub.com/astral-sh/ruff/pull/8490)) - \[`flake8-trio`] Implement `TRIO109` ([#&#8203;8534](https://togithub.com/astral-sh/ruff/pull/8534)) - \[`flake8-trio`] Implement `TRIO110` ([#&#8203;8537](https://togithub.com/astral-sh/ruff/pull/8537)) - \[`flake8-trio`] Implement `TRIO115` ([#&#8203;8486](https://togithub.com/astral-sh/ruff/pull/8486)) - \[`refurb`] Implement `type-none-comparison` (`FURB169`) ([#&#8203;8487](https://togithub.com/astral-sh/ruff/pull/8487)) - Flag all comparisons against builtin types in `E721` ([#&#8203;8491](https://togithub.com/astral-sh/ruff/pull/8491)) - Make `SIM118` fix as safe when the expression is a known dictionary ([#&#8203;8525](https://togithub.com/astral-sh/ruff/pull/8525)) ##### Formatter - Fix multiline lambda expression statement formatting ([#&#8203;8466](https://togithub.com/astral-sh/ruff/pull/8466)) ##### CLI - Add hidden `--extension` to override inference of source type from file extension ([#&#8203;8373](https://togithub.com/astral-sh/ruff/pull/8373)) ##### Configuration - Account for selector specificity when merging `extend_unsafe_fixes` and `override extend_safe_fixes` ([#&#8203;8444](https://togithub.com/astral-sh/ruff/pull/8444)) - Add support for disabling cache with `RUFF_NO_CACHE` environment variable ([#&#8203;8538](https://togithub.com/astral-sh/ruff/pull/8538)) ##### Bug fixes - \[`E721`] Flag comparisons to `memoryview` ([#&#8203;8485](https://togithub.com/astral-sh/ruff/pull/8485)) - Allow collapsed-ellipsis bodies in other statements ([#&#8203;8499](https://togithub.com/astral-sh/ruff/pull/8499)) - Avoid `D301` autofix for `u` prefixed strings ([#&#8203;8495](https://togithub.com/astral-sh/ruff/pull/8495)) - Only flag `flake8-trio` rules when `trio` import is present ([#&#8203;8550](https://togithub.com/astral-sh/ruff/pull/8550)) - Reject more syntactically invalid Python programs ([#&#8203;8524](https://togithub.com/astral-sh/ruff/pull/8524)) - Avoid raising `TRIO115` violations for `trio.sleep(...)` calls with non-number values ([#&#8203;8532](https://togithub.com/astral-sh/ruff/pull/8532)) - Fix `F841` false negative on assignment to multiple variables ([#&#8203;8489](https://togithub.com/astral-sh/ruff/pull/8489)) ##### Documentation - Fix link to isort `known-first-party` ([#&#8203;8562](https://togithub.com/astral-sh/ruff/pull/8562)) - Add notes on fix safety to a few rules ([#&#8203;8500](https://togithub.com/astral-sh/ruff/pull/8500)) - Add missing toml config tabs ([#&#8203;8512](https://togithub.com/astral-sh/ruff/pull/8512)) - Add instructions for configuration of Emacs ([#&#8203;8488](https://togithub.com/astral-sh/ruff/pull/8488)) - Improve detail link contrast in dark mode ([#&#8203;8548](https://togithub.com/astral-sh/ruff/pull/8548)) - Fix typo in example ([#&#8203;8506](https://togithub.com/astral-sh/ruff/pull/8506)) - Added tabs for configuration files in the documentation ([#&#8203;8480](https://togithub.com/astral-sh/ruff/pull/8480)) - Recommend `project.requires-python` over `target-version` ([#&#8203;8513](https://togithub.com/astral-sh/ruff/pull/8513)) - Add singleton escape hatch to `B008` documentation ([#&#8203;8501](https://togithub.com/astral-sh/ruff/pull/8501)) - Fix tab configuration docs ([#&#8203;8502](https://togithub.com/astral-sh/ruff/pull/8502)) ### [`v0.1.4`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#014) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.3...v0.1.4) ##### Preview features - \[`flake8-trio`] Implement `timeout-without-await` (`TRIO001`) ([#&#8203;8439](https://togithub.com/astral-sh/ruff/pull/8439)) - \[`numpy`] Implement NumPy 2.0 migration rule (`NPY200`) ([#&#8203;7702](https://togithub.com/astral-sh/ruff/pull/7702)) - \[`pylint`] Implement `bad-open-mode` (`W1501`) ([#&#8203;8294](https://togithub.com/astral-sh/ruff/pull/8294)) - \[`pylint`] Implement `import-outside-toplevel` (`C0415`) rule ([#&#8203;5180](https://togithub.com/astral-sh/ruff/pull/5180)) - \[`pylint`] Implement `useless-with-lock` (`W2101`) ([#&#8203;8321](https://togithub.com/astral-sh/ruff/pull/8321)) - \[`pyupgrade`] Implement `timeout-error-alias` (`UP041`) ([#&#8203;8476](https://togithub.com/astral-sh/ruff/pull/8476)) - \[`refurb`] Implement `isinstance-type-none` (`FURB168`) ([#&#8203;8308](https://togithub.com/astral-sh/ruff/pull/8308)) - Detect confusable Unicode-to-Unicode units in `RUF001`, `RUF002`, and `RUF003` ([#&#8203;4430](https://togithub.com/astral-sh/ruff/pull/4430)) - Add newline after module docstrings in preview style ([#&#8203;8283](https://togithub.com/astral-sh/ruff/pull/8283)) ##### Formatter - Add a note on line-too-long to the formatter docs ([#&#8203;8314](https://togithub.com/astral-sh/ruff/pull/8314)) - Preserve trailing statement semicolons when using `fmt: skip` ([#&#8203;8273](https://togithub.com/astral-sh/ruff/pull/8273)) - Preserve trailing semicolons when using `fmt: off` ([#&#8203;8275](https://togithub.com/astral-sh/ruff/pull/8275)) - Avoid duplicating linter-formatter compatibility warnings ([#&#8203;8292](https://togithub.com/astral-sh/ruff/pull/8292)) - Avoid inserting a newline after function docstrings ([#&#8203;8375](https://togithub.com/astral-sh/ruff/pull/8375)) - Insert newline between docstring and following own line comment ([#&#8203;8216](https://togithub.com/astral-sh/ruff/pull/8216)) - Split tuples in return positions by comma first ([#&#8203;8280](https://togithub.com/astral-sh/ruff/pull/8280)) - Avoid treating byte strings as docstrings ([#&#8203;8350](https://togithub.com/astral-sh/ruff/pull/8350)) - Add `--line-length` option to `format` command ([#&#8203;8363](https://togithub.com/astral-sh/ruff/pull/8363)) - Avoid parenthesizing unsplittable because of comments ([#&#8203;8431](https://togithub.com/astral-sh/ruff/pull/8431)) ##### CLI - Add `--output-format` to `ruff rule` and `ruff linter` ([#&#8203;8203](https://togithub.com/astral-sh/ruff/pull/8203)) ##### Bug fixes - Respect `--force-exclude` in `lint.exclude` and `format.exclude` ([#&#8203;8393](https://togithub.com/astral-sh/ruff/pull/8393)) - Respect `--extend-per-file-ignores` on the CLI ([#&#8203;8329](https://togithub.com/astral-sh/ruff/pull/8329)) - Extend `bad-dunder-method-name` to permit `__index__` ([#&#8203;8300](https://togithub.com/astral-sh/ruff/pull/8300)) - Fix panic with 8 in octal escape ([#&#8203;8356](https://togithub.com/astral-sh/ruff/pull/8356)) - Avoid raising `D300` when both triple quote styles are present ([#&#8203;8462](https://togithub.com/astral-sh/ruff/pull/8462)) - Consider unterminated f-strings in `FStringRanges` ([#&#8203;8154](https://togithub.com/astral-sh/ruff/pull/8154)) - Avoid including literal `shell=True` for truthy, non-`True` diagnostics ([#&#8203;8359](https://togithub.com/astral-sh/ruff/pull/8359)) - Avoid triggering single-element test for starred expressions ([#&#8203;8433](https://togithub.com/astral-sh/ruff/pull/8433)) - Detect and ignore Jupyter automagics ([#&#8203;8398](https://togithub.com/astral-sh/ruff/pull/8398)) - Fix invalid E231 error with f-strings ([#&#8203;8369](https://togithub.com/astral-sh/ruff/pull/8369)) - Avoid triggering `NamedTuple` rewrite with starred annotation ([#&#8203;8434](https://togithub.com/astral-sh/ruff/pull/8434)) - Avoid un-setting bracket flag in logical lines ([#&#8203;8380](https://togithub.com/astral-sh/ruff/pull/8380)) - Place 'r' prefix before 'f' for raw format strings ([#&#8203;8464](https://togithub.com/astral-sh/ruff/pull/8464)) - Remove trailing periods from NumPy 2.0 code actions ([#&#8203;8475](https://togithub.com/astral-sh/ruff/pull/8475)) - Fix bug where `PLE1307` was raised when formatting `%c` with characters ([#&#8203;8407](https://togithub.com/astral-sh/ruff/pull/8407)) - Remove unicode flag from comparable ([#&#8203;8440](https://togithub.com/astral-sh/ruff/pull/8440)) - Improve B015 message ([#&#8203;8295](https://togithub.com/astral-sh/ruff/pull/8295)) - Use `fixedOverflowWidgets` for playground popover ([#&#8203;8458](https://togithub.com/astral-sh/ruff/pull/8458)) - Mark `byte_bounds` as a non-backwards-compatible NumPy 2.0 change ([#&#8203;8474](https://togithub.com/astral-sh/ruff/pull/8474)) ##### Internals - Add a dedicated cache directory per Ruff version ([#&#8203;8333](https://togithub.com/astral-sh/ruff/pull/8333)) - Allow selective caching for `--fix` and `--diff` ([#&#8203;8316](https://togithub.com/astral-sh/ruff/pull/8316)) - Improve performance of comment parsing ([#&#8203;8193](https://togithub.com/astral-sh/ruff/pull/8193)) - Improve performance of string parsing ([#&#8203;8227](https://togithub.com/astral-sh/ruff/pull/8227)) - Use a dedicated sort key for isort import sorting ([#&#8203;7963](https://togithub.com/astral-sh/ruff/pull/7963)) ### [`v0.1.3`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#013) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.2...v0.1.3) This release includes a variety of improvements to the Ruff formatter, removing several known and unintentional deviations from Black. ##### Formatter - Avoid space around pow for `None`, `True` and `False` ([#&#8203;8189](https://togithub.com/astral-sh/ruff/pull/8189)) - Avoid sorting all paths in the format command ([#&#8203;8181](https://togithub.com/astral-sh/ruff/pull/8181)) - Insert necessary blank line between class and leading comments ([#&#8203;8224](https://togithub.com/astral-sh/ruff/pull/8224)) - Avoid introducing new parentheses in annotated assignments ([#&#8203;8233](https://togithub.com/astral-sh/ruff/pull/8233)) - Refine the warnings about incompatible linter options ([#&#8203;8196](https://togithub.com/astral-sh/ruff/pull/8196)) - Add test and basic implementation for formatter preview mode ([#&#8203;8044](https://togithub.com/astral-sh/ruff/pull/8044)) - Refine warning about incompatible `isort` settings ([#&#8203;8192](https://togithub.com/astral-sh/ruff/pull/8192)) - Only omit optional parentheses for starting or ending with parentheses ([#&#8203;8238](https://togithub.com/astral-sh/ruff/pull/8238)) - Use source type to determine parser mode for formatting ([#&#8203;8205](https://togithub.com/astral-sh/ruff/pull/8205)) - Don't warn about magic trailing comma when `isort.force-single-line` is true ([#&#8203;8244](https://togithub.com/astral-sh/ruff/pull/8244)) - Use `SourceKind::diff` for formatter ([#&#8203;8240](https://togithub.com/astral-sh/ruff/pull/8240)) - Fix `fmt:off` with trailing child comment ([#&#8203;8234](https://togithub.com/astral-sh/ruff/pull/8234)) - Formatter parentheses support for `IpyEscapeCommand` ([#&#8203;8207](https://togithub.com/astral-sh/ruff/pull/8207)) ##### Linter - \[`pylint`] Add buffer methods to `bad-dunder-method-name` (`PLW3201`) exclusions ([#&#8203;8190](https://togithub.com/astral-sh/ruff/pull/8190)) - Match rule prefixes from `external` codes setting in `unused-noqa` ([#&#8203;8177](https://togithub.com/astral-sh/ruff/pull/8177)) - Use `line-length` setting for isort in lieu of `pycodestyle.max-line-length` ([#&#8203;8235](https://togithub.com/astral-sh/ruff/pull/8235)) - Update fix for `unnecessary-paren-on-raise-exception` to unsafe for unknown types ([#&#8203;8231](https://togithub.com/astral-sh/ruff/pull/8231)) - Correct quick fix message for `W605` ([#&#8203;8255](https://togithub.com/astral-sh/ruff/pull/8255)) ##### Documentation - Fix typo in max-doc-length documentation ([#&#8203;8201](https://togithub.com/astral-sh/ruff/pull/8201)) - Improve documentation around linter-formatter conflicts ([#&#8203;8257](https://togithub.com/astral-sh/ruff/pull/8257)) - Fix link to error suppression documentation in `unused-noqa` ([#&#8203;8172](https://togithub.com/astral-sh/ruff/pull/8172)) - Add `external` option to `unused-noqa` documentation ([#&#8203;8171](https://togithub.com/astral-sh/ruff/pull/8171)) - Add title attribute to icons ([#&#8203;8060](https://togithub.com/astral-sh/ruff/pull/8060)) - Clarify unsafe case in RSE102 ([#&#8203;8256](https://togithub.com/astral-sh/ruff/pull/8256)) - Fix skipping formatting examples ([#&#8203;8210](https://togithub.com/astral-sh/ruff/pull/8210)) - docs: fix name of `magic-trailing-comma` option in README ([#&#8203;8200](https://togithub.com/astral-sh/ruff/pull/8200)) - Add note about scope of rule changing in versioning policy ([#&#8203;8169](https://togithub.com/astral-sh/ruff/pull/8169)) - Document: Fix default lint rules ([#&#8203;8218](https://togithub.com/astral-sh/ruff/pull/8218)) - Fix a wrong setting in configuration.md ([#&#8203;8186](https://togithub.com/astral-sh/ruff/pull/8186)) - Fix misspelled TOML headers in the tutorial ([#&#8203;8209](https://togithub.com/astral-sh/ruff/pull/8209)) ### [`v0.1.2`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#012) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.1...v0.1.2) This release includes the Beta version of the Ruff formatter — an extremely fast, Black-compatible Python formatter. Try it today with `ruff format`! [Check out the blog post](https://astral.sh/blog/the-ruff-formatter) and [read the docs](https://docs.astral.sh/ruff/formatter/). ##### Preview features - \[`pylint`] Implement `non-ascii-module-import` (`C2403`) ([#&#8203;8056](https://togithub.com/astral-sh/ruff/pull/8056)) - \[`pylint`] implement `non-ascii-name` (`C2401`) ([#&#8203;8038](https://togithub.com/astral-sh/ruff/pull/8038)) - \[`pylint`] Implement unnecessary-lambda (W0108) ([#&#8203;7953](https://togithub.com/astral-sh/ruff/pull/7953)) - \[`refurb`] Implement `read-whole-file` (`FURB101`) ([#&#8203;7682](https://togithub.com/astral-sh/ruff/pull/7682)) - Add fix for `E223`, `E224`, and `E242` ([#&#8203;8143](https://togithub.com/astral-sh/ruff/pull/8143)) - Add fix for `E225`, `E226`, `E227`, and `E228` ([#&#8203;8136](https://togithub.com/astral-sh/ruff/pull/8136)) - Add fix for `E252` ([#&#8203;8142](https://togithub.com/astral-sh/ruff/pull/8142)) - Add fix for `E261` ([#&#8203;8114](https://togithub.com/astral-sh/ruff/pull/8114)) - Add fix for `E273` and `E274` ([#&#8203;8144](https://togithub.com/astral-sh/ruff/pull/8144)) - Add fix for `E275` ([#&#8203;8133](https://togithub.com/astral-sh/ruff/pull/8133)) - Update `SIM401` to catch ternary operations ([#&#8203;7415](https://togithub.com/astral-sh/ruff/pull/7415)) - Update `E721` to allow `is` and `is` not for direct type comparisons ([#&#8203;7905](https://togithub.com/astral-sh/ruff/pull/7905)) ##### Rule changes - Add `backports.strenum` to `deprecated-imports` ([#&#8203;8113](https://togithub.com/astral-sh/ruff/pull/8113)) - Update `SIM112` to ignore `https_proxy`, `http_proxy`, and `no_proxy` ([#&#8203;8140](https://togithub.com/astral-sh/ruff/pull/8140)) - Update fix for `literal-membership` (`PLR6201`) to be unsafe ([#&#8203;8097](https://togithub.com/astral-sh/ruff/pull/8097)) - Update fix for `mutable-argument-defaults` (`B006`) to be unsafe ([#&#8203;8108](https://togithub.com/astral-sh/ruff/pull/8108)) ##### Formatter - Change `line-ending` default to `auto` ([#&#8203;8057](https://togithub.com/astral-sh/ruff/pull/8057)) - Respect parenthesized generators in `has_own_parentheses` ([#&#8203;8100](https://togithub.com/astral-sh/ruff/pull/8100)) - Add caching to formatter ([#&#8203;8089](https://togithub.com/astral-sh/ruff/pull/8089)) - Remove `--line-length` option from `format` command ([#&#8203;8131](https://togithub.com/astral-sh/ruff/pull/8131)) - Add formatter to `line-length` documentation ([#&#8203;8150](https://togithub.com/astral-sh/ruff/pull/8150)) - Warn about incompatible formatter options ([#&#8203;8088](https://togithub.com/astral-sh/ruff/pull/8088)) - Fix range of unparenthesized tuple subject in match statement ([#&#8203;8101](https://togithub.com/astral-sh/ruff/pull/8101)) - Remove experimental formatter warning ([#&#8203;8148](https://togithub.com/astral-sh/ruff/pull/8148)) - Don't move type param opening parenthesis comment ([#&#8203;8163](https://togithub.com/astral-sh/ruff/pull/8163)) - Update versions in format benchmark script ([#&#8203;8110](https://togithub.com/astral-sh/ruff/pull/8110)) - Avoid loading files for cached format results ([#&#8203;8134](https://togithub.com/astral-sh/ruff/pull/8134)) ##### CLI - Show the `ruff format` command in help menus ([#&#8203;8167](https://togithub.com/astral-sh/ruff/pull/8167)) - Add `ruff version` command with long version display ([#&#8203;8034](https://togithub.com/astral-sh/ruff/pull/8034)) ##### Configuration - New `pycodestyle.max-line-length` option ([#&#8203;8039](https://togithub.com/astral-sh/ruff/pull/8039)) ##### Bug fixes - Detect `sys.version_info` slices in `outdated-version-block` ([#&#8203;8112](https://togithub.com/astral-sh/ruff/pull/8112)) - Avoid if-else simplification for `TYPE_CHECKING` blocks ([#&#8203;8072](https://togithub.com/astral-sh/ruff/pull/8072)) - Avoid false-positive print separator diagnostic with starred argument ([#&#8203;8079](https://togithub.com/astral-sh/ruff/pull/8079)) ##### Documentation - Fix message for `too-many-arguments` lint ([#&#8203;8092](https://togithub.com/astral-sh/ruff/pull/8092)) - Fix `extend-unsafe-fixes` and `extend-safe-fixes` example ([#&#8203;8139](https://togithub.com/astral-sh/ruff/pull/8139)) - Add links to `flake8-import-conventions` options ([#&#8203;8115](https://togithub.com/astral-sh/ruff/pull/8115)) - Rework the documentation to incorporate the Ruff formatter ([#&#8203;7732](https://togithub.com/astral-sh/ruff/pull/7732)) - Fix `Options` JSON schema description ([#&#8203;8081](https://togithub.com/astral-sh/ruff/pull/8081)) - Fix typo (`pytext` -> `pytest`) ([#&#8203;8117](https://togithub.com/astral-sh/ruff/pull/8117)) - Improve `magic-value-comparison` example in docs ([#&#8203;8111](https://togithub.com/astral-sh/ruff/pull/8111)) ### [`v0.1.1`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#011) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.0...v0.1.1) ##### Rule changes - Add unsafe fix for `escape-sequence-in-docstring` (`D301`) ([#&#8203;7970](https://togithub.com/astral-sh/ruff/pull/7970)) ##### Configuration - Respect `#(deprecated)` attribute in configuration options ([#&#8203;8035](https://togithub.com/astral-sh/ruff/pull/8035)) - Add `[format|lint].exclude` options ([#&#8203;8000](https://togithub.com/astral-sh/ruff/pull/8000)) - Respect `tab-size` setting in formatter ([#&#8203;8006](https://togithub.com/astral-sh/ruff/pull/8006)) - Add `lint.preview` ([#&#8203;8002](https://togithub.com/astral-sh/ruff/pull/8002)) ##### Preview features - \[`pylint`] Implement `literal-membership` (`PLR6201`) ([#&#8203;7973](https://togithub.com/astral-sh/ruff/pull/7973)) - \[`pylint`] Implement `too-many-boolean-expressions` (`PLR0916`) ([#&#8203;7975](https://togithub.com/astral-sh/ruff/pull/7975)) - \[`pylint`] Implement `misplaced-bare-raise` (`E0704`) ([#&#8203;7961](https://togithub.com/astral-sh/ruff/pull/7961)) - \[`pylint`] Implement `global-at-module-level` (`W0604`) ([#&#8203;8058](https://togithub.com/astral-sh/ruff/pull/8058)) - \[`pylint`] Implement `unspecified-encoding` (`PLW1514`) ([#&#8203;7939](https://togithub.com/astral-sh/ruff/pull/7939)) - Add fix for `triple-single-quotes` (`D300`) ([#&#8203;7967](https://togithub.com/astral-sh/ruff/pull/7967)) ##### Formatter - New code style badge for `ruff format` ([#&#8203;7878](https://togithub.com/astral-sh/ruff/pull/7878)) - Fix comments outside expression parentheses ([#&#8203;7873](https://togithub.com/astral-sh/ruff/pull/7873)) - Add `--target-version` to `ruff format` ([#&#8203;8055](https://togithub.com/astral-sh/ruff/pull/8055)) - Skip over parentheses when detecting `in` keyword ([#&#8203;8054](https://togithub.com/astral-sh/ruff/pull/8054)) - Add `--diff` option to `ruff format` ([#&#8203;7937](https://togithub.com/astral-sh/ruff/pull/7937)) - Insert newline after nested function or class statements ([#&#8203;7946](https://togithub.com/astral-sh/ruff/pull/7946)) - Use `pass` over ellipsis in non-function/class contexts ([#&#8203;8049](https://togithub.com/astral-sh/ruff/pull/8049)) ##### Bug fixes - Lazily evaluate all PEP 695 type alias values ([#&#8203;8033](https://togithub.com/astral-sh/ruff/pull/8033)) - Avoid failed assertion when showing fixes from stdin ([#&#8203;8029](https://togithub.com/astral-sh/ruff/pull/8029)) - Avoid flagging HTTP and HTTPS literals in urllib-open ([#&#8203;8046](https://togithub.com/astral-sh/ruff/pull/8046)) - Avoid flagging `bad-dunder-method-name` for `_` ([#&#8203;8015](https://togithub.com/astral-sh/ruff/pull/8015)) - Remove Python 2-only methods from `URLOpen` audit ([#&#8203;8047](https://togithub.com/astral-sh/ruff/pull/8047)) - Use set bracket replacement for `iteration-over-set` to preserve whitespace and comments ([#&#8203;8001](https://togithub.com/astral-sh/ruff/pull/8001)) ##### Documentation - Update tutorial to match revised Ruff defaults ([#&#8203;8066](https://togithub.com/astral-sh/ruff/pull/8066)) - Update rule `B005` docs ([#&#8203;8028](https://togithub.com/astral-sh/ruff/pull/8028)) - Update GitHub actions example in docs to use `--output-format` ([#&#8203;8014](https://togithub.com/astral-sh/ruff/pull/8014)) - Document `lint.preview` and `format.preview` ([#&#8203;8032](https://togithub.com/astral-sh/ruff/pull/8032)) - Clarify that new rules should be added to `RuleGroup::Preview`. ([#&#8203;7989](https://togithub.com/astral-sh/ruff/pull/7989)) ### [`v0.1.0`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#010) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.292...v0.1.0) This is the first release which uses the `CHANGELOG` file. See [GitHub Releases](https://togithub.com/astral-sh/ruff/releases) for prior changelog entries. Read Ruff's new [versioning policy](https://docs.astral.sh/ruff/versioning/). ##### Breaking changes - Unsafe fixes are no longer displayed or applied without opt-in ([#&#8203;7769](https://togithub.com/astral-sh/ruff/pull/7769)) - Drop formatting specific rules from the default set ([#&#8203;7900](https://togithub.com/astral-sh/ruff/pull/7900)) - The deprecated `format` setting has been removed ([#&#8203;7984](https://togithub.com/astral-sh/ruff/pull/7984)) - The `format` setting cannot be used to configure the output format, use `output-format` instead - The `RUFF_FORMAT` environment variable is ignored, use `RUFF_OUTPUT_FORMAT` instead - The `--format` option has been removed from `ruff check`, use `--output-format` instead ##### Rule changes - Extend `reimplemented-starmap` (`FURB140`) to catch calls with a single and starred argument ([#&#8203;7768](https://togithub.com/astral-sh/ruff/pull/7768)) - Improve cases covered by `RUF015` ([#&#8203;7848](https://togithub.com/astral-sh/ruff/pull/7848)) - Update `SIM15` to allow `open` followed by `close` ([#&#8203;7916](https://togithub.com/astral-sh/ruff/pull/7916)) - Respect `msgspec.Struct` default-copy semantics in `RUF012` ([#&#8203;7786](https://togithub.com/astral-sh/ruff/pull/7786)) - Add `sqlalchemy` methods to \`flake8-boolean-trap\`\` exclusion list ([#&#8203;7874](https://togithub.com/astral-sh/ruff/pull/7874)) - Add fix for `PLR1714` ([#&#8203;7910](https://togithub.com/astral-sh/ruff/pull/7910)) - Add fix for `PIE804` ([#&#8203;7884](https://togithub.com/astral-sh/ruff/pull/7884)) - Add fix for `PLC0208` ([#&#8203;7887](https://togithub.com/astral-sh/ruff/pull/7887)) - Add fix for `PYI055` ([#&#8203;7886](https://togithub.com/astral-sh/ruff/pull/7886)) - Update `non-pep695-type-alias` to require `--unsafe-fixes` outside of stub files ([#&#8203;7836](https://togithub.com/astral-sh/ruff/pull/7836)) - Improve fix message for `UP018` ([#&#8203;7913](https://togithub.com/astral-sh/ruff/pull/7913)) - Update `PLW3201` to support `Enum` [sunder names](https://docs.python.org/3/library/enum.html#supported-sunder-names) ([#&#8203;7987](https://togithub.com/astral-sh/ruff/pull/7987)) ##### Preview features - Only show warnings for empty preview selectors when enabling rules ([#&#8203;7842](https://togithub.com/astral-sh/ruff/pull/7842)) - Add `unnecessary-key-check` to simplify `key in dct and dct[key]` to `dct.get(key)` ([#&#8203;7895](https://togithub.com/astral-sh/ruff/pull/7895)) - Add `assignment-in-assert` to prevent walrus expressions in assert statements ([#&#8203;7856](https://togithub.com/astral-sh/ruff/pull/7856)) - \[`refurb`] Add `single-item-membership-test` (`FURB171`) ([#&#8203;7815](https://togithub.com/astral-sh/ruff/pull/7815)) - \[`pylint`] Add `and-or-ternary` (`R1706`) ([#&#8203;7811](https://togithub.com/astral-sh/ruff/pull/7811)) *New rules are added in [preview](https://docs.astral.sh/ruff/preview/).* ##### Configuration - Add `unsafe-fixes` setting ([#&#8203;7769](https://togithub.com/astral-sh/ruff/pull/7769)) - Add `extend-safe-fixes` and `extend-unsafe-fixes` for promoting and demoting fixes ([#&#8203;7841](https://togithub.com/astral-sh/ruff/pull/7841)) ##### CLI - Added `--unsafe-fixes` option for opt-in to display and apply unsafe fixes ([#&#8203;7769](https://togithub.com/astral-sh/ruff/pull/7769)) - Fix use of deprecated `--format` option in warning ([#&#8203;7837](https://togithub.com/astral-sh/ruff/pull/7837)) - Show changed files when running under `--check` ([#&#8203;7788](https://togithub.com/astral-sh/ruff/pull/7788)) - Write summary messages to stderr when fixing via stdin instead of omitting them ([#&#8203;7838](https://togithub.com/astral-sh/ruff/pull/7838)) - Update fix summary message in `check --diff` to include unsafe fix hints ([#&#8203;7790](https://togithub.com/astral-sh/ruff/pull/7790)) - Add notebook `cell` field to JSON output format ([#&#8203;7664](https://togithub.com/astral-sh/ruff/pull/7664)) - Rename applicability levels to `Safe`, `Unsafe`, and `Display` ([#&#8203;7843](https://togithub.com/astral-sh/ruff/pull/7843)) ##### Bug fixes - Fix bug where f-strings were allowed in match pattern literal ([#&#8203;7857](https://togithub.com/astral-sh/ruff/pull/7857)) - Fix `SIM110` with a yield in the condition ([#&#8203;7801](https://togithub.com/astral-sh/ruff/pull/7801)) - Preserve trailing comments in `C414` fixes ([#&#8203;7775](https://togithub.com/astral-sh/ruff/pull/7775)) - Check sequence type before triggering `unnecessary-enumerate` `len` suggestion ([#&#8203;7781](https://togithub.com/astral-sh/ruff/pull/7781)) - Use correct start location for class/function clause header ([#&#8203;7802](https://togithub.com/astral-sh/ruff/pull/7802)) - Fix incorrect fixes for `SIM101` ([#&#8203;7798](https://togithub.com/astral-sh/ruff/pull/7798)) - Format comment before parameter default correctly ([#&#8203;7870](https://togithub.com/astral-sh/ruff/pull/7870)) - Fix `E251` false positive inside f-strings ([#&#8203;7894](https://togithub.com/astral-sh/ruff/pull/7894)) - Allow bindings to be created and referenced within annotations ([#&#8203;7885](https://togithub.com/astral-sh/ruff/pull/7885)) - Show per-cell diffs when analyzing notebooks over `stdin` ([#&#8203;7789](https://togithub.com/astral-sh/ruff/pull/7789)) - Avoid curly brace escape in f-string format spec ([#&#8203;7780](https://togithub.com/astral-sh/ruff/pull/7780)) - Fix lexing single-quoted f-string with multi-line format spec ([#&#8203;7787](https://togithub.com/astral-sh/ruff/pull/7787)) - Consider nursery rules to be in-preview for `ruff rule` ([#&#8203;7812](https://togithub.com/astral-sh/ruff/pull/7812)) - Report precise location for invalid conversion flag ([#&#8203;7809](https://togithub.com/astral-sh/ruff/pull/7809)) - Visit pattern match guard as a boolean test ([#&#8203;7911](https://togithub.com/astral-sh/ruff/pull/7911)) - Respect `--unfixable` in `ISC` rules ([#&#8203;7917](https://togithub.com/astral-sh/ruff/pull/7917)) - Fix edge case with `PIE804` ([#&#8203;7922](https://togithub.com/astral-sh/ruff/pull/7922)) - Show custom message in `PTH118` for `Path.joinpath` with starred arguments ([#&#8203;7852](https://togithub.com/astral-sh/ruff/pull/7852)) - Fix false negative in `outdated-version-block` when using greater than comparisons ([#&#8203;7920](https://togithub.com/astral-sh/ruff/pull/7920)) - Avoid converting f-strings within Django `gettext` calls ([#&#8203;7898](https://togithub.com/astral-sh/ruff/pull/7898)) - Fix false positive in `PLR6301` ([#&#8203;7933](https://togithub.com/astral-sh/ruff/pull/7933)) - Treat type aliases as typing-only expressions e.g. resolves false positive in `TCH004` ([#&#8203;7968](https://togithub.com/astral-sh/ruff/pull/7968)) - Resolve `cache-dir` relative to project root ([#&#8203;7962](https://togithub.com/astral-sh/ruff/pull/7962)) - Respect subscripted base classes in type-checking rules e.g. resolves false positive in `TCH003` ([#&#8203;7954](https://togithub.com/astral-sh/ruff/pull/7954)) - Fix JSON schema limit for `line-length` ([#&#8203;7883](https://togithub.com/astral-sh/ruff/pull/7883)) - Fix commented-out `coalesce` keyword ([#&#8203;7876](https://togithub.com/astral-sh/ruff/pull/7876)) ##### Documentation - Document `reimplemented-starmap` performance effects ([#&#8203;7846](https://togithub.com/astral-sh/ruff/pull/7846)) - Default to following the system dark/light mode ([#&#8203;7888](https://togithub.com/astral-sh/ruff/pull/7888)) - Add documentation for fixes ([#&#8203;7901](https://togithub.com/astral-sh/ruff/pull/7901)) - Fix typo in docs of `PLR6301` ([#&#8203;7831](https://togithub.com/astral-sh/ruff/pull/7831)) - Update `UP038` docs to note that it results in slower code ([#&#8203;7872](https://togithub.com/astral-sh/ruff/pull/7872)) - crlf -> cr-lf ([#&#8203;7766](https://togithub.com/astral-sh/ruff/pull/7766)) - Add an example of an unsafe fix ([#&#8203;7924](https://togithub.com/astral-sh/ruff/pull/7924)) - Fix documented examples for `unnecessary-subscript-reversal` ([#&#8203;7774](https://togithub.com/astral-sh/ruff/pull/7774)) - Correct error in tuple example in ruff formatter docs ([#&#8203;7822](https://togithub.com/astral-sh/ruff/pull/7822)) - Add versioning policy to documentation ([#&#8203;7923](https://togithub.com/astral-sh/ruff/pull/7923)) - Fix invalid code in `FURB177` example ([#&#8203;7832](https://togithub.com/astral-sh/ruff/pull/7832)) ##### Formatter - Less scary `ruff format` message ([#&#8203;7867](https://togithub.com/astral-sh/ruff/pull/7867)) - Remove spaces from import statements ([#&#8203;7859](https://togithub.com/astral-sh/ruff/pull/7859)) - Formatter quoting for f-strings with triple quotes ([#&#8203;7826](https://togithub.com/astral-sh/ruff/pull/7826)) - Update `ruff_python_formatter` generate.py comment ([#&#8203;7850](https://togithub.com/astral-sh/ruff/pull/7850)) - Document one-call chaining deviation ([#&#8203;7767](https://togithub.com/astral-sh/ruff/pull/7767)) - Allow f-string modifications in line-shrinking cases ([#&#8203;7818](https://togithub.com/astral-sh/ruff/pull/7818)) - Add trailing comment deviation to README ([#&#8203;7827](https://togithub.com/astral-sh/ruff/pull/7827)) - Add trailing zero between dot and exponential ([#&#8203;7956](https://togithub.com/astral-sh/ruff/pull/7956)) - Force parentheses for power operations in unary expressions ([#&#8203;7955](https://togithub.com/astral-sh/ruff/pull/7955)) ##### Playground - Fix playground `Quick Fix` action ([#&#8203;7824](https://togithub.com/astral-sh/ruff/pull/7824)) ### [`v0.0.292`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.292) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.291...v0.0.292) <!-- Release notes generated using configuration in .github/release.yml at v0.0.292 --> #### What's Changed ##### Highlights **This release includes full support for Python 3.12 ([out now!](https://www.python.org/downloads/release/python-3120/)), including the new type parameter ([PEP 695](https://peps.python.org/pep-0695/)) and f-string syntaxes ([PEP 701](https://peps.python.org/pep-0701/)).** PEP 701 lifts many of the restrictions on f-strings that existed in the past, allowing for arbitrarily nested f-strings, consistent quote style within f-strings, and more, all of which are now supported by Ruff (thanks to [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7376](https://togithub.com/astral-sh/ruff/pull/7376)). ##### Breaking Changes - In the formatter, `format.quote-style` no longer affects triple-quoted strings, to align with common conventions as well as the guidance from PEP 8 and PEP 257 (see: [https://github.com/astral-sh/ruff/pull/7680](https://togithub.com/astral-sh/ruff/pull/7680)). - `line-too-long` (`E501`) now ignores trailing pragma comments (like `# type: ignore` and `# noqa`) when computing line length (see: [https://github.com/astral-sh/ruff/pull/7692](https://togithub.com/astral-sh/ruff/pull/7692)). This is similar to flake8-bugbear's methodology for detecting overlong lines, and ensures that adding pragmas like `# noqa` does not introduce further lint errors. ##### Rules - \[`refurb`] Implement `print-empty-string` (`FURB105`) by [@&#8203;tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7617](https://togithub.com/astral-sh/ruff/pull/7617) - \[`flake8-bandit`] Implement `weak-cryptographic-key` (`S505`) by [@&#8203;mkniewallner](https://togithub.com/mkniewallner) in [https://github.com/astral-sh/ruff/pull/7703](https://togithub.com/astral-sh/ruff/pull/7703) - \[`refurb`] Implement `implicit-cwd` (`FURB177`) by [@&#8203;danparizher](https://togithub.com/danparizher) in [https://github.com/astral-sh/ruff/pull/7704](https://togithub.com/astral-sh/ruff/pull/7704) - `unnecessary-pass` (`PIE790`) now flags all unnecessary `pass` statements; previously, the rule only flagged `pass` statements that followed a docstring in a two-statement body (see: [https://github.com/astral-sh/ruff/pull/7697](https://togithub.com/astral-sh/ruff/pull/7697)). ##### Settings - Add `lint` section to Ruff configuration by [@&#8203;MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/7549](https://togithub.com/astral-sh/ruff/pull/7549) - Add `explicit-preview-rules` to toggle explicit selection of preview rules by [@&#8203;zanieb](https://togithub.com/zanieb) in [https://github.com/astral-sh/ruff/pull/7390](https://togithub.com/astral-sh/ruff/pull/7390) - Decrease PEP 593 error to a debug warning by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7745](https://togithub.com/astral-sh/ruff/pull/7745) - Write full Jupyter notebook to `stdout` by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7748](https://togithub.com/astral-sh/ruff/pull/7748) - Extend `unnecessary-pass` (`PIE790`) to trigger on all unnecessary `pass` statements by [@&#8203;tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7697](https://togithub.com/astral-sh/ruff/pull/7697) ##### Bug Fixes - Ignore blank lines between comments when counting newlines-after-imports by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7607](https://togithub.com/astral-sh/ruff/pull/7607) - Avoid reordering mixed-indent-level comments after branches by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7609](https://togithub.com/astral-sh/ruff/pull/7609) - Avoid flagging B009 and B010 on starred expressions by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7621](https://togithub.com/astral-sh/ruff/pull/7621) - Use deletion for D215 full-line removals by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7625](https://togithub.com/astral-sh/ruff/pull/7625) - Avoid searching for bracketed comments in unparenthesized generators by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7627](https://togithub.com/astral-sh/ruff/pull/7627) - Update return type for `PT022` autofix by [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7613](https://togithub.com/astral-sh/ruff/pull/7613) - Flag FURB105 with starred kwargs by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7630](https://togithub.com/astral-sh/ruff/pull/7630) - Don't suggest replacing `builtin.open()` with `Path.open()` if the latter doesn't support all options by [@&#8203;konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/7637](https://togithub.com/astral-sh/ruff/pull/7637) - Use 1-based cell indices consistently for Notebooks by [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7662](https://togithub.com/astral-sh/ruff/pull/7662) - Add `Expr::Name` checks to rules which use `is_logger_candidate` by [@&#8203;qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/7521](https://togithub.com/astral-sh/ruff/pull/7521) - Ensure that B006 autofixes are inserted after imports by [@&#8203;Hoxbro](https://togithub.com/Hoxbro) in [https://github.com/astral-sh/ruff/pull/7629](https://togithub.com/astral-sh/ruff/pull/7629) - Allow named expressions in `__all__` assignments by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7673](https://togithub.com/astral-sh/ruff/pull/7673) - Include radix base prefix in large number representation by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7700](https://togithub.com/astral-sh/ruff/pull/7700) - Parenthesize multi-line attributes in B009 by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7701](https://togithub.com/astral-sh/ruff/pull/7701) - Insert necessary padding in B014 fixes by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7699](https://togithub.com/astral-sh/ruff/pull/7699) - fix(rules): improve S507 detection by [@&#8203;mkniewallner](https://togithub.com/mkniewallner) in [https://github.com/astral-sh/ruff/pull/7661](https://togithub.com/astral-sh/ruff/pull/7661) - Ignore TODO tags in `commented-out-code` by [@&#8203;tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7523](https://togithub.com/astral-sh/ruff/pull/7523) - Track fix isolation in `unnecessary-pass` by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7715](https://togithub.com/astral-sh/ruff/pull/7715) - Use fixed source code for parser context by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7717](https://togithub.com/astral-sh/ruff/pull/7717) - Preserve parentheses in `quadratic-list-summation` by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7719](https://togithub.com/astral-sh/ruff/pull/7719) - Compute `NotebookIndex` for `Diagnostics` on stdin by [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7663](https://togithub.com/astral-sh/ruff/pull/7663) - Perform insertions before replacements by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7739](https://togithub.com/astral-sh/ruff/pull/7739) - Skip all bracketed expressions when locating comparison ops by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7740](https://togithub.com/astral-sh/ruff/pull/7740) - Fix PLE251 rules with f-string escaping by [@&#8203;konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/7741](https://togithub.com/astral-sh/ruff/pull/7741) - Skip BOM when inserting start-of-file imports by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7622](https://togithub.com/astral-sh/ruff/pull/7622) - Emit `LexError` for dedent to incorrect level by [@&#8203;MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/7638](https://togithub.com/astral-sh/ruff/pull/7638) - Expand `DeprecatedLogWarn` to check for `Expr::Atrribute` calls by [@&#8203;qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/7677](https://togithub.com/astral-sh/ruff/pull/7677) ##### Other Changes - Add support for PEP 701 by [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7376](https://togithub.com/astral-sh/ruff/pull/7376) - Improve performance of `commented-out-code` (~50-80%) by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7706](https://togithub.com/astral-sh/ruff/pull/7706) #### New Contributors - [@&#8203;bluthej](https://togithub.com/bluthej) made their first contribution in [https://github.com/astral-sh/ruff/pull/7665](https://togithub.com/astral-sh/ruff/pull/7665) - [@&#8203;Hoxbro](https://togithub.com/Hoxbro) made their first contribution in [https://github.com/astral-sh/ruff/pull/7629](https://togithub.com/astral-sh/ruff/pull/7629) - [@&#8203;danparizher](https://togithub.com/danparizher) made their first contribution in [https://github.com/astral-sh/ruff/pull/7704](https://togithub.com/astral-sh/ruff/pull/7704) - [@&#8203;aspizu](https://togithub.com/aspizu) made their first contribution in [https://github.com/astral-sh/ruff/pull/7750](https://togithub.com/astral-sh/ruff/pull/7750) **Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.291...v0.0.292 ### [`v0.0.291`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.291) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.290...v0.0.291) <!-- Release notes generated using configuration in .github/release.yml at v0.0.291 --> #### What's Changed ##### Deprecations **The `format` command-line argument and configuration option has been renamed to `output-format`.** While Ruff will continue to respect `format` when passed as a command-line argument or configuration option, this backwards-compatible support will be dropped in a future release. See: [https://github.com/astral-sh/ruff/pull/7514](https://togithub.com/astral-sh/ruff/pull/7514). ##### Rules - \[`flake8-bandit`] Implement `S201`: `flask-debug-true` by [@&#8203;mkniewallner](https://togithub.com/mkniewallner) in [https://github.com/astral-sh/ruff/pull/7503](https://togithub.com/astral-sh/ruff/pull/7503) - \[`flake8-bandit`] Implement `S507`: `ssh_no_host_key_verification` by [@&#8203;mkniewallner](https://togithub.com/mkniewallner) in [https://github.com/astral-sh/ruff/pull/7528](https://togithub.com/astral-sh/ruff/pull/7528) - \[`flake8-logging`] Implement `LOG002`: `invalid-get-logger-argument` by [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7399](https://togithub.com/astral-sh/ruff/pull/7399) - \[`flake8-logging`] Implement `LOG007`: `exception-without-exc-info` by [@&#8203;qdegraaf](https://togithub.com/qdegraaf) in [https://github.com/astral-sh/ruff/pull/7410](https://togithub.com/astral-sh/ruff/pull/7410) - \[`refurb`] Implement `FURB140`: `reimplemented-starmap` by [@&#8203;SavchenkoValeriy](https://togithub.com/SavchenkoValeriy) in [https://github.com/astral-sh/ruff/pull/7253](https://togithub.com/astral-sh/ruff/pull/7253) - \[`refurb`] Implement `FURB148`: `unnecessary-enumerate` by [@&#8203;tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7454](https://togithub.com/astral-sh/ruff/pull/7454) - \[`ruff`] Detect `asyncio.get_running_loop` calls in RUF006 by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7562](https://togithub.com/astral-sh/ruff/pull/7562) ##### Settings - Show `--no-X` variants in CLI help by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7504](https://togithub.com/astral-sh/ruff/pull/7504) - Rename `format` option to `output-format` by [@&#8203;MichaReiser](https://togithub.com/MichaReiser) in [https://github.com/astral-sh/ruff/pull/7514](https://togithub.com/astral-sh/ruff/pull/7514) - Enable tab completion for `ruff rule` by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7560](https://togithub.com/astral-sh/ruff/pull/7560) ##### Bug Fixes - Add padding to prevent some autofix errors by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7461](https://togithub.com/astral-sh/ruff/pull/7461) - Remove parentheses when rewriting assert calls to statements by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7464](https://togithub.com/astral-sh/ruff/pull/7464) - Avoid flagging starred elements in C402 by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7466](https://togithub.com/astral-sh/ruff/pull/7466) - Extend `bad-dunder-method-name` to permit `attrs` dunders by [@&#8203;tjkuson](https://togithub.com/tjkuson) in [https://github.com/astral-sh/ruff/pull/7472](https://togithub.com/astral-sh/ruff/pull/7472) - Avoid N802 violations for [@&#8203;overload](https://togithub.com/overload) methods by [@&#8203;JonathanPlasse](https://togithub.com/JonathanPlasse) in [https://github.com/astral-sh/ruff/pull/7498](https://togithub.com/astral-sh/ruff/pull/7498) - Avoid flagging starred expressions in UP007 by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7505](https://togithub.com/astral-sh/ruff/pull/7505) - Ensure that LOG007 only triggers on `.exception()` calls by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7524](https://togithub.com/astral-sh/ruff/pull/7524) - Use strict sorted and union for NoQA mapping insertion by [@&#8203;dhruvmanila](https://togithub.com/dhruvmanila) in [https://github.com/astral-sh/ruff/pull/7531](https://togithub.com/astral-sh/ruff/pull/7531) - Avoid inserting imports directly after continuation by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7553](https://togithub.com/astral-sh/ruff/pull/7553) - Add padding in `PERF102` fixes by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7554](https://togithub.com/astral-sh/ruff/pull/7554) - Avoid invalid fix for parenthesized values in F601 by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7559](https://togithub.com/astral-sh/ruff/pull/7559) - Treat `os.error` as an `OSError` alias by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7582](https://togithub.com/astral-sh/ruff/pull/7582) - Extend `bad-dunder-method-name` to permit `__html__` by [@&#8203;jaap3](https://togithub.com/jaap3) in [https://github.com/astral-sh/ruff/pull/7492](https://togithub.com/astral-sh/ruff/pull/7492) - Fix stylist indentation with a formfeed by [@&#8203;konstin](https://togithub.com/konstin) in [https://github.com/astral-sh/ruff/pull/7489](https://togithub.com/astral-sh/ruff/pull/7489) #### New Contributors - [@&#8203;MicaelJarniac](https://togithub.com/MicaelJarniac) made their first contribution in [https://github.com/astral-sh/ruff/pull/5498](https://togithub.com/astral-sh/ruff/pull/5498) - [@&#8203;maheshsaripalli9](https://togithub.com/maheshsaripalli9) made their first contribution in [https://github.com/astral-sh/ruff/pull/7552](https://togithub.com/astral-sh/ruff/pull/7552) - [@&#8203;T-256](https://togithub.com/T-256) made their first contribution in [https://github.com/astral-sh/ruff/pull/7585](https://togithub.com/astral-sh/ruff/pull/7585) **Full Changelog**: https://github.com/astral-sh/ruff/compare/v0.0.290...v0.0.291 ### [`v0.0.290`](https://togithub.com/astral-sh/ruff/releases/tag/v0.0.290) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.0.289...v0.0.290) <!-- Release notes generated using configuration in .github/release.yml at v0.0.290 --> #### What's Changed ##### Rules - Update `deprecated-import` lists based on recent `typing-extensions` release by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7356](https://togithub.com/astral-sh/ruff/pull/7356) - Add support for bounds, constraints, and explicit variance on generic type variables to `UP040` by [@&#8203;nathanwhit](https://togithub.com/nathanwhit) in [https://github.com/astral-sh/ruff/pull/6749](https://togithub.com/astral-sh/ruff/pull/6749) ##### Settings - Show rule codes in shell tab completion by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7375](https://togithub.com/astral-sh/ruff/pull/7375) ##### Bug Fixes - Parenthesize single-generator arguments when adding reverse keyword by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7365](https://togithub.com/astral-sh/ruff/pull/7365) - Invert reverse argument regardless of whether it's a boolean by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7372](https://togithub.com/astral-sh/ruff/pull/7372) - Extend `C416` to catch tuple unpacking by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://github.com/astral-sh/ruff/pull/7363](https://togithub.com/astral-sh/ruff/pull/7363) - Allow `NURSERY` rule selctor in JSON Schema by [@&#8203;charliermarsh](https://togithub.com/charliermarsh) in [https://gi </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - "before 07:00" in timezone Etc/UTC. 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **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/charmcraft). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuNTkuOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b The ruff v0.1.6 dependency update was closed without merging. A maintainer rejected the PR after the project switched to managing ruff via a snap package instead of pip.
qwen3.6-35b-a3b-mtp-q6 Renovate dependency update for ruff v0.1.6 was closed after a maintainer noted the project switched to the ruff snap, abandoning the update.
qwen3.6-35b-a3b-mtp-q6 Dependency update for ruff to v0.1.6 was closed and abandoned. A maintainer rejected the change, noting the project switched to using the ruff snap instead.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#118 chore(deps): update dependency lint/ruff to v0.1.1 craft-application closed Dependency update for lint/ruff to v0.1.1 was closed without merging. The change was superseded by pull request #115.
89%
#182 chore(deps): update dependency ruff to v0.2.0 - autoclosed starbase closed Automatically closed by Renovate after passing CI checks and approval. The PR updated the ruff dependency from v0.1.15 to v0.2.0.
89%
#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.
88%
#1346 chore(deps): update dependency ruff to v0.1.1 charmcraft closed The ruff dependency update to v0.1.1 was closed and superseded by PR #1347. Renovate will ignore this update and wait for a newer version.
88%
#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.
87%
#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.
87%
#589 chore(deps): update dependency ruff to v0.1.14 craft-parts merged 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.
87%
#699 chore(deps): update dependency ruff to v0.3.5 craft-parts closed Superseded by PR #700. The Renovate dependency update for ruff v0.3.5 was closed without merging.
87%
#37 chore(deps): update dependency ruff to v0.0.247 starbase merged Automatically merged dependency update for ruff from v0.0.245 to v0.0.247. The change passed CI checks, received approval, and was merged via Renovate bot automation to keep the Python linter current.
86%
#252 chore(deps): update dependency lint/ruff to ~=0.4.1 - autoclosed craft-cli closed Renovate autoclosed this dependency update for lint/ruff to 0.4.1 without merging. The branch was superseded or became stale, resulting in an automatic closure with no reviewer activity or CI checks.
86%