Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adapt to polars upstream changes and turn on CI testing #16081

Merged

Conversation

wence-
Copy link
Contributor

@wence- wence- commented Jun 25, 2024

Description

They changed the semantics of join keys when those keys are expressions to more closely match SQL.

Dtype inference is also tighter, so update tests to adapt to those changes, and some other small deprecation warnings.

Finish the final missing coverage piece and turn on testing in CI (failing if we don't hit 100% coverage as well).

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@wence- wence- requested review from a team as code owners June 25, 2024 14:04
@wence- wence- added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Jun 25, 2024
@github-actions github-actions bot added Python Affects Python cuDF API. cudf.polars Issues specific to cudf.polars and removed improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Jun 25, 2024
ci/test_cudf_polars.sh Outdated Show resolved Hide resolved
ci/test_cudf_polars.sh Outdated Show resolved Hide resolved
ci/test_cudf_polars.sh Outdated Show resolved Hide resolved
ci/test_cudf_polars.sh Show resolved Hide resolved
ci/test_cudf_polars.sh Show resolved Hide resolved
python/cudf_polars/cudf_polars/dsl/ir.py Show resolved Hide resolved
@wence- wence- force-pushed the wence/fea/adapt-polars-upstream branch 3 times, most recently from 0431028 to 80add5e Compare June 25, 2024 14:31
@wence- wence- added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Jun 25, 2024
@wence- wence- force-pushed the wence/fea/adapt-polars-upstream branch from 80add5e to 12c212a Compare June 25, 2024 14:59
ci/test_cudf_polars.sh Outdated Show resolved Hide resolved
@wence- wence- force-pushed the wence/fea/adapt-polars-upstream branch from 40c67eb to dee33d2 Compare June 25, 2024 15:50
@wence- wence- marked this pull request as draft June 25, 2024 15:51
@wence-
Copy link
Contributor Author

wence- commented Jun 25, 2024

OK, the test aspects are working, but it turns out I have a load of python 3.10isms which need to be fixed...

@wence- wence- force-pushed the wence/fea/adapt-polars-upstream branch from 946550e to e3ddf7a Compare June 26, 2024 11:18
@wence- wence- marked this pull request as ready for review June 26, 2024 11:19
@wence-
Copy link
Contributor Author

wence- commented Jun 26, 2024

Ready for a proper look.

@wence- wence- force-pushed the wence/fea/adapt-polars-upstream branch from e3ddf7a to 6047282 Compare June 26, 2024 15:18
Copy link
Contributor

@lithomas1 lithomas1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Python changes LGTM!

Thanks for putting this up!

@lithomas1
Copy link
Contributor

I have a couple more questions above (maybe more for the CI people than for you) for the CI side of things, but I'll let the CI reviewer handle reviews for those parts of this PR in more detail.

Copy link
Member

@jameslamb jameslamb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reviewed this from the CI/packaging perspective and left some recommendations about simplifying how the polars dependency is managed.

Marking this "Approve" so you can do what you want with them without my review blocking merge... since my recommendations are about simplification and not correctness.

ci/test_cudf_polars.sh Show resolved Hide resolved
wence- added 13 commits June 27, 2024 09:24
New feature in Python 3.10, so we need the backport while we support 3.9.
This only exists in Python >= 3.10
The short X | Y syntax is Python >= 3.10 only.
Explicitly set dtype when we want nans in our output.
The broadcasting rules are not very clear on the polars side, so let's
just defer to them. This should be a niche use case anyway: joining
against a literal is better written as a filter.
This is closer to the SQL behaviour and was changed by polars in
pola-rs/polars#17061.
Now we don't have literal keys we can simplify the broadcast, but add
note referencing polars issue on clarifications.
Duplicate output names need to raised by us.
@wence- wence- force-pushed the wence/fea/adapt-polars-upstream branch from f12d7be to f4c2168 Compare June 27, 2024 09:24
@wence-
Copy link
Contributor Author

wence- commented Jun 27, 2024

/merge

@rapids-bot rapids-bot bot merged commit fa8284d into rapidsai:branch-24.08 Jun 27, 2024
77 checks passed
@wence- wence- deleted the wence/fea/adapt-polars-upstream branch June 27, 2024 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cudf.polars Issues specific to cudf.polars improvement Improvement / enhancement to an existing function non-breaking Non-breaking change Python Affects Python cuDF API.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants