-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
GH-38043: [R] Enable all features by default on macOS #38195
Conversation
Using cmake here is good as it mirrors the actual build so we fail fast. Replacing the test compile with the cmake check would require cmake even if we use pre-compiled binary which we don't want.
@github-actions crossbow submit r-binary-packages |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
@github-actions crossbow submit r-binary-packages |
Revision: 9d40184 Submitted crossbow builds: ursacomputing/crossbow @ actions-3b4a613597
|
Revision: 4ddbeaf Submitted crossbow builds: ursacomputing/crossbow @ actions-28d06e21a7
|
(After r-binary-packages passes I'll give a shot locally!) |
Some weirdness going on with the linux deps but mac works!
|
sudo was run in clean env as `-E` was missing, so nothing was ever installed. As we don't need test bench etc we can just call apt directly.
Ok I'll give it a go! |
Thanks for testing @jonkeane !
In the follow up #38236 I automatically set not_cran when we are in a dev build, which should make the dev experience on especially linux but overall much smoother as you also won't have to fiddle with allow lists or such to get the binaries. I am a bit hesitant to remove the 2 core cap by default for release builds as we could still have to build from source on cran (BDR special checks? Condition for use of binaries ...). Mac users will get the cran binary anyway and through the allow list a majority of the linux users will also get binaries, so I think the reward doesn't justify the risk of a policy violation. (I also think that the 2 core think is a philosophical stance not necessarily limited to builds on cran, at least going by recent r dev ml threads...)
😱 I didn't change anything there so I am pretty sure that was already happening (on linuc), so it looks like you are right and the short burst is within tolerance? Thanks @paleolimbot !
Hm that should not be a problem normally though unless there is some version mismatch? The 10.13 runner also has brew and even has the deps installed but no problem arises... as this is a definitive dev use case I think it's ok to have people manually set the deps source var if the problem happens. Could you try with |
@github-actions crossbow submit -g r |
Revision: 9d209a6 Submitted crossbow builds: ursacomputing/crossbow @ actions-431cdc81fd |
I'll debug my source build separately from this PR
That primarily affects the development experience, and we're not planning to have that be the primary means by which any MacOS developer gets an Arrow build. If it turns out that it is, we can fix that incrementally after the release. |
Co-authored-by: Jonathan Keane <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With a green nightlies run (minus any "device out of space" errors), I think this particular chunk of the larger build system refactor is good to go! Thank you!
@@ -736,11 +738,6 @@ with_cloud_support <- function(env_var_list) { | |||
cat("**** ", start_msg, " support ", msg, "; building with ", off_flags, "\n") | |||
} | |||
|
|||
# Check the features |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's reasonable to have some comment here explaing why this step exists; however, I think a wholistic review of comments on the entire script is better suited to #38236 (after rebase) (and the existing comment doesn't make this clear to me, at least).
### Rationale for this change Previously GCS/S3 support would need to be explicitly enabled in source builds (when they are build without `NOT_CRAN`). As we want the macos binaries to be fully featured we should turn the features on when the dependencies exists. ### What changes are included in this PR? This PR enables this behavior for macOS only, on Linux setting `NOT_CRAN` or `LIBARROW_MINIMAL=false` is still required. ### Are these changes tested? Crossbow and locally (thanks @ paleolimbot ) * Closes: #38043 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Co-authored-by: Jonathan Keane <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
After merging your PR, Conbench analyzed the 6 benchmarking runs that have been run so far on merge-commit 4bf777a. There was 1 benchmark result indicating a performance regression:
The full Conbench report has more details. It also includes information about 4 possible false positives for unstable benchmarks that are known to sometimes produce them. |
…8195) ### Rationale for this change Previously GCS/S3 support would need to be explicitly enabled in source builds (when they are build without `NOT_CRAN`). As we want the macos binaries to be fully featured we should turn the features on when the dependencies exists. ### What changes are included in this PR? This PR enables this behavior for macOS only, on Linux setting `NOT_CRAN` or `LIBARROW_MINIMAL=false` is still required. ### Are these changes tested? Crossbow and locally (thanks @ paleolimbot ) * Closes: apache#38043 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Co-authored-by: Jonathan Keane <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…38236) ### Rationale for this change We currently need to manually download the latest nightly build as the ".9000' dev version never matches any nightly builds. ### What changes are included in this PR? Check the nightly repo html listing for the latest version matching the local major version. Refactor nixlibs.R and integrate the functionality of winlibs.R into it to simplify maintenance and prepare for the future of in-line windows libarrow builds. These changes are build on #38195 so once that is merged I will rebase this. ### Are these changes tested? Crossbow * Closes: #27839 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…ons. (apache#38236) ### Rationale for this change We currently need to manually download the latest nightly build as the ".9000' dev version never matches any nightly builds. ### What changes are included in this PR? Check the nightly repo html listing for the latest version matching the local major version. Refactor nixlibs.R and integrate the functionality of winlibs.R into it to simplify maintenance and prepare for the future of in-line windows libarrow builds. These changes are build on apache#38195 so once that is merged I will rebase this. ### Are these changes tested? Crossbow * Closes: apache#27839 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…ons. (apache#38236) ### Rationale for this change We currently need to manually download the latest nightly build as the ".9000' dev version never matches any nightly builds. ### What changes are included in this PR? Check the nightly repo html listing for the latest version matching the local major version. Refactor nixlibs.R and integrate the functionality of winlibs.R into it to simplify maintenance and prepare for the future of in-line windows libarrow builds. These changes are build on apache#38195 so once that is merged I will rebase this. ### Are these changes tested? Crossbow * Closes: apache#27839 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…8195) ### Rationale for this change Previously GCS/S3 support would need to be explicitly enabled in source builds (when they are build without `NOT_CRAN`). As we want the macos binaries to be fully featured we should turn the features on when the dependencies exists. ### What changes are included in this PR? This PR enables this behavior for macOS only, on Linux setting `NOT_CRAN` or `LIBARROW_MINIMAL=false` is still required. ### Are these changes tested? Crossbow and locally (thanks @ paleolimbot ) * Closes: apache#38043 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Co-authored-by: Jonathan Keane <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…ons. (apache#38236) ### Rationale for this change We currently need to manually download the latest nightly build as the ".9000' dev version never matches any nightly builds. ### What changes are included in this PR? Check the nightly repo html listing for the latest version matching the local major version. Refactor nixlibs.R and integrate the functionality of winlibs.R into it to simplify maintenance and prepare for the future of in-line windows libarrow builds. These changes are build on apache#38195 so once that is merged I will rebase this. ### Are these changes tested? Crossbow * Closes: apache#27839 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…38236) ### Rationale for this change We currently need to manually download the latest nightly build as the ".9000' dev version never matches any nightly builds. ### What changes are included in this PR? Check the nightly repo html listing for the latest version matching the local major version. Refactor nixlibs.R and integrate the functionality of winlibs.R into it to simplify maintenance and prepare for the future of in-line windows libarrow builds. These changes are build on #38195 so once that is merged I will rebase this. ### Are these changes tested? Crossbow * Closes: #27839 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…8195) ### Rationale for this change Previously GCS/S3 support would need to be explicitly enabled in source builds (when they are build without `NOT_CRAN`). As we want the macos binaries to be fully featured we should turn the features on when the dependencies exists. ### What changes are included in this PR? This PR enables this behavior for macOS only, on Linux setting `NOT_CRAN` or `LIBARROW_MINIMAL=false` is still required. ### Are these changes tested? Crossbow and locally (thanks @ paleolimbot ) * Closes: apache#38043 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Co-authored-by: Jonathan Keane <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
…ons. (apache#38236) ### Rationale for this change We currently need to manually download the latest nightly build as the ".9000' dev version never matches any nightly builds. ### What changes are included in this PR? Check the nightly repo html listing for the latest version matching the local major version. Refactor nixlibs.R and integrate the functionality of winlibs.R into it to simplify maintenance and prepare for the future of in-line windows libarrow builds. These changes are build on apache#38195 so once that is merged I will rebase this. ### Are these changes tested? Crossbow * Closes: apache#27839 Lead-authored-by: Jacob Wujciak-Jens <[email protected]> Co-authored-by: Dewey Dunnington <[email protected]> Signed-off-by: Jacob Wujciak-Jens <[email protected]>
Rationale for this change
Previously GCS/S3 support would need to be explicitly enabled in source builds (when they are build without
NOT_CRAN
). As we want the macos binaries to be fully featured we should turn the features on when the dependencies exists.What changes are included in this PR?
This PR enables this behavior for macOS only, on Linux setting
NOT_CRAN
orLIBARROW_MINIMAL=false
is still required.Are these changes tested?
Crossbow and locally (thanks @paleolimbot )