diff --git a/r/DESCRIPTION b/r/DESCRIPTION index 82a9b620ddea..8d101d66c806 100644 --- a/r/DESCRIPTION +++ b/r/DESCRIPTION @@ -1,6 +1,6 @@ Package: arrow Title: Integration to 'Apache' 'Arrow' -Version: 23.0.1.1 +Version: 23.0.1.2 Authors@R: c( person("Neal", "Richardson", email = "neal.p.richardson@gmail.com", role = c("aut")), person("Ian", "Cook", email = "ianmcook@gmail.com", role = c("aut")), diff --git a/r/NEWS.md b/r/NEWS.md index 333cf77261ae..c5cab1cf8227 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -17,9 +17,17 @@ under the License. --> +# arrow 23.0.1.2 + +## Minor improvements and fixes + +- Update use of internal function for non-API call CRAN requirements (#49530) + # arrow 23.0.1.1 -- More robust against malignant libtools +## Minor improvements and fixes + +- Refine checks for ensuring building with macOS libtool instead of GNU libtool (#49370) # arrow 23.0.1 diff --git a/r/man/read_json_arrow.Rd b/r/man/read_json_arrow.Rd index b809a63bcc6f..abf6b8fc44a8 100644 --- a/r/man/read_json_arrow.Rd +++ b/r/man/read_json_arrow.Rd @@ -54,7 +54,7 @@ If \code{schema} is not provided, Arrow data types are inferred from the data: \item JSON numbers convert to \code{\link[=int64]{int64()}}, falling back to \code{\link[=float64]{float64()}} if a non-integer is encountered. \item JSON strings of the kind "YYYY-MM-DD" and "YYYY-MM-DD hh:mm:ss" convert to \code{\link[=timestamp]{timestamp(unit = "s")}}, falling back to \code{\link[=utf8]{utf8()}} if a conversion error occurs. -\item JSON arrays convert to a \code{\link[=list_of]{list_of()}} type, and inference proceeds recursively on the JSON arrays' values. +\item JSON arrays convert to a \code{\link[vctrs:list_of]{vctrs::list_of()}} type, and inference proceeds recursively on the JSON arrays' values. \item Nested JSON objects convert to a \code{\link[=struct]{struct()}} type, and inference proceeds recursively on the JSON objects' values. } diff --git a/r/man/schema.Rd b/r/man/schema.Rd index 65ab2eea0d27..ff77a05d84aa 100644 --- a/r/man/schema.Rd +++ b/r/man/schema.Rd @@ -7,7 +7,7 @@ schema(...) } \arguments{ -\item{...}{\link[=field]{fields}, field name/\link[=data-type]{data type} pairs (or a list of), or object from which to extract +\item{...}{\link[vctrs:fields]{fields}, field name/\link[=data-type]{data type} pairs (or a list of), or object from which to extract a schema} } \description{ diff --git a/r/src/arrow_cpp11.h b/r/src/arrow_cpp11.h index f44fd635fdef..149c6eb4b36a 100644 --- a/r/src/arrow_cpp11.h +++ b/r/src/arrow_cpp11.h @@ -39,17 +39,6 @@ #define ARROW_R_DCHECK(EXPR) #endif -#if (R_VERSION < R_Version(3, 5, 0)) -#define LOGICAL_RO(x) ((const int*)LOGICAL(x)) -#define INTEGER_RO(x) ((const int*)INTEGER(x)) -#define REAL_RO(x) ((const double*)REAL(x)) -#define COMPLEX_RO(x) ((const Rcomplex*)COMPLEX(x)) -#define STRING_PTR_RO(x) ((const SEXP*)STRING_PTR(x)) -#define RAW_RO(x) ((const Rbyte*)RAW(x)) -#define DATAPTR_RO(x) ((const void*)STRING_PTR(x)) -#define DATAPTR(x) (void*)STRING_PTR(x) -#endif - // R_altrep_class_name and R_altrep_class_package don't exist before R 4.6 #if R_VERSION < R_Version(4, 6, 0) inline SEXP R_altrep_class_name(SEXP x) { @@ -220,8 +209,12 @@ Pointer r6_to_pointer(SEXP self) { cpp11::stop("Invalid R object for %s, must be an ArrowObject", type_name.c_str()); } +#if R_VERSION >= R_Version(4, 5, 0) + SEXP xp = R_getVarEx(arrow::r::symbols::xp, self, FALSE, R_UnboundValue); +#else SEXP xp = Rf_findVarInFrame(self, arrow::r::symbols::xp); - if (xp == R_NilValue) { +#endif + if (xp == R_UnboundValue || xp == R_NilValue) { cpp11::stop("Invalid: self$`.:xp:.` is NULL"); } @@ -235,7 +228,11 @@ Pointer r6_to_pointer(SEXP self) { template void r6_reset_pointer(SEXP r6) { +#if R_VERSION >= R_Version(4, 5, 0) + SEXP xp = R_getVarEx(arrow::r::symbols::xp, r6, FALSE, R_UnboundValue); +#else SEXP xp = Rf_findVarInFrame(r6, arrow::r::symbols::xp); +#endif void* p = R_ExternalPtrAddr(xp); if (p != nullptr) { delete reinterpret_cast*>(p); diff --git a/r/tests/testthat/test-dplyr-mutate.R b/r/tests/testthat/test-dplyr-mutate.R index e9a52c60e876..3e116a1012ca 100644 --- a/r/tests/testthat/test-dplyr-mutate.R +++ b/r/tests/testthat/test-dplyr-mutate.R @@ -152,6 +152,9 @@ test_that("transmute() with unsupported arguments", { }) test_that("transmute() defuses dots arguments (ARROW-13262)", { + # There is a sanitizer issue when stringi compiles with bundled ICU + # see https://github.com/gagolews/stringi/issues/525 + skip_on_linux_devel() expect_snapshot( tbl |> Table$create() |>