packages/python/python-pandas/fix-pyarrow-10.patch

48 lines
1.8 KiB
Diff

diff --git a/pandas/compat/pyarrow.py b/pandas/compat/pyarrow.py
--- a/pandas/compat/pyarrow.py
+++ b/pandas/compat/pyarrow.py
@@ -18,6 +18,7 @@ try:
pa_version_under7p0 = _palv < Version("7.0.0")
pa_version_under8p0 = _palv < Version("8.0.0")
pa_version_under9p0 = _palv < Version("9.0.0")
+ pa_version_under10p0 = _palv < Version("10.0.0")
except ImportError:
pa_version_under1p01 = True
pa_version_under2p0 = True
@@ -28,3 +29,4 @@ except ImportError:
pa_version_under7p0 = True
pa_version_under8p0 = True
pa_version_under9p0 = True
+ pa_version_under10p0 = True
diff --git a/pandas/tests/arrays/interval/test_interval.py b/pandas/tests/arrays/interval/test_interval.py
--- a/pandas/tests/arrays/interval/test_interval.py
+++ b/pandas/tests/arrays/interval/test_interval.py
@@ -287,7 +287,7 @@ def test_arrow_array():
with pytest.raises(TypeError, match="Not supported to convert IntervalArray"):
pa.array(intervals, type="float64")
- with pytest.raises(TypeError, match="different 'subtype'"):
+ with pytest.raises(TypeError, match="different 'subtype'|to convert IntervalArray"):
pa.array(intervals, type=ArrowIntervalType(pa.float64(), "left"))
diff --git a/pandas/tests/arrays/period/test_arrow_compat.py b/pandas/tests/arrays/period/test_arrow_compat.py
--- a/pandas/tests/arrays/period/test_arrow_compat.py
+++ b/pandas/tests/arrays/period/test_arrow_compat.py
@@ -1,5 +1,7 @@
import pytest
+from pandas.compat.pyarrow import pa_version_under10p0
+
from pandas.core.dtypes.dtypes import PeriodDtype
import pandas as pd
@@ -28,6 +30,7 @@ def test_arrow_extension_type():
assert hash(p1) != hash(p3)
+@pytest.mark.xfail(not pa_version_under10p0, reason="Wrong behavior with pyarrow 10")
@pytest.mark.parametrize(
"data, freq",
[