...
Code Block | ||
---|---|---|
| ||
# Login to crates.io (You need to do this only for the first time) cargo login # If you don't have the latest Rust, you can install it automatically by INSTALL_RUST=yes: # INSTALL_RUST=yes dev/release/post-07-rust.sh 0.13.0 # If you have the latest Rust, you just run the following: # dev/release/post-07-rust.sh 0.13.0 dev/release/post-07-rust.sh <version> |
Updating CRAN packages to distribute R requires two steps:
- Building Window packages.
- Release to CRAN.
Updating CRAN packages
Building Window packages
The R Windows packages are currently built by an external system for reasons discussed in the mailing list (see https://lists.apache.org/thread.html/b7ac79f21226b2072aea1918e4eea251a995327bc7a6754aed22668e@%3Cdev.arrow.apache.org%3E).
Building the packages requires to either, request the maintainer of rwinlibs Jeroen Ooms <jeroenooms@gmail.com> to rebuild a release or to provide three PRs in rtools-packages, rtools-backports and rwinlib.
- rtools-packages: This repo contains the AppVeyor tools that automate building Windows binaries for RTools40 (next release). For an example PR see: https://github.com/r-windows/rtools-packages/pull/14. The output of the AppVeyor build produces two artifacts that you should download and decompress:
- mingw-w64-i686-arrow-0.13.0-1-any.pkg.tar.xz: Binaries for x86 under RTools40
- mingw-w64-x86_64-arrow-0.13.0-1-any.pkg.tar.xz: Binaries for x64 under RTools40
- rtools-backports: This repo contains the AppVeyor tools to automate building Windows binaries for RTools35 (current release). For an example PR see: https://github.com/r-windows/rtools-backports/pull/1. The output of the AppVeyor build produces two artifacts that your should download and decompress:
- mingw-w64-i686-arrow-0.13.0-1-any.pkg.tar.xz: Binaries for x86 under RTools35
- mingw-w64-x86_64-arrow-0.13.0-1-any.pkg.tar.xz: Binaries for x64 under RTools35
- rwinlib: This repo contains the binaries from merging the output from the x85/x64 builds for RTools35 and RTools40. For an example PR see: https://github.com/rwinlib/arrow/pull/1. This is the repo used by CRAN to download the precompiled libraries, instead of compiling them directly in CRAN.
Note: If the build process fails in the previous PR, send a PR or request a fix in the official Apache Arrow repo: https://github.com/apache/arrow
Release to CRAN
Releasing to CRAN is not documented here since it's already well documented in the following resource: https://cran.r-project.org/web/packages/policies.html. However, it is worth mentioning that winbuilder is a great resource to validate the Windows binaries and R package process builds currently under Windows. You can learn how to submit a package for testing in winbuilder here: https://win-builder.r-project.org/