Skip to content

⬆️ Update ruff to v0.15.10#382

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/ruff-0.x
Open

⬆️ Update ruff to v0.15.10#382
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/ruff-0.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Mar 13, 2026

This PR contains the following updates:

Package Change Age Confidence
ruff (source, changelog) 0.15.50.15.10 age confidence

Release Notes

astral-sh/ruff (ruff)

v0.15.10

Compare Source

Released on 2026-04-09.

Preview features
  • [flake8-logging] Allow closures in except handlers (LOG004) (#​24464)
  • [flake8-self] Make SLF diagnostics robust to non-self-named variables (#​24281)
  • [flake8-simplify] Make the fix for collapsible-if safe in preview (SIM102) (#​24371)
Bug fixes
  • Avoid emitting multi-line f-string elements before Python 3.12 (#​24377)
  • Avoid syntax error from E502 fixes in f-strings and t-strings (#​24410)
  • Strip form feeds from indent passed to dedent_to (#​24381)
  • [pyupgrade] Fix panic caused by handling of octals (UP012) (#​24390)
  • Reject multi-line f-string elements before Python 3.12 (#​24355)
Rule changes
  • [ruff] Treat f-string interpolation as potential side effect (RUF019) (#​24426)
Server
  • Add support for custom file extensions (#​24463)
Documentation
  • Document adding fixes in CONTRIBUTING.md (#​24393)
  • Fix JSON typo in settings example (#​24517)
Contributors

v0.15.9

Compare Source

Released on 2026-04-02.

Preview features
  • [pyflakes] Flag annotated variable redeclarations as F811 in preview mode (#​24244)
  • [ruff] Allow dunder-named assignments in non-strict mode for RUF067 (#​24089)
Bug fixes
  • [flake8-errmsg] Avoid shadowing existing msg in fix for EM101 (#​24363)
  • [flake8-simplify] Ignore pre-initialization references in SIM113 (#​24235)
  • [pycodestyle] Fix W391 fixes for consecutive empty notebook cells (#​24236)
  • [pyupgrade] Fix UP008 nested class matching (#​24273)
  • [pyupgrade] Ignore strings with string-only escapes (UP012) (#​16058)
  • [ruff] RUF072: skip formfeeds on dedent (#​24308)
  • [ruff] Avoid re-using symbol in RUF024 fix (#​24316)
  • [ruff] Parenthesize expression in RUF050 fix (#​24234)
  • Disallow starred expressions as values of starred expressions (#​24280)
Rule changes
  • [flake8-simplify] Suppress SIM105 for except* before Python 3.12 (#​23869)
  • [pyflakes] Extend F507 to flag %-format strings with zero placeholders (#​24215)
  • [pyupgrade] UP018 should detect more unnecessarily wrapped literals (UP018) (#​24093)
  • [pyupgrade] Fix UP008 callable scope handling to support lambdas (#​24274)
  • [ruff] RUF010: Mark fix as unsafe when it deletes a comment (#​24270)
Formatter
  • Add nested-string-quote-style formatting option (#​24312)
Documentation
  • [flake8-bugbear] Clarify RUF071 fix safety for non-path string comparisons (#​24149)
  • [flake8-type-checking] Clarify import cycle wording for TC001/TC002/TC003 (#​24322)
Other changes
  • Avoid rendering fix lines with trailing whitespace after | (#​24343)
Contributors

v0.15.8

Compare Source

Released on 2026-03-26.

Preview features
  • [ruff] New rule unnecessary-if (RUF050) (#​24114)
  • [ruff] New rule useless-finally (RUF072) (#​24165)
  • [ruff] New rule f-string-percent-format (RUF073): warn when using % operator on an f-string (#​24162)
  • [pyflakes] Recognize frozendict as a builtin for Python 3.15+ (#​24100)
Bug fixes
  • [flake8-async] Use fully-qualified anyio.lowlevel import in autofix (ASYNC115) (#​24166)
  • [flake8-bandit] Check tuple arguments for partial paths in S607 (#​24080)
  • [pyflakes] Skip undefined-name (F821) for conditionally deleted variables (#​24088)
  • E501/W505/formatter: Exclude nested pragma comments from line width calculation (#​24071)
  • Fix %foo? parsing in IPython assignment expressions (#​24152)
  • analyze graph: resolve string imports that reference attributes, not just modules (#​24058)
Rule changes
  • [eradicate] ignore ty: ignore comments in ERA001 (#​24192)
  • [flake8-bandit] Treat sys.executable as trusted input in S603 (#​24106)
  • [flake8-self] Recognize Self annotation and self assignment in SLF001 (#​24144)
  • [pyflakes] F507: Fix false negative for non-tuple RHS in %-formatting (#​24142)
  • [refurb] Parenthesize generator arguments in FURB142 fixer (#​24200)
Performance
Server
  • Warn when Markdown files are skipped due to preview being disabled (#​24150)
Documentation
  • Clarify extend-ignore and extend-select settings documentation (#​24064)
  • Mention AI policy in PR template (#​24198)
Other changes
  • Use trusted publishing for NPM packages (#​24171)
Contributors

v0.15.7

Compare Source

Released on 2026-03-19.

Preview features
  • Display output severity in preview (#​23845)
  • Don't show noqa hover for non-Python documents (#​24040)
Rule changes
  • [pycodestyle] Recognize pyrefly: as a pragma comment (E501) (#​24019)
Server
  • Don't return code actions for non-Python documents (#​23905)
Documentation
  • Add company AI policy to contributing guide (#​24021)
  • Document editor features for Markdown code formatting (#​23924)
  • [pylint] Improve phrasing (PLC0208) (#​24033)
Other changes
  • Use PEP 639 license information (#​19661)
Contributors

v0.15.6

Compare Source

Released on 2026-03-12.

Preview features
  • Add support for lazy import parsing (#​23755)
  • Add support for star-unpacking of comprehensions (PEP 798) (#​23788)
  • Reject semantic syntax errors for lazy imports (#​23757)
  • Drop a few rules from the preview default set (#​23879)
  • [airflow] Flag Variable.get() calls outside of task execution context (AIR003) (#​23584)
  • [airflow] Flag runtime-varying values in DAG/task constructor arguments (AIR304) (#​23631)
  • [flake8-bugbear] Implement delattr-with-constant (B043) (#​23737)
  • [flake8-tidy-imports] Add TID254 to enforce lazy imports (#​23777)
  • [flake8-tidy-imports] Allow users to ban lazy imports with TID254 (#​23847)
  • [isort] Retain lazy keyword when sorting imports (#​23762)
  • [pyupgrade] Add from __future__ import annotations automatically (UP006) (#​23260)
  • [refurb] Support newline parameter in FURB101 for Python 3.13+ (#​23754)
  • [ruff] Add os-path-commonprefix (RUF071) (#​23814)
  • [ruff] Add unsafe fix for os-path-commonprefix (RUF071) (#​23852)
  • [ruff] Limit RUF036 to typing contexts; make it unsafe for non-typing-only (#​23765)
  • [ruff] Use starred unpacking for RUF017 in Python 3.15+ (#​23789)
Bug fixes
  • Fix --add-noqa creating unwanted leading whitespace (#​23773)
  • Fix --add-noqa breaking shebangs (#​23577)
  • [formatter] Fix lambda body formatting for multiline calls and subscripts (#​23866)
  • [formatter] Preserve required annotation parentheses in annotated assignments (#​23865)
  • [formatter] Preserve type-expression parentheses in the formatter (#​23867)
  • [flake8-annotations] Fix stack overflow in ANN401 on quoted annotations with escape sequences (#​23912)
  • [pep8-naming] Check naming conventions in match pattern bindings (N806, N815, N816) (#​23899)
  • [perflint] Fix comment duplication in fixes (PERF401, PERF403) (#​23729)
  • [pyupgrade] Properly trigger super change in nested class (UP008) (#​22677)
  • [ruff] Avoid syntax errors in RUF036 fixes (#​23764)
Rule changes
  • [flake8-bandit] Flag S501 with requests.request (#​23873)
  • [flake8-executable] Fix WSL detection in non-Docker containers (#​22879)
  • [flake8-print] Ignore pprint calls with stream= (#​23787)
Documentation
  • Update docs for Markdown code block formatting (#​23871)
  • [flake8-bugbear] Fix misleading description for B904 (#​23731)
Contributors

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
Copy link
Copy Markdown
Contributor Author

renovate bot commented Mar 13, 2026

Branch automerge failure

This PR was configured for branch automerge. However, this is not possible, so it has been raised as a PR instead.


  • Branch has one or more failed status checks

@renovate renovate bot added the no-stale label Mar 13, 2026
@renovate renovate bot force-pushed the renovate/ruff-0.x branch from 307f2d5 to 7fcc7bd Compare March 19, 2026 17:19
@renovate renovate bot changed the title ⬆️ Update ruff to v0.15.6 ⬆️ Update ruff to v0.15.7 Mar 19, 2026
@renovate renovate bot force-pushed the renovate/ruff-0.x branch from 7fcc7bd to dad224d Compare March 26, 2026 21:00
@renovate renovate bot changed the title ⬆️ Update ruff to v0.15.7 ⬆️ Update ruff to v0.15.8 Mar 26, 2026
@renovate renovate bot force-pushed the renovate/ruff-0.x branch from dad224d to a9dfa5b Compare April 2, 2026 21:25
@renovate renovate bot changed the title ⬆️ Update ruff to v0.15.8 ⬆️ Update ruff to v0.15.9 Apr 2, 2026
@renovate renovate bot force-pushed the renovate/ruff-0.x branch from a9dfa5b to 0a615c1 Compare April 9, 2026 14:41
@renovate renovate bot changed the title ⬆️ Update ruff to v0.15.9 ⬆️ Update ruff to v0.15.10 Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants