From 629a3c29ff586801364727fbe1e91360771d9b78 Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 10 Jan 2021 18:41:29 +0100 Subject: [PATCH 1/8] Pull is_numpy_dev up --- pandas/__init__.py | 2 +- pandas/compat/__init__.py | 18 ++++++++++++++++++ pandas/tests/arithmetic/test_datetime64.py | 2 +- pandas/tests/arrays/test_datetimelike.py | 2 +- pandas/tests/base/test_value_counts.py | 2 +- pandas/tests/computation/test_eval.py | 3 +-- pandas/tests/frame/methods/test_sample.py | 2 +- pandas/tests/indexes/multi/test_analytics.py | 2 +- .../tests/indexes/period/test_searchsorted.py | 2 +- pandas/tests/indexes/test_base.py | 3 +-- pandas/tests/indexes/test_numpy_compat.py | 2 +- pandas/tests/indexing/test_loc.py | 2 +- pandas/tests/io/parser/test_parse_dates.py | 3 +-- pandas/tests/plotting/test_converter.py | 3 +-- pandas/tests/scalar/period/test_period.py | 2 +- .../tests/scalar/timestamp/test_timestamp.py | 2 +- pandas/tests/test_algos.py | 3 +-- pandas/tests/test_common.py | 2 +- .../tests/tseries/offsets/test_business_day.py | 2 +- pandas/tests/tseries/offsets/test_offsets.py | 2 +- pandas/tests/tslibs/test_array_to_datetime.py | 2 +- 21 files changed, 38 insertions(+), 25 deletions(-) diff --git a/pandas/__init__.py b/pandas/__init__.py index cc5d835a52833..2b64100075987 100644 --- a/pandas/__init__.py +++ b/pandas/__init__.py @@ -19,7 +19,7 @@ del hard_dependencies, dependency, missing_dependencies # numpy compat -from pandas.compat.numpy import ( +from pandas.compat import ( np_version_under1p17 as _np_version_under1p17, np_version_under1p18 as _np_version_under1p18, is_numpy_dev as _is_numpy_dev, diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index 2ac9b9e2c875c..3eabbc693c2fd 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -12,6 +12,14 @@ import warnings from pandas._typing import F +from pandas.compat.numpy import ( + function, + is_numpy_dev, + np_array_datetime64_compat, + np_datetime64_compat, + np_version_under1p17, + np_version_under1p18, +) PY38 = sys.version_info >= (3, 8) PY39 = sys.version_info >= (3, 9) @@ -118,3 +126,13 @@ def get_lzma_file(lzma): "might be required to solve this issue." ) return lzma.LZMAFile + + +__all__ = [ + "is_numpy_dev", + "function", + "np_array_datetime64_compat", + "np_datetime64_compat", + "np_version_under1p17", + "np_version_under1p18", +] diff --git a/pandas/tests/arithmetic/test_datetime64.py b/pandas/tests/arithmetic/test_datetime64.py index a3d30cf0bc3c6..b2d88b3556388 100644 --- a/pandas/tests/arithmetic/test_datetime64.py +++ b/pandas/tests/arithmetic/test_datetime64.py @@ -12,7 +12,7 @@ from pandas._libs.tslibs.conversion import localize_pydatetime from pandas._libs.tslibs.offsets import shift_months -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import np_datetime64_compat from pandas.errors import PerformanceWarning import pandas as pd diff --git a/pandas/tests/arrays/test_datetimelike.py b/pandas/tests/arrays/test_datetimelike.py index 81bcff410a4d3..d13898c868482 100644 --- a/pandas/tests/arrays/test_datetimelike.py +++ b/pandas/tests/arrays/test_datetimelike.py @@ -5,7 +5,7 @@ import pytest from pandas._libs import NaT, OutOfBoundsDatetime, Timestamp -from pandas.compat.numpy import np_version_under1p18 +from pandas.compat import np_version_under1p18 import pandas as pd import pandas._testing as tm diff --git a/pandas/tests/base/test_value_counts.py b/pandas/tests/base/test_value_counts.py index e9713e38f9874..4151781f0dbf5 100644 --- a/pandas/tests/base/test_value_counts.py +++ b/pandas/tests/base/test_value_counts.py @@ -6,7 +6,7 @@ import pytest from pandas._libs import iNaT -from pandas.compat.numpy import np_array_datetime64_compat +from pandas.compat import np_array_datetime64_compat from pandas.core.dtypes.common import needs_i8_conversion diff --git a/pandas/tests/computation/test_eval.py b/pandas/tests/computation/test_eval.py index 3e16ec134db46..37ee61417eeab 100644 --- a/pandas/tests/computation/test_eval.py +++ b/pandas/tests/computation/test_eval.py @@ -8,8 +8,7 @@ import numpy as np import pytest -from pandas.compat import is_platform_windows -from pandas.compat.numpy import np_version_under1p17 +from pandas.compat import is_platform_windows, np_version_under1p17 from pandas.errors import PerformanceWarning import pandas.util._test_decorators as td diff --git a/pandas/tests/frame/methods/test_sample.py b/pandas/tests/frame/methods/test_sample.py index 6c1c352d8286c..e17c14940746d 100644 --- a/pandas/tests/frame/methods/test_sample.py +++ b/pandas/tests/frame/methods/test_sample.py @@ -1,7 +1,7 @@ import numpy as np import pytest -from pandas.compat.numpy import np_version_under1p17 +from pandas.compat import np_version_under1p17 from pandas import DataFrame, Series import pandas._testing as tm diff --git a/pandas/tests/indexes/multi/test_analytics.py b/pandas/tests/indexes/multi/test_analytics.py index 25e2f6a3777d1..e842fafda0327 100644 --- a/pandas/tests/indexes/multi/test_analytics.py +++ b/pandas/tests/indexes/multi/test_analytics.py @@ -1,7 +1,7 @@ import numpy as np import pytest -from pandas.compat.numpy import np_version_under1p17 +from pandas.compat import np_version_under1p17 import pandas as pd from pandas import Index, MultiIndex, date_range, period_range diff --git a/pandas/tests/indexes/period/test_searchsorted.py b/pandas/tests/indexes/period/test_searchsorted.py index 6ffdbbfcd2ce6..5e1a3b899755d 100644 --- a/pandas/tests/indexes/period/test_searchsorted.py +++ b/pandas/tests/indexes/period/test_searchsorted.py @@ -2,7 +2,7 @@ import pytest from pandas._libs.tslibs import IncompatibleFrequency -from pandas.compat.numpy import np_version_under1p18 +from pandas.compat import np_version_under1p18 from pandas import NaT, Period, PeriodIndex, Series, array import pandas._testing as tm diff --git a/pandas/tests/indexes/test_base.py b/pandas/tests/indexes/test_base.py index 1eca7f7a5d261..ad15bfa335acc 100644 --- a/pandas/tests/indexes/test_base.py +++ b/pandas/tests/indexes/test_base.py @@ -9,8 +9,7 @@ import pytest from pandas._libs.tslib import Timestamp -from pandas.compat import IS64 -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import IS64, np_datetime64_compat from pandas.util._test_decorators import async_mark import pandas as pd diff --git a/pandas/tests/indexes/test_numpy_compat.py b/pandas/tests/indexes/test_numpy_compat.py index 47f7b7f37cf48..f7f6456f736c0 100644 --- a/pandas/tests/indexes/test_numpy_compat.py +++ b/pandas/tests/indexes/test_numpy_compat.py @@ -1,7 +1,7 @@ import numpy as np import pytest -from pandas.compat.numpy import np_version_under1p17, np_version_under1p18 +from pandas.compat import np_version_under1p17, np_version_under1p18 from pandas import ( DatetimeIndex, diff --git a/pandas/tests/indexing/test_loc.py b/pandas/tests/indexing/test_loc.py index 7c73917e44b22..2dca45d549ce3 100644 --- a/pandas/tests/indexing/test_loc.py +++ b/pandas/tests/indexing/test_loc.py @@ -7,7 +7,7 @@ import numpy as np import pytest -from pandas.compat.numpy import is_numpy_dev +from pandas.compat import is_numpy_dev import pandas.util._test_decorators as td import pandas as pd diff --git a/pandas/tests/io/parser/test_parse_dates.py b/pandas/tests/io/parser/test_parse_dates.py index c0b29d5019675..eb640e324e676 100644 --- a/pandas/tests/io/parser/test_parse_dates.py +++ b/pandas/tests/io/parser/test_parse_dates.py @@ -15,8 +15,7 @@ from pandas._libs.tslib import Timestamp from pandas._libs.tslibs import parsing from pandas._libs.tslibs.parsing import parse_datetime_string -from pandas.compat import is_platform_windows -from pandas.compat.numpy import np_array_datetime64_compat +from pandas.compat import is_platform_windows, np_array_datetime64_compat import pandas as pd from pandas import DataFrame, DatetimeIndex, Index, MultiIndex, Series diff --git a/pandas/tests/plotting/test_converter.py b/pandas/tests/plotting/test_converter.py index 38e67a0e55a79..4f332bfbac397 100644 --- a/pandas/tests/plotting/test_converter.py +++ b/pandas/tests/plotting/test_converter.py @@ -7,8 +7,7 @@ import pandas._config.config as cf -from pandas.compat import is_platform_windows -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import is_platform_windows, np_datetime64_compat import pandas.util._test_decorators as td from pandas import Index, Period, Series, Timestamp, date_range diff --git a/pandas/tests/scalar/period/test_period.py b/pandas/tests/scalar/period/test_period.py index 9b87e32510b41..55787f73d7a2f 100644 --- a/pandas/tests/scalar/period/test_period.py +++ b/pandas/tests/scalar/period/test_period.py @@ -10,7 +10,7 @@ from pandas._libs.tslibs.parsing import DateParseError from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG, IncompatibleFrequency from pandas._libs.tslibs.timezones import dateutil_gettz, maybe_get_tz -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import np_datetime64_compat import pandas as pd from pandas import NaT, Period, Timedelta, Timestamp, offsets diff --git a/pandas/tests/scalar/timestamp/test_timestamp.py b/pandas/tests/scalar/timestamp/test_timestamp.py index 36d1b0911c909..f2a95044dec61 100644 --- a/pandas/tests/scalar/timestamp/test_timestamp.py +++ b/pandas/tests/scalar/timestamp/test_timestamp.py @@ -12,7 +12,7 @@ from pytz import timezone, utc from pandas._libs.tslibs.timezones import dateutil_gettz as gettz, get_timezone -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import np_datetime64_compat import pandas.util._test_decorators as td from pandas import NaT, Timedelta, Timestamp diff --git a/pandas/tests/test_algos.py b/pandas/tests/test_algos.py index 93900fa223966..fb982c02acd99 100644 --- a/pandas/tests/test_algos.py +++ b/pandas/tests/test_algos.py @@ -6,8 +6,7 @@ import pytest from pandas._libs import algos as libalgos, hashtable as ht -from pandas.compat import IS64 -from pandas.compat.numpy import np_array_datetime64_compat +from pandas.compat import IS64, np_array_datetime64_compat import pandas.util._test_decorators as td from pandas.core.dtypes.common import ( diff --git a/pandas/tests/test_common.py b/pandas/tests/test_common.py index 8e1186b790e3d..696395e50dd02 100644 --- a/pandas/tests/test_common.py +++ b/pandas/tests/test_common.py @@ -6,7 +6,7 @@ import numpy as np import pytest -from pandas.compat.numpy import np_version_under1p17 +from pandas.compat import np_version_under1p17 import pandas as pd from pandas import Series diff --git a/pandas/tests/tseries/offsets/test_business_day.py b/pandas/tests/tseries/offsets/test_business_day.py index d3c4fb50e2ab0..9b3ded9844e24 100644 --- a/pandas/tests/tseries/offsets/test_business_day.py +++ b/pandas/tests/tseries/offsets/test_business_day.py @@ -7,7 +7,7 @@ import pytest from pandas._libs.tslibs.offsets import ApplyTypeError, BDay, BMonthEnd, CDay -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import np_datetime64_compat from pandas import DatetimeIndex, _testing as tm, read_pickle from pandas.tests.tseries.offsets.common import ( diff --git a/pandas/tests/tseries/offsets/test_offsets.py b/pandas/tests/tseries/offsets/test_offsets.py index b65f8084e4bec..8d718d055f02d 100644 --- a/pandas/tests/tseries/offsets/test_offsets.py +++ b/pandas/tests/tseries/offsets/test_offsets.py @@ -11,7 +11,7 @@ import pandas._libs.tslibs.offsets as liboffsets from pandas._libs.tslibs.offsets import _get_offset, _offset_map from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG -from pandas.compat.numpy import np_datetime64_compat +from pandas.compat import np_datetime64_compat from pandas.errors import PerformanceWarning from pandas import DatetimeIndex diff --git a/pandas/tests/tslibs/test_array_to_datetime.py b/pandas/tests/tslibs/test_array_to_datetime.py index e3f586d391fc6..24fdb3840bf52 100644 --- a/pandas/tests/tslibs/test_array_to_datetime.py +++ b/pandas/tests/tslibs/test_array_to_datetime.py @@ -6,7 +6,7 @@ import pytz from pandas._libs import iNaT, tslib -from pandas.compat.numpy import np_array_datetime64_compat +from pandas.compat import np_array_datetime64_compat from pandas import Timestamp import pandas._testing as tm From dde0ef64ae04867a08cbcadd717ca045d2a7ef4f Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 10 Jan 2021 18:43:22 +0100 Subject: [PATCH 2/8] Remove numpy module --- pandas/tests/scalar/timedelta/test_arithmetic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/tests/scalar/timedelta/test_arithmetic.py b/pandas/tests/scalar/timedelta/test_arithmetic.py index 7aefd42ada322..41671343c2800 100644 --- a/pandas/tests/scalar/timedelta/test_arithmetic.py +++ b/pandas/tests/scalar/timedelta/test_arithmetic.py @@ -7,7 +7,7 @@ import numpy as np import pytest -from pandas.compat.numpy import is_numpy_dev +from pandas.compat import is_numpy_dev import pandas as pd from pandas import NaT, Timedelta, Timestamp, compat, offsets From cb8124e592a0e1e17fbbee6028546f186e0f8ce2 Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 10 Jan 2021 18:45:23 +0100 Subject: [PATCH 3/8] Move funtion imports --- pandas/core/array_algos/masked_reductions.py | 2 +- pandas/core/arrays/_mixins.py | 2 +- pandas/core/arrays/base.py | 3 +-- pandas/core/arrays/boolean.py | 2 +- pandas/core/arrays/categorical.py | 2 +- pandas/core/arrays/datetimelike.py | 2 +- pandas/core/arrays/floating.py | 2 +- pandas/core/arrays/integer.py | 2 +- pandas/core/arrays/interval.py | 2 +- pandas/core/arrays/numpy_.py | 2 +- pandas/core/arrays/sparse/array.py | 2 +- pandas/core/arrays/string_.py | 2 +- pandas/core/arrays/timedeltas.py | 2 +- pandas/core/base.py | 3 +-- pandas/core/common.py | 2 +- pandas/core/frame.py | 2 +- pandas/core/generic.py | 2 +- pandas/core/groupby/groupby.py | 2 +- pandas/core/indexes/base.py | 2 +- pandas/core/indexes/datetimelike.py | 2 +- pandas/core/indexes/extension.py | 2 +- pandas/core/indexes/multi.py | 2 +- pandas/core/indexes/range.py | 2 +- pandas/core/resample.py | 2 +- pandas/core/series.py | 2 +- pandas/core/window/ewm.py | 2 +- pandas/core/window/expanding.py | 2 +- pandas/core/window/rolling.py | 2 +- pandas/tests/extension/base/dtype.py | 2 +- 29 files changed, 29 insertions(+), 31 deletions(-) diff --git a/pandas/core/array_algos/masked_reductions.py b/pandas/core/array_algos/masked_reductions.py index ec0f2c61e0a29..553cdc557ec95 100644 --- a/pandas/core/array_algos/masked_reductions.py +++ b/pandas/core/array_algos/masked_reductions.py @@ -8,7 +8,7 @@ import numpy as np from pandas._libs import missing as libmissing -from pandas.compat.numpy import np_version_under1p17 +from pandas.compat import np_version_under1p17 from pandas.core.nanops import check_below_min_count diff --git a/pandas/core/arrays/_mixins.py b/pandas/core/arrays/_mixins.py index 62c594d73a227..e611a2c412e1f 100644 --- a/pandas/core/arrays/_mixins.py +++ b/pandas/core/arrays/_mixins.py @@ -7,7 +7,7 @@ from pandas._libs import lib from pandas._typing import Shape -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly, doc from pandas.util._validators import validate_fillna_kwargs diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 9a8b37e0785e0..613bf3d7ac11f 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -26,8 +26,7 @@ from pandas._libs import lib from pandas._typing import ArrayLike, Dtype, Shape -from pandas.compat import set_function_name -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv, set_function_name from pandas.errors import AbstractMethodError from pandas.util._decorators import Appender, Substitution from pandas.util._validators import validate_fillna_kwargs diff --git a/pandas/core/arrays/boolean.py b/pandas/core/arrays/boolean.py index 2bc908186f7f4..26265c46236cc 100644 --- a/pandas/core/arrays/boolean.py +++ b/pandas/core/arrays/boolean.py @@ -6,7 +6,7 @@ from pandas._libs import lib, missing as libmissing from pandas._typing import ArrayLike, Dtype -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.core.dtypes.common import ( is_bool_dtype, diff --git a/pandas/core/arrays/categorical.py b/pandas/core/arrays/categorical.py index fe5db3ec5fd8c..0aa5ffe8eb3d8 100644 --- a/pandas/core/arrays/categorical.py +++ b/pandas/core/arrays/categorical.py @@ -23,7 +23,7 @@ from pandas._libs import NaT, algos as libalgos, hashtable as htable from pandas._libs.lib import no_default from pandas._typing import ArrayLike, Dtype, NpDtype, Ordered, Scalar -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import cache_readonly, deprecate_kwarg from pandas.util._validators import validate_bool_kwarg, validate_fillna_kwargs diff --git a/pandas/core/arrays/datetimelike.py b/pandas/core/arrays/datetimelike.py index b31bc0934fe60..a25bb90db773a 100644 --- a/pandas/core/arrays/datetimelike.py +++ b/pandas/core/arrays/datetimelike.py @@ -37,7 +37,7 @@ round_nsint64, ) from pandas._typing import DatetimeLikeScalar, Dtype, DtypeObj, NpDtype -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import AbstractMethodError, NullFrequencyError, PerformanceWarning from pandas.util._decorators import Appender, Substitution, cache_readonly diff --git a/pandas/core/arrays/floating.py b/pandas/core/arrays/floating.py index 1ac23d7893fbf..016aa5e89294c 100644 --- a/pandas/core/arrays/floating.py +++ b/pandas/core/arrays/floating.py @@ -6,7 +6,7 @@ from pandas._libs import lib, missing as libmissing from pandas._typing import ArrayLike, DtypeObj -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import cache_readonly from pandas.core.dtypes.cast import astype_nansafe diff --git a/pandas/core/arrays/integer.py b/pandas/core/arrays/integer.py index f8378fb7d1500..61afe9ad31eab 100644 --- a/pandas/core/arrays/integer.py +++ b/pandas/core/arrays/integer.py @@ -6,7 +6,7 @@ from pandas._libs import iNaT, lib, missing as libmissing from pandas._typing import ArrayLike, Dtype, DtypeObj -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import cache_readonly from pandas.core.dtypes.base import ExtensionDtype, register_extension_dtype diff --git a/pandas/core/arrays/interval.py b/pandas/core/arrays/interval.py index 284305b588e4e..3f8b9416f3b28 100644 --- a/pandas/core/arrays/interval.py +++ b/pandas/core/arrays/interval.py @@ -15,7 +15,7 @@ ) from pandas._libs.missing import NA from pandas._typing import ArrayLike, Dtype, NpDtype -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import Appender from pandas.core.dtypes.cast import maybe_convert_platform diff --git a/pandas/core/arrays/numpy_.py b/pandas/core/arrays/numpy_.py index 9ed6306e5b9bc..62105eb18d302 100644 --- a/pandas/core/arrays/numpy_.py +++ b/pandas/core/arrays/numpy_.py @@ -6,7 +6,7 @@ from pandas._libs import lib from pandas._typing import Dtype, NpDtype, Scalar -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.core.dtypes.dtypes import ExtensionDtype from pandas.core.dtypes.missing import isna diff --git a/pandas/core/arrays/sparse/array.py b/pandas/core/arrays/sparse/array.py index b4d4fd5cc7106..6bb5cd835020f 100644 --- a/pandas/core/arrays/sparse/array.py +++ b/pandas/core/arrays/sparse/array.py @@ -14,7 +14,7 @@ from pandas._libs.sparse import BlockIndex, IntIndex, SparseIndex from pandas._libs.tslibs import NaT from pandas._typing import Dtype, NpDtype, Scalar -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import PerformanceWarning from pandas.core.dtypes.cast import ( diff --git a/pandas/core/arrays/string_.py b/pandas/core/arrays/string_.py index 3d0ac3380ec39..c6dcb4263319b 100644 --- a/pandas/core/arrays/string_.py +++ b/pandas/core/arrays/string_.py @@ -4,7 +4,7 @@ from pandas._libs import lib, missing as libmissing from pandas._typing import Dtype, Scalar -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.core.dtypes.base import ExtensionDtype, register_extension_dtype from pandas.core.dtypes.common import ( diff --git a/pandas/core/arrays/timedeltas.py b/pandas/core/arrays/timedeltas.py index 62d5a4d30563b..e2a3378056b04 100644 --- a/pandas/core/arrays/timedeltas.py +++ b/pandas/core/arrays/timedeltas.py @@ -23,7 +23,7 @@ parse_timedelta_unit, ) from pandas._typing import NpDtype -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.core.dtypes.cast import astype_td64_unit_conversion from pandas.core.dtypes.common import ( diff --git a/pandas/core/base.py b/pandas/core/base.py index b603ba31f51dd..da9cd217047d4 100644 --- a/pandas/core/base.py +++ b/pandas/core/base.py @@ -20,8 +20,7 @@ import pandas._libs.lib as lib from pandas._typing import Dtype, DtypeObj, IndexLabel -from pandas.compat import PYPY -from pandas.compat.numpy import function as nv +from pandas.compat import PYPY, function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly, doc diff --git a/pandas/core/common.py b/pandas/core/common.py index a6514b5167460..c05987481b5f6 100644 --- a/pandas/core/common.py +++ b/pandas/core/common.py @@ -15,7 +15,7 @@ from pandas._libs import lib from pandas._typing import AnyArrayLike, NpDtype, Scalar, T -from pandas.compat.numpy import np_version_under1p18 +from pandas.compat import np_version_under1p18 from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike from pandas.core.dtypes.common import ( diff --git a/pandas/core/frame.py b/pandas/core/frame.py index e65e9302dd4d5..dd2dca6a222b0 100644 --- a/pandas/core/frame.py +++ b/pandas/core/frame.py @@ -69,8 +69,8 @@ Suffixes, ValueKeyFunc, ) +from pandas.compat import function as nv from pandas.compat._optional import import_optional_dependency -from pandas.compat.numpy import function as nv from pandas.util._decorators import ( Appender, Substitution, diff --git a/pandas/core/generic.py b/pandas/core/generic.py index 2f4340c17c5a7..c3ee8830339bb 100644 --- a/pandas/core/generic.py +++ b/pandas/core/generic.py @@ -54,8 +54,8 @@ ValueKeyFunc, final, ) +from pandas.compat import function as nv from pandas.compat._optional import import_optional_dependency -from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError, InvalidIndexError from pandas.util._decorators import doc, rewrite_axis_style_signature from pandas.util._validators import ( diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index aef4c036abc65..061bf6d471b05 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -47,7 +47,7 @@ class providing the base-class of operations. Scalar, final, ) -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import Appender, Substitution, cache_readonly, doc diff --git a/pandas/core/indexes/base.py b/pandas/core/indexes/base.py index a2e9737f305ba..3b9a8dcd40d5b 100644 --- a/pandas/core/indexes/base.py +++ b/pandas/core/indexes/base.py @@ -29,7 +29,7 @@ from pandas._libs.tslibs import IncompatibleFrequency, OutOfBoundsDatetime, Timestamp from pandas._libs.tslibs.timezones import tz_compare from pandas._typing import AnyArrayLike, ArrayLike, Dtype, DtypeObj, Label, Shape, final -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import DuplicateLabelError, InvalidIndexError from pandas.util._decorators import Appender, cache_readonly, doc diff --git a/pandas/core/indexes/datetimelike.py b/pandas/core/indexes/datetimelike.py index 7d214829b1871..4c29b3448dbdc 100644 --- a/pandas/core/indexes/datetimelike.py +++ b/pandas/core/indexes/datetimelike.py @@ -9,7 +9,7 @@ from pandas._libs import NaT, Timedelta, iNaT, join as libjoin, lib from pandas._libs.tslibs import BaseOffset, Resolution, Tick from pandas._typing import Callable, Label -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import Appender, cache_readonly, doc from pandas.core.dtypes.common import ( diff --git a/pandas/core/indexes/extension.py b/pandas/core/indexes/extension.py index f597175bf2ae2..048c1a02addf8 100644 --- a/pandas/core/indexes/extension.py +++ b/pandas/core/indexes/extension.py @@ -7,7 +7,7 @@ from pandas._libs import lib from pandas._typing import Label -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly, doc diff --git a/pandas/core/indexes/multi.py b/pandas/core/indexes/multi.py index f058645c4abda..63423af48d20b 100644 --- a/pandas/core/indexes/multi.py +++ b/pandas/core/indexes/multi.py @@ -21,7 +21,7 @@ from pandas._libs import algos as libalgos, index as libindex, lib from pandas._libs.hashtable import duplicated_int64 from pandas._typing import AnyArrayLike, DtypeObj, Label, Scalar, Shape -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import InvalidIndexError, PerformanceWarning, UnsortedIndexError from pandas.util._decorators import Appender, cache_readonly, doc diff --git a/pandas/core/indexes/range.py b/pandas/core/indexes/range.py index 4256ad93695e9..89945b406c6c5 100644 --- a/pandas/core/indexes/range.py +++ b/pandas/core/indexes/range.py @@ -9,7 +9,7 @@ from pandas._libs import index as libindex from pandas._libs.lib import no_default from pandas._typing import Dtype, Label -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import cache_readonly, doc from pandas.core.dtypes.common import ( diff --git a/pandas/core/resample.py b/pandas/core/resample.py index e432ec6cb54a2..db29f2dcf2311 100644 --- a/pandas/core/resample.py +++ b/pandas/core/resample.py @@ -15,7 +15,7 @@ to_offset, ) from pandas._typing import TimedeltaConvertibleTypes, TimestampConvertibleTypes -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import Appender, Substitution, doc diff --git a/pandas/core/series.py b/pandas/core/series.py index 6586ac8b01840..332d0a6f1bb2b 100644 --- a/pandas/core/series.py +++ b/pandas/core/series.py @@ -37,7 +37,7 @@ StorageOptions, ValueKeyFunc, ) -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.errors import InvalidIndexError from pandas.util._decorators import Appender, Substitution, doc from pandas.util._validators import validate_bool_kwarg, validate_percentile diff --git a/pandas/core/window/ewm.py b/pandas/core/window/ewm.py index 983f7220c2fb9..7ffef6506e6ac 100644 --- a/pandas/core/window/ewm.py +++ b/pandas/core/window/ewm.py @@ -8,7 +8,7 @@ from pandas._libs.tslibs import Timedelta import pandas._libs.window.aggregations as window_aggregations from pandas._typing import FrameOrSeries, TimedeltaConvertibleTypes -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import Appender, Substitution, doc from pandas.core.dtypes.common import is_datetime64_ns_dtype diff --git a/pandas/core/window/expanding.py b/pandas/core/window/expanding.py index 1f0c16fb5aa8f..35934c54bd634 100644 --- a/pandas/core/window/expanding.py +++ b/pandas/core/window/expanding.py @@ -4,7 +4,7 @@ import numpy as np from pandas._typing import FrameOrSeries -from pandas.compat.numpy import function as nv +from pandas.compat import function as nv from pandas.util._decorators import Appender, Substitution, doc from pandas.core.window.common import _doc_template, _shared_docs diff --git a/pandas/core/window/rolling.py b/pandas/core/window/rolling.py index 29e7050639a2d..ec245f62d675b 100644 --- a/pandas/core/window/rolling.py +++ b/pandas/core/window/rolling.py @@ -27,8 +27,8 @@ from pandas._libs.tslibs import BaseOffset, to_offset import pandas._libs.window.aggregations as window_aggregations from pandas._typing import ArrayLike, Axis, FrameOrSeries, FrameOrSeriesUnion +from pandas.compat import function as nv from pandas.compat._optional import import_optional_dependency -from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, Substitution, doc from pandas.core.dtypes.common import ( diff --git a/pandas/tests/extension/base/dtype.py b/pandas/tests/extension/base/dtype.py index 154fcdc38826d..edf91c4bc8461 100644 --- a/pandas/tests/extension/base/dtype.py +++ b/pandas/tests/extension/base/dtype.py @@ -73,7 +73,7 @@ def test_check_dtype(self, data): with warnings.catch_warnings(): warnings.simplefilter("ignore", DeprecationWarning) result = df.dtypes == str(dtype) - # NumPy>=1.20.0, but not pandas.compat.numpy till there + # NumPy>=1.20.0, but not pandas.compat till there # is a wheel available with this change. try: new_numpy_behavior = np.dtype("int64") != "Int64" From 8a9848144cff387269aa9b0fdfa3950ac2f5cec0 Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 10 Jan 2021 21:15:14 +0100 Subject: [PATCH 4/8] Revert "Move funtion imports" This reverts commit cb8124e5 --- pandas/core/array_algos/masked_reductions.py | 2 +- pandas/core/arrays/_mixins.py | 2 +- pandas/core/arrays/base.py | 3 ++- pandas/core/arrays/boolean.py | 2 +- pandas/core/arrays/categorical.py | 2 +- pandas/core/arrays/datetimelike.py | 2 +- pandas/core/arrays/floating.py | 2 +- pandas/core/arrays/integer.py | 2 +- pandas/core/arrays/interval.py | 2 +- pandas/core/arrays/numpy_.py | 2 +- pandas/core/arrays/sparse/array.py | 2 +- pandas/core/arrays/string_.py | 2 +- pandas/core/arrays/timedeltas.py | 2 +- pandas/core/base.py | 3 ++- pandas/core/common.py | 2 +- pandas/core/frame.py | 2 +- pandas/core/generic.py | 2 +- pandas/core/groupby/groupby.py | 2 +- pandas/core/indexes/base.py | 2 +- pandas/core/indexes/datetimelike.py | 2 +- pandas/core/indexes/extension.py | 2 +- pandas/core/indexes/multi.py | 2 +- pandas/core/indexes/range.py | 2 +- pandas/core/resample.py | 2 +- pandas/core/series.py | 2 +- pandas/core/window/ewm.py | 2 +- pandas/core/window/expanding.py | 2 +- 27 files changed, 29 insertions(+), 27 deletions(-) diff --git a/pandas/core/array_algos/masked_reductions.py b/pandas/core/array_algos/masked_reductions.py index 553cdc557ec95..ec0f2c61e0a29 100644 --- a/pandas/core/array_algos/masked_reductions.py +++ b/pandas/core/array_algos/masked_reductions.py @@ -8,7 +8,7 @@ import numpy as np from pandas._libs import missing as libmissing -from pandas.compat import np_version_under1p17 +from pandas.compat.numpy import np_version_under1p17 from pandas.core.nanops import check_below_min_count diff --git a/pandas/core/arrays/_mixins.py b/pandas/core/arrays/_mixins.py index e611a2c412e1f..62c594d73a227 100644 --- a/pandas/core/arrays/_mixins.py +++ b/pandas/core/arrays/_mixins.py @@ -7,7 +7,7 @@ from pandas._libs import lib from pandas._typing import Shape -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly, doc from pandas.util._validators import validate_fillna_kwargs diff --git a/pandas/core/arrays/base.py b/pandas/core/arrays/base.py index 613bf3d7ac11f..9a8b37e0785e0 100644 --- a/pandas/core/arrays/base.py +++ b/pandas/core/arrays/base.py @@ -26,7 +26,8 @@ from pandas._libs import lib from pandas._typing import ArrayLike, Dtype, Shape -from pandas.compat import function as nv, set_function_name +from pandas.compat import set_function_name +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import Appender, Substitution from pandas.util._validators import validate_fillna_kwargs diff --git a/pandas/core/arrays/boolean.py b/pandas/core/arrays/boolean.py index 26265c46236cc..2bc908186f7f4 100644 --- a/pandas/core/arrays/boolean.py +++ b/pandas/core/arrays/boolean.py @@ -6,7 +6,7 @@ from pandas._libs import lib, missing as libmissing from pandas._typing import ArrayLike, Dtype -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.core.dtypes.common import ( is_bool_dtype, diff --git a/pandas/core/arrays/categorical.py b/pandas/core/arrays/categorical.py index 0aa5ffe8eb3d8..fe5db3ec5fd8c 100644 --- a/pandas/core/arrays/categorical.py +++ b/pandas/core/arrays/categorical.py @@ -23,7 +23,7 @@ from pandas._libs import NaT, algos as libalgos, hashtable as htable from pandas._libs.lib import no_default from pandas._typing import ArrayLike, Dtype, NpDtype, Ordered, Scalar -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import cache_readonly, deprecate_kwarg from pandas.util._validators import validate_bool_kwarg, validate_fillna_kwargs diff --git a/pandas/core/arrays/datetimelike.py b/pandas/core/arrays/datetimelike.py index a25bb90db773a..b31bc0934fe60 100644 --- a/pandas/core/arrays/datetimelike.py +++ b/pandas/core/arrays/datetimelike.py @@ -37,7 +37,7 @@ round_nsint64, ) from pandas._typing import DatetimeLikeScalar, Dtype, DtypeObj, NpDtype -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError, NullFrequencyError, PerformanceWarning from pandas.util._decorators import Appender, Substitution, cache_readonly diff --git a/pandas/core/arrays/floating.py b/pandas/core/arrays/floating.py index 016aa5e89294c..1ac23d7893fbf 100644 --- a/pandas/core/arrays/floating.py +++ b/pandas/core/arrays/floating.py @@ -6,7 +6,7 @@ from pandas._libs import lib, missing as libmissing from pandas._typing import ArrayLike, DtypeObj -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import cache_readonly from pandas.core.dtypes.cast import astype_nansafe diff --git a/pandas/core/arrays/integer.py b/pandas/core/arrays/integer.py index 61afe9ad31eab..f8378fb7d1500 100644 --- a/pandas/core/arrays/integer.py +++ b/pandas/core/arrays/integer.py @@ -6,7 +6,7 @@ from pandas._libs import iNaT, lib, missing as libmissing from pandas._typing import ArrayLike, Dtype, DtypeObj -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import cache_readonly from pandas.core.dtypes.base import ExtensionDtype, register_extension_dtype diff --git a/pandas/core/arrays/interval.py b/pandas/core/arrays/interval.py index 3f8b9416f3b28..284305b588e4e 100644 --- a/pandas/core/arrays/interval.py +++ b/pandas/core/arrays/interval.py @@ -15,7 +15,7 @@ ) from pandas._libs.missing import NA from pandas._typing import ArrayLike, Dtype, NpDtype -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender from pandas.core.dtypes.cast import maybe_convert_platform diff --git a/pandas/core/arrays/numpy_.py b/pandas/core/arrays/numpy_.py index 62105eb18d302..9ed6306e5b9bc 100644 --- a/pandas/core/arrays/numpy_.py +++ b/pandas/core/arrays/numpy_.py @@ -6,7 +6,7 @@ from pandas._libs import lib from pandas._typing import Dtype, NpDtype, Scalar -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.core.dtypes.dtypes import ExtensionDtype from pandas.core.dtypes.missing import isna diff --git a/pandas/core/arrays/sparse/array.py b/pandas/core/arrays/sparse/array.py index 6bb5cd835020f..b4d4fd5cc7106 100644 --- a/pandas/core/arrays/sparse/array.py +++ b/pandas/core/arrays/sparse/array.py @@ -14,7 +14,7 @@ from pandas._libs.sparse import BlockIndex, IntIndex, SparseIndex from pandas._libs.tslibs import NaT from pandas._typing import Dtype, NpDtype, Scalar -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import PerformanceWarning from pandas.core.dtypes.cast import ( diff --git a/pandas/core/arrays/string_.py b/pandas/core/arrays/string_.py index c6dcb4263319b..3d0ac3380ec39 100644 --- a/pandas/core/arrays/string_.py +++ b/pandas/core/arrays/string_.py @@ -4,7 +4,7 @@ from pandas._libs import lib, missing as libmissing from pandas._typing import Dtype, Scalar -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.core.dtypes.base import ExtensionDtype, register_extension_dtype from pandas.core.dtypes.common import ( diff --git a/pandas/core/arrays/timedeltas.py b/pandas/core/arrays/timedeltas.py index e2a3378056b04..62d5a4d30563b 100644 --- a/pandas/core/arrays/timedeltas.py +++ b/pandas/core/arrays/timedeltas.py @@ -23,7 +23,7 @@ parse_timedelta_unit, ) from pandas._typing import NpDtype -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.core.dtypes.cast import astype_td64_unit_conversion from pandas.core.dtypes.common import ( diff --git a/pandas/core/base.py b/pandas/core/base.py index da9cd217047d4..b603ba31f51dd 100644 --- a/pandas/core/base.py +++ b/pandas/core/base.py @@ -20,7 +20,8 @@ import pandas._libs.lib as lib from pandas._typing import Dtype, DtypeObj, IndexLabel -from pandas.compat import PYPY, function as nv +from pandas.compat import PYPY +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly, doc diff --git a/pandas/core/common.py b/pandas/core/common.py index c05987481b5f6..a6514b5167460 100644 --- a/pandas/core/common.py +++ b/pandas/core/common.py @@ -15,7 +15,7 @@ from pandas._libs import lib from pandas._typing import AnyArrayLike, NpDtype, Scalar, T -from pandas.compat import np_version_under1p18 +from pandas.compat.numpy import np_version_under1p18 from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike from pandas.core.dtypes.common import ( diff --git a/pandas/core/frame.py b/pandas/core/frame.py index dd2dca6a222b0..e65e9302dd4d5 100644 --- a/pandas/core/frame.py +++ b/pandas/core/frame.py @@ -69,8 +69,8 @@ Suffixes, ValueKeyFunc, ) -from pandas.compat import function as nv from pandas.compat._optional import import_optional_dependency +from pandas.compat.numpy import function as nv from pandas.util._decorators import ( Appender, Substitution, diff --git a/pandas/core/generic.py b/pandas/core/generic.py index c3ee8830339bb..2f4340c17c5a7 100644 --- a/pandas/core/generic.py +++ b/pandas/core/generic.py @@ -54,8 +54,8 @@ ValueKeyFunc, final, ) -from pandas.compat import function as nv from pandas.compat._optional import import_optional_dependency +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError, InvalidIndexError from pandas.util._decorators import doc, rewrite_axis_style_signature from pandas.util._validators import ( diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 061bf6d471b05..aef4c036abc65 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -47,7 +47,7 @@ class providing the base-class of operations. Scalar, final, ) -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import Appender, Substitution, cache_readonly, doc diff --git a/pandas/core/indexes/base.py b/pandas/core/indexes/base.py index 3b9a8dcd40d5b..a2e9737f305ba 100644 --- a/pandas/core/indexes/base.py +++ b/pandas/core/indexes/base.py @@ -29,7 +29,7 @@ from pandas._libs.tslibs import IncompatibleFrequency, OutOfBoundsDatetime, Timestamp from pandas._libs.tslibs.timezones import tz_compare from pandas._typing import AnyArrayLike, ArrayLike, Dtype, DtypeObj, Label, Shape, final -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import DuplicateLabelError, InvalidIndexError from pandas.util._decorators import Appender, cache_readonly, doc diff --git a/pandas/core/indexes/datetimelike.py b/pandas/core/indexes/datetimelike.py index 4c29b3448dbdc..7d214829b1871 100644 --- a/pandas/core/indexes/datetimelike.py +++ b/pandas/core/indexes/datetimelike.py @@ -9,7 +9,7 @@ from pandas._libs import NaT, Timedelta, iNaT, join as libjoin, lib from pandas._libs.tslibs import BaseOffset, Resolution, Tick from pandas._typing import Callable, Label -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, cache_readonly, doc from pandas.core.dtypes.common import ( diff --git a/pandas/core/indexes/extension.py b/pandas/core/indexes/extension.py index 048c1a02addf8..f597175bf2ae2 100644 --- a/pandas/core/indexes/extension.py +++ b/pandas/core/indexes/extension.py @@ -7,7 +7,7 @@ from pandas._libs import lib from pandas._typing import Label -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import cache_readonly, doc diff --git a/pandas/core/indexes/multi.py b/pandas/core/indexes/multi.py index 63423af48d20b..f058645c4abda 100644 --- a/pandas/core/indexes/multi.py +++ b/pandas/core/indexes/multi.py @@ -21,7 +21,7 @@ from pandas._libs import algos as libalgos, index as libindex, lib from pandas._libs.hashtable import duplicated_int64 from pandas._typing import AnyArrayLike, DtypeObj, Label, Scalar, Shape -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import InvalidIndexError, PerformanceWarning, UnsortedIndexError from pandas.util._decorators import Appender, cache_readonly, doc diff --git a/pandas/core/indexes/range.py b/pandas/core/indexes/range.py index 89945b406c6c5..4256ad93695e9 100644 --- a/pandas/core/indexes/range.py +++ b/pandas/core/indexes/range.py @@ -9,7 +9,7 @@ from pandas._libs import index as libindex from pandas._libs.lib import no_default from pandas._typing import Dtype, Label -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import cache_readonly, doc from pandas.core.dtypes.common import ( diff --git a/pandas/core/resample.py b/pandas/core/resample.py index db29f2dcf2311..e432ec6cb54a2 100644 --- a/pandas/core/resample.py +++ b/pandas/core/resample.py @@ -15,7 +15,7 @@ to_offset, ) from pandas._typing import TimedeltaConvertibleTypes, TimestampConvertibleTypes -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import AbstractMethodError from pandas.util._decorators import Appender, Substitution, doc diff --git a/pandas/core/series.py b/pandas/core/series.py index 332d0a6f1bb2b..6586ac8b01840 100644 --- a/pandas/core/series.py +++ b/pandas/core/series.py @@ -37,7 +37,7 @@ StorageOptions, ValueKeyFunc, ) -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.errors import InvalidIndexError from pandas.util._decorators import Appender, Substitution, doc from pandas.util._validators import validate_bool_kwarg, validate_percentile diff --git a/pandas/core/window/ewm.py b/pandas/core/window/ewm.py index 7ffef6506e6ac..983f7220c2fb9 100644 --- a/pandas/core/window/ewm.py +++ b/pandas/core/window/ewm.py @@ -8,7 +8,7 @@ from pandas._libs.tslibs import Timedelta import pandas._libs.window.aggregations as window_aggregations from pandas._typing import FrameOrSeries, TimedeltaConvertibleTypes -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, Substitution, doc from pandas.core.dtypes.common import is_datetime64_ns_dtype diff --git a/pandas/core/window/expanding.py b/pandas/core/window/expanding.py index 35934c54bd634..1f0c16fb5aa8f 100644 --- a/pandas/core/window/expanding.py +++ b/pandas/core/window/expanding.py @@ -4,7 +4,7 @@ import numpy as np from pandas._typing import FrameOrSeries -from pandas.compat import function as nv +from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, Substitution, doc from pandas.core.window.common import _doc_template, _shared_docs From f0c1c79eba1204edb44ec5d3e8de39c0dc726537 Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 10 Jan 2021 21:16:03 +0100 Subject: [PATCH 5/8] Remove function import --- pandas/compat/__init__.py | 2 -- pandas/core/window/rolling.py | 2 +- pandas/tests/extension/base/dtype.py | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index 3eabbc693c2fd..bc66d0ff61e22 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -13,7 +13,6 @@ from pandas._typing import F from pandas.compat.numpy import ( - function, is_numpy_dev, np_array_datetime64_compat, np_datetime64_compat, @@ -130,7 +129,6 @@ def get_lzma_file(lzma): __all__ = [ "is_numpy_dev", - "function", "np_array_datetime64_compat", "np_datetime64_compat", "np_version_under1p17", diff --git a/pandas/core/window/rolling.py b/pandas/core/window/rolling.py index ec245f62d675b..29e7050639a2d 100644 --- a/pandas/core/window/rolling.py +++ b/pandas/core/window/rolling.py @@ -27,8 +27,8 @@ from pandas._libs.tslibs import BaseOffset, to_offset import pandas._libs.window.aggregations as window_aggregations from pandas._typing import ArrayLike, Axis, FrameOrSeries, FrameOrSeriesUnion -from pandas.compat import function as nv from pandas.compat._optional import import_optional_dependency +from pandas.compat.numpy import function as nv from pandas.util._decorators import Appender, Substitution, doc from pandas.core.dtypes.common import ( diff --git a/pandas/tests/extension/base/dtype.py b/pandas/tests/extension/base/dtype.py index edf91c4bc8461..154fcdc38826d 100644 --- a/pandas/tests/extension/base/dtype.py +++ b/pandas/tests/extension/base/dtype.py @@ -73,7 +73,7 @@ def test_check_dtype(self, data): with warnings.catch_warnings(): warnings.simplefilter("ignore", DeprecationWarning) result = df.dtypes == str(dtype) - # NumPy>=1.20.0, but not pandas.compat till there + # NumPy>=1.20.0, but not pandas.compat.numpy till there # is a wheel available with this change. try: new_numpy_behavior = np.dtype("int64") != "Int64" From 955291f8acae0f749ae20f6adbab713e07d96101 Mon Sep 17 00:00:00 2001 From: phofl Date: Tue, 19 Jan 2021 20:20:31 +0100 Subject: [PATCH 6/8] Remove numpy imports --- pandas/compat/__init__.py | 4 +++- pandas/core/array_algos/masked_reductions.py | 2 +- pandas/core/common.py | 2 +- pandas/tests/arrays/integer/test_arithmetic.py | 2 +- pandas/tests/arrays/sparse/test_arithmetics.py | 2 +- pandas/tests/frame/test_constructors.py | 2 +- 6 files changed, 8 insertions(+), 6 deletions(-) diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index bc66d0ff61e22..eb16baa5891c6 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -12,7 +12,7 @@ import warnings from pandas._typing import F -from pandas.compat.numpy import ( +from pandas.compat.numpy import ( # _np_version_under1p19,; _np_version_under1p20, is_numpy_dev, np_array_datetime64_compat, np_datetime64_compat, @@ -128,6 +128,8 @@ def get_lzma_file(lzma): __all__ = [ + # "_np_version_under1p19", + # "_np_version_under1p20", "is_numpy_dev", "np_array_datetime64_compat", "np_datetime64_compat", diff --git a/pandas/core/array_algos/masked_reductions.py b/pandas/core/array_algos/masked_reductions.py index ec0f2c61e0a29..553cdc557ec95 100644 --- a/pandas/core/array_algos/masked_reductions.py +++ b/pandas/core/array_algos/masked_reductions.py @@ -8,7 +8,7 @@ import numpy as np from pandas._libs import missing as libmissing -from pandas.compat.numpy import np_version_under1p17 +from pandas.compat import np_version_under1p17 from pandas.core.nanops import check_below_min_count diff --git a/pandas/core/common.py b/pandas/core/common.py index e23091b2efa45..aa24e12bf2cf1 100644 --- a/pandas/core/common.py +++ b/pandas/core/common.py @@ -26,7 +26,7 @@ from pandas._libs import lib from pandas._typing import AnyArrayLike, NpDtype, Scalar, T -from pandas.compat.numpy import np_version_under1p18 +from pandas.compat import np_version_under1p18 from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike from pandas.core.dtypes.common import ( diff --git a/pandas/tests/arrays/integer/test_arithmetic.py b/pandas/tests/arrays/integer/test_arithmetic.py index 8ba984e649e35..4fd1dddd65e5f 100644 --- a/pandas/tests/arrays/integer/test_arithmetic.py +++ b/pandas/tests/arrays/integer/test_arithmetic.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat.numpy import _np_version_under1p20 +from pandas.compat import _np_version_under1p20 import pandas as pd import pandas._testing as tm diff --git a/pandas/tests/arrays/sparse/test_arithmetics.py b/pandas/tests/arrays/sparse/test_arithmetics.py index 61f4e3e50d09d..62744d94c6b1e 100644 --- a/pandas/tests/arrays/sparse/test_arithmetics.py +++ b/pandas/tests/arrays/sparse/test_arithmetics.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat.numpy import _np_version_under1p20 +from pandas.compat import _np_version_under1p20 import pandas as pd import pandas._testing as tm diff --git a/pandas/tests/frame/test_constructors.py b/pandas/tests/frame/test_constructors.py index 6a0f86e133752..e5e40913e05f4 100644 --- a/pandas/tests/frame/test_constructors.py +++ b/pandas/tests/frame/test_constructors.py @@ -10,7 +10,7 @@ import pytest import pytz -from pandas.compat.numpy import _np_version_under1p19 +from pandas.compat import _np_version_under1p19 from pandas.core.dtypes.common import is_integer_dtype from pandas.core.dtypes.dtypes import DatetimeTZDtype, IntervalDtype, PeriodDtype From 50018b819d9fa927f3715f62bb10d089f96472da Mon Sep 17 00:00:00 2001 From: phofl Date: Tue, 19 Jan 2021 20:21:59 +0100 Subject: [PATCH 7/8] Move private functions back --- pandas/compat/__init__.py | 4 +--- pandas/tests/arrays/integer/test_arithmetic.py | 2 +- pandas/tests/arrays/sparse/test_arithmetics.py | 2 +- pandas/tests/frame/test_constructors.py | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index eb16baa5891c6..bc66d0ff61e22 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -12,7 +12,7 @@ import warnings from pandas._typing import F -from pandas.compat.numpy import ( # _np_version_under1p19,; _np_version_under1p20, +from pandas.compat.numpy import ( is_numpy_dev, np_array_datetime64_compat, np_datetime64_compat, @@ -128,8 +128,6 @@ def get_lzma_file(lzma): __all__ = [ - # "_np_version_under1p19", - # "_np_version_under1p20", "is_numpy_dev", "np_array_datetime64_compat", "np_datetime64_compat", diff --git a/pandas/tests/arrays/integer/test_arithmetic.py b/pandas/tests/arrays/integer/test_arithmetic.py index 4fd1dddd65e5f..8ba984e649e35 100644 --- a/pandas/tests/arrays/integer/test_arithmetic.py +++ b/pandas/tests/arrays/integer/test_arithmetic.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat import _np_version_under1p20 +from pandas.compat.numpy import _np_version_under1p20 import pandas as pd import pandas._testing as tm diff --git a/pandas/tests/arrays/sparse/test_arithmetics.py b/pandas/tests/arrays/sparse/test_arithmetics.py index 62744d94c6b1e..61f4e3e50d09d 100644 --- a/pandas/tests/arrays/sparse/test_arithmetics.py +++ b/pandas/tests/arrays/sparse/test_arithmetics.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat import _np_version_under1p20 +from pandas.compat.numpy import _np_version_under1p20 import pandas as pd import pandas._testing as tm diff --git a/pandas/tests/frame/test_constructors.py b/pandas/tests/frame/test_constructors.py index e5e40913e05f4..6a0f86e133752 100644 --- a/pandas/tests/frame/test_constructors.py +++ b/pandas/tests/frame/test_constructors.py @@ -10,7 +10,7 @@ import pytest import pytz -from pandas.compat import _np_version_under1p19 +from pandas.compat.numpy import _np_version_under1p19 from pandas.core.dtypes.common import is_integer_dtype from pandas.core.dtypes.dtypes import DatetimeTZDtype, IntervalDtype, PeriodDtype From f99984193c8abc3f3218d8d0dc4c217c791e857d Mon Sep 17 00:00:00 2001 From: phofl Date: Tue, 19 Jan 2021 23:41:50 +0100 Subject: [PATCH 8/8] Make checks non private --- pandas/compat/__init__.py | 4 ++++ pandas/compat/numpy/__init__.py | 4 ++-- pandas/tests/arrays/integer/test_arithmetic.py | 4 ++-- pandas/tests/arrays/sparse/test_arithmetics.py | 8 ++++---- pandas/tests/frame/test_constructors.py | 4 ++-- 5 files changed, 14 insertions(+), 10 deletions(-) diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index bc66d0ff61e22..eb6cf4f9d7d85 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -18,6 +18,8 @@ np_datetime64_compat, np_version_under1p17, np_version_under1p18, + np_version_under1p19, + np_version_under1p20, ) PY38 = sys.version_info >= (3, 8) @@ -133,4 +135,6 @@ def get_lzma_file(lzma): "np_datetime64_compat", "np_version_under1p17", "np_version_under1p18", + "np_version_under1p19", + "np_version_under1p20", ] diff --git a/pandas/compat/numpy/__init__.py b/pandas/compat/numpy/__init__.py index a2444b7ba5a0d..1d8077da76469 100644 --- a/pandas/compat/numpy/__init__.py +++ b/pandas/compat/numpy/__init__.py @@ -10,8 +10,8 @@ _nlv = LooseVersion(_np_version) np_version_under1p17 = _nlv < LooseVersion("1.17") np_version_under1p18 = _nlv < LooseVersion("1.18") -_np_version_under1p19 = _nlv < LooseVersion("1.19") -_np_version_under1p20 = _nlv < LooseVersion("1.20") +np_version_under1p19 = _nlv < LooseVersion("1.19") +np_version_under1p20 = _nlv < LooseVersion("1.20") is_numpy_dev = ".dev" in str(_nlv) _min_numpy_ver = "1.16.5" diff --git a/pandas/tests/arrays/integer/test_arithmetic.py b/pandas/tests/arrays/integer/test_arithmetic.py index 8ba984e649e35..0c1b10f66a73b 100644 --- a/pandas/tests/arrays/integer/test_arithmetic.py +++ b/pandas/tests/arrays/integer/test_arithmetic.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat.numpy import _np_version_under1p20 +from pandas.compat import np_version_under1p20 import pandas as pd import pandas._testing as tm @@ -208,7 +208,7 @@ def test_arith_coerce_scalar(data, all_arithmetic_operators): expected = op(s.astype(float), other) expected = expected.astype("Float64") # rfloordiv results in nan instead of inf - if all_arithmetic_operators == "__rfloordiv__" and _np_version_under1p20: + if all_arithmetic_operators == "__rfloordiv__" and np_version_under1p20: # for numpy 1.20 https://github.com/numpy/numpy/pull/16161 # updated floordiv, now matches our behavior defined in core.ops mask = ( diff --git a/pandas/tests/arrays/sparse/test_arithmetics.py b/pandas/tests/arrays/sparse/test_arithmetics.py index 61f4e3e50d09d..013814681b5f6 100644 --- a/pandas/tests/arrays/sparse/test_arithmetics.py +++ b/pandas/tests/arrays/sparse/test_arithmetics.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat.numpy import _np_version_under1p20 +from pandas.compat import np_version_under1p20 import pandas as pd import pandas._testing as tm @@ -122,7 +122,7 @@ def test_float_scalar( ): op = all_arithmetic_functions - if not _np_version_under1p20: + if not np_version_under1p20: if op in [operator.floordiv, ops.rfloordiv]: mark = pytest.mark.xfail(strict=False, reason="GH#38172") request.node.add_marker(mark) @@ -169,7 +169,7 @@ def test_float_same_index_with_nans( # when sp_index are the same op = all_arithmetic_functions - if not _np_version_under1p20: + if not np_version_under1p20: if op in [operator.floordiv, ops.rfloordiv]: mark = pytest.mark.xfail(strict=False, reason="GH#38172") request.node.add_marker(mark) @@ -349,7 +349,7 @@ def test_bool_array_logical(self, kind, fill_value): def test_mixed_array_float_int(self, kind, mix, all_arithmetic_functions, request): op = all_arithmetic_functions - if not _np_version_under1p20: + if not np_version_under1p20: if op in [operator.floordiv, ops.rfloordiv] and mix: mark = pytest.mark.xfail(strict=True, reason="GH#38172") request.node.add_marker(mark) diff --git a/pandas/tests/frame/test_constructors.py b/pandas/tests/frame/test_constructors.py index 6a0f86e133752..a6aaf3a6af750 100644 --- a/pandas/tests/frame/test_constructors.py +++ b/pandas/tests/frame/test_constructors.py @@ -10,7 +10,7 @@ import pytest import pytz -from pandas.compat.numpy import _np_version_under1p19 +from pandas.compat import np_version_under1p19 from pandas.core.dtypes.common import is_integer_dtype from pandas.core.dtypes.dtypes import DatetimeTZDtype, IntervalDtype, PeriodDtype @@ -149,7 +149,7 @@ def test_constructor_dtype_list_data(self): assert df.loc[1, 0] is None assert df.loc[0, 1] == "2" - @pytest.mark.skipif(_np_version_under1p19, reason="NumPy change.") + @pytest.mark.skipif(np_version_under1p19, reason="NumPy change.") def test_constructor_list_of_2d_raises(self): # https://github.com/pandas-dev/pandas/issues/32289 a = DataFrame()