Skip to content

GH-14981: [R] Forward compatibility with dplyr::join_by() - #33664

Merged
paleolimbot merged 2 commits into
apache:masterfrom
ianmcook:GH-14981
Jan 15, 2023
Merged

GH-14981: [R] Forward compatibility with dplyr::join_by() #33664
paleolimbot merged 2 commits into
apache:masterfrom
ianmcook:GH-14981

Conversation

@ianmcook

@ianmcookianmcook commented Jan 14, 2023

Copy link
Copy Markdown
Member

Which issue does this PR close?

Closes#14981

Rationale for this change

dplyr 1.1.0 introduces a new function join_by() for specifying join conditions. This PR adds support for join_by() in dplyr joins on Arrow objects. The support is limited only to equality conditions. Code added in this PR throws an error if the user specifies inequality conditions or uses helper functions in join_by().

https://www.tidyverse.org/blog/2022/11/dplyr-1-1-0-is-coming-soon/#join-improvements

What changes are included in this PR?

  • Code to handle join_by() in dplyr joins on Arrow objects with equality conditions
  • Tests of handling of join_by(), which are skipped when the version of dplyr is less than 1.0.99.9000 which is the current version number of the development version of dplyr on GitHub which that become version 1.1.0 on CRAN.

Are these changes tested?

Yes

Are there any user-facing changes?

Yes, the new dplyr syntax for specifying join conditions is supported, but use of this new syntax is optional. The old dplyr join syntax will continue to work. There are no breaking changes in this PR.

@github-actions

Copy link
Copy Markdown

@paleolimbotpaleolimbot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you!

@paleolimbot
paleolimbot merged commit fbcaee1 into apache:masterJan 15, 2023
@ursabot

Copy link
Copy Markdown

Benchmark runs are scheduled for baseline = a49b0f8 and contender = fbcaee1. fbcaee1 is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished ⬇️0.0% ⬆️0.0%] ec2-t3-xlarge-us-east-2
[Failed ⬇️0.48% ⬆️0.0%] test-mac-arm
[Finished ⬇️0.77% ⬆️0.0%] ursa-i9-9960x
[Finished ⬇️0.12% ⬆️0.0%] ursa-thinkcentre-m75q
Buildkite builds:
[Finished] fbcaee1e ec2-t3-xlarge-us-east-2
[Finished] fbcaee1e test-mac-arm
[Finished] fbcaee1e ursa-i9-9960x
[Finished] fbcaee1e ursa-thinkcentre-m75q
[Finished] a49b0f8f ec2-t3-xlarge-us-east-2
[Failed] a49b0f8f test-mac-arm
[Finished] a49b0f8f ursa-i9-9960x
[Finished] a49b0f8f ursa-thinkcentre-m75q
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python, R. Runs only benchmarks with cloud = True
test-mac-arm: Supported benchmark langs: C++, Python, R
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java

@ursabot

Copy link
Copy Markdown

['Python', 'R'] benchmarks have high level of regressions.
ursa-i9-9960x

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[R] Forward compatibility for dplyr::join_by() output

3 participants

@ianmcook@ursabot@paleolimbot