Dylan
91e2d9a139
[refurb
] Handle non-finite decimals in verbose-decimal-constructor (FURB157)
( #14596 )
...
This PR extends the Decimal parsing used in [verbose-decimal-constructor
(FURB157)](https://docs.astral.sh/ruff/rules/verbose-decimal-constructor/ )
to better handle non-finite `Decimal` objects, avoiding some false
negatives.
Closes #14587
---------
Co-authored-by: Micha Reiser <micha@reiser.io>
2024-12-02 18:13:20 -06:00
Matt Ord
83651deac7
[pylint
] Ignore overload in PLR0904
( #14730 )
...
Fixes #14727
## Summary
Fixes #14727
## Test Plan
cargo test
---------
Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
2024-12-02 14:36:51 +00:00
Alex Waygood
6dfe125f44
Improve error messages and docs for flake8-comprehensions
rules ( #14729 )
2024-12-02 13:36:15 +00:00
Micha Reiser
f96dfc179f
Revert: [pyflakes] Avoid false positives in @no_type_check
contexts (F821, F722) ( #14615 ) ( #14726 )
2024-12-02 14:28:27 +01:00
Tzu-ping Chung
76d2e56501
[airflow] Avoid deprecated values (AIR302) ( #14582 )
2024-12-02 07:39:26 +00:00
Simon Brugman
48ec3a8add
[refurb
] Guard hashlib
imports and mark hashlib-digest-hex
fix as safe (FURB181
) ( #14694 )
...
## Summary
- Check if `hashlib` and `crypt` imports have been seen for `FURB181`
and `S324`
- Mark the fix for `FURB181` as safe: I think it was accidentally marked
as unsafe in the first place. The rule does not support user-defined
classes as the "fix safety" section suggests.
- Removed `hashlib._Hash`, as it's not part of the `hashlib` module.
<!-- What's the purpose of the change? What does it do, and why? -->
## Test Plan
Updated the test snapshots
2024-12-01 20:24:49 -05:00
Brent Westbrook
9e017634cb
[pep8-naming
] Avoid false positive for class Bar(type(foo))
(N804
) ( #14683 )
2024-11-30 22:37:28 +00:00
Simon Brugman
56ae73a925
[pylint
] Fix false negatives for ascii
and sorted
in len-as-condition
(PLC1802) ( #14692 )
2024-11-30 14:10:30 -06:00
InSync
be07424e80
Increase rule set size ( #14689 )
2024-11-30 15:12:10 +01:00
Micha Reiser
90487b8cbd
Skip panda rules if panda module hasn't been seen ( #14671 )
2024-11-29 21:32:51 +00:00
Alex Waygood
f3d8c023d3
[ruff
] Avoid emitting assignment-in-assert
when all references to the assigned variable are themselves inside assert
s (RUF018
) ( #14661 )
2024-11-29 13:36:59 +00:00
Micha Reiser
b63c2e126b
Upgrade Rust toolchain to 1.83 ( #14677 )
2024-11-29 12:05:05 +00:00
Simon Brugman
abb3c6ea95
[flake8-pyi
] Avoid rewriting invalid type expressions in unnecessary-type-union
(PYI055) ( #14660 )
2024-11-28 18:30:50 +00:00
Brent Westbrook
224fe75a76
[ruff
] Implement unnecessary-regular-expression
(RUF055
) ( #14659 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Simon Brugman <sbrugman@users.noreply.github.com>
2024-11-28 18:29:23 +00:00
Simon Brugman
dc29f52750
[flake8-pyi
, ruff
] Fix traversal of nested literals and unions (PYI016
, PYI051
, PYI055
, PYI062
, RUF041
) ( #14641 )
2024-11-28 18:07:12 +00:00
David Salvisberg
d9cbf2fe44
Avoids unnecessary overhead for TC004
, when TC001-003
are disabled ( #14657 )
2024-11-28 16:28:24 +01:00
Dhruv Manilawala
976c37a849
Bump version to 0.8.1 ( #14655 )
2024-11-28 19:12:50 +05:30
Alex Waygood
d8bca0d3a2
Fix bug where methods defined using lambdas were flagged by FURB118 ( #14639 )
2024-11-28 12:58:23 +00:00
David Salvisberg
8a7ba5d2df
[flake8-type-checking
] Fixes quote_type_expression
( #14634 )
2024-11-27 18:58:48 +01:00
Brent Westbrook
6fcbe8efb4
[ruff
] Detect redirected-noqa in file-level comments (RUF101
) ( #14635 )
2024-11-27 18:25:47 +01:00
Alexandra Valentine-Ketchum
c40b37aa36
N811 & N814: eliminate false positives for single-letter names ( #14584 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
Co-authored-by: Alex Waygood <alex.waygood@gmail.com>
2024-11-27 14:38:36 +00:00
Alex Waygood
4fb1416bf4
Minor stylistic improvements for functions detecting PEP-604 unions ( #14633 )
2024-11-27 11:29:37 +00:00
Simon Brugman
11a2929ed7
[ruff
] Implement unnecessary-nested-literal
(RUF041
) ( #14323 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-11-27 10:01:50 +00:00
InSync
187974eff4
[flake8-use-pathlib
] Recommend Path.iterdir()
over os.listdir()
(PTH208
) ( #14509 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2024-11-27 09:53:13 +00:00
Micha Reiser
14ba469fc0
Use a derive macro for Violations ( #14557 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-11-27 09:41:40 +00:00
David Salvisberg
6fd10e2fe7
[flake8-type-checking
] Adds implementation for TC007 and TC008 ( #12927 )
...
Co-authored-by: Simon Brugman <sbrugman@users.noreply.github.com>
Co-authored-by: Carl Meyer <carl@oddbird.net>
2024-11-27 09:51:20 +01:00
Dhruv Manilawala
0d649f9afd
Check that airflow
module is seen for AIR001
( #14627 )
2024-11-27 07:25:08 +00:00
Lokejoke
82c01aa662
[pylint]
Implement len-test
(PLC1802
) (#14309 )
...
## Summary
This PR implements [`use-implicit-booleaness-not-len` /
`C1802`](https://pylint.pycqa.org/en/latest/user_guide/messages/convention/use-implicit-booleaness-not-len.html )
> For sequences, (strings, lists, tuples), use the fact that empty
sequences are false.
---------
Co-authored-by: xbrtnik1 <524841@mail.muni.cz>
Co-authored-by: xbrtnik1 <xbrtnik1@mail.muni.cz>
2024-11-26 13:30:17 -06:00
Brent Westbrook
9f446faa6c
[pyflakes] Avoid false positives in @no_type_check
contexts (F821, F722) ( #14615 )
2024-11-26 19:13:43 +00:00
Dylan
24c90d6953
[pylint
] Do not wrap function calls in parentheses in the fix for unnecessary-dunder-call (PLC2801) ( #14601 )
2024-11-26 06:47:01 -06:00
Tzu-ping Chung
fbff4dec3a
[airflow] Avoid implicit DAG schedule (AIR301) ( #14581 )
2024-11-26 13:38:18 +01:00
Simon Brugman
e4cefd9bf9
Extend test cases for flake8-pyi
( #14280 )
2024-11-26 09:10:38 +01:00
Lokejoke
9e4ee98109
[ruff
] Implement invalid-assert-message-literal-argument
(RUF040
) ( #14488 )
...
## Summary
This PR implements new rule discussed
[here](https://github.com/astral-sh/ruff/discussions/14449 ).
In short, it searches for assert messages which were unintentionally
used as a expression to be matched against.
## Test Plan
`cargo test` and review of `ruff-ecosystem`
2024-11-25 17:41:07 -06:00
Simon Brugman
c606bf014e
[flake8-pyi
] Improve autofix safety for redundant-none-literal
(PYI061) ( #14583 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-11-25 17:40:57 +00:00
Simon Brugman
e8fce20736
[ruff
] Improve autofix safety for never-union
(RUF020) ( #14589 )
2024-11-25 18:35:07 +01:00
Harutaka Kawamura
fa22bd604a
Fix pytest.mark.parametrize
rules to check calls instead of decorators ( #14515 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2024-11-25 13:55:18 +01:00
Alex Waygood
ac23c99744
[ruff
] Mark fixes for unsorted-dunder-all
and unsorted-dunder-slots
as unsafe when there are complex comments in the sequence (RUF022
, RUF023
) ( #14560 )
2024-11-24 12:49:29 +00:00
Charlie Marsh
de62e39eba
Use truthiness check in auto_attribs
detection ( #14562 )
2024-11-23 22:06:10 -05:00
InSync
d285717da8
[ruff
] Handle attrs
's auto_attribs
correctly (RUF009
) ( #14520 )
...
## Summary
Resolves #14519 .
## Test Plan
`cargo nextest run` and `cargo insta test`.
2024-11-23 21:46:38 -05:00
InSync
545e9deba3
[flake8-builtins
] Exempt private built-in modules (A005
) ( #14505 )
...
## Summary
Resolves #12949 .
## Test Plan
`cargo nextest run` and `cargo insta test`.
2024-11-23 21:39:04 -05:00
Harutaka Kawamura
e3d792605f
[flake8-bugbear
] Fix mutable-contextvar-default (B039)
to resolve annotated function calls properly ( #14532 )
...
## Summary
<!-- What's the purpose of the change? What does it do, and why? -->
Fix #14525
## Test Plan
<!-- How was it tested? -->
New test cases
---------
Signed-off-by: harupy <hkawamura0130@gmail.com>
2024-11-23 21:29:25 -05:00
Harutaka Kawamura
1f303a5eb6
Simplify flake8_pytest_style::rules::fail_call
implementation ( #14556 )
2024-11-23 15:14:28 +01:00
Nikolas Hearp
07d13c6b4a
[B028-doc-update] Update documentation for B028 ( #14338 )
...
## Summary
Resolves #14289
The documentation for B028 no_explicit_stacklevel is updated to be more
clear.
---------
Co-authored-by: dylwil3 <dylwil3@gmail.com>
2024-11-23 07:45:28 +00:00
Dylan
e1838aac29
Ignore more rules for stub files ( #14541 )
...
This PR causes the following rules to ignore stub files, on the grounds
that it is not under the author's control to appease these lints:
- `PLR0904` https://docs.astral.sh/ruff/rules/too-many-public-methods/
- `PLR0913` https://docs.astral.sh/ruff/rules/too-many-arguments/
- `PLR0917`
https://docs.astral.sh/ruff/rules/too-many-positional-arguments/
- `PLW3201` https://docs.astral.sh/ruff/rules/bad-dunder-method-name/
- `SLOT` https://docs.astral.sh/ruff/rules/#flake8-slots-slot
- `FBT` https://docs.astral.sh/ruff/rules/#flake8-boolean-trap-fbt
(except for FBT003 since that involves a function call.)
Progress towards #14535
2024-11-23 07:41:10 +00:00
Dylan
3fda2d17c7
[ruff
] Auto-add r
prefix when string has no backslashes for unraw-re-pattern (RUF039)
( #14536 )
...
This PR adds a sometimes-available, safe autofix for [unraw-re-pattern
(RUF039)](https://docs.astral.sh/ruff/rules/unraw-re-pattern/#unraw-re-pattern-ruf039 ),
which prepends an `r` prefix. It is used only when the string in
question has no backslahses (and also does not have a `u` prefix, since
that causes a syntax error.)
Closes #14527
Notes:
- Test fixture unchanged, but snapshot changed to include fix messages.
- This fix is automatically only available in preview since the rule
itself is in preview
2024-11-22 15:09:53 -06:00
Harutaka Kawamura
931fa06d85
Extend invalid-envvar-default (PLW1508)
to detect os.environ.get
( #14512 )
2024-11-22 19:13:58 +00:00
David Salvisberg
e25e7044ba
[flake8-type-checking
] Adds implementation for TC006 ( #14511 )
...
Co-authored-by: Micha Reiser <micha@reiser.io>
2024-11-22 15:22:59 +01:00
Micha Reiser
8358ad8d25
Ruff 0.8 release ( #14486 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: David Salvisberg <dave@daverball.com>
2024-11-22 08:45:19 +01:00
Alex Waygood
2b8b1ef178
Improve docs for some pycodestyle rules ( #14517 )
2024-11-21 17:26:06 +00:00
cmp0xff
b9da4305e6
doc(B024): #14455 add annotated but unassgined class variables ( #14502 )
...
# Summary
Closes #14455 , migrated from https://github.com/astral-sh/docs/pull/106 .
2024-11-21 09:08:02 -06:00