|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## 0.4.3 |
| 4 | + |
| 5 | +### Enhancements |
| 6 | + |
| 7 | +- Add support for PEP 696 syntax ([#11120](https://github.com/astral-sh/ruff/pull/11120)) |
| 8 | + |
| 9 | +### Preview features |
| 10 | + |
| 11 | +- \[`refurb`\] Use function range for `reimplemented-operator` diagnostics ([#11271](https://github.com/astral-sh/ruff/pull/11271)) |
| 12 | +- \[`refurb`\] Ignore methods in `reimplemented-operator` (`FURB118`) ([#11270](https://github.com/astral-sh/ruff/pull/11270)) |
| 13 | +- \[`refurb`\] Implement `fstring-number-format` (`FURB116`) ([#10921](https://github.com/astral-sh/ruff/pull/10921)) |
| 14 | +- \[`ruff`\] Implement `redirected-noqa` (`RUF101`) ([#11052](https://github.com/astral-sh/ruff/pull/11052)) |
| 15 | +- \[`pyflakes`\] Distinguish between first-party and third-party imports for fix suggestions ([#11168](https://github.com/astral-sh/ruff/pull/11168)) |
| 16 | + |
| 17 | +### Rule changes |
| 18 | + |
| 19 | +- \[`flake8-bugbear`\] Ignore non-abstract class attributes when enforcing `B024` ([#11210](https://github.com/astral-sh/ruff/pull/11210)) |
| 20 | +- \[`flake8-logging`\] Include inline instantiations when detecting loggers ([#11154](https://github.com/astral-sh/ruff/pull/11154)) |
| 21 | +- \[`pylint`\] Also emit `PLR0206` for properties with variadic parameters ([#11200](https://github.com/astral-sh/ruff/pull/11200)) |
| 22 | +- \[`ruff`\] Detect duplicate codes as part of `unused-noqa` (`RUF100`) ([#10850](https://github.com/astral-sh/ruff/pull/10850)) |
| 23 | + |
| 24 | +### Formatter |
| 25 | + |
| 26 | +- Avoid multiline expression if format specifier is present ([#11123](https://github.com/astral-sh/ruff/pull/11123)) |
| 27 | + |
| 28 | +### LSP |
| 29 | + |
| 30 | +- Write `ruff server` setup guide for Helix ([#11183](https://github.com/astral-sh/ruff/pull/11183)) |
| 31 | +- `ruff server` no longer hangs after shutdown ([#11222](https://github.com/astral-sh/ruff/pull/11222)) |
| 32 | +- `ruff server` reads from a configuration TOML file in the user configuration directory if no local configuration exists ([#11225](https://github.com/astral-sh/ruff/pull/11225)) |
| 33 | +- `ruff server` respects `per-file-ignores` configuration ([#11224](https://github.com/astral-sh/ruff/pull/11224)) |
| 34 | +- `ruff server`: Support a custom TOML configuration file ([#11140](https://github.com/astral-sh/ruff/pull/11140)) |
| 35 | +- `ruff server`: Support setting to prioritize project configuration over editor configuration ([#11086](https://github.com/astral-sh/ruff/pull/11086)) |
| 36 | + |
| 37 | +### Bug fixes |
| 38 | + |
| 39 | +- Avoid debug assertion around NFKC renames ([#11249](https://github.com/astral-sh/ruff/pull/11249)) |
| 40 | +- \[`pyflakes`\] Prioritize `redefined-while-unused` over `unused-import` ([#11173](https://github.com/astral-sh/ruff/pull/11173)) |
| 41 | +- \[`ruff`\] Respect `async` expressions in comprehension bodies ([#11219](https://github.com/astral-sh/ruff/pull/11219)) |
| 42 | +- \[`pygrep_hooks`\] Fix `blanket-noqa` panic when last line has noqa with no newline (`PGH004`) ([#11108](https://github.com/astral-sh/ruff/pull/11108)) |
| 43 | +- \[`perflint`\] Ignore list-copy recommendations for async `for` loops ([#11250](https://github.com/astral-sh/ruff/pull/11250)) |
| 44 | +- \[`pyflakes`\] Improve `invalid-print-syntax` documentation ([#11171](https://github.com/astral-sh/ruff/pull/11171)) |
| 45 | + |
| 46 | +### Performance |
| 47 | + |
| 48 | +- Avoid allocations for isort module names ([#11251](https://github.com/astral-sh/ruff/pull/11251)) |
| 49 | +- Build a separate ARM wheel for macOS ([#11149](https://github.com/astral-sh/ruff/pull/11149)) |
| 50 | + |
3 | 51 | ## 0.4.2
|
4 | 52 |
|
5 | 53 | ### Rule changes
|
|
0 commit comments