0.7.0
Release Notes
Check out the blog post for a migration guide and overview of the changes!
Breaking changes
- The pytest rules
PT001
andPT023
now default to omitting the decorator parentheses when there are no arguments
(#12838, #13292).
This was a change that we attempted to make in Ruff v0.6.0, but only partially made due to an error on our part.
See the blog post for more details. - The
useless-try-except
rule (in ourtryceratops
category) has been recoded fromTRY302
to
TRY203
(#13502). This ensures Ruff's code is consistent with
the same rule in thetryceratops
linter. - The
lint.allow-unused-imports
setting has been removed (#13677). Use
lint.pyflakes.allow-unused-imports
instead.
Formatter preview style
- Normalize implicit concatenated f-string quotes per part (#13539)
Preview linter features
- [
refurb
] implementhardcoded-string-charset
(FURB156) (#13530) - [
refurb
] Count codepoints not bytes forslice-to-remove-prefix-or-suffix (FURB188)
(#13631)
Rule changes
- [
pylint
] MarkPLE1141
fix as unsafe (#13629) - [
flake8-async
] Consider async generators to be "checkpoints" forcancel-scope-no-checkpoint
(ASYNC100
) (#13639) - [
flake8-bugbear
] Do not suggest setting parameterstrict=
toFalse
inB905
diagnostic message (#13656) - [
flake8-todos
] Only flag the word "TODO", not words starting with "todo" (TD006
) (#13640) - [
pycodestyle
] Fix whitespace-related false positives and false negatives inside type-parameter lists (E231
,E251
) (#13704) - [
flake8-simplify
] Stabilize preview behavior forSIM115
so that the rule can detect files
being opened from a wider range of standard-library functions (#12959).
CLI
- Add explanation of fixable in
--statistics
command (#13774)
Bug fixes
- [
pyflakes
] Allowipytest
cell magic (F401
) (#13745) - [
flake8-use-pathlib
] FixPTH123
false positive whenopen
is passed a file descriptor (#13616) - [
flake8-bandit
] Detect patterns from multi line SQL statements (S608
) (#13574) - [
flake8-pyi
] - Fix dropped expressions inPYI030
autofix (#13727)
Contributors
- @AlexWaygood
- @DataEnggNerd
- @Lexxxzy
- @MichaReiser
- @Slyces
- @alex-700
- @autinerd
- @cake-monotone
- @carljm
- @dhruvmanila
- @diceroll123
- @dylwil3
- @github-actions
- @pilleye
- @qdegraaf
- @renovate
- @rtpg
- @sbrugman
- @sharkdp
- @zanieb
Install ruff 0.7.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/ruff/releases/download/0.7.0/ruff-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy ByPass -c "irm https://github.com/astral-sh/ruff/releases/download/0.7.0/ruff-installer.ps1 | iex"