astral-sh/ruff (ruff)
### [`v0.4.9`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#049)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.4.8...v0.4.9)
##### Preview features
- \[`pylint`] Implement `consider-dict-items` (`C0206`) ([#11688](https://togithub.com/astral-sh/ruff/pull/11688))
- \[`refurb`] Implement `repeated-global` (`FURB154`) ([#11187](https://togithub.com/astral-sh/ruff/pull/11187))
##### Rule changes
- \[`pycodestyle`] Adapt fix for `E203` to work identical to `ruff format` ([#10999](https://togithub.com/astral-sh/ruff/pull/10999))
##### Formatter
- Fix formatter instability for lines only consisting of zero-width characters ([#11748](https://togithub.com/astral-sh/ruff/pull/11748))
##### Server
- Add supported commands in server capabilities ([#11850](https://togithub.com/astral-sh/ruff/pull/11850))
- Use real file path when available in `ruff server` ([#11800](https://togithub.com/astral-sh/ruff/pull/11800))
- Improve error message when a command is run on an unavailable document ([#11823](https://togithub.com/astral-sh/ruff/pull/11823))
- Introduce the `ruff.printDebugInformation` command ([#11831](https://togithub.com/astral-sh/ruff/pull/11831))
- Tracing system now respects log level and trace level, with options to log to a file ([#11747](https://togithub.com/astral-sh/ruff/pull/11747))
##### CLI
- Handle non-printable characters in diff view ([#11687](https://togithub.com/astral-sh/ruff/pull/11687))
##### Bug fixes
- \[`refurb`] Avoid suggesting starmap when arguments are used outside call (`FURB140`) ([#11830](https://togithub.com/astral-sh/ruff/pull/11830))
- \[`flake8-bugbear`] Avoid panic in `B909` when checking large loop blocks ([#11772](https://togithub.com/astral-sh/ruff/pull/11772))
- \[`refurb`] Fix misbehavior of `operator.itemgetter` when getter param is a tuple (`FURB118`) ([#11774](https://togithub.com/astral-sh/ruff/pull/11774))
### [`v0.4.8`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#048)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.4.7...v0.4.8)
##### Performance
- Linter performance has been improved by around 10% on some microbenchmarks by refactoring the lexer and parser to maintain synchronicity between them ([#11457](https://togithub.com/astral-sh/ruff/pull/11457))
##### Preview features
- \[`flake8-bugbear`] Implement `return-in-generator` (`B901`) ([#11644](https://togithub.com/astral-sh/ruff/pull/11644))
- \[`flake8-pyi`] Implement `PYI063` ([#11699](https://togithub.com/astral-sh/ruff/pull/11699))
- \[`pygrep_hooks`] Check blanket ignores via file-level pragmas (`PGH004`) ([#11540](https://togithub.com/astral-sh/ruff/pull/11540))
##### Rule changes
- \[`pyupgrade`] Update `UP035` for Python 3.13 and the latest version of `typing_extensions` ([#11693](https://togithub.com/astral-sh/ruff/pull/11693))
- \[`numpy`] Update `NPY001` rule for NumPy 2.0 ([#11735](https://togithub.com/astral-sh/ruff/pull/11735))
##### Server
- Formatting a document with syntax problems no longer spams a visible error popup ([#11745](https://togithub.com/astral-sh/ruff/pull/11745))
##### CLI
- Add RDJson support for `--output-format` flag ([#11682](https://togithub.com/astral-sh/ruff/pull/11682))
##### Bug fixes
- \[`pyupgrade`] Write empty string in lieu of panic when fixing `UP032` ([#11696](https://togithub.com/astral-sh/ruff/pull/11696))
- \[`flake8-simplify`] Simplify double negatives in `SIM103` ([#11684](https://togithub.com/astral-sh/ruff/pull/11684))
- Ensure the expression generator adds a newline before `type` statements ([#11720](https://togithub.com/astral-sh/ruff/pull/11720))
- Respect per-file ignores for blanket and redirected noqa rules ([#11728](https://togithub.com/astral-sh/ruff/pull/11728))
Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 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.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
0.4.7
->0.4.9
Release Notes
astral-sh/ruff (ruff)
### [`v0.4.9`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#049) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.4.8...v0.4.9) ##### Preview features - \[`pylint`] Implement `consider-dict-items` (`C0206`) ([#11688](https://togithub.com/astral-sh/ruff/pull/11688)) - \[`refurb`] Implement `repeated-global` (`FURB154`) ([#11187](https://togithub.com/astral-sh/ruff/pull/11187)) ##### Rule changes - \[`pycodestyle`] Adapt fix for `E203` to work identical to `ruff format` ([#10999](https://togithub.com/astral-sh/ruff/pull/10999)) ##### Formatter - Fix formatter instability for lines only consisting of zero-width characters ([#11748](https://togithub.com/astral-sh/ruff/pull/11748)) ##### Server - Add supported commands in server capabilities ([#11850](https://togithub.com/astral-sh/ruff/pull/11850)) - Use real file path when available in `ruff server` ([#11800](https://togithub.com/astral-sh/ruff/pull/11800)) - Improve error message when a command is run on an unavailable document ([#11823](https://togithub.com/astral-sh/ruff/pull/11823)) - Introduce the `ruff.printDebugInformation` command ([#11831](https://togithub.com/astral-sh/ruff/pull/11831)) - Tracing system now respects log level and trace level, with options to log to a file ([#11747](https://togithub.com/astral-sh/ruff/pull/11747)) ##### CLI - Handle non-printable characters in diff view ([#11687](https://togithub.com/astral-sh/ruff/pull/11687)) ##### Bug fixes - \[`refurb`] Avoid suggesting starmap when arguments are used outside call (`FURB140`) ([#11830](https://togithub.com/astral-sh/ruff/pull/11830)) - \[`flake8-bugbear`] Avoid panic in `B909` when checking large loop blocks ([#11772](https://togithub.com/astral-sh/ruff/pull/11772)) - \[`refurb`] Fix misbehavior of `operator.itemgetter` when getter param is a tuple (`FURB118`) ([#11774](https://togithub.com/astral-sh/ruff/pull/11774)) ### [`v0.4.8`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#048) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.4.7...v0.4.8) ##### Performance - Linter performance has been improved by around 10% on some microbenchmarks by refactoring the lexer and parser to maintain synchronicity between them ([#11457](https://togithub.com/astral-sh/ruff/pull/11457)) ##### Preview features - \[`flake8-bugbear`] Implement `return-in-generator` (`B901`) ([#11644](https://togithub.com/astral-sh/ruff/pull/11644)) - \[`flake8-pyi`] Implement `PYI063` ([#11699](https://togithub.com/astral-sh/ruff/pull/11699)) - \[`pygrep_hooks`] Check blanket ignores via file-level pragmas (`PGH004`) ([#11540](https://togithub.com/astral-sh/ruff/pull/11540)) ##### Rule changes - \[`pyupgrade`] Update `UP035` for Python 3.13 and the latest version of `typing_extensions` ([#11693](https://togithub.com/astral-sh/ruff/pull/11693)) - \[`numpy`] Update `NPY001` rule for NumPy 2.0 ([#11735](https://togithub.com/astral-sh/ruff/pull/11735)) ##### Server - Formatting a document with syntax problems no longer spams a visible error popup ([#11745](https://togithub.com/astral-sh/ruff/pull/11745)) ##### CLI - Add RDJson support for `--output-format` flag ([#11682](https://togithub.com/astral-sh/ruff/pull/11682)) ##### Bug fixes - \[`pyupgrade`] Write empty string in lieu of panic when fixing `UP032` ([#11696](https://togithub.com/astral-sh/ruff/pull/11696)) - \[`flake8-simplify`] Simplify double negatives in `SIM103` ([#11684](https://togithub.com/astral-sh/ruff/pull/11684)) - Ensure the expression generator adds a newline before `type` statements ([#11720](https://togithub.com/astral-sh/ruff/pull/11720)) - Respect per-file ignores for blanket and redirected noqa rules ([#11728](https://togithub.com/astral-sh/ruff/pull/11728))Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 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.
This PR has been generated by Mend Renovate. View repository job log here.