Skip to content

Commit 9a52a81

Browse files
authored
STYLE use absolute imports (#39561)
1 parent 3bb83b0 commit 9a52a81

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+100
-106
lines changed

Diff for: .pre-commit-config.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -195,3 +195,8 @@ repos:
195195
rev: v0.1.7
196196
hooks:
197197
- id: no-string-hints
198+
- repo: https://github.com/MarcoGorelli/abs-imports
199+
rev: v0.1.2
200+
hooks:
201+
- id: abs-imports
202+
files: ^pandas/

Diff for: pandas/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@
180180
import pandas.arrays
181181

182182
# use the closest tagged version if possible
183-
from ._version import get_versions
183+
from pandas._version import get_versions
184184

185185
v = get_versions()
186186
__version__ = v.get("closest-tag", v["version"])

Diff for: pandas/_libs/tslibs/__init__.py

+22-12
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,28 @@
2727
"tz_compare",
2828
]
2929

30-
from . import dtypes
31-
from .conversion import OutOfBoundsTimedelta, localize_pydatetime
32-
from .dtypes import Resolution
33-
from .nattype import NaT, NaTType, iNaT, is_null_datetimelike, nat_strings
34-
from .np_datetime import OutOfBoundsDatetime
35-
from .offsets import BaseOffset, Tick, to_offset
36-
from .period import IncompatibleFrequency, Period
37-
from .timedeltas import Timedelta, delta_to_nanoseconds, ints_to_pytimedelta
38-
from .timestamps import Timestamp
39-
from .timezones import tz_compare
40-
from .tzconversion import tz_convert_from_utc_single
41-
from .vectorized import (
30+
from pandas._libs.tslibs import dtypes
31+
from pandas._libs.tslibs.conversion import OutOfBoundsTimedelta, localize_pydatetime
32+
from pandas._libs.tslibs.dtypes import Resolution
33+
from pandas._libs.tslibs.nattype import (
34+
NaT,
35+
NaTType,
36+
iNaT,
37+
is_null_datetimelike,
38+
nat_strings,
39+
)
40+
from pandas._libs.tslibs.np_datetime import OutOfBoundsDatetime
41+
from pandas._libs.tslibs.offsets import BaseOffset, Tick, to_offset
42+
from pandas._libs.tslibs.period import IncompatibleFrequency, Period
43+
from pandas._libs.tslibs.timedeltas import (
44+
Timedelta,
45+
delta_to_nanoseconds,
46+
ints_to_pytimedelta,
47+
)
48+
from pandas._libs.tslibs.timestamps import Timestamp
49+
from pandas._libs.tslibs.timezones import tz_compare
50+
from pandas._libs.tslibs.tzconversion import tz_convert_from_utc_single
51+
from pandas._libs.tslibs.vectorized import (
4252
dt64arr_to_periodarr,
4353
get_resolution,
4454
ints_to_pydatetime,

Diff for: pandas/core/arrays/boolean.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,7 @@
2323
from pandas.core.dtypes.missing import isna
2424

2525
from pandas.core import ops
26-
27-
from .masked import BaseMaskedArray, BaseMaskedDtype
26+
from pandas.core.arrays.masked import BaseMaskedArray, BaseMaskedDtype
2827

2928
if TYPE_CHECKING:
3029
import pyarrow

Diff for: pandas/core/arrays/floating.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,10 @@
2323
from pandas.core.dtypes.dtypes import ExtensionDtype, register_extension_dtype
2424
from pandas.core.dtypes.missing import isna
2525

26+
from pandas.core.arrays.numeric import NumericArray, NumericDtype
2627
from pandas.core.ops import invalid_comparison
2728
from pandas.core.tools.numeric import to_numeric
2829

29-
from .numeric import NumericArray, NumericDtype
30-
3130

3231
class FloatingDtype(NumericDtype):
3332
"""

Diff for: pandas/core/arrays/integer.py

+2-3
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,11 @@
2323
)
2424
from pandas.core.dtypes.missing import isna
2525

26+
from pandas.core.arrays.masked import BaseMaskedArray, BaseMaskedDtype
27+
from pandas.core.arrays.numeric import NumericArray, NumericDtype
2628
from pandas.core.ops import invalid_comparison
2729
from pandas.core.tools.numeric import to_numeric
2830

29-
from .masked import BaseMaskedArray, BaseMaskedDtype
30-
from .numeric import NumericArray, NumericDtype
31-
3231

3332
class _IntegerDtype(NumericDtype):
3433
"""

Diff for: pandas/core/arrays/numeric.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@
1818
)
1919

2020
from pandas.core import ops
21-
22-
from .masked import BaseMaskedArray, BaseMaskedDtype
21+
from pandas.core.arrays.masked import BaseMaskedArray, BaseMaskedDtype
2322

2423
if TYPE_CHECKING:
2524
import pyarrow

Diff for: pandas/core/arrays/timedeltas.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,7 @@ def _add_period(self, other: Period):
419419
Add a Period object.
420420
"""
421421
# We will wrap in a PeriodArray and defer to the reversed operation
422-
from .period import PeriodArray
422+
from pandas.core.arrays.period import PeriodArray
423423

424424
i8vals = np.broadcast_to(other.ordinal, self.shape)
425425
oth = PeriodArray(i8vals, freq=other.freq)

Diff for: pandas/core/strings/__init__.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
# - PandasArray
2727
# - Categorical
2828

29-
from .accessor import StringMethods
30-
from .base import BaseStringArrayMethods
29+
from pandas.core.strings.accessor import StringMethods
30+
from pandas.core.strings.base import BaseStringArrayMethods
3131

3232
__all__ = ["StringMethods", "BaseStringArrayMethods"]

Diff for: pandas/tests/api/test_types.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import pandas._testing as tm
22
from pandas.api import types
3-
4-
from .test_api import Base
3+
from pandas.tests.api.test_api import Base
54

65

76
class TestTypes(Base):

Diff for: pandas/tests/arithmetic/test_period.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@
1414
import pandas._testing as tm
1515
from pandas.core import ops
1616
from pandas.core.arrays import TimedeltaArray
17-
18-
from .common import assert_invalid_comparison
17+
from pandas.tests.arithmetic.common import assert_invalid_comparison
1918

2019
# ------------------------------------------------------------------
2120
# Comparisons

Diff for: pandas/tests/extension/arrow/test_bool.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@
88

99
pytest.importorskip("pyarrow", minversion="0.13.0")
1010

11-
from .arrays import ArrowBoolArray, ArrowBoolDtype # isort:skip
11+
from pandas.tests.extension.arrow.arrays import ( # isort:skip
12+
ArrowBoolArray,
13+
ArrowBoolDtype,
14+
)
1215

1316

1417
@pytest.fixture

Diff for: pandas/tests/extension/arrow/test_string.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
pytest.importorskip("pyarrow", minversion="0.13.0")
66

7-
from .arrays import ArrowStringDtype # isort:skip
7+
from pandas.tests.extension.arrow.arrays import ArrowStringDtype # isort:skip
88

99

1010
def test_constructor_from_list():

Diff for: pandas/tests/extension/arrow/test_timestamp.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
import pyarrow as pa # isort:skip
1414

15-
from .arrays import ArrowExtensionArray # isort:skip
15+
from pandas.tests.extension.arrow.arrays import ArrowExtensionArray # isort:skip
1616

1717

1818
@register_extension_dtype

Diff for: pandas/tests/extension/base/__init__.py

+14-14
Original file line numberDiff line numberDiff line change
@@ -41,26 +41,26 @@ class TestMyDtype(BaseDtypeTests):
4141
``assert_series_equal`` on your base test class.
4242
4343
"""
44-
from .casting import BaseCastingTests # noqa
45-
from .constructors import BaseConstructorsTests # noqa
46-
from .dtype import BaseDtypeTests # noqa
47-
from .getitem import BaseGetitemTests # noqa
48-
from .groupby import BaseGroupbyTests # noqa
49-
from .interface import BaseInterfaceTests # noqa
50-
from .io import BaseParsingTests # noqa
51-
from .methods import BaseMethodsTests # noqa
52-
from .missing import BaseMissingTests # noqa
53-
from .ops import ( # noqa
44+
from pandas.tests.extension.base.casting import BaseCastingTests # noqa
45+
from pandas.tests.extension.base.constructors import BaseConstructorsTests # noqa
46+
from pandas.tests.extension.base.dtype import BaseDtypeTests # noqa
47+
from pandas.tests.extension.base.getitem import BaseGetitemTests # noqa
48+
from pandas.tests.extension.base.groupby import BaseGroupbyTests # noqa
49+
from pandas.tests.extension.base.interface import BaseInterfaceTests # noqa
50+
from pandas.tests.extension.base.io import BaseParsingTests # noqa
51+
from pandas.tests.extension.base.methods import BaseMethodsTests # noqa
52+
from pandas.tests.extension.base.missing import BaseMissingTests # noqa
53+
from pandas.tests.extension.base.ops import ( # noqa
5454
BaseArithmeticOpsTests,
5555
BaseComparisonOpsTests,
5656
BaseOpsUtil,
5757
BaseUnaryOpsTests,
5858
)
59-
from .printing import BasePrintingTests # noqa
60-
from .reduce import ( # noqa
59+
from pandas.tests.extension.base.printing import BasePrintingTests # noqa
60+
from pandas.tests.extension.base.reduce import ( # noqa
6161
BaseBooleanReduceTests,
6262
BaseNoReduceTests,
6363
BaseNumericReduceTests,
6464
)
65-
from .reshaping import BaseReshapingTests # noqa
66-
from .setitem import BaseSetitemTests # noqa
65+
from pandas.tests.extension.base.reshaping import BaseReshapingTests # noqa
66+
from pandas.tests.extension.base.setitem import BaseSetitemTests # noqa

Diff for: pandas/tests/extension/base/casting.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33

44
import pandas as pd
55
from pandas.core.internals import ObjectBlock
6-
7-
from .base import BaseExtensionTests
6+
from pandas.tests.extension.base.base import BaseExtensionTests
87

98

109
class BaseCastingTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/constructors.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33

44
import pandas as pd
55
from pandas.core.internals import ExtensionBlock
6-
7-
from .base import BaseExtensionTests
6+
from pandas.tests.extension.base.base import BaseExtensionTests
87

98

109
class BaseConstructorsTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/dtype.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55

66
import pandas as pd
77
from pandas.api.types import is_object_dtype, is_string_dtype
8-
9-
from .base import BaseExtensionTests
8+
from pandas.tests.extension.base.base import BaseExtensionTests
109

1110

1211
class BaseDtypeTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/getitem.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22
import pytest
33

44
import pandas as pd
5-
6-
from .base import BaseExtensionTests
5+
from pandas.tests.extension.base.base import BaseExtensionTests
76

87

98
class BaseGetitemTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/groupby.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
import pandas as pd
44
import pandas._testing as tm
5-
6-
from .base import BaseExtensionTests
5+
from pandas.tests.extension.base.base import BaseExtensionTests
76

87

98
class BaseGroupbyTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/interface.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55

66
import pandas as pd
77
import pandas._testing as tm
8-
9-
from .base import BaseExtensionTests
8+
from pandas.tests.extension.base.base import BaseExtensionTests
109

1110

1211
class BaseInterfaceTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/io.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
import pytest
55

66
import pandas as pd
7-
8-
from .base import BaseExtensionTests
7+
from pandas.tests.extension.base.base import BaseExtensionTests
98

109

1110
class BaseParsingTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/methods.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
import pandas as pd
1010
import pandas._testing as tm
1111
from pandas.core.sorting import nargsort
12-
13-
from .base import BaseExtensionTests
12+
from pandas.tests.extension.base.base import BaseExtensionTests
1413

1514

1615
class BaseMethodsTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/missing.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
import pandas as pd
44
import pandas._testing as tm
5-
6-
from .base import BaseExtensionTests
5+
from pandas.tests.extension.base.base import BaseExtensionTests
76

87

98
class BaseMissingTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/ops.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
import pandas as pd
66
import pandas._testing as tm
77
from pandas.core import ops
8-
9-
from .base import BaseExtensionTests
8+
from pandas.tests.extension.base.base import BaseExtensionTests
109

1110

1211
class BaseOpsUtil(BaseExtensionTests):

Diff for: pandas/tests/extension/base/printing.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33
import pytest
44

55
import pandas as pd
6-
7-
from .base import BaseExtensionTests
6+
from pandas.tests.extension.base.base import BaseExtensionTests
87

98

109
class BasePrintingTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/reduce.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
import pandas as pd
66
import pandas._testing as tm
7-
8-
from .base import BaseExtensionTests
7+
from pandas.tests.extension.base.base import BaseExtensionTests
98

109

1110
class BaseReduceTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/reshaping.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55

66
import pandas as pd
77
from pandas.core.internals import ExtensionBlock
8-
9-
from .base import BaseExtensionTests
8+
from pandas.tests.extension.base.base import BaseExtensionTests
109

1110

1211
class BaseReshapingTests(BaseExtensionTests):

Diff for: pandas/tests/extension/base/setitem.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33

44
import pandas as pd
55
import pandas._testing as tm
6-
7-
from .base import BaseExtensionTests
6+
from pandas.tests.extension.base.base import BaseExtensionTests
87

98

109
class BaseSetitemTests(BaseExtensionTests):

Diff for: pandas/tests/extension/decimal/__init__.py

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1-
from .array import DecimalArray, DecimalDtype, make_data, to_decimal
1+
from pandas.tests.extension.decimal.array import (
2+
DecimalArray,
3+
DecimalDtype,
4+
make_data,
5+
to_decimal,
6+
)
27

38
__all__ = ["DecimalArray", "DecimalDtype", "to_decimal", "make_data"]

Diff for: pandas/tests/extension/decimal/test_decimal.py

+6-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,12 @@
88
import pandas as pd
99
import pandas._testing as tm
1010
from pandas.tests.extension import base
11-
12-
from .array import DecimalArray, DecimalDtype, make_data, to_decimal
11+
from pandas.tests.extension.decimal.array import (
12+
DecimalArray,
13+
DecimalDtype,
14+
make_data,
15+
to_decimal,
16+
)
1317

1418

1519
@pytest.fixture

Diff for: pandas/tests/extension/json/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
from .array import JSONArray, JSONDtype, make_data
1+
from pandas.tests.extension.json.array import JSONArray, JSONDtype, make_data
22

33
__all__ = ["JSONArray", "JSONDtype", "make_data"]

Diff for: pandas/tests/extension/json/test_json.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@
66
import pandas as pd
77
import pandas._testing as tm
88
from pandas.tests.extension import base
9-
10-
from .array import JSONArray, JSONDtype, make_data
9+
from pandas.tests.extension.json.array import JSONArray, JSONDtype, make_data
1110

1211

1312
@pytest.fixture

0 commit comments

Comments
 (0)