-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
depr(rust!, python): Deprecate how="outer"
join type in favour of how="full"
(left/right are *also* outer joins)
#16417
depr(rust!, python): Deprecate how="outer"
join type in favour of how="full"
(left/right are *also* outer joins)
#16417
Conversation
25b5b5b
to
2d51973
Compare
…w="full"` (left/right are *also* outer joins)
2d51973
to
e8903fd
Compare
CodSpeed Performance ReportMerging #16417 will improve performances by 15.87%Comparing Summary
Benchmarks breakdown
|
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #16417 +/- ##
==========================================
- Coverage 81.43% 81.43% -0.01%
==========================================
Files 1409 1409
Lines 184567 184568 +1
Branches 2962 2963 +1
==========================================
- Hits 150304 150299 -5
- Misses 33747 33752 +5
- Partials 516 517 +1 ☔ View full report in Codecov by Sentry. |
Isn't this a breaking change to Rust? |
how="outer"
join type in favour of how="full"
(left/right are *also* outer joins)how="outer"
join type in favour of how="full"
(left/right are *also* outer joins)
…how="full"` (left/right are *also* outer joins) (pola-rs#16417)
Summary
As discussed in the dev chat a month or so back, "outer" is actually not a good alias for "full outer", as both "left" and "right" are also types of "outer" join. We drop the "outer" from "left outer" to get "left", and it would be consistent (and more accurate) to do the same for "full outer" as well.
Deprecation
This PR deprecates use of "outer" in favour of "full", as below:
Python 🐍
Straightforward/standard deprecation:
how="outer"
continues to work for now, but triggers aDeprecationWarning
advising use ofhow="full"
.join
andupdate
now set thecoalesce
flag instead of relying on the also-deprecated "outer_coalesce".Rust 🦀
We could use
#[deprecated(since="0.42.0", note="please use 'full_join' instead")]
, but we haven't really been doing this on the Rust side, so in this PR I have simply made the change. Let me know if anyone prefers#[deprecated(since=...
fn outer_join
→fn full_join
(or perhapsfull_outer_join
to help anyone searching for "outer"?)JoinType::Outer
→JoinType::Full
(or perhaps we update to::FullOuter
- and::LeftOuter
?)GenericOuterJoinProbe
→GenericFullOuterJoinProbe
.Docs and User Guide