From 522e2edc8ae0ae613e8b048ce5b97fae84fab54b Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 30 Sep 2026 13:38:48 +0100 Subject: [PATCH 1/5] Update NEWS and README --- r/NEWS.md | 27 +++++++++++++++++++++++++++ r/README.md | 4 ++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/r/NEWS.md b/r/NEWS.md index 1bda314ee7f..a8537418dbe 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -23,9 +23,31 @@ - The `.data.frame` argument to `map_batches()`, deprecated since 9.0.0, has been removed. Call `collect()` on the result to get a data frame (#51655). +- `read_feather()` and `write_feather()` now warn that they are deprecated. Use + `read_ipc_file()` and `write_ipc_file()` instead. Similarly, + `format = "feather"` in `open_dataset()` and `write_dataset()` is deprecated + in favour of `format = "ipc"`, and extra arguments passed via `...` to + `read_ipc_stream()` and `write_ipc_stream()` are deprecated and ignored + (#49237). + +## New features + +- New `AzureFileSystem` class and `az_container()` helper for working with + Azure Blob Storage, analogous to `S3FileSystem` and `s3_bucket()`. Azure + support is enabled by default when building from source if libxml2 is + available, except on Windows (@marberts, #32123). ## Minor improvements and fixes +- Variables with the same name as a function, such as `date`, can now be used + in dplyr verbs (#39688). +- R API requests made from parallel code are now thread-safe (#50239). +- Reading Parquet files with `float16` columns now returns the correct values + (#50378). +- `if_else()` now works when one branch is a bare `NA` and the other is a date + or timestamp (#38358). +- `mutate()` with `if_any()` or `if_all()` now gives the new column the correct + name (#34860). - Factor levels inside list columns are now unified across the whole column when converting to R, so data read in multiple batches (e.g. via `read_ipc_stream()` or `open_dataset()`) produces valid factors that can be @@ -36,6 +58,11 @@ `pull()` will keep returning an R vector by default; use `as_vector = FALSE` or `options(arrow.pull_as_vector = FALSE)` to get a `ChunkedArray` (#51655). +- `register_scalar_function()` now checks that the names in `in_type` match + the arguments of `fun`, instead of silently ignoring them (#37761). +- `str_replace()` with an `NA` replacement now returns `NA` for matched + elements, matching stringr (@Gosling-dude, #33432). +- `summarise()` after `arrange()` now works (#45373). # arrow 25.0.1 diff --git a/r/README.md b/r/README.md index 268ee24bdf0..595a6a798ba 100644 --- a/r/README.md +++ b/r/README.md @@ -56,7 +56,7 @@ tasks. It allows users to read and write data in a variety of formats: - Read and write Parquet files, an efficient and widely used columnar format -- Read and write Arrow (formerly known as Feather) files, a format optimized for speed and +- Read and write Arrow IPC (formerly known as Feather) files, a format optimized for speed and interoperability - Read and write CSV files with excellent speed and efficiency - Read and write multi-file and larger-than-memory datasets @@ -64,7 +64,7 @@ It allows users to read and write data in a variety of formats: It provides access to remote filesystems and servers: -- 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) +- Read and write files in Amazon S3, Google Cloud Storage, and Azure Blob Storage (note: CRAN builds include S3 support but not GCS, which requires an alternative installation method; Azure is not currently available on Windows. See the [cloud storage article](https://arrow.apache.org/docs/r/articles/fs.html) for details) - Connect to Arrow Flight servers to transport large datasets over networks Additional features include: From 9968d82e196a204e6221a1cba9c18a3beb0c19f0 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 30 Sep 2026 14:01:32 +0100 Subject: [PATCH 2/5] Tidy up NEWS --- r/NEWS.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/r/NEWS.md b/r/NEWS.md index a8537418dbe..36e90033128 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -34,14 +34,14 @@ - New `AzureFileSystem` class and `az_container()` helper for working with Azure Blob Storage, analogous to `S3FileSystem` and `s3_bucket()`. Azure - support is enabled by default when building from source if libxml2 is - available, except on Windows (@marberts, #32123). + support is enabled by default when building from source on Linux and macOS, + provided the required system libraries are available; see + `vignette("install", package = "arrow")` (@marberts, #32123). ## Minor improvements and fixes - Variables with the same name as a function, such as `date`, can now be used in dplyr verbs (#39688). -- R API requests made from parallel code are now thread-safe (#50239). - Reading Parquet files with `float16` columns now returns the correct values (#50378). - `if_else()` now works when one branch is a bare `NA` and the other is a date From f9838bd95f87d14bb6e49998d3d4f3ad8767f520 Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 30 Sep 2026 14:37:42 +0100 Subject: [PATCH 3/5] Fix Azure change and prmote checking --- r/NEWS.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/r/NEWS.md b/r/NEWS.md index 36e90033128..e91354684a5 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -29,14 +29,15 @@ in favour of `format = "ipc"`, and extra arguments passed via `...` to `read_ipc_stream()` and `write_ipc_stream()` are deprecated and ignored (#49237). +- `register_scalar_function()` now checks that the names in `in_type` match + the arguments of `fun`, instead of silently ignoring them (#37761). ## New features - New `AzureFileSystem` class and `az_container()` helper for working with - Azure Blob Storage, analogous to `S3FileSystem` and `s3_bucket()`. Azure - support is enabled by default when building from source on Linux and macOS, - provided the required system libraries are available; see - `vignette("install", package = "arrow")` (@marberts, #32123). + Azure Blob Storage, analogous to `S3FileSystem` and `s3_bucket()`. See + `vignette("install", package = "arrow")` for how to enable Azure support + when building from source (@marberts, #32123). ## Minor improvements and fixes From a392f9eb04ef38e4eceda2b12f86a8cda1b5fb3f Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 30 Sep 2026 14:38:22 +0100 Subject: [PATCH 4/5] Rephrase --- r/NEWS.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/r/NEWS.md b/r/NEWS.md index e91354684a5..ac06356d9dd 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -29,8 +29,9 @@ in favour of `format = "ipc"`, and extra arguments passed via `...` to `read_ipc_stream()` and `write_ipc_stream()` are deprecated and ignored (#49237). -- `register_scalar_function()` now checks that the names in `in_type` match - the arguments of `fun`, instead of silently ignoring them (#37761). +- `register_scalar_function()` now errors if the names in `in_type` do not + match the argument names of `fun`, instead of silently ignoring them + (#37761). ## New features From 5145f7ab51d13405545ee8d2a013ab359a375f9c Mon Sep 17 00:00:00 2001 From: Nic Crane Date: Wed, 30 Sep 2026 14:45:12 +0100 Subject: [PATCH 5/5] Remove duplication --- r/NEWS.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/r/NEWS.md b/r/NEWS.md index ac06356d9dd..1d1466de377 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -60,8 +60,6 @@ `pull()` will keep returning an R vector by default; use `as_vector = FALSE` or `options(arrow.pull_as_vector = FALSE)` to get a `ChunkedArray` (#51655). -- `register_scalar_function()` now checks that the names in `in_type` match - the arguments of `fun`, instead of silently ignoring them (#37761). - `str_replace()` with an `NA` replacement now returns `NA` for matched elements, matching stringr (@Gosling-dude, #33432). - `summarise()` after `arrange()` now works (#45373).