Aquesta és una versió anterior. La versió actual és la 0.17.1. Ruff 0.17.1 · Data de publicació:
Fitxers d’instal·lació 0.12.1
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| 64 bits | ZIP → Portable | — | — | github.com | VirusTotal |
| ARM64 | ZIP → Portable | — | — | github.com | VirusTotal |
| 32 bits | ZIP → Portable | — | — | github.com | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
Preview features
- [flake8-errmsg] Extend EM101 to support byte strings (#18867)
- [flake8-use-pathlib] Add autofix for PTH202 (#18763)
- [pygrep-hooks] Add `AsyncMock` methods to `invalid-mock-access` (PGH005) (#18547)
- [pylint] Ignore `__init__.py` files in (PLC0414) (#18400)
- [ruff] Trigger RUF037 for empty string and byte strings (#18862)
- [formatter] Fix missing blank lines before decorated classes in `.pyi` files (#18888)
Bug fixes
- Avoid generating diagnostics with per-file ignores (#18801)
- Handle parenthesized arguments in `remove_argument` (#18805)
- [flake8-logging] Avoid false positive for `exc_info=True` outside `logger.exception` (LOG014) (#18737)
- [flake8-pytest-style] Enforce `pytest` import for decorators (#18779)
- [flake8-pytest-style] Mark autofix for PT001 and PT023 as unsafe if there's comments in the decorator (#18792)
- [flake8-pytest-style] PT001/PT023 fix makes syntax error on parenthesized decorator (#18782)
- [flake8-raise] Make fix unsafe if it deletes comments (RSE102) (#18788)
- [flake8-simplify] Fix SIM911 autofix creating a syntax error (#18793)
- [flake8-simplify] Fix false negatives for shadowed bindings (SIM910, SIM911) (#18794)
- [flake8-simplify] Preserve original behavior for `except ()` and bare `except` (SIM105) (#18213)
- [flake8-pyi] Fix PYI041's fix causing `TypeError` with `None | None | ...` (#18637)
- [perflint] Fix PERF101 autofix creating a syntax error and mark autofix as unsafe if there are comments in the `list` call expr (#18803)
- [perflint] Fix false negative in PERF401 (#18866)
- [pylint] Avoid flattening nested `min`/`max` when outer call has single argument (PLW3301) (#16885)
- [pylint] Fix PLC2801 autofix creating a syntax error (#18857)
- [pylint] Mark PLE0241 autofix as unsafe if there's comments in the base classes (#18832)
- [pylint] Suppress PLE2510/PLE2512/PLE2513/PLE2514/PLE2515 autofix if the text contains an odd number of backslashes (#18856)
- [refurb] Detect more exotic float literals in FURB164 (#18925)
- [refurb] Fix FURB163 autofix creating a syntax error for `yield` expressions (#18756)
- [refurb] Mark FURB129 autofix as unsafe if there's comments in the `readlines` call (#18858)
- [ruff] Fix false positives and negatives in RUF010 (#18690)
- Fix casing of `analyze.direction` variant names (#18892)
Rule changes
- Fix f-string interpolation escaping in generated fixes (#18882)
- [flake8-return] Mark RET501 fix unsafe if comments are inside (#18780)
- [flake8-async] Fix detection for large integer sleep durations in ASYNC116 rule (#18767)
- [flake8-async] Mark autofix for ASYNC115 as unsafe if the call expression contains comments (#18753)
- [flake8-bugbear] Mark autofix for B004 as unsafe if the `hasattr` call expr contains comments (#18755)
- [flake8-comprehension] Mark autofix for C420 as unsafe if there's comments inside the dict comprehension (#18768)
- [flake8-comprehensions] Handle template strings for comprehension fixes (#18710)
- [flake8-future-annotations] Add autofix (FA100) (#18903)
- [pyflakes] Mark F504/F522/F523 autofix as unsafe if there's a call with side effect (#18839)
- [pylint] Allow fix with comments and document performance implications (PLW3301) (#18936)
- [pylint] Detect more exotic `NaN` literals in PLW0177 (#18630)
- [pylint] Fix PLC1802 autofix creating a syntax error and mark autofix as unsafe if there's comments in the `len` call (#18836)
- [pyupgrade] Extend version detection to include `sys.version_info.major` (UP036) (#18633)
- [ruff] Add lint rule RUF064 for calling `chmod` with non-octal integers (#18541)
- [ruff] Added `cls.__dict__.get('__annotations__')` check (RUF063) (#18233)
- [ruff] Frozen `dataclass` default should be valid (RUF009) (#18735)
Server
- Consider virtual path for various server actions (#18910)
Documentation
- Add fix safety sections (#18940,#18841,#18802,#18837,#18800,#18415,#18853,#18842)
- Use updated pre-commit id (#18718)
- [perflint] Small docs improvement to PERF401 (#18786)
- [pyupgrade]: Use `super()`, not `__super__` in error messages (UP008) (#18743)
- [flake8-pie] Small docs fix to PIE794 (#18829)
- [flake8-pyi] Correct `collections-named-tuple` example to use PascalCase assignment (#16884)
- [flake8-pie] Add note on type checking benefits to `unnecessary-dict-kwargs` (PIE804) (#18666)
- [pycodestyle] Clarify PEP 8 relationship to `whitespace-around-operator` rules (#18870)
Other changes
- Disallow newlines in format specifiers of single quoted f- or t-strings (#18708)
- [flake8-logging] Add fix safety section to LOG002 (#18840)
- [pyupgrade] Add fix safety section to UP010 (#18838)