Skip to content

Commit c8302e8

Browse files
thisisnicjonkeane
authored andcommitted
GH-48397: [R] Update docs on how to get our libarrow builds (#48995)
### Rationale for this change Turning off GCS on CRAN to prevent excessive build times, need to tell people who wanna work with GCS how to do that. ### What changes are included in this PR? Update docs. ### Are these changes tested? Will preview docs build. ### Are there any user-facing changes? Just docs. * GitHub Issue: #48397 Authored-by: Nic Crane <thisisnic@gmail.com> Signed-off-by: Nic Crane <thisisnic@gmail.com>
1 parent bdec4f2 commit c8302e8

3 files changed

Lines changed: 19 additions & 4 deletions

File tree

r/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ It allows users to read and write data in a variety of formats:
6464

6565
It provides access to remote filesystems and servers:
6666

67-
- Read and write files in Amazon S3 and Google Cloud Storage buckets
67+
- Read and write files in Amazon S3 and Google Cloud Storage buckets (note: CRAN builds include S3 support but not GCS which require an alternative installation method; see the [cloud storage article](https://arrow.apache.org/docs/r/articles/fs.html) for details)
6868
- Connect to Arrow Flight servers to transport large datasets over networks
6969

7070
Additional features include:

r/vignettes/fs.Rmd

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ To make this work, the Arrow C++ library contains a general-purpose interface fo
1212

1313
This article provides an overview of working with both S3 and GCS data using the Arrow toolkit.
1414

15-
## S3 and GCS support on Linux
15+
## S3 and GCS support
1616

17-
Before you start, make sure that your arrow install has support for S3 and/or GCS enabled. For most users this will be true by default, because the Windows and macOS binary packages hosted on CRAN include S3 and GCS support. You can check whether support is enabled via helper functions:
17+
Before you start, make sure that your arrow installation has support for S3 and/or GCS enabled. You can check whether support is enabled via helper functions:
1818

1919
```r
2020
arrow_with_s3()
@@ -23,7 +23,20 @@ arrow_with_gcs()
2323

2424
If these return `TRUE` then the relevant support is enabled.
2525

26-
In some cases you may find that your system does not have support enabled. The most common case for this occurs on Linux when installing arrow from source. In this situation S3 and GCS support is not always enabled by default, and there are additional system requirements involved. See the [installation article](./install.html) for details on how to resolve this.
26+
CRAN builds of arrow include S3 support but not GCS support. If you need GCS support, you can install arrow with full features using one of the following methods:
27+
28+
```r
29+
# Option 1: Install from R-universe
30+
install.packages("arrow", repos = "https://apache.r-universe.dev")
31+
```
32+
33+
```r
34+
# Option 2: Reinstall from source with full features
35+
Sys.setenv("NOT_CRAN" = "true")
36+
install.packages("arrow", type = "source")
37+
```
38+
39+
On Linux, S3 and GCS support is not always enabled by default when installing from source, and there are additional system requirements involved. See the [installation article](./install.html) for details.
2740

2841
## Connecting to cloud storage
2942

r/vignettes/install.Rmd

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ output: rmarkdown::html_vignette
88

99
In most cases, `install.packages("arrow")` should just work. There are things you can do to make the installation faster, documented in this article. If for some reason installation does not work, set the environment variable `ARROW_R_DEV=true`, retry, and share the logs with us.
1010

11+
Note that CRAN builds of arrow have some optional features disabled, including Google Cloud Storage (GCS) support. If you need these features, see the information below on [building with a libarrow binary](#r-source-package-with-libarrow-binary), or the [cloud storage article](./fs.html#s3-and-gcs-support) for alternative installation options.
12+
1113
## Background
1214

1315
The Apache Arrow project is implemented in multiple languages, and the R package depends on the Arrow C++ library (referred to from here on as libarrow). This means that when you install arrow, you need both the R and C++ versions. If you install arrow from CRAN on a machine running Windows or macOS, when you call `install.packages("arrow")`, a precompiled binary containing both the R package and libarrow will be downloaded. However, CRAN does not host R package binaries for Linux, and so you must choose from one of the alternative approaches.

0 commit comments

Comments
 (0)