mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-29 13:25:17 +00:00
[pylint
] Recode nan-comparison
rule to W0177
(#10894)
## Summary This was accidentally committed under `W0117`, but the actual Pylint code is `W0177`: https://pylint.readthedocs.io/en/latest/user_guide/checkers/features.html. Closes https://github.com/astral-sh/ruff/issues/10791.
This commit is contained in:
parent
563daa8a86
commit
312f43475f
6 changed files with 88 additions and 86 deletions
|
@ -297,7 +297,7 @@ pub fn code_to_rule(linter: Linter, code: &str) -> Option<(RuleGroup, Rule)> {
|
|||
#[allow(deprecated)]
|
||||
(Pylint, "R6301") => (RuleGroup::Nursery, rules::pylint::rules::NoSelfUse),
|
||||
(Pylint, "W0108") => (RuleGroup::Preview, rules::pylint::rules::UnnecessaryLambda),
|
||||
(Pylint, "W0117") => (RuleGroup::Preview, rules::pylint::rules::NanComparison),
|
||||
(Pylint, "W0177") => (RuleGroup::Preview, rules::pylint::rules::NanComparison),
|
||||
(Pylint, "W0120") => (RuleGroup::Stable, rules::pylint::rules::UselessElseOnLoop),
|
||||
(Pylint, "W0127") => (RuleGroup::Stable, rules::pylint::rules::SelfAssigningVariable),
|
||||
(Pylint, "W0128") => (RuleGroup::Preview, rules::pylint::rules::RedeclaredAssignedName),
|
||||
|
|
|
@ -109,5 +109,7 @@ static REDIRECTS: Lazy<HashMap<&'static str, &'static str>> = Lazy::new(|| {
|
|||
// Test redirect by prefix
|
||||
#[cfg(feature = "test-rules")]
|
||||
("RUF96", "RUF95"),
|
||||
// See: https://github.com/astral-sh/ruff/issues/10791
|
||||
("PLW0117", "PLW0177"),
|
||||
])
|
||||
});
|
||||
|
|
|
@ -47,7 +47,7 @@ impl Violation for NanComparison {
|
|||
}
|
||||
}
|
||||
|
||||
/// PLW0117
|
||||
/// PLW0177
|
||||
pub(crate) fn nan_comparison(checker: &mut Checker, left: &Expr, comparators: &[Expr]) {
|
||||
for expr in std::iter::once(left).chain(comparators.iter()) {
|
||||
if let Some(qualified_name) = checker.semantic().resolve_qualified_name(expr) {
|
||||
|
|
|
@ -1,82 +0,0 @@
|
|||
---
|
||||
source: crates/ruff_linter/src/rules/pylint/mod.rs
|
||||
---
|
||||
nan_comparison.py:11:9: PLW0117 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
10 | # PLW0117
|
||||
11 | if x == float("nan"):
|
||||
| ^^^^^^^^^^^^ PLW0117
|
||||
12 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:15:9: PLW0117 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
14 | # PLW0117
|
||||
15 | if x == float("NaN"):
|
||||
| ^^^^^^^^^^^^ PLW0117
|
||||
16 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:19:9: PLW0117 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
18 | # PLW0117
|
||||
19 | if x == float("NAN"):
|
||||
| ^^^^^^^^^^^^ PLW0117
|
||||
20 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:23:9: PLW0117 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
22 | # PLW0117
|
||||
23 | if x == float("Nan"):
|
||||
| ^^^^^^^^^^^^ PLW0117
|
||||
24 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:27:9: PLW0117 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
26 | # PLW0117
|
||||
27 | if x == math.nan:
|
||||
| ^^^^^^^^ PLW0117
|
||||
28 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:31:9: PLW0117 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
30 | # PLW0117
|
||||
31 | if x == bad_val:
|
||||
| ^^^^^^^ PLW0117
|
||||
32 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:35:9: PLW0117 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
34 | # PLW0117
|
||||
35 | if y == np.NaN:
|
||||
| ^^^^^^ PLW0117
|
||||
36 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:39:9: PLW0117 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
38 | # PLW0117
|
||||
39 | if y == np.NAN:
|
||||
| ^^^^^^ PLW0117
|
||||
40 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:43:9: PLW0117 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
42 | # PLW0117
|
||||
43 | if y == np.nan:
|
||||
| ^^^^^^ PLW0117
|
||||
44 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:47:9: PLW0117 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
46 | # PLW0117
|
||||
47 | if y == npy_nan:
|
||||
| ^^^^^^^ PLW0117
|
||||
48 | pass
|
||||
|
|
|
@ -0,0 +1,82 @@
|
|||
---
|
||||
source: crates/ruff_linter/src/rules/pylint/mod.rs
|
||||
---
|
||||
nan_comparison.py:11:9: PLW0177 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
10 | # PLW0117
|
||||
11 | if x == float("nan"):
|
||||
| ^^^^^^^^^^^^ PLW0177
|
||||
12 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:15:9: PLW0177 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
14 | # PLW0117
|
||||
15 | if x == float("NaN"):
|
||||
| ^^^^^^^^^^^^ PLW0177
|
||||
16 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:19:9: PLW0177 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
18 | # PLW0117
|
||||
19 | if x == float("NAN"):
|
||||
| ^^^^^^^^^^^^ PLW0177
|
||||
20 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:23:9: PLW0177 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
22 | # PLW0117
|
||||
23 | if x == float("Nan"):
|
||||
| ^^^^^^^^^^^^ PLW0177
|
||||
24 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:27:9: PLW0177 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
26 | # PLW0117
|
||||
27 | if x == math.nan:
|
||||
| ^^^^^^^^ PLW0177
|
||||
28 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:31:9: PLW0177 Comparing against a NaN value; use `math.isnan` instead
|
||||
|
|
||||
30 | # PLW0117
|
||||
31 | if x == bad_val:
|
||||
| ^^^^^^^ PLW0177
|
||||
32 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:35:9: PLW0177 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
34 | # PLW0117
|
||||
35 | if y == np.NaN:
|
||||
| ^^^^^^ PLW0177
|
||||
36 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:39:9: PLW0177 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
38 | # PLW0117
|
||||
39 | if y == np.NAN:
|
||||
| ^^^^^^ PLW0177
|
||||
40 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:43:9: PLW0177 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
42 | # PLW0117
|
||||
43 | if y == np.nan:
|
||||
| ^^^^^^ PLW0177
|
||||
44 | pass
|
||||
|
|
||||
|
||||
nan_comparison.py:47:9: PLW0177 Comparing against a NaN value; use `np.isnan` instead
|
||||
|
|
||||
46 | # PLW0117
|
||||
47 | if y == npy_nan:
|
||||
| ^^^^^^^ PLW0177
|
||||
48 | pass
|
||||
|
|
4
ruff.schema.json
generated
4
ruff.schema.json
generated
|
@ -3382,8 +3382,6 @@
|
|||
"PLW01",
|
||||
"PLW010",
|
||||
"PLW0108",
|
||||
"PLW011",
|
||||
"PLW0117",
|
||||
"PLW012",
|
||||
"PLW0120",
|
||||
"PLW0127",
|
||||
|
@ -3392,6 +3390,8 @@
|
|||
"PLW013",
|
||||
"PLW0131",
|
||||
"PLW0133",
|
||||
"PLW017",
|
||||
"PLW0177",
|
||||
"PLW02",
|
||||
"PLW021",
|
||||
"PLW0211",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue