-
Notifications
You must be signed in to change notification settings - Fork 4k
GH-45921: [Release][R] Use GitHub Release not apache.jfrog.io #45964
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
Conversation
|
|
|
Thanks @kou. I think GitHub Releases should work fine though others may be aware of other issues. Do I have it right that release assets aren't subject to rate limiting? |
|
Right. GitHub mentions API rate limit explicitly: https://docs.github.com/en/rest/using-the-rest-api/rate-limits-for-the-rest-api?apiVersion=2022-11-28 |
|
I am ok with this in principle but it might cause issues with CRAN as they are known to dislike GIthub for not being a 'reliable' source. Not that I agree, I think it's a pretty ridiculous statement but what ever. I don't think that they have any blocks in place but we should be aware anyway. There are a number of packages that download stuff from github so there's that: https://github.com/search?q=org%3Acran+%2Fgithub.com%5C%2F.*%5C%2Freleases%2F+language%3AR&type=code&l=R |
|
Thanks for sharing the note. This is only for the pre-built C++ binaries not the source archive. The source archive URL isn't change. I thought that we doesn't use the pre-built C++ binaries on CRAN. We use bundled C++ on CRAN instead. Is it correct? |
We use bundled C++ for macos and linux on CRAN, but for windows we do use pre-built binaries. @assignUser has been working on getting arrow stuff ported to MXE so that we can be in compliance with that process for CRAN but IIUC, that's not done yet. We might be ok to have a github link to the binary there (I don't believe that they specifically check the URL / block github, just that if we talk about it loudly they will complain that that's not acceptable — maybe that "just" makes it so we need to speed up the MXE work?) |
|
Oh, sorry. I misunderstood... |
We are not planning to remove the previous binaries from jfrog right? So I don't have an issue with that and I don't think we need to create past releases as Github releases or in maven.
Agreed, I think we can try it out.
I think we should mark their use for r somehow in the file name but agree that we can reduce the name by a lot. |
Right. We must not remove the previous binaries for keeping backward compatibility.
How about |
40737ae to
30fd756
Compare
Related to #36193, if you do change the URLs, I think it is useful that the Linux and Windows ones be made arm64 compliant as well, including the CPU architecture. |
|
Hi @kou, I think that URL pattern looks good. Do we want to try this for the 21 release? cc @assignUser |
|
Ah, sorry. I haven't completed this yet. Let's try this in the 22 release. I want to try automated release signing for source archive in the 21 release. |
|
Sounds good. Thanks for your work on this (and that). |
30fd756 to
c8fe76a
Compare
|
I restart this for 22.0.0. I'll use the following filenames: |
c8fe76a to
08dee0a
Compare
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
08dee0a to
c919967
Compare
|
@github-actions crossbow submit r-binary-packages |
This comment was marked as outdated.
This comment was marked as outdated.
|
Oh, right. I was downloading the Actions artifact which wraps the file up in a zip. Sorry for the mistake. Yeah, removing the inner folder would be good I think. |
This reverts commit 8e1bda2. This is needed.
|
Hmm. $ unzip -l arrow-21.0.0.zip | head
Archive: arrow-21.0.0.zip
Length Date Time Name
--------- ---------- ----- ----
0 2025-07-11 18:04 arrow-21.0.0/
0 2025-07-11 16:58 arrow-21.0.0/include/
0 2025-07-11 16:58 arrow-21.0.0/include/arrow/
0 2025-07-11 16:58 arrow-21.0.0/include/arrow/acero/
5985 2025-07-11 16:58 arrow-21.0.0/include/arrow/acero/accumulation_queue.h
2201 2025-07-11 16:58 arrow-21.0.0/include/arrow/acero/aggregate_node.h
1151 2025-07-11 16:58 arrow-21.0.0/include/arrow/acero/api.hWhere did you download |
|
Odd. Maybe there is just some platform difference and everything is fine. # I get the URL from the R package by asking it to install with the binaries
$ wget https://apache.jfrog.io/artifactory/arrow/r/21.0.0/libarrow/bin/darwin-arm64-openssl-3.0/arrow-21.0.0.zip
$ unzip -l arrow-21.0.0.zip | head
Archive: arrow-21.0.0.zip
Length Date Time Name
--------- ---------- ----- ----
0 07-11-2025 00:57 lib/
0 07-11-2025 00:57 lib/pkgconfig/
1195 07-11-2025 00:55 lib/pkgconfig/arrow-dataset.pc
1006 07-11-2025 00:55 lib/pkgconfig/arrow-csv.pc
1176 07-11-2025 00:55 lib/pkgconfig/parquet.pc
1008 07-11-2025 00:55 lib/pkgconfig/arrow-json.pc
1096 07-11-2025 00:55 lib/pkgconfig/arrow-compute.pcEdit: It looks like all the packages on https://packages.apache.org/ui/native/arrow/r/21.0.0/libarrow/bin/windows/ are as you say so I'm comparing the wrong packages. Maybe everything is fine? |
I think so. FYI: I don't know why but only Windows binaries use different directory structure: Lines 993 to 1000 in 479662e
I can unify them (all binaries have the top-level directory or all binaries don't have the top-level directory) but a follow-up task is better. |
Absolutely. Thanks again for the work on this. |
|
I'll merge this in this week if nobody objects this. |
raulcd
left a comment
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.
From the limited knowledge I have on the R binaries / package, this seems reasonable to me.
Thanks @kou for working on this!
jonkeane
left a comment
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.
Thanks for this. As we said at the start, there is a small chance that this will bonk us with CRAN and we will need to do something else for the windows builds. But I'm ok to try it. Our windows builds on CRAN have been pretty stable recently so I'm not super worried that will be the flag that goes up next release.
Thanks, again!
| name: r-libarrow-darwin-{{ arch }}-openssl-{{ openssl_version }} | ||
| path: repo/libarrow |
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.
So much cleaner, thank you!
|
@github-actions crossbow submit r-binary-packages |
|
Revision: 32d6c41 Submitted crossbow builds: ursacomputing/crossbow @ actions-5df309f890
|
|
After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit 19e3f90. There were no benchmark performance regressions. 🎉 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. |
### Rationale for this change #45964 changed paths of pre-built Apache Arrow C++ binaries for R. But we forgot to update the nightly upload job. ### What changes are included in this PR? Update paths in the nightly upload job. ### Are these changes tested? No... ### Are there any user-facing changes? Yes. * GitHub Issue: #47704 Authored-by: Sutou Kouhei <[email protected]> Signed-off-by: Nic Crane <[email protected]>
### Rationale for this change #45964 changed paths of pre-built Apache Arrow C++ binaries for R. But we forgot to update the nightly upload job. ### What changes are included in this PR? Update paths in the nightly upload job. ### Are these changes tested? No... ### Are there any user-facing changes? Yes. * GitHub Issue: #47704 Authored-by: Sutou Kouhei <[email protected]> Signed-off-by: Nic Crane <[email protected]>
…pache#45964) ### Rationale for this change We want to stop using apache.jfrog.io as much as possible. See also: apache#40760 We can use https://github.com/apache/arrow/releases as alternative. ### What changes are included in this PR? If we use GitHub Release, we can automate uploading by GitHub Actions. But GitHub Release doesn't support directory structure. So we need to put all artifacts to https://github.com/apache/arrow/releases/download/apache-arrow-X.Y.Z/ . For example: apache.jfrog.io: ```text libarrow/bin/darwin-arm64-openssl-1.1/arrow-X.Y.Z.zip libarrow/bin/darwin-arm64-openssl-3.0/arrow-X.Y.Z.zip libarrow/bin/darwin-x86_64-openssl-1.1/arrow-X.Y.Z.zip libarrow/bin/darwin-x86_64-openssl-3.0/arrow-X.Y.Z.zip libarrow/bin/linux-openssl-1.0/arrow-X.Y.Z.zip libarrow/bin/linux-openssl-1.1/arrow-X.Y.Z.zip libarrow/bin/linux-openssl-3.0/arrow-X.Y.Z.zip libarrow/bin/windows/arrow-X.Y.Z.zip ``` GitHub Actions: ```text r-libarrow-darwin-arm64-openssl-1.1--X.Y.Z.zip r-libarrow-darwin-arm64-openssl-3.0-X.Y.Z.zip r-libarrow-darwin-x86_64-openssl-1.1-X.Y.Z.zip r-libarrow-darwin-x86_64-openssl-3.0-X.Y.Z.zip r-libarrow-linux-x86_64-openssl-1.0-X.Y.Z.zip r-libarrow-linux-x86_64-openssl-1.1-X.Y.Z.zip r-libarrow-linux-x86_64-openssl-3.0-X.Y.Z.zip r-libarrow-windows-x86_64-X.Y.Z.zip ``` ### Are these changes tested? No. ### Are there any user-facing changes? Yes. Custom `arrow_repo` doesn't work because URL is changed. * GitHub Issue: apache#45921 Lead-authored-by: Sutou Kouhei <[email protected]> Co-authored-by: Sutou Kouhei <[email protected]> Signed-off-by: Sutou Kouhei <[email protected]>
…he#47727) ### Rationale for this change apache#45964 changed paths of pre-built Apache Arrow C++ binaries for R. But we forgot to update the nightly upload job. ### What changes are included in this PR? Update paths in the nightly upload job. ### Are these changes tested? No... ### Are there any user-facing changes? Yes. * GitHub Issue: apache#47704 Authored-by: Sutou Kouhei <[email protected]> Signed-off-by: Nic Crane <[email protected]>
Rationale for this change
We want to stop using apache.jfrog.io as much as possible. See also: #40760
We can use https://github.com/apache/arrow/releases as alternative.
What changes are included in this PR?
If we use GitHub Release, we can automate uploading by GitHub Actions.
But GitHub Release doesn't support directory structure. So we need to put all artifacts to https://github.com/apache/arrow/releases/download/apache-arrow-X.Y.Z/ .
For example:
apache.jfrog.io:
GitHub Actions:
Are these changes tested?
No.
Are there any user-facing changes?
Yes. Custom
arrow_repodoesn't work because URL is changed.