From 6689f39c45cbda786c20f4678a05239e386e7617 Mon Sep 17 00:00:00 2001 From: Kostya Farber Date: Fri, 30 Sep 2022 20:39:32 +0100 Subject: [PATCH 1/4] fix pylint for non-class-inherit and add pre-commit changes --- pandas/core/arrays/base.py | 4 +++- pyproject.toml | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 3e1508a1ec071..2b5c9f658cacc 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -93,7 +93,9 @@ 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/pyproject.toml b/pyproject.toml index 3e87d237170aa..5d66f64f68bf5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -43,7 +43,6 @@ disable = [ "c-extension-no-member", "function-redefined", "import-error", - "inherit-non-class", "invalid-repr-returned", "invalid-unary-operand-type", "misplaced-bare-raise", From 22d8874b9c6ea1f2a273ff4e126ba089357e4c83 Mon Sep 17 00:00:00 2001 From: Kostya Farber Date: Sat, 1 Oct 2022 08:59:06 +0100 Subject: [PATCH 2/4] move ExtensionArraySupportsAnyAll to below ExtensionArray --- pandas/core/arrays/base.py | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 2b5c9f658cacc..66e0265f66d1e 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -91,23 +91,6 @@ nargsort, ) -if TYPE_CHECKING: - - class ExtensionArraySupportsAnyAll( - "ExtensionArray" - ): # pylint: disable=inherit-non-class - def any(self, *, skipna: bool = True) -> bool: - pass - - def all(self, *, skipna: bool = True) -> bool: - pass - - from pandas._typing import ( - NumpySorter, - NumpyValueArrayLike, - ) - - _extension_array_shared_docs: dict[str, str] = {} ExtensionArrayT = TypeVar("ExtensionArrayT", bound="ExtensionArray") @@ -534,6 +517,7 @@ def dtype(self) -> ExtensionDtype: @property def shape(self) -> Shape: + """ Return a tuple of the array dimensions. """ @@ -1688,6 +1672,21 @@ def __array_ufunc__(self, ufunc: np.ufunc, method: str, *inputs, **kwargs): return arraylike.default_array_ufunc(self, ufunc, method, *inputs, **kwargs) +if TYPE_CHECKING: + + class ExtensionArraySupportsAnyAll(ExtensionArray): + def any(self, *, skipna: bool = True) -> bool: + pass + + def all(self, *, skipna: bool = True) -> bool: + pass + + from pandas._typing import ( + NumpySorter, + NumpyValueArrayLike, + ) + + class ExtensionOpsMixin: """ A base class for linking the operators to their dunder names. From ce8d29b74c93b853d3eb30a64af628a14372f0d7 Mon Sep 17 00:00:00 2001 From: Kostya Farber Date: Sat, 1 Oct 2022 10:19:21 +0100 Subject: [PATCH 3/4] move if TYPE_CHECKING back up to line 94 --- pandas/core/arrays/base.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 66e0265f66d1e..927752e6b97c4 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -91,6 +91,13 @@ nargsort, ) +if TYPE_CHECKING: + + from pandas._typing import ( + NumpySorter, + NumpyValueArrayLike, + ) + _extension_array_shared_docs: dict[str, str] = {} ExtensionArrayT = TypeVar("ExtensionArrayT", bound="ExtensionArray") @@ -1672,19 +1679,12 @@ def __array_ufunc__(self, ufunc: np.ufunc, method: str, *inputs, **kwargs): return arraylike.default_array_ufunc(self, ufunc, method, *inputs, **kwargs) -if TYPE_CHECKING: - - class ExtensionArraySupportsAnyAll(ExtensionArray): - def any(self, *, skipna: bool = True) -> bool: - pass +class ExtensionArraySupportsAnyAll(ExtensionArray): + def any(self, *, skipna: bool = True) -> bool: + pass - def all(self, *, skipna: bool = True) -> bool: - pass - - from pandas._typing import ( - NumpySorter, - NumpyValueArrayLike, - ) + def all(self, *, skipna: bool = True) -> bool: + pass class ExtensionOpsMixin: From b74443f42c98801e90fa5b788894c6b622292796 Mon Sep 17 00:00:00 2001 From: Kostya Farber Date: Sat, 1 Oct 2022 10:24:29 +0100 Subject: [PATCH 4/4] remove erroneous space --- pandas/core/arrays/base.py | 1 - 1 file changed, 1 deletion(-) diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 927752e6b97c4..df80f30e3b956 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -524,7 +524,6 @@ def dtype(self) -> ExtensionDtype: @property def shape(self) -> Shape: - """ Return a tuple of the array dimensions. """