Release Notes
Preview features
- [
airflow
] Extend names moved from core to provider (AIR303
) (#15145, #15159, #15196, #15216) - [
airflow
] Extend rule to check class attributes, methods, arguments (AIR302
) (#15054, #15083) - [
fastapi
] UpdateFAST002
to check keyword-only arguments (#15119) - [
flake8-type-checking
] DisableTC006
andTC007
in stub files (#15179) - [
pylint
] Detect nested methods correctly (PLW1641
) (#15032) - [
ruff
] Detect more strict-integer expressions (RUF046
) (#14833) - [
ruff
] Implementfalsy-dict-get-fallback
(RUF056
) (#15160) - [
ruff
] Implementunnecessary-round
(RUF057
) (#14828)
Rule changes
- Visit PEP 764 inline
TypedDict
keys as non-type-expressions (#15073) - [
flake8-comprehensions
] SkipC416
if comprehension contains unpacking (#14909) - [
flake8-pie
] Allowcast(SomeType, ...)
(PIE796
) (#15141) - [
flake8-simplify
] More precise inference for dictionaries (SIM300
) (#15164) - [
flake8-use-pathlib
] Catch redundant joins inPTH201
and avoid syntax errors (#15177) - [
pycodestyle
] Preserve original value format (E731
) (#15097) - [
pydocstyle
] Split on first whitespace character (D403
) (#15082) - [
pyupgrade
] Add all PEP-585 names toUP006
rule (#5454)
Configuration
- [
flake8-type-checking
] Improve flexibility ofruntime-evaluated-decorators
(#15204) - [
pydocstyle
] Add setting to ignore missing documentation for*args
and**kwargs
parameters (D417
) (#15210) - [
ruff
] Add an allowlist forunsafe-markup-use
(RUF035
) (#15076)
Bug fixes
- Fix type subscript on older python versions (#15090)
- Use
TypeChecker
for detectingfastapi
routes (#15093) - [
pycodestyle
] Avoid false positives and negatives related to type parameter default syntax (E225
,E251
) (#15214)
Documentation
- Fix incorrect doc in
shebang-not-executable
(EXE001
) and add git+windows solution to executable bit (#15208) - Rename rules currently not conforming to naming convention (#15102)
Contributors
- @AlexWaygood
- @Avasam
- @Daverball
- @InSyncWithFoo
- @KotlinIsland
- @Lee-W
- @MichaReiser
- @TomerBin
- @Viicos
- @aaron-skydio
- @cclauss
- @dhruvmanila
- @dylwil3
- @enochkan
- @github-actions
- @guptaarnav
- @harupy
- @hauntsaninja
- @my1e5
- @purajit
- @renovate
- @sharkdp
- @sobolevn
- @wookie184
Install ruff 0.8.5
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/ruff/releases/download/0.8.5/ruff-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy ByPass -c "irm https://github.com/astral-sh/ruff/releases/download/0.8.5/ruff-installer.ps1 | iex"