Skip to content

Commit 4cea011

Browse files
authored
Misc cleanup (#10580)
1 parent 77a2b07 commit 4cea011

File tree

14 files changed

+25
-28
lines changed

14 files changed

+25
-28
lines changed
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
Add new checks for invalid uses of class patterns in ``match``.
2-
* ``invalid-match-args-definition`` is emitted if ``__match_args__`` isn't a tuple of strings.
3-
* ``too-many-positional-sub-patterns`` if there are more positional sub-patterns than specified in ``__match_args__``.
4-
* ``multiple-class-sub-patterns`` if there are multiple sub-patterns for the same attribute.
1+
Add new checks for invalid uses of class patterns in :keyword:`match`.
2+
* :ref:`invalid-match-args-definition` is emitted if :py:data:`object.__match_args__` isn't a tuple of strings.
3+
* :ref:`too-many-positional-sub-patterns` if there are more positional sub-patterns than specified in :py:data:`object.__match_args__`.
4+
* :ref:`multiple-class-sub-patterns` if there are multiple sub-patterns for the same attribute.
55

66
Refs #10559

pylint/checkers/base/basic_checker.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -717,7 +717,7 @@ def visit_assert(self, node: nodes.Assert) -> None:
717717
match node.test:
718718
case nodes.Tuple(elts=elts) if len(elts) > 0:
719719
self.add_message("assert-on-tuple", node=node, confidence=HIGH)
720-
case nodes.Const(value=str(val)):
720+
case nodes.Const(value=str() as val):
721721
when = "never" if val else "always"
722722
self.add_message("assert-on-string-literal", node=node, args=(when,))
723723

pylint/checkers/base/comparison_checker.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ def _check_nan_comparison(
146146
def _is_float_nan(node: nodes.NodeNG) -> bool:
147147
try:
148148
match node:
149-
case nodes.Call(args=[nodes.Const(value=str(value))]) if (
149+
case nodes.Call(args=[nodes.Const(value=str() as value)]) if (
150150
value.lower() == "nan"
151151
):
152152
return node.inferred()[0].pytype() == "builtins.float" # type: ignore[no-any-return]

pylint/checkers/base/name_checker/checker.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
from typing import TYPE_CHECKING
1818

1919
import astroid
20+
import astroid.bases
2021
from astroid import nodes
2122
from astroid.typing import InferenceResult
2223

pylint/checkers/classes/class_checker.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from typing import TYPE_CHECKING, Any, NamedTuple, TypeAlias
1515

1616
import astroid
17+
import astroid.objects
1718
from astroid import bases, nodes, util
1819
from astroid.nodes import LocalsDictNodeNG
1920
from astroid.typing import SuccessfulInferenceResult
@@ -1641,7 +1642,7 @@ def _check_slots_elt(
16411642
match inferred:
16421643
case util.UninferableBase():
16431644
continue
1644-
case nodes.Const(value=str(value)) if value:
1645+
case nodes.Const(value=str() as value) if value:
16451646
pass
16461647
case _:
16471648
self.add_message(

pylint/checkers/refactoring/refactoring_checker.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from typing import TYPE_CHECKING, Any, NamedTuple, TypeAlias, cast
1515

1616
import astroid
17+
import astroid.objects
1718
from astroid import bases, nodes
1819
from astroid.util import UninferableBase
1920

@@ -1125,7 +1126,6 @@ def _check_consider_using_generator(self, node: nodes.Call) -> None:
11251126
inside_comp = f"({inside_comp})"
11261127
inside_comp += ", "
11271128
inside_comp += ", ".join(kw.as_string() for kw in node.keywords)
1128-
call_name = node.func.name
11291129
if call_name in {"any", "all"}:
11301130
self.add_message(
11311131
"use-a-generator",
@@ -2043,7 +2043,7 @@ def _is_node_return_ended(self, node: nodes.NodeNG) -> bool:
20432043
return any(
20442044
self._is_node_return_ended(_child) for _child in all_but_handler
20452045
) and all(self._is_node_return_ended(_child) for _child in handlers)
2046-
case nodes.Assert(test=nodes.Const(value=value)) if not value:
2046+
case nodes.Assert(test=nodes.Const(value=False | 0)):
20472047
# consider assert False as a return node
20482048
return True
20492049
# recurses on the children of the node

pylint/checkers/typecheck.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1755,10 +1755,9 @@ def _check_invalid_sequence_index(self, subscript: nodes.Subscript) -> None:
17551755
if index_type is None or isinstance(index_type, util.UninferableBase):
17561756
return None
17571757
match index_type:
1758-
case nodes.Const():
1758+
case nodes.Const(value=int()):
17591759
# Constants must be of type int
1760-
if isinstance(index_type.value, int):
1761-
return None
1760+
return None
17621761
case astroid.Instance():
17631762
# Instance values must be int, slice, or have an __index__ method
17641763
if index_type.pytype() in {"builtins.int", "builtins.slice"}:

pylint/checkers/utils.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1704,8 +1704,7 @@ def is_test_condition(
17041704
parent: nodes.NodeNG | None = None,
17051705
) -> bool:
17061706
"""Returns true if the given node is being tested for truthiness."""
1707-
parent = parent or node.parent
1708-
match parent:
1707+
match parent := parent or node.parent:
17091708
case nodes.While() | nodes.If() | nodes.IfExp() | nodes.Assert():
17101709
return node is parent.test or parent.test.parent_of(node)
17111710
case nodes.Comprehension():

pylint/checkers/variables.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1038,7 +1038,7 @@ def _check_loop_finishes_via_except(
10381038
"""
10391039
if not other_node_try_except.orelse:
10401040
return False
1041-
closest_loop: None | (nodes.For | nodes.While) = (
1041+
closest_loop: nodes.For | nodes.While | None = (
10421042
utils.get_node_first_ancestor_of_type(node, (nodes.For, nodes.While))
10431043
)
10441044
if closest_loop is None:
@@ -3034,7 +3034,7 @@ def _store_type_annotation_node(self, type_annotation: nodes.NodeNG) -> None:
30343034
return
30353035

30363036
match type_annotation.value:
3037-
case nodes.Attribute(expr=nodes.Name(name=n)) if n == TYPING_MODULE:
3037+
case nodes.Attribute(expr=nodes.Name(name=name)) if name == TYPING_MODULE:
30383038
self._type_annotation_names.append(TYPING_MODULE)
30393039
return
30403040

pylint/extensions/_check_docs_utils.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,7 @@ def get_setters_property_name(node: nodes.FunctionDef) -> str | None:
4141
decorators = node.decorators.nodes if node.decorators else []
4242
for decorator in decorators:
4343
match decorator:
44-
case nodes.Attribute(attrname=attrname, expr=nodes.Name(name=name)) if (
45-
attrname == "setter"
46-
):
44+
case nodes.Attribute(attrname="setter", expr=nodes.Name(name=name)):
4745
return name # type: ignore[no-any-return]
4846
return None
4947

0 commit comments

Comments
 (0)