Priljubljeno: Podatki posodobljeni: 12. november 2026

Kategorije

Internet1409
Komunikacija327
Zvok in video931
Grafika in oblikovanje563
Pisarna in produktivnost1167
Orodja za razvijalce3263
Orodja UI600
Varnost in zasebnost406
Sistemska orodja3174
Igre543
Izobraževanje in znanost240
Omrežje in IT292

Ruff 0.12.0: prenos za Windows

An extremely fast Python linter, written in Rust.

Astral Jeziki in SDK #43 Jeziki in SDK
To je starejša različica. Najnovejša različica je 0.17.2. Ruff 0.17.2 · Izdano:

Namestitvene datoteke 0.12.0

ArhitekturaVrstaZa kogaVelikost datotekePrenesiSHA256
64-bitno ZIP → Prenosna različica — — github.com VirusTotal
ARM64 ZIP → Prenosna različica — — github.com VirusTotal
32-bitno ZIP → Prenosna različica — — github.com VirusTotal

Povezava in SHA256 izhajata iz manifesta skupnosti Windows Package Manager. Pred zagonom primerjajte zgoščeno vrednost prenesene datoteke.

Opombe ob izdaji

Check out the blog post for a migration
guide and overview of the changes!

Breaking changes
- Detection of more syntax errors

Ruff now detects version-related syntax errors, such as the use of the `match`
statement on Python versions before 3.10, and syntax errors emitted by
CPython's compiler, such as irrefutable `match` patterns before the final
`case` arm.

- New default Python version handling for syntax errors

Ruff will default to the _latest_ supported Python version (3.13) when
checking for the version-related syntax errors mentioned above to prevent
false positives in projects without a Python version configured. The default
in all other cases, like applying lint rules, is unchanged and remains at the
minimum supported Python version (3.9).

- Updated f-string formatting

Ruff now formats multi-line f-strings with format specifiers to avoid adding a
line break after the format specifier. This addresses a change to the Python
grammar in version 3.13.4 that made such a line break a syntax error.

- **`rust-toolchain.toml` is no longer included in source distributions**

The `rust-toolchain.toml` is used to specify a higher Rust version than Ruff's
minimum supported Rust version (MSRV) for development and building release
artifacts. However, when present in source distributions, it would also cause
downstream package maintainers to pull in the same Rust toolchain, even if
their available toolchain was MSRV-compatible.

Removed Rules
The following rules have been removed:

- `suspicious-xmle-tree-usage`
(S320)

Deprecated Rules
The following rules have been deprecated:

- `pandas-df-variable-name`

Stabilization
The following rules have been stabilized and are no longer in preview:

- `for-loop-writes` (FURB122)
- `check-and-remove-from-set` (FURB132)
- `verbose-decimal-constructor` (FURB157)
- `fromisoformat-replace-z` (FURB162)
- `int-on-sliced-str` (FURB166)
- `exc-info-outside-except-handler` (LOG014)
- `import-outside-top-level` (PLC0415)
- `unnecessary-dict-index-lookup` (PLR1733)
- `nan-comparison` (PLW0177)
- `eq-without-hash` (PLW1641)
- `pytest-parameter-with-default-argument` (PT028)
- `pytest-warns-too-broad` (PT030)
- `pytest-warns-with-multiple-statements` (PT031)
- `invalid-formatter-suppression-comment` (RUF028)
- `dataclass-enum` (RUF049)
- `class-with-mixed-type-vars` (RUF053)
- `unnecessary-round` (RUF057)
- `starmap-zip` (RUF058)
- `non-pep604-annotation-optional` (UP045)
- `non-pep695-generic-class` (UP046)
- `non-pep695-generic-function` (UP047)
- `private-type-parameter` (UP049)

The following behaviors have been stabilized:

- [`collection-literal-concatenation`] (RUF005) now recognizes slices, in
addition to list literals and variables.
- The fix for [`readlines-in-for`] (FURB129) is now marked as always safe.
- [`if-else-block-instead-of-if-exp`] (SIM108) will now further simplify
expressions to use `or` instead of an `if` expression, where possible.
- [`unused-noqa`] (RUF100) now checks for file-level `noqa` comments as well
as inline comments.
- [`subprocess-without-shell-equals-true`] (S603) now accepts literal strings,
as well as lists and tuples of literal strings, as trusted input.
- [`boolean-type-hint-positional-argument`] (FBT001) now applies to types that
include `bool`, like `bool | int` or `typing.Optional[bool]`, in addition to
plain `bool` annotations.
- [`non-pep604-annotation-union`] (UP007) has now been split into two rules.
UP007 now applies only to `typing.Union`, while
[`non-pep604-annotation-optional`] (UP045) checks for use of
`typing.Optional`. UP045 has also been stabilized in this release, but you
may need to update existing `include`, `ignore`, or `noqa` settings to
accommodate this change.

Preview features
- [ruff] Check for non-context-manager use of `pytest.raises`, `pytest.warns`, and `pytest.deprecated_call` (RUF061) (#17368)
- [syntax-errors] Raise unsupported syntax error for template strings prior to Python 3.14 (#18664)

Bug fixes
- Add syntax error when conversion flag does not immediately follow exclamation mark (#18706)
- Add trailing space around `readlines` (#18542)
- Fix `\r` and `\r\n` handling in t- and f-string debug texts (#18673)
- Hug closing `}` when f-string expression has a format specifier (#18704)
- [flake8-pyi] Avoid syntax error in the case of starred and keyword arguments (PYI059) (#18611)
- [flake8-return] Fix RET504 autofix generating a syntax error (#18428)
- [pep8-naming] Suppress fix for N804 and N805 if the recommended name is already used (#18472)
- [pycodestyle] Avoid causing a syntax error in expressions spanning multiple lines (E731) (#18479)
- [pyupgrade] Suppress UP008 if `super` is shadowed (#18688)
- [refurb] Parenthesize lambda and ternary expressions (FURB122, FURB142) (#18592)
- [ruff] Handle extra arguments to `deque` (RUF037) (#18614)
- [ruff] Preserve parentheses around `deque` in fix for `unnecessary-empty-iterable-within-deque-call` (RUF037) (#18598)
- [ruff] Validate arguments before offering a fix (RUF056) (#18631)
- [ruff] Skip fix for RUF059 if dummy name is already bound (#18509)
- [pylint] Fix PLW0128 to check assignment targets in square brackets and after asterisks (#18665)

Rule changes
- Fix false positive on mutations in `return` statements (B909) (#18408)
- Treat `ty:` comments as pragma comments (#18532)
- [flake8-pyi] Apply `custom-typevar-for-self` to string annotations (PYI019) (#18311)
- [pyupgrade] Don't offer a fix for `Optional[None]` (UP007, `UP045)` (#18545)
- [pyupgrade] Fix `super(__class__, self)` detection (UP008) (#18478)
- [refurb] Make the fix for FURB163 unsafe for `log2`, `log10`, `*args`, and deleted comments (#18645)

Server
- Support cancellation requests (#18627)

Documentation
- Drop confusing second `*` from glob pattern example for `per-file-target-version` (#18709)
- Update Neovim configuration examples (#18491)
- [pylint] De-emphasize `__hash__ = Parent.__hash__` (PLW1641) (#18613)
- [refurb] Add a note about float literal handling (FURB157) (#18615)

https://github.com/astral-sh/ruff/releases/tag/0.12.0

Najbolj priljubljeno v kategoriji „Jeziki in SDK“

Prikaži vse
  1. LLVMJeziki in SDK · LLVM
  2. DenoJeziki in SDK · Deno Land Inc.
  3. CMakeJeziki in SDK · Kitware
  4. YarnJeziki in SDK · Yarn Contributors
  5. pnpmJeziki in SDK · pnpm
  6. CcacheJeziki in SDK · Joel Rosdahl
  7. sbtJeziki in SDK · Lightbend, Inc.
  8. BOINCJeziki in SDK · Space Sciences Laboratory, U.C. Berkeley
  9. Dart SDKJeziki in SDK · Google

Oznake

Deli