From b83bd493e672a17c370f9202753d469577d98926 Mon Sep 17 00:00:00 2001 From: Jens Troeger Date: Mon, 11 Dec 2023 22:38:06 +1000 Subject: [PATCH 1/2] feat: require pylint v3 and add a slew of optional plugins --- pyproject.toml | 33 +++++++++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 45fa6c69..a28cc1c0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,8 +46,8 @@ dev = [ "flit >=3.2.0,<4.0.0", "mypy >=0.921,<1.8", "pip-audit >=2.4.4,<3.0.0", - "pylint >=2.9.3,<3.0.3", - "perflint >=0.7.3,<1.0.0", + "pylint >=3.0.0,<3.1.0", + "perflint >=0.8.0,<1.0.0", "cyclonedx-bom >=3.11.0,<4.0.0", ] docs = [ @@ -171,10 +171,35 @@ ignore_missing_imports = true # https://pylint.pycqa.org/en/latest/user_guide/configuration/index.html -[tool.pylint.MASTER] +[tool.pylint.main] fail-under = 10.0 +suggestion-mode = true load-plugins = [ - "perflint", # A Linter for performance anti-patterns. + "perflint", # A Linter for performance anti-patterns. + "pylint.extensions.bad_builtin", + "pylint.extensions.broad_try_clause", + "pylint.extensions.check_elif", + "pylint.extensions.code_style", + "pylint.extensions.comparison_placement", + "pylint.extensions.confusing_elif", + "pylint.extensions.consider_refactoring_into_while_condition", + "pylint.extensions.consider_ternary_expression", + "pylint.extensions.dict_init_mutate", + # "pylint.extensions.docparams", + # "pylint.extensions.docstyle", + "pylint.extensions.dunder", + "pylint.extensions.empty_comment", + "pylint.extensions.for_any_all", + "pylint.extensions.magic_value", + # "pylint.extensions.mccabe", + "pylint.extensions.no_self_use", + "pylint.extensions.overlapping_exceptions", + "pylint.extensions.private_import", + "pylint.extensions.redefined_loop_name", + "pylint.extensions.redefined_variable_type", + "pylint.extensions.set_membership", + "pylint.extensions.typing", + "pylint.extensions.while_used", ] disable = [ "fixme", From 284c03c51843132b61065071910d7ba65b5f2177 Mon Sep 17 00:00:00 2001 From: Jens Troeger Date: Mon, 11 Dec 2023 23:53:50 +1000 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20add=20one=20more=20general=20lint=20?= =?UTF-8?q?ignore=20for=20consistency=E2=80=99s=20sake?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index a28cc1c0..ca23d2f2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -216,6 +216,7 @@ disable = [ "too-many-public-methods", "too-many-return-statements", "too-many-statements", + "too-many-try-statements", ] [tool.pylint.MISCELLANEOUS]