forked from openapi-generators/openapi-python-client
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit 1d31787
feat: allow Ruff to 0.10 (openapi-generators#1220)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [ruff](https://docs.astral.sh/ruff)
([source](https://redirect.github.com/astral-sh/ruff),
[changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md))
| `>=0.2,<0.10` -> `>=0.2,<0.11` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
### Release Notes
<details>
<summary>astral-sh/ruff (ruff)</summary>
###
[`v0.10.0`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0100)
[Compare
Source](https://redirect.github.com/astral-sh/ruff/compare/0.9.10...0.10.0)
Check out the [blog post](https://astral.sh/blog/ruff-v0.10.0) for a
migration guide and overview of the changes!
##### Breaking changes
See also, the "Remapped rules" section which may result in disabled
rules.
- **Changes to how the Python version is inferred when a
`target-version` is not specified**
([#​16319](https://redirect.github.com/astral-sh/ruff/pull/16319))
In previous versions of Ruff, you could specify your Python version
with:
- The `target-version` option in a `ruff.toml` file or the `[tool.ruff]`
section of a pyproject.toml file.
- The `project.requires-python` field in a `pyproject.toml` file with a
`[tool.ruff]` section.
These options worked well in most cases, and are still recommended for
fine control of the Python version. However, because of the way Ruff
discovers config files, `pyproject.toml` files without a `[tool.ruff]`
section would be ignored, including the `requires-python` setting. Ruff
would then use the default Python version (3.9 as of this writing)
instead, which is surprising when you've attempted to request another
version.
In v0.10, config discovery has been updated to address this issue:
- If Ruff finds a `ruff.toml` file without a `target-version`, it will
check
for a `pyproject.toml` file in the same directory and respect its
`requires-python` version, even if it does not contain a `[tool.ruff]`
section.
- If Ruff finds a user-level configuration, the `requires-python` field
of the closest `pyproject.toml` in a parent directory will take
precedence.
- If there is no config file (`ruff.toml`or `pyproject.toml` with a
`[tool.ruff]` section) in the directory of the file being checked, Ruff
will
search for the closest `pyproject.toml` in the parent directories and
use its
`requires-python` setting.
- **Updated `TYPE_CHECKING` behavior**
([#​16669](https://redirect.github.com/astral-sh/ruff/pull/16669))
Previously, Ruff only recognized typechecking blocks that tested the
`typing.TYPE_CHECKING` symbol. Now, Ruff recognizes any local variable
named `TYPE_CHECKING`. This release also removes support for the legacy
`if 0:` and `if False:` typechecking checks. Use a local `TYPE_CHECKING`
variable instead.
- **More robust noqa parsing**
([#​16483](https://redirect.github.com/astral-sh/ruff/pull/16483))
The syntax for both file-level and in-line suppression comments has been
unified and made more robust to certain errors. In most cases, this will
result in more suppression comments being read by Ruff, but there are a
few instances where previously read comments will now log an error to
the user instead. Please refer to the documentation on [*Error
suppression*](https://docs.astral.sh/ruff/linter/#error-suppression) for
the full specification.
- **Avoid unnecessary parentheses around with statements with a single
context manager and a trailing comment**
([#​14005](https://redirect.github.com/astral-sh/ruff/pull/14005))
This change fixes a bug in the formatter where it introduced unnecessary
parentheses around with statements with a single context manager and a
trailing comment. This change may result in a change in formatting for
some users.
- **Bump alpine default tag to 3.21 for derived Docker images**
([#​16456](https://redirect.github.com/astral-sh/ruff/pull/16456))
Alpine 3.21 was released in Dec 2024 and is used in the official
Alpine-based Python images. Now the ruff:alpine image will use 3.21
instead of 3.20 and ruff:alpine3.20 will no longer be updated.
##### Deprecated Rules
The following rules have been deprecated:
-
[`non-pep604-isinstance`](https://docs.astral.sh/ruff/rules/non-pep604-isinstance/)
(`UP038`)
-
[`suspicious-xmle-tree-usage`](https://docs.astral.sh/ruff/rules/suspicious-xmle-tree-usage/)
(`S320`)
##### Remapped rules
The following rules have been remapped to new rule codes:
- \[`unsafe-markup-use`]: `RUF035` to `S704`
##### Stabilization
The following rules have been stabilized and are no longer in preview:
-
[`batched-without-explicit-strict`](https://docs.astral.sh/ruff/rules/batched-without-explicit-strict)
(`B911`)
-
[`unnecessary-dict-comprehension-for-iterable`](https://docs.astral.sh/ruff/rules/unnecessary-dict-comprehension-for-iterable)
(`C420`)
-
[`datetime-min-max`](https://docs.astral.sh/ruff/rules/datetime-min-max)
(`DTZ901`)
-
[`fast-api-unused-path-parameter`](https://docs.astral.sh/ruff/rules/fast-api-unused-path-parameter)
(`FAST003`)
-
[`root-logger-call`](https://docs.astral.sh/ruff/rules/root-logger-call)
(`LOG015`)
- [`len-test`](https://docs.astral.sh/ruff/rules/len-test) (`PLC1802`)
-
[`shallow-copy-environ`](https://docs.astral.sh/ruff/rules/shallow-copy-environ)
(`PLW1507`)
- [`os-listdir`](https://docs.astral.sh/ruff/rules/os-listdir)
(`PTH208`)
-
[`invalid-pathlib-with-suffix`](https://docs.astral.sh/ruff/rules/invalid-pathlib-with-suffix)
(`PTH210`)
-
[`invalid-assert-message-literal-argument`](https://docs.astral.sh/ruff/rules/invalid-assert-message-literal-argument)
(`RUF040`)
-
[`unnecessary-nested-literal`](https://docs.astral.sh/ruff/rules/unnecessary-nested-literal)
(`RUF041`)
-
[`unnecessary-cast-to-int`](https://docs.astral.sh/ruff/rules/unnecessary-cast-to-int)
(`RUF046`)
-
[`map-int-version-parsing`](https://docs.astral.sh/ruff/rules/map-int-version-parsing)
(`RUF048`)
-
[`if-key-in-dict-del`](https://docs.astral.sh/ruff/rules/if-key-in-dict-del)
(`RUF051`)
-
[`unsafe-markup-use`](https://docs.astral.sh/ruff/rules/unsafe-markup-use)
(`S704`). This rule has also been renamed from `RUF035`.
-
[`split-static-string`](https://docs.astral.sh/ruff/rules/split-static-string)
(`SIM905`)
-
[`runtime-cast-value`](https://docs.astral.sh/ruff/rules/runtime-cast-value)
(`TC006`)
-
[`unquoted-type-alias`](https://docs.astral.sh/ruff/rules/unquoted-type-alias)
(`TC007`)
-
[`non-pep646-unpack`](https://docs.astral.sh/ruff/rules/non-pep646-unpack)
(`UP044`)
The following behaviors have been stabilized:
-
[`bad-staticmethod-argument`](https://docs.astral.sh/ruff/rules/bad-staticmethod-argument/)
(`PLW0211`)
[`invalid-first-argument-name-for-class-method`](https://docs.astral.sh/ruff/rules/invalid-first-argument-name-for-class-method/)
(`N804`): `__new__` methods are now no longer flagged by
`invalid-first-argument-name-for-class-method` (`N804`) but instead by
`bad-staticmethod-argument` (`PLW0211`)
-
[`bad-str-strip-call`](https://docs.astral.sh/ruff/rules/bad-str-strip-call/)
(`PLE1310`): The rule now applies to objects which are known to have
type `str` or `bytes`.
- [`blanket-noqa`](https://docs.astral.sh/ruff/rules/blanket-noqa/)
(`PGH004`): Also detect blanked file-level noqa comments (and not just
line level comments).
-
[`custom-type-var-for-self`](https://docs.astral.sh/ruff/rules/custom-type-var-for-self/)
(`PYI019`): More accurate detection of custom `TypeVars` replaceable by
`Self`. The range of the diagnostic is now the full function header
rather than just the return annotation.
-
[`invalid-argument-name`](https://docs.astral.sh/ruff/rules/invalid-argument-name/)
(`N803`): Ignore argument names of functions decorated with
`typing.override`
-
[`invalid-envvar-default`](https://docs.astral.sh/ruff/rules/invalid-envvar-default/)
(`PLW1508`): Detect default value arguments to `os.environ.get` with
invalid type.
-
[`pytest-raises-with-multiple-statements`](https://docs.astral.sh/ruff/rules/pytest-raises-with-multiple-statements/)
(`PT012`)
[`pytest-warns-with-multiple-statements`](https://docs.astral.sh/ruff/rules/pytest-warns-with-multiple-statements/)
(`PT031`): Allow `for` statements with an empty body in `pytest.raises`
and `pytest.warns` `with` statements.
-
[`redundant-open-modes`](https://docs.astral.sh/ruff/rules/redundant-open-modes/)
(`UP015`): The diagnostic range is now the range of the redundant mode
argument where it previously was the range of the entire open call. You
may have to replace your `noqa` comments when suppressing `UP015`.
-
[`stdlib-module-shadowing`](https://docs.astral.sh/ruff/rules/stdlib-module-shadowing/)
(`A005`): Changes the default value of
`lint.flake8-builtins.strict-checking` from `true` to `false`.
-
[`type-none-comparison`](https://docs.astral.sh/ruff/rules/type-none-comparison/)
(`FURB169`): Now also recognizes `type(expr) is type(None)` comparisons
where `expr` isn't a name expression.
The following fixes or improvements to fixes have been stabilized:
-
[`repeated-equality-comparison`](https://docs.astral.sh/ruff/rules/repeated-equality-comparison/)
(`PLR1714`)
([#​16685](https://redirect.github.com/astral-sh/ruff/pull/16685))
- [`needless-bool`](https://docs.astral.sh/ruff/rules/needless-bool/)
(`SIM103`)
([#​16684](https://redirect.github.com/astral-sh/ruff/pull/16684))
-
[`unused-private-type-var`](https://docs.astral.sh/ruff/rules/unused-private-type-var/)
(`PYI018`)
([#​16682](https://redirect.github.com/astral-sh/ruff/pull/16682))
##### Server
- Remove logging output for `ruff.printDebugInformation`
([#​16617](https://redirect.github.com/astral-sh/ruff/pull/16617))
##### Configuration
- \[`flake8-builtins`] Deprecate the `builtins-` prefixed options in
favor of the unprefixed options (e.g. `builtins-allowed-modules` is now
deprecated in favor of `allowed-modules`)
([#​16092](https://redirect.github.com/astral-sh/ruff/pull/16092))
##### Bug fixes
- \[flake8-bandit] Fix mixed-case hash algorithm names (S324)
([#​16552](https://redirect.github.com/astral-sh/ruff/pull/16552))
##### CLI
- \[ruff] Fix `last_tag`/`commits_since_last_tag` for `version` command
([#​16686](https://redirect.github.com/astral-sh/ruff/pull/16686))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/openapi-generators/openapi-python-client).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDAuMCIsInVwZGF0ZWRJblZlciI6IjM5LjIwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>1 parent 1327edb commit 1d31787Copy full SHA for 1d31787
2 files changed
+21
-21
lines changed+20-20
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
+1-1
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
14 | 14 |
| |
15 | 15 |
| |
16 | 16 |
| |
17 |
| - | |
| 17 | + | |
18 | 18 |
| |
19 | 19 |
| |
20 | 20 |
| |
|
0 commit comments