Skip to content

Commit

Permalink
correct min version
Browse files Browse the repository at this point in the history
  • Loading branch information
MarcoGorelli committed Aug 13, 2024
1 parent b937b5f commit 086d45a
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 5 deletions.
4 changes: 2 additions & 2 deletions narwhals/dataframe.py
Original file line number Diff line number Diff line change
Expand Up @@ -265,10 +265,10 @@ def __arrow_c_stream__(self, requested_schema: object | None = None) -> object:
try:
import pyarrow as pa # ignore-banned-import
except ModuleNotFoundError as exc: # pragma: no cover
msg = f"PyArrow>=14.0.0 is required for `__arrow_c_stream__` for object of type {type(native_frame)}"
msg = f"PyArrow>=14.0.0 is required for `DataFrame.__arrow_c_stream__` for object of type {type(native_frame)}"
raise ModuleNotFoundError(msg) from exc
if parse_version(pa.__version__) < (14, 0): # pragma: no cover
msg = f"PyArrow>=14.0.0 is required for `__arrow_c_stream__` for object of type {type(native_frame)}"
msg = f"PyArrow>=14.0.0 is required for `DataFrame.__arrow_c_stream__` for object of type {type(native_frame)}"
raise ModuleNotFoundError(msg) from None
pa_table = self.to_arrow()
return pa_table.__arrow_c_stream__(requested_schema=requested_schema)
Expand Down
6 changes: 3 additions & 3 deletions narwhals/series.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,10 @@ def __arrow_c_stream__(self, requested_schema: object | None = None) -> object:
try:
import pyarrow as pa # ignore-banned-import
except ModuleNotFoundError as exc: # pragma: no cover
msg = f"PyArrow>=14.0.0 is required for `__arrow_c_stream__` for object of type {type(native_series)}"
msg = f"PyArrow>=16.0.0 is required for `Series.__arrow_c_stream__` for object of type {type(native_series)}"
raise ModuleNotFoundError(msg) from exc
if parse_version(pa.__version__) < (14, 0): # pragma: no cover
msg = f"PyArrow>=14.0.0 is required for `__arrow_c_stream__` for object of type {type(native_series)}"
if parse_version(pa.__version__) < (16, 0): # pragma: no cover
msg = f"PyArrow>=16.0.0 is required for `Series.__arrow_c_stream__` for object of type {type(native_series)}"
raise ModuleNotFoundError(msg)
ca = pa.chunked_array([self.to_arrow()])
return ca.__arrow_c_stream__(requested_schema=requested_schema)
Expand Down
1 change: 1 addition & 0 deletions tests/series_only/arrow_c_stream_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ def test_arrow_c_stream_test_fallback(monkeypatch: pytest.MonkeyPatch) -> None:
# Check that fallback to PyArrow works
monkeypatch.delattr("polars.Series.__arrow_c_stream__")
s = nw.from_native(pl.Series([1, 2, 3]).to_frame("a"), eager_only=True)["a"]
s.__arrow_c_stream__()
result = pa.chunked_array(s)
expected = pa.chunked_array([[1, 2, 3]])
assert pc.all(pc.equal(result, expected)).as_py()

0 comments on commit 086d45a

Please sign in to comment.