summaryrefslogtreecommitdiff
path: root/pylint
diff options
context:
space:
mode:
authorMark Byrne <31762852+mbyrnepr2@users.noreply.github.com>2023-05-15 20:51:58 +0200
committerGitHub <noreply@github.com>2023-05-15 20:51:58 +0200
commit0a6c21bfab8237431c9f5198068451b243e91448 (patch)
tree8355cd667c86585e6f8b42b05675b49f1e6951ab /pylint
parentf168ad1fa902ddcb024b9824993d250d5d1348ff (diff)
downloadpylint-git-0a6c21bfab8237431c9f5198068451b243e91448.tar.gz
Fix a false negative for ``too-many-arguments`` and positional-only and keyword-only arguments (#8674)
Closes #8667
Diffstat (limited to 'pylint')
-rw-r--r--pylint/checkers/design_analysis.py2
-rw-r--r--pylint/config/argument.py5
2 files changed, 6 insertions, 1 deletions
diff --git a/pylint/checkers/design_analysis.py b/pylint/checkers/design_analysis.py
index 701615d89..c8a53d32b 100644
--- a/pylint/checkers/design_analysis.py
+++ b/pylint/checkers/design_analysis.py
@@ -506,7 +506,7 @@ class MisdesignChecker(BaseChecker):
# init branch and returns counters
self._returns.append(0)
# check number of arguments
- args = node.args.args
+ args = node.args.args + node.args.posonlyargs + node.args.kwonlyargs
ignored_argument_names = self.linter.config.ignored_argument_names
if args is not None:
ignored_args_num = 0
diff --git a/pylint/config/argument.py b/pylint/config/argument.py
index d826cbd3e..3bf990824 100644
--- a/pylint/config/argument.py
+++ b/pylint/config/argument.py
@@ -229,6 +229,7 @@ class _StoreArgument(_BaseStoreArgument):
https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.add_argument
"""
+ # pylint: disable-next=too-many-arguments
def __init__(
self,
*,
@@ -306,6 +307,7 @@ class _DeprecationArgument(_Argument):
https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.add_argument
"""
+ # pylint: disable-next=too-many-arguments
def __init__(
self,
*,
@@ -354,6 +356,7 @@ class _ExtendArgument(_DeprecationArgument):
https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.add_argument
"""
+ # pylint: disable-next=too-many-arguments
def __init__(
self,
*,
@@ -398,6 +401,7 @@ class _StoreOldNamesArgument(_DeprecationArgument):
https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.add_argument
"""
+ # pylint: disable-next=too-many-arguments
def __init__(
self,
*,
@@ -435,6 +439,7 @@ class _StoreNewNamesArgument(_DeprecationArgument):
https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.add_argument
"""
+ # pylint: disable-next=too-many-arguments
def __init__(
self,
*,