-
Notifications
You must be signed in to change notification settings - Fork 19
chore(deps): update dependency ruff to v0.13.1 #496
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
Development
Choose a base branch
from
renovate/ruff-0.x
base: Development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
f09984d
to
5a43b88
Compare
5a43b88
to
c17f9ca
Compare
c17f9ca
to
b6e11d0
Compare
b6e11d0
to
3544790
Compare
3544790
to
4df142c
Compare
4df142c
to
434b6b0
Compare
434b6b0
to
abe7374
Compare
abe7374
to
60fec21
Compare
60fec21
to
0962680
Compare
0962680
to
4ad1b98
Compare
4ad1b98
to
29c19f6
Compare
29c19f6
to
00d9aa2
Compare
00d9aa2
to
944440c
Compare
944440c
to
d9efc8b
Compare
d9efc8b
to
43e9615
Compare
43e9615
to
67221ea
Compare
67221ea
to
e6dea5d
Compare
e6dea5d
to
70025d5
Compare
70025d5
to
330f22a
Compare
330f22a
to
4b93a3d
Compare
4b93a3d
to
ff55ab7
Compare
ff55ab7
to
c9d5d50
Compare
c9d5d50
to
e52c468
Compare
e52c468
to
79173cc
Compare
79173cc
to
ded3a21
Compare
ded3a21
to
ec10c7c
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.
This PR contains the following updates:
==0.9.10
->==0.13.1
Release Notes
astral-sh/ruff (ruff)
v0.13.1
Compare Source
Released on 2025-09-18.
Preview features
flake8-simplify
] Detect unnecessaryNone
default for additional key expression types (SIM910
) (#20343)flake8-use-pathlib
] Add fix forPTH123
(#20169)flake8-use-pathlib
] FixPTH101
,PTH104
,PTH105
,PTH121
fixes (#20143)flake8-use-pathlib
] MakePTH111
fix unsafe because it can change behavior (#20215)pycodestyle
] FixE301
to only trigger for functions immediately within a class (#19768)refurb
] Marksingle-item-membership-test
fix as always unsafe (FURB171
) (#20279)Bug fixes
flake8-bandit
] Fix truthiness: dict-only**
displays not truthy forshell
(S602
,S604
,S609
) (#20177)flake8-simplify
] Fix diagnostic to show correct method name forstr.rsplit
calls (SIM905
) (#20459)flynt
] Use triple quotes for joined raw strings with newlines (FLY002
) (#20197)pyupgrade
] Fix false positive when class name is shadowed by local variable (UP008
) (#20427)pyupgrade
] Prevent infinite loop withI002
andUP026
(#20327)ruff
] Recognize t-strings, generators, and lambdas ininvalid-index-type
(RUF016
) (#20213)Rule changes
RUF102
] Respect rule redirects in invalid rule code detection (#20245)flake8-bugbear
] Mark the fix forunreliable-callable-check
as always unsafe (B004
) (#20318)ruff
] Allow dataclass attribute value instantiation from nested frozen dataclass (RUF009
) (#20352)CLI
output-format=sarif
(#20300)Documentation
ruff
] Addanalyze.string-imports-min-dots
to settings (#20375)Other changes
Contributors
v0.13.0
Compare Source
Check out the blog post for a migration
guide and overview of the changes!
Breaking changes
Several rules can now add
from __future__ import annotations
automaticallyTC001
,TC002
,TC003
,RUF013
, andUP037
now addfrom __future__ import annotations
as part of their fixes when thelint.future-annotations
setting is enabled. This allows the rules to movemore imports into
TYPE_CHECKING
blocks (TC001
,TC002
, andTC003
),use PEP 604 union syntax on Python versions before 3.10 (
RUF013
), andunquote more annotations (
UP037
).Full module paths are now used to verify first-party modules
Ruff now checks that the full path to a module exists on disk before
categorizing it as a first-party import. This change makes first-party
import detection more accurate, helping to avoid false positives on local
directories with the same name as a third-party dependency, for example. See
the FAQ
section on import categorization for more details.
Deprecated rules must now be selected by exact rule code
Ruff will no longer activate deprecated rules selected by their group name
or prefix. As noted below, the two remaining deprecated rules were also
removed in this release, so this won't affect any current rules, but it will
still affect any deprecations in the future.
The deprecated macOS configuration directory fallback has been removed
Ruff will no longer look for a user-level configuration file at
~/Library/Application Support/ruff/ruff.toml
on macOS. This feature wasdeprecated in v0.5 in favor of using the XDG
specification
(usually resolving to
~/.config/ruff/ruff.toml
), like on Linux. Thefallback and accompanying deprecation warning have now been removed.
Removed Rules
The following rules have been removed:
pandas-df-variable-name
(PD901
)non-pep604-isinstance
(UP038
)Stabilization
The following rules have been stabilized and are no longer in preview:
airflow-dag-no-schedule-argument
(
AIR002
)airflow3-removal
(AIR301
)airflow3-moved-to-provider
(
AIR302
)airflow3-suggested-update
(
AIR311
)airflow3-suggested-to-move-to-provider
(
AIR312
)long-sleep-not-forever
(ASYNC116
)f-string-number-format
(FURB116
)os-symlink
(PTH211
)generic-not-last-base-class
(
PYI059
)redundant-none-literal
(PYI061
)pytest-raises-ambiguous-pattern
(
RUF043
)unused-unpacked-variable
(
RUF059
)useless-class-metaclass-type
(
UP050
)The following behaviors have been stabilized:
assert-raises-exception
(B017
)now checks for direct calls to
unittest.TestCase.assert_raises
andpytest.raises
instead ofonly the context manager forms.
missing-trailing-comma
(COM812
)and
prohibited-trailing-comma
(
COM819
) now check for trailing commas in PEP 695 type parameter lists.raw-string-in-exception
(EM101
)now also checks for byte strings in exception messages.
invalid-mock-access
(PGH005
) nowchecks for
AsyncMock
methods likenot_awaited
in addition to the synchronous variants.useless-import-alias
(PLC0414
) nolonger applies to
__init__.py
files, where it conflicted with one of the suggested fixes forunused-import
(F401
).bidirectional-unicode
(PLE2502
) nowalso checks for U+061C (Arabic Letter Mark).
multiple-with-statements
(
SIM117
) is now marked as always safe.Preview features
pyupgrade
] EnableUP043
in stub files (#20027)Bug fixes
pyupgrade
] ApplyUP008
only when the__class__
cell exists (#19424)ruff
] Fix empty f-string detection inin-empty-collection
(RUF060
) (#20249)Server
Documentation
pep8-naming
] Fix formatting of__all__
(N816
) (#20301)v0.12.12
Compare Source
Release Notes
Preview features
airflow
] ConvertDatasetOrTimeSchedule(datasets=...)
toAssetOrTimeSchedule(assets=...)
(AIR311
) (#20202)airflow
] Improve theAIR002
error message (#20173)airflow
] Moveairflow.operators.postgres_operator.Mapping
fromAIR302
toAIR301
(#20172)flake8-async
] Implementblocking-input
rule (ASYNC250
) (#20122)flake8-use-pathlib
] MakePTH119
andPTH120
fixes unsafe because they can change behavior (#20118)pylint
] Add U+061C toPLE2502
(#20106)ruff
] Fix false negative for empty f-strings indeque
calls (RUF037
) (#20109)Bug fixes
fastapi
] Fix false positive for paths with spaces around parameters (FAST003
) (#20077)flake8-comprehensions
] SkipC417
when lambda containsyield
/yield from
(#20201)perflint
] Handle tuples in dictionary comprehensions (PERF403
) (#19934)Rule changes
pycodestyle
] Preserve return type annotation forParamSpec
(E731
) (#20108)Documentation
Contributors
Install ruff 0.12.12
Install prebuilt binaries via shell script
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/ruff/releases/download/0.12.12/ruff-installer.ps1 | iex"
Download ruff 0.12.12
v0.12.11
Compare Source
Preview features
airflow
] ExtendAIR311
andAIR312
rules (#20082)airflow
] Replace wrong pathairflow.io.storage
withairflow.io.store
(AIR311
) (#20081)flake8-async
] Implementblocking-http-call-httpx-in-async-function
(ASYNC212
) (#20091)flake8-logging-format
] Add auto-fix for f-string logging calls (G004
) (#19303)flake8-use-pathlib
] Add autofix forPTH211
(#20009)flake8-use-pathlib
] MakePTH100
fix unsafe because it can change behavior (#20100)Bug fixes
pyflakes
,pylint
] Fix false positives caused by__class__
cell handling (F841
,PLE0117
) (#20048)pyflakes
] Fixallowed-unused-imports
matching for top-level modules (F401
) (#20115)ruff
] Fix false positive for t-strings indefault-factory-kwarg
(RUF026
) (#20032)ruff
] Preserve relative whitespace in multi-line expressions (RUF033
) (#19647)Rule changes
ruff
] Handle empty t-strings inunnecessary-empty-iterable-within-deque-call
(RUF037
) (#20045)Documentation
D413
links in docstrings convention FAQ (#20089)flake8-use-pathlib
] Update links to the table showing the correspondence betweenos
andpathlib
(#20103)v0.12.10
Compare Source
Preview features
flake8-simplify
] Implement fix formaxsplit
without separator (SIM905
) (#19851)flake8-use-pathlib
] Add fixes forPTH102
andPTH103
(#19514)Bug fixes
isort
] Handle multiple continuation lines after module docstring (I002
) (#19818)pyupgrade
] Avoid reporting__future__
features as unnecessary when they are used (UP010
) (#19769)pyupgrade
] Handle nestedOptional
s (UP045
) (#19770)Rule changes
pycodestyle
] MakeE731
fix unsafe instead of display-only for class assignments (#19700)pyflakes
] Add secondary annotation showing previous definition (F811
) (#19900)Documentation
flake8-annotations
] Remove unused import in example (ANN401
) (#20000)v0.12.9
Compare Source
Preview features
airflow
] Add check forairflow.secrets.cache.SecretCache
(AIR301
) (#17707)ruff
] Offer a safe fix for multi-digit zeros (RUF064
) (#19847)Bug fixes
flake8-blind-except
] FixBLE001
false-positive onraise ... from None
(#19755)flake8-comprehensions
] Fix false positive forC420
with attribute, subscript, or slice assignment targets (#19513)flake8-simplify
] Fix handling of U+001C..U+001F whitespace (SIM905
) (#19849)Rule changes
pylint
] Use lowercase hex characters to match the formatter (PLE2513
) (#19808)Documentation
lint.future-annotations
link (#19876)Other changes
riscv64
binaries for release (#19819)v0.12.8
Compare Source
Release Notes
Preview features
flake8-use-pathlib
] ExpandPTH201
to check allPurePath
subclasses (#19440)Bug fixes
flake8-blind-except
] ChangeBLE001
to correctly parse exception tuples (#19747)flake8-errmsg
] Excludetyping.cast
fromEM101
(#19656)flake8-simplify
] Fix raw string handling inSIM905
for embedded quotes (#19591)flake8-import-conventions
] Avoid false positives for NFKC-normalized__debug__
import aliases inICN001
(#19411)isort
] Fix syntax error after docstring ending with backslash (I002
) (#19505)pylint
] MarkPLC0207
fixes as unsafe when*args
unpacking is present (#19679)pyupgrade
] Prevent infinite loop withI002
(UP010
,UP035
) (#19413)ruff
] Parenthesize generator expressions in f-strings (RUF010
) (#19434)Rule changes
eradicate
] Don't flagpyrefly
pragmas as unused code (ERA001
) (#19731)Documentation
RUF036
(#19706)typing
documentation (#19648)refurb
] Make more examples error out-of-the-box (#19695,#19673,#19672)Other changes
ruff
id (#19654)Contributors
Install ruff 0.12.8
Install prebuilt binaries via shell script
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/ruff/releases/download/0.12.8/ruff-installer.ps1 | iex"
Download ruff 0.12.8
v0.12.7
This is a follow-up release to 0.12.6. Because of an issue in the package metadata, 0.12.6 failed to publish fully to PyPI and has been yanked. Similarly, there is no GitHub release or Git tag for 0.12.6. The contents of the 0.12.7 release are identical to 0.12.6, except for the updated metadata.
v0.12.5
Compare Source
Release Notes
Preview features
flake8-use-pathlib
] Add autofix forPTH101
,PTH104
,PTH105
,PTH121
(#19404)ruff
] Support byte strings (RUF055
) (#18926)Bug fixes
unreachable
panic in parser (#19183)flake8-pyi
] Skip fix if allUnion
members areNone
(PYI016
) (#19416)perflint
] Parenthesize generator expressions (PERF401
) (#19325)pylint
] Handle empty comments after line continuation (PLR2044
) (#19405)Rule changes
pep8-naming
] FixN802
false positives forCGIHTTPRequestHandler
andSimpleHTTPRequestHandler
(#19432)Contributors
Install ruff 0.12.5
Install prebuilt binaries via shell script
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/ruff/releases/download/0.12.5/ruff-installer.ps1 | iex"
Download ruff 0.12.5
v0.12.4
Compare Source
Release Notes
Preview features
flake8-type-checking
,pyupgrade
,ruff
] Addfrom __future__ import annotations
when it would allow new fixes (TC001
,TC002
,TC003
,UP037
,RUF013
) (#19100)flake8-use-pathlib
] Add autofix forPTH109
(#19245)pylint
] Detect indirectpathlib.Path
usages forunspecified-encoding
(PLW1514
) (#19304)Bug fixes
flake8-bugbear
] FixB017
false negatives for keyword exception arguments (#19217)flake8-use-pathlib
] Fix false negative on directPath()
instantiation (PTH210
) (#19388)flake8-django
] FixDJ008
false positive for abstract models with type-annotatedabstract
field (#19221)isort
] FixI002
import insertion after docstring with multiple string statements (#19222)isort
] Treat form feed as valid whitespace before a semicolon (#19343)pydoclint
] FixSyntaxError
from fixes with line continuations (D201
,D202
) (#19246)refurb
]FURB164
fix should validate arguments and should usually be marked unsafe (#19136)Rule changes
flake8-use-pathlib
] Skip single dots forinvalid-pathlib-with-suffix
(PTH210
) on versions >= 3.14 (#19331)pep8_naming
] Avoid false positives on standard library functions with uppercase names (N802
) (#18907)pycodestyle
] Handle brace escapes for t-strings in logical lines (#19358)pylint
] Extend invalid string character rules to include t-strings (#19355)ruff
] Allowstrict
kwarg when checking forstarmap-zip
(RUF058
) in Python 3.14+ (#19333)Documentation
flake8-type-checking
] MakeTC010
docs example more realistic (#19356)Contributors
Install ruff 0.12.4
Install prebuilt binaries via shell script
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/ruff/releases/download/0.12.4/ruff-installer.ps1 | iex"
Download ruff 0.12.4