diff --git a/ci/deps/actions-38.yaml b/ci/deps/actions-38.yaml index 60db02def8a3d..b23f686d845e9 100644 --- a/ci/deps/actions-38.yaml +++ b/ci/deps/actions-38.yaml @@ -36,7 +36,7 @@ dependencies: - psycopg2 - pymysql - pytables - - pyarrow + - pyarrow=3 - pyreadstat - pyxlsb - s3fs diff --git a/ci/deps/actions-39.yaml b/ci/deps/actions-39.yaml index 2d6430afd0b36..631ef40b02e33 100644 --- a/ci/deps/actions-39.yaml +++ b/ci/deps/actions-39.yaml @@ -36,7 +36,7 @@ dependencies: - psycopg2 - pymysql - pytables - - pyarrow + - pyarrow=5 - pyreadstat - pyxlsb - s3fs diff --git a/ci/deps/azure-macos-39.yaml b/ci/deps/azure-macos-39.yaml index a0860ef536953..140d67796452c 100644 --- a/ci/deps/azure-macos-39.yaml +++ b/ci/deps/azure-macos-39.yaml @@ -23,7 +23,7 @@ dependencies: - numexpr - numpy=1.21.3 - openpyxl - - pyarrow=1.0.1 + - pyarrow=4 - pyreadstat - pytables - python-dateutil==2.8.1 diff --git a/ci/deps/azure-windows-38.yaml b/ci/deps/azure-windows-38.yaml index aa2921ca7e496..eb533524147d9 100644 --- a/ci/deps/azure-windows-38.yaml +++ b/ci/deps/azure-windows-38.yaml @@ -23,7 +23,7 @@ dependencies: - numpy=1.18 - openpyxl - jinja2 - - pyarrow=1.0.1 + - pyarrow=2 - pytables - python-dateutil - pytz diff --git a/ci/deps/azure-windows-39.yaml b/ci/deps/azure-windows-39.yaml index 3d8fe05e2fce5..6f820b1c2aedb 100644 --- a/ci/deps/azure-windows-39.yaml +++ b/ci/deps/azure-windows-39.yaml @@ -25,7 +25,7 @@ dependencies: - numexpr - numpy - openpyxl - - pyarrow + - pyarrow=6 - pytables - python-dateutil - pytz diff --git a/pandas/tests/arrays/period/test_arrow_compat.py b/pandas/tests/arrays/period/test_arrow_compat.py index ab2a917641d28..bc557f2e119d5 100644 --- a/pandas/tests/arrays/period/test_arrow_compat.py +++ b/pandas/tests/arrays/period/test_arrow_compat.py @@ -1,6 +1,6 @@ import pytest -from pandas.compat import pa_version_under3p0 +from pandas.compat import pa_version_under4p0 from pandas.core.dtypes.dtypes import PeriodDtype @@ -72,7 +72,7 @@ def test_arrow_array_missing(): @pytest.mark.xfail( - pa_version_under3p0, reason="pyarrow incorrectly uses pandas internals API" + pa_version_under4p0, reason="pyarrow incorrectly uses pandas internals API" ) def test_arrow_table_roundtrip(): from pandas.core.arrays._arrow_utils import ArrowPeriodType @@ -94,7 +94,7 @@ def test_arrow_table_roundtrip(): @pytest.mark.xfail( - pa_version_under3p0, reason="pyarrow incorrectly uses pandas internals API" + pa_version_under4p0, reason="pyarrow incorrectly uses pandas internals API" ) def test_arrow_load_from_zero_chunks(): # GH-41040 @@ -115,7 +115,7 @@ def test_arrow_load_from_zero_chunks(): @pytest.mark.xfail( - pa_version_under3p0, reason="pyarrow incorrectly uses pandas internals API" + pa_version_under4p0, reason="pyarrow incorrectly uses pandas internals API" ) def test_arrow_table_roundtrip_without_metadata(): arr = PeriodArray([1, 2, 3], freq="H") diff --git a/pandas/tests/io/test_feather.py b/pandas/tests/io/test_feather.py index 6b5528c87ac15..4fcb43c1c3e47 100644 --- a/pandas/tests/io/test_feather.py +++ b/pandas/tests/io/test_feather.py @@ -2,7 +2,7 @@ import numpy as np import pytest -from pandas.compat.pyarrow import pa_version_under3p0 +from pandas.compat.pyarrow import pa_version_under4p0 import pandas as pd import pandas._testing as tm @@ -87,7 +87,7 @@ def test_basic(self): ), } ) - if not pa_version_under3p0: + if not pa_version_under4p0: # older pyarrow incorrectly uses pandas internal API, so # constructs invalid Block df["periods"] = pd.period_range("2013", freq="M", periods=3) diff --git a/pandas/tests/io/test_fsspec.py b/pandas/tests/io/test_fsspec.py index 0648c60eb5016..f1040c0bd30f2 100644 --- a/pandas/tests/io/test_fsspec.py +++ b/pandas/tests/io/test_fsspec.py @@ -1,10 +1,8 @@ import io -import sys import numpy as np import pytest -from pandas.compat import is_platform_windows from pandas.compat._optional import VERSIONS from pandas import ( @@ -162,10 +160,7 @@ def test_to_parquet_new_file(monkeypatch, cleared_fs): ) -@td.skip_if_no("pyarrow") -@pytest.mark.xfail( - is_platform_windows() and sys.version_info[:2] == (3, 8), reason="GH 45344" -) +@td.skip_if_no("pyarrow", min_version="2") def test_arrowparquet_options(fsspectest): """Regression test for writing to a not-yet-existent GCS Parquet file.""" df = DataFrame({"a": [0]}) diff --git a/pandas/tests/io/test_parquet.py b/pandas/tests/io/test_parquet.py index 00623b3b47134..decdf02dd3072 100644 --- a/pandas/tests/io/test_parquet.py +++ b/pandas/tests/io/test_parquet.py @@ -15,7 +15,7 @@ from pandas.compat.pyarrow import ( pa_version_under2p0, - pa_version_under3p0, + pa_version_under4p0, pa_version_under5p0, pa_version_under6p0, ) @@ -654,10 +654,8 @@ def test_use_nullable_dtypes(self, engine, request): "float", pytest.param( "period[D]", - # Note: I don't know exactly what version the cutoff is; - # On the CI it fails with 1.0.1 & 2.0.0 marks=pytest.mark.xfail( - pa_version_under3p0, + pa_version_under4p0, reason="pyarrow uses pandas internal API incorrectly", ), ), @@ -900,7 +898,7 @@ def test_pyarrow_backed_string_array(self, pa, string_storage): @td.skip_if_no("pyarrow") @pytest.mark.xfail( - pa_version_under3p0, reason="pyarrow uses pandas internal API incorrectly" + pa_version_under4p0, reason="pyarrow uses pandas internal API incorrectly" ) def test_additional_extension_types(self, pa): # test additional ExtensionArrays that are supported through the