Bump version to v0.3.0 (#10151) · astral-sh/ruff@b53118e (original) (raw)
1
1
`# Changelog
`
2
2
``
``
3
`+
0.3.0
`
``
4
+
``
5
`+
This release introduces the new Ruff formatter 2024.2 style and adds a new lint rule to
`
``
6
`+
detect invalid formatter suppression comments.
`
``
7
+
``
8
`+
Preview features
`
``
9
+
``
10
`` +
- [
flake8-bandit
] Remove suspicious-lxml-import (S410
) (#10154)
``
``
11
`` +
- [
pycodestyle
] Allowos.environ
modifications between imports (E402
) (#10066)
``
``
12
`` +
- [
pycodestyle
] Don't warn about a single whitespace character before a comma in a tuple (E203
) (#10094)
``
``
13
+
``
14
`+
Rule changes
`
``
15
+
``
16
`` +
- [
eradicate
] Detect commented outcase
statements (ERA001
) (#10055)
``
``
17
`` +
- [
eradicate
] Detect single-line code fortry:
,except:
, etc. (ERA001
) (#10057)
``
``
18
`` +
- [
flake8-boolean-trap
] Allow boolean positionals in__post_init__
(#10027)
``
``
19
`` +
- [
flake8-copyright
] Allow © in copyright notices (#10065)
``
``
20
`` +
- [
isort
]: Use one blank line after imports in typing stub files (#9971)
``
``
21
`` +
- [
pylint
] New Ruledict-iter-missing-items
(PLE1141
) (#9845)
``
``
22
`` +
- [
pylint
] Ignoresys.version
andsys.platform
(PLR1714
) (#10054)
``
``
23
`` +
- [
pyupgrade
] Detect literals with unary operators (UP018
) (#10060)
``
``
24
`` +
- [
ruff
] Expand rule forlist(iterable).pop(0)
idiom (RUF015
) (#10148)
``
``
25
+
``
26
`+
Formatter
`
``
27
+
``
28
`+
This release introduces the Ruff 2024.2 style, stabilizing the following changes:
`
``
29
+
``
30
`+
- Prefer splitting the assignment's value over the target or type annotation (#8943)
`
``
31
`+
- Remove blank lines before class docstrings (#9154)
`
``
32
`` +
- Wrap multiple context managers in
with
parentheses when targeting Python 3.9 or newer (#9222)
``
``
33
`` +
- Add a blank line after nested classes with a dummy body (
...
) in typing stub files (#9155)
``
``
34
`` +
``
``
35
`+
- Add a blank line after the module docstring (#8283)
`
``
36
`+
- Parenthesize long type hints in assignments (#9210)
`
``
37
`+
- Preserve indent for single multiline-string call-expressions (#9673)
`
``
38
`+
- Normalize hex escape and unicode escape sequences (#9280)
`
``
39
`+
- Format module docstrings (#9725)
`
``
40
+
``
41
`+
CLI
`
``
42
+
``
43
`` +
- Explicitly disallow
extend
as part of a--config
flag (#10135)
``
``
44
`` +
- Remove
build
from the default exclusion list (#10093)
``
``
45
`` +
- Deprecate
ruff <path>
,ruff --explain
,ruff --clean
, andruff --generate-shell-completion
in favor ofruff check <path>
,ruff rule
,ruff clean
, andruff generate-shell-completion
(#10169)
``
``
46
`` +
- Remove the deprecated CLI option
--format
fromruff rule
andruff linter
(#10170)
``
``
47
+
``
48
`+
Bug fixes
`
``
49
+
``
50
`` +
- [
flake8-bugbear
] Avoid adding default initializers to stubs (B006
) (#10152)
``
``
51
`` +
- [
flake8-type-checking
] Respect runtime-required decorators for function signatures (#10091)
``
``
52
`` +
- [
pycodestyle
] Mark fixes overlapping with a multiline string as unsafe (W293
) (#10049)
``
``
53
`` +
- [
pydocstyle
] Trim whitespace when removing blank lines after section (D413
) (#10162)
``
``
54
`` +
- [
pylint
] Delete entire statement, including semicolons (PLR0203
) (#10074)
``
``
55
`` +
- [
ruff
] Avoid f-string false positives ingettext
calls (RUF027
) (#10118)
``
``
56
`` +
- Fix
ruff
crashing on PowerPC systems because of too small page size (#10080)
``
``
57
+
``
58
`+
Performance
`
``
59
+
``
60
`+
- Add cold attribute to less likely printer queue branches in the formatter (#10121)
`
``
61
`+
- Skip unnecessary string normalization in the formatter (#10116)
`
``
62
+
``
63
`+
Documentation
`
``
64
+
``
65
`+
- Remove "Beta" Label from formatter documentation (#10144)
`
``
66
`` +
line-length
option: fix link topycodestyle.max-line-length
(#10136)
``
``
67
+
3
68
`## 0.2.2
`
4
69
``
5
70
`Highlights include:
`