From 9a851a136ab7141a52ce559920e8d0e7c1a15ecf Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Sat, 24 Sep 2022 13:47:54 +0000 Subject: [PATCH 1/7] pylint pre-commit integration --- .pre-commit-config.yaml | 12 ++++++++++++ pandas/tests/groupby/test_groupby.py | 1 + 2 files changed, 13 insertions(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 966fda1ed710a..10f0294857dae 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -59,6 +59,17 @@ repos: - flake8==5.0.4 - flake8-bugbear==22.7.1 - pandas-dev-flaker==0.5.0 + # Added pylint, at the moment it is excluding a lot of messages +- repo: https://github.com/pycqa/pylint + rev: v2.15.3 + hooks: + - id: pylint + types: [python] + args: + [ + "-rn", + "-d=C,R,W,import-error,no-member,no-name-in-module,unsubscriptable-object,invalid-unary-operand-type,unexpected-keyword-arg,not-an-iterable,unsupported-assignment-operation,unsupported-membership-test,no-value-for-parameter,unpacking-non-sequence,bad-super-call,access-member-before-definition,used-before-assignment,too-many-fucntion-args,abstract-class-instantiated,not-callable,too-many-fucntion-args,invalid-repr-returned" + ] - repo: https://github.com/PyCQA/isort rev: 5.10.1 hooks: @@ -277,3 +288,4 @@ repos: - autotyping==22.9.0 - black==22.6.0 - libcst==0.4.7 + diff --git a/pandas/tests/groupby/test_groupby.py b/pandas/tests/groupby/test_groupby.py index 5a65e79849cdb..3a11743ab9f58 100644 --- a/pandas/tests/groupby/test_groupby.py +++ b/pandas/tests/groupby/test_groupby.py @@ -140,6 +140,7 @@ def func(dataf): def func(dataf): return dataf["val2"] - dataf["val2"].mean() + with tm.assert_produces_warning(FutureWarning): result = df2.groupby("val1", squeeze=True).apply(func) assert isinstance(result, Series) From cc70aedcff16e89889a1a9e35aef372d8e47ed35 Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Sat, 24 Sep 2022 16:21:49 +0000 Subject: [PATCH 2/7] Requested Changes --- .pre-commit-config.yaml | 7 ------- pyproject.toml | 29 +++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 10f0294857dae..314385d91db4a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -59,17 +59,10 @@ repos: - flake8==5.0.4 - flake8-bugbear==22.7.1 - pandas-dev-flaker==0.5.0 - # Added pylint, at the moment it is excluding a lot of messages - repo: https://github.com/pycqa/pylint rev: v2.15.3 hooks: - id: pylint - types: [python] - args: - [ - "-rn", - "-d=C,R,W,import-error,no-member,no-name-in-module,unsubscriptable-object,invalid-unary-operand-type,unexpected-keyword-arg,not-an-iterable,unsupported-assignment-operation,unsupported-membership-test,no-value-for-parameter,unpacking-non-sequence,bad-super-call,access-member-before-definition,used-before-assignment,too-many-fucntion-args,abstract-class-instantiated,not-callable,too-many-fucntion-args,invalid-repr-returned" - ] - repo: https://github.com/PyCQA/isort rev: 5.10.1 hooks: diff --git a/pyproject.toml b/pyproject.toml index 89afdcfd32d22..b093ccc7f7485 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,6 +31,35 @@ exclude = ''' ) ''' +[tool.pylint.messages_control] +max-line-length = 88 +disable = [ + "C", + "R", + "W", + "import-error", + "no-member", + "no-name-in-module", + "unsubscriptable-object", + "invalid-unary-operand-type", + "unexpected-keyword-arg", + "not-an-iterable", + "unsupported-assignment-operation", + "unsupported-membership-test", + "no-value-for-parameter", + "unpacking-non-sequence", + "bad-super-call", + "access-member-before-definition", + "used-before-assignment", + "too-many-fucntion-args", + "abstract-class-instantiated", + "not-callable", + "too-many-function-args", + "invalid-repr-returned", + "undefined-variable, + "function-redefined", +] + [tool.pytest.ini_options] # sync minversion with pyproject.toml & install.rst minversion = "6.0" From 01828dc8750282aaa5a6f9f5c2ef6afdafee46b6 Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Sat, 24 Sep 2022 16:32:06 +0000 Subject: [PATCH 3/7] missing syntax --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index b093ccc7f7485..cdcb2b9364918 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -56,7 +56,7 @@ disable = [ "not-callable", "too-many-function-args", "invalid-repr-returned", - "undefined-variable, + "undefined-variable", "function-redefined", ] From 6623243841bd2e1dc95a8e0ea9763a4e4f5ebf84 Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Mon, 26 Sep 2022 17:54:21 +0000 Subject: [PATCH 4/7] pylint passed --- pandas/core/arrays/base.py | 2 +- pandas/core/internals/blocks.py | 2 +- pandas/tests/extension/decimal/test_decimal.py | 2 +- pandas/tests/frame/methods/test_rename.py | 2 +- pandas/tests/io/test_gcs.py | 2 +- pandas/tests/io/test_html.py | 4 ++-- pandas/tests/io/test_sql.py | 2 +- pandas/tests/scalar/period/test_period.py | 2 +- pyproject.toml | 1 + 9 files changed, 10 insertions(+), 9 deletions(-) diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 77dfc82e640f2..6f88b81ed6ad5 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -93,7 +93,7 @@ if TYPE_CHECKING: - class ExtensionArraySupportsAnyAll("ExtensionArray"): + class ExtensionArraySupportsAnyAll("ExtensionArray"): # pylint: disable=inherit-non-class def any(self, *, skipna: bool = True) -> bool: pass diff --git a/pandas/core/internals/blocks.py b/pandas/core/internals/blocks.py index 62d8d7e504b4a..3b76831d39490 100644 --- a/pandas/core/internals/blocks.py +++ b/pandas/core/internals/blocks.py @@ -1981,7 +1981,7 @@ def _catch_deprecated_value_error(err: Exception) -> None: # IntervalDtype mismatched 'closed' pass elif "Timezones don't match" not in str(err): - raise + raise ValueError("Timezones don't match") class DatetimeLikeBlock(NDArrayBackedExtensionBlock): diff --git a/pandas/tests/extension/decimal/test_decimal.py b/pandas/tests/extension/decimal/test_decimal.py index c2e42ae2fe27e..c086f609cf602 100644 --- a/pandas/tests/extension/decimal/test_decimal.py +++ b/pandas/tests/extension/decimal/test_decimal.py @@ -284,7 +284,7 @@ def test_compare_array(self, data, comparison_op): class DecimalArrayWithoutFromSequence(DecimalArray): """Helper class for testing error handling in _from_sequence.""" - def _from_sequence(cls, scalars, dtype=None, copy=False): + def _from_sequence(cls, scalars, dtype=None, copy=False): # pylint: disable=no-self-argument raise KeyError("For the test") diff --git a/pandas/tests/frame/methods/test_rename.py b/pandas/tests/frame/methods/test_rename.py index f4443953a0d52..3f5c59ea87573 100644 --- a/pandas/tests/frame/methods/test_rename.py +++ b/pandas/tests/frame/methods/test_rename.py @@ -336,7 +336,7 @@ def test_rename_axis_style_raises(self): # Duplicates with pytest.raises(TypeError, match="multiple values"): - df.rename(id, mapper=id) + df.rename(id, mapper=id) # pylint: disable=redundant-keyword-arg def test_rename_positional_raises(self): # GH 29136 diff --git a/pandas/tests/io/test_gcs.py b/pandas/tests/io/test_gcs.py index 6907d8978e603..a2086a1d3f3d3 100644 --- a/pandas/tests/io/test_gcs.py +++ b/pandas/tests/io/test_gcs.py @@ -33,7 +33,7 @@ def gcs_buffer(monkeypatch): gcs_buffer.close = lambda: True class MockGCSFileSystem(AbstractFileSystem): - def open(*args, **kwargs): + def open(*args, **kwargs): # pylint: disable=no-method-argument gcs_buffer.seek(0) return gcs_buffer diff --git a/pandas/tests/io/test_html.py b/pandas/tests/io/test_html.py index c250a474cb3ca..f0d6377dc8580 100644 --- a/pandas/tests/io/test_html.py +++ b/pandas/tests/io/test_html.py @@ -1140,7 +1140,7 @@ def test_works_on_valid_markup(self, datapath): @pytest.mark.slow def test_fallback_success(self, datapath): banklist_data = datapath("io", "data", "html", "banklist.html") - self.read_html(banklist_data, match=".*Water.*", flavor=["lxml", "html5lib"]) + self.read_html(banklist_data, match=".*Water.*", flavor=["lxml", "html5lib"]) # pylint: disable=redundant-keyword-arg def test_to_html_timestamp(self): rng = date_range("2000-01-01", periods=10) @@ -1278,7 +1278,7 @@ def seek(self, offset): def seekable(self): return True - def __iter__(self) -> Iterator: + def __iter__(self) -> Iterator: # pylint: disable=non-iterator-returned # to fool `is_file_like`, should never end up here assert False diff --git a/pandas/tests/io/test_sql.py b/pandas/tests/io/test_sql.py index ee55837324f20..d96bcbd54f2ef 100644 --- a/pandas/tests/io/test_sql.py +++ b/pandas/tests/io/test_sql.py @@ -1606,7 +1606,7 @@ class _TestSQLAlchemy(SQLAlchemyMixIn, PandasSQLTest): flavor: str @pytest.fixture(autouse=True, scope="class") - def setup_class(cls): + def setup_class(cls): # pylint: disable=no-self-argument cls.setup_import() cls.setup_driver() conn = cls.conn = cls.connect() diff --git a/pandas/tests/scalar/period/test_period.py b/pandas/tests/scalar/period/test_period.py index c9e28f8249c1b..3adee047bc648 100644 --- a/pandas/tests/scalar/period/test_period.py +++ b/pandas/tests/scalar/period/test_period.py @@ -840,7 +840,7 @@ def test_period_deprecated_freq(self): assert isinstance(p1, Period) assert isinstance(p2, Period) - def _period_constructor(bound, offset): + def _period_constructor(bound, offset): # pylint: disable=no-self-argument return Period( year=bound.year, month=bound.month, diff --git a/pyproject.toml b/pyproject.toml index cdcb2b9364918..e8994d6c7edee 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -58,6 +58,7 @@ disable = [ "invalid-repr-returned", "undefined-variable", "function-redefined", + "c-extension-no-member", ] [tool.pytest.ini_options] From e0288a68faab2f467b58779b8ba850dcedcfa3b7 Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Mon, 26 Sep 2022 19:11:14 +0000 Subject: [PATCH 5/7] CI Passed --- .pre-commit-config.yaml | 1 - pandas/core/arrays/base.py | 4 +++- pandas/tests/extension/decimal/test_decimal.py | 4 +++- pandas/tests/frame/methods/test_rename.py | 2 +- pandas/tests/groupby/test_groupby.py | 1 - pandas/tests/io/test_gcs.py | 2 +- pandas/tests/io/test_html.py | 6 ++++-- pandas/tests/io/test_sql.py | 2 +- pandas/tests/scalar/period/test_period.py | 2 +- pyproject.toml | 1 + 10 files changed, 15 insertions(+), 10 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 314385d91db4a..2e8b8711574be 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -281,4 +281,3 @@ repos: - autotyping==22.9.0 - black==22.6.0 - libcst==0.4.7 - diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 6f88b81ed6ad5..09ffb39cb1651 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -93,7 +93,9 @@ if TYPE_CHECKING: - class ExtensionArraySupportsAnyAll("ExtensionArray"): # pylint: disable=inherit-non-class + class ExtensionArraySupportsAnyAll( + "ExtensionArray" + ): # pylint: disable=inherit-non-class def any(self, *, skipna: bool = True) -> bool: pass diff --git a/pandas/tests/extension/decimal/test_decimal.py b/pandas/tests/extension/decimal/test_decimal.py index c086f609cf602..1742e0bf4e29a 100644 --- a/pandas/tests/extension/decimal/test_decimal.py +++ b/pandas/tests/extension/decimal/test_decimal.py @@ -284,7 +284,9 @@ def test_compare_array(self, data, comparison_op): class DecimalArrayWithoutFromSequence(DecimalArray): """Helper class for testing error handling in _from_sequence.""" - def _from_sequence(cls, scalars, dtype=None, copy=False): # pylint: disable=no-self-argument + def _from_sequence( + cls, scalars, dtype=None, copy=False + ): # pylint: disable=no-self-argument raise KeyError("For the test") diff --git a/pandas/tests/frame/methods/test_rename.py b/pandas/tests/frame/methods/test_rename.py index 3f5c59ea87573..19eb727ea38ae 100644 --- a/pandas/tests/frame/methods/test_rename.py +++ b/pandas/tests/frame/methods/test_rename.py @@ -336,7 +336,7 @@ def test_rename_axis_style_raises(self): # Duplicates with pytest.raises(TypeError, match="multiple values"): - df.rename(id, mapper=id) # pylint: disable=redundant-keyword-arg + df.rename(id, mapper=id) # pylint: disable=redundant-keyword-arg def test_rename_positional_raises(self): # GH 29136 diff --git a/pandas/tests/groupby/test_groupby.py b/pandas/tests/groupby/test_groupby.py index 3a11743ab9f58..5a65e79849cdb 100644 --- a/pandas/tests/groupby/test_groupby.py +++ b/pandas/tests/groupby/test_groupby.py @@ -140,7 +140,6 @@ def func(dataf): def func(dataf): return dataf["val2"] - dataf["val2"].mean() - with tm.assert_produces_warning(FutureWarning): result = df2.groupby("val1", squeeze=True).apply(func) assert isinstance(result, Series) diff --git a/pandas/tests/io/test_gcs.py b/pandas/tests/io/test_gcs.py index a2086a1d3f3d3..92dfbea16444b 100644 --- a/pandas/tests/io/test_gcs.py +++ b/pandas/tests/io/test_gcs.py @@ -33,7 +33,7 @@ def gcs_buffer(monkeypatch): gcs_buffer.close = lambda: True class MockGCSFileSystem(AbstractFileSystem): - def open(*args, **kwargs): # pylint: disable=no-method-argument + def open(*args, **kwargs): # pylint: disable=no-method-argument gcs_buffer.seek(0) return gcs_buffer diff --git a/pandas/tests/io/test_html.py b/pandas/tests/io/test_html.py index f0d6377dc8580..00ad0a400f285 100644 --- a/pandas/tests/io/test_html.py +++ b/pandas/tests/io/test_html.py @@ -1140,7 +1140,9 @@ def test_works_on_valid_markup(self, datapath): @pytest.mark.slow def test_fallback_success(self, datapath): banklist_data = datapath("io", "data", "html", "banklist.html") - self.read_html(banklist_data, match=".*Water.*", flavor=["lxml", "html5lib"]) # pylint: disable=redundant-keyword-arg + self.read_html( + banklist_data, match=".*Water.*", flavor=["lxml", "html5lib"] + ) # pylint: disable=redundant-keyword-arg def test_to_html_timestamp(self): rng = date_range("2000-01-01", periods=10) @@ -1278,7 +1280,7 @@ def seek(self, offset): def seekable(self): return True - def __iter__(self) -> Iterator: # pylint: disable=non-iterator-returned + def __iter__(self) -> Iterator: # pylint: disable=non-iterator-returned # to fool `is_file_like`, should never end up here assert False diff --git a/pandas/tests/io/test_sql.py b/pandas/tests/io/test_sql.py index d96bcbd54f2ef..763bafa6bc8d3 100644 --- a/pandas/tests/io/test_sql.py +++ b/pandas/tests/io/test_sql.py @@ -1606,7 +1606,7 @@ class _TestSQLAlchemy(SQLAlchemyMixIn, PandasSQLTest): flavor: str @pytest.fixture(autouse=True, scope="class") - def setup_class(cls): # pylint: disable=no-self-argument + def setup_class(cls): # pylint: disable=no-self-argument cls.setup_import() cls.setup_driver() conn = cls.conn = cls.connect() diff --git a/pandas/tests/scalar/period/test_period.py b/pandas/tests/scalar/period/test_period.py index 3adee047bc648..107e332a1caa6 100644 --- a/pandas/tests/scalar/period/test_period.py +++ b/pandas/tests/scalar/period/test_period.py @@ -840,7 +840,7 @@ def test_period_deprecated_freq(self): assert isinstance(p1, Period) assert isinstance(p2, Period) - def _period_constructor(bound, offset): # pylint: disable=no-self-argument + def _period_constructor(bound, offset): # pylint: disable=no-self-argument return Period( year=bound.year, month=bound.month, diff --git a/pyproject.toml b/pyproject.toml index e8994d6c7edee..9b27413a9562e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -59,6 +59,7 @@ disable = [ "undefined-variable", "function-redefined", "c-extension-no-member", + "redundant-keyword-arg", ] [tool.pytest.ini_options] From fb4a15b1eda53523be963c5288a73061faa0c660 Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Tue, 27 Sep 2022 13:57:50 +0000 Subject: [PATCH 6/7] Cont --- pandas/core/internals/blocks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/core/internals/blocks.py b/pandas/core/internals/blocks.py index 3b76831d39490..0b479f4f7b94a 100644 --- a/pandas/core/internals/blocks.py +++ b/pandas/core/internals/blocks.py @@ -1981,7 +1981,7 @@ def _catch_deprecated_value_error(err: Exception) -> None: # IntervalDtype mismatched 'closed' pass elif "Timezones don't match" not in str(err): - raise ValueError("Timezones don't match") + raise # pylint: disable=misplaced-bare-raise class DatetimeLikeBlock(NDArrayBackedExtensionBlock): From 3dbd527f217cdbb8ef1c048260e4f09ce325cc25 Mon Sep 17 00:00:00 2001 From: MarcoGorelli <> Date: Thu, 29 Sep 2022 10:42:01 +0100 Subject: [PATCH 7/7] fixup --- pandas/core/arrays/base.py | 4 +-- pandas/core/internals/blocks.py | 2 +- .../tests/extension/decimal/test_decimal.py | 4 +-- pandas/tests/io/test_gcs.py | 2 +- pandas/tests/io/test_html.py | 2 +- pandas/tests/io/test_sql.py | 2 +- pandas/tests/scalar/period/test_period.py | 2 +- pyproject.toml | 36 ++++++++++--------- 8 files changed, 27 insertions(+), 27 deletions(-) diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 09ffb39cb1651..77dfc82e640f2 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -93,9 +93,7 @@ if TYPE_CHECKING: - class ExtensionArraySupportsAnyAll( - "ExtensionArray" - ): # pylint: disable=inherit-non-class + class ExtensionArraySupportsAnyAll("ExtensionArray"): def any(self, *, skipna: bool = True) -> bool: pass diff --git a/pandas/core/internals/blocks.py b/pandas/core/internals/blocks.py index 0b479f4f7b94a..62d8d7e504b4a 100644 --- a/pandas/core/internals/blocks.py +++ b/pandas/core/internals/blocks.py @@ -1981,7 +1981,7 @@ def _catch_deprecated_value_error(err: Exception) -> None: # IntervalDtype mismatched 'closed' pass elif "Timezones don't match" not in str(err): - raise # pylint: disable=misplaced-bare-raise + raise class DatetimeLikeBlock(NDArrayBackedExtensionBlock): diff --git a/pandas/tests/extension/decimal/test_decimal.py b/pandas/tests/extension/decimal/test_decimal.py index 1742e0bf4e29a..c2e42ae2fe27e 100644 --- a/pandas/tests/extension/decimal/test_decimal.py +++ b/pandas/tests/extension/decimal/test_decimal.py @@ -284,9 +284,7 @@ def test_compare_array(self, data, comparison_op): class DecimalArrayWithoutFromSequence(DecimalArray): """Helper class for testing error handling in _from_sequence.""" - def _from_sequence( - cls, scalars, dtype=None, copy=False - ): # pylint: disable=no-self-argument + def _from_sequence(cls, scalars, dtype=None, copy=False): raise KeyError("For the test") diff --git a/pandas/tests/io/test_gcs.py b/pandas/tests/io/test_gcs.py index 92dfbea16444b..6907d8978e603 100644 --- a/pandas/tests/io/test_gcs.py +++ b/pandas/tests/io/test_gcs.py @@ -33,7 +33,7 @@ def gcs_buffer(monkeypatch): gcs_buffer.close = lambda: True class MockGCSFileSystem(AbstractFileSystem): - def open(*args, **kwargs): # pylint: disable=no-method-argument + def open(*args, **kwargs): gcs_buffer.seek(0) return gcs_buffer diff --git a/pandas/tests/io/test_html.py b/pandas/tests/io/test_html.py index 00ad0a400f285..9263bc142e585 100644 --- a/pandas/tests/io/test_html.py +++ b/pandas/tests/io/test_html.py @@ -1280,7 +1280,7 @@ def seek(self, offset): def seekable(self): return True - def __iter__(self) -> Iterator: # pylint: disable=non-iterator-returned + def __iter__(self) -> Iterator: # to fool `is_file_like`, should never end up here assert False diff --git a/pandas/tests/io/test_sql.py b/pandas/tests/io/test_sql.py index b039d78561e71..1bfb85f369415 100644 --- a/pandas/tests/io/test_sql.py +++ b/pandas/tests/io/test_sql.py @@ -1613,7 +1613,7 @@ class _TestSQLAlchemy(SQLAlchemyMixIn, PandasSQLTest): flavor: str @pytest.fixture(autouse=True, scope="class") - def setup_class(cls): # pylint: disable=no-self-argument + def setup_class(cls): cls.setup_import() cls.setup_driver() conn = cls.conn = cls.connect() diff --git a/pandas/tests/scalar/period/test_period.py b/pandas/tests/scalar/period/test_period.py index 107e332a1caa6..c9e28f8249c1b 100644 --- a/pandas/tests/scalar/period/test_period.py +++ b/pandas/tests/scalar/period/test_period.py @@ -840,7 +840,7 @@ def test_period_deprecated_freq(self): assert isinstance(p1, Period) assert isinstance(p2, Period) - def _period_constructor(bound, offset): # pylint: disable=no-self-argument + def _period_constructor(bound, offset): return Period( year=bound.year, month=bound.month, diff --git a/pyproject.toml b/pyproject.toml index 9b27413a9562e..3e87d237170aa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -37,29 +37,33 @@ disable = [ "C", "R", "W", + "abstract-class-instantiated", + "access-member-before-definition", + "bad-super-call", + "c-extension-no-member", + "function-redefined", "import-error", + "inherit-non-class", + "invalid-repr-returned", + "invalid-unary-operand-type", + "misplaced-bare-raise", "no-member", + "no-method-argument", "no-name-in-module", - "unsubscriptable-object", - "invalid-unary-operand-type", - "unexpected-keyword-arg", - "not-an-iterable", - "unsupported-assignment-operation", - "unsupported-membership-test", + "no-self-argument", "no-value-for-parameter", - "unpacking-non-sequence", - "bad-super-call", - "access-member-before-definition", - "used-before-assignment", - "too-many-fucntion-args", - "abstract-class-instantiated", + "non-iterator-returned", + "not-an-iterable", "not-callable", + "redundant-keyword-arg", "too-many-function-args", - "invalid-repr-returned", "undefined-variable", - "function-redefined", - "c-extension-no-member", - "redundant-keyword-arg", + "unexpected-keyword-arg", + "unpacking-non-sequence", + "unsubscriptable-object", + "unsupported-assignment-operation", + "unsupported-membership-test", + "used-before-assignment", ] [tool.pytest.ini_options]