From ced10b96b76b4e8a3678f7b45000c7882f67b245 Mon Sep 17 00:00:00 2001 From: Lionel Henry Date: Wed, 24 May 2017 12:41:44 +0200 Subject: [PATCH 1/4] Do not cross write barrier --- R/env.R | 10 +++------- R/eval-tidy.R | 13 +++++-------- src/env.c | 7 +++++++ src/init.c | 4 ++-- src/internals.c | 17 ----------------- 5 files changed, 17 insertions(+), 34 deletions(-) create mode 100644 src/env.c delete mode 100644 src/internals.c diff --git a/R/env.R b/R/env.R index c7a7838800..c33a7e2c59 100644 --- a/R/env.R +++ b/R/env.R @@ -425,15 +425,11 @@ set_env <- function(env, new_env = caller_env()) { ) } -mut_parent_env <- function(env, new_env) { - env_ <- get_env(env) - parent.env(env_) <- get_env(new_env) - env +mut_env_parent <- function(env, new_env) { + .Call(rlang_mut_env_parent, get_env(env), new_env) } `env_parent<-` <- function(x, value) { - env_ <- get_env(x) - parent.env(env_) <- get_env(value) - x + .Call(rlang_mut_env_parent, get_env(x), value) } diff --git a/R/eval-tidy.R b/R/eval-tidy.R index 651a8e73c3..75d294d55a 100644 --- a/R/eval-tidy.R +++ b/R/eval-tidy.R @@ -295,7 +295,7 @@ overscope_eval_next <- function(overscope, quo, env = base_env()) { lexical_env <- f_env(quo) overscope$.env <- lexical_env - mut_parent_env(overscope$.top_env, lexical_env) + mut_env_parent(overscope$.top_env, lexical_env) .Call(rlang_eval, f_rhs(quo), overscope) } @@ -328,13 +328,10 @@ f_self_eval <- function(overscope, overscope_top) { return(missing_arg()) } - # Swap enclosures temporarily by rechaining the top of the - # dynamic scope to the enclosure of the new formula, if it has - # one. We do it at C level to avoid GC adjustments when changing - # the parent. This should be safe since we reset everything - # afterwards. - .Call(rlang_set_parent, overscope_top, f_env(f) %||% overscope$.env) - on.exit(.Call(rlang_set_parent, overscope_top, overscope$.env)) + # Swap enclosures temporarily by rechaining the top of the dynamic + # scope to the enclosure of the new formula, if it has one + mut_env_parent(overscope_top, f_env(f) %||% overscope$.env) + on.exit(mut_env_parent(overscope_top, overscope$.env)) .Call(rlang_eval, f_rhs(f), overscope) } diff --git a/src/env.c b/src/env.c new file mode 100644 index 0000000000..ce145450d3 --- /dev/null +++ b/src/env.c @@ -0,0 +1,7 @@ +#define R_NO_REMAP +#include + +SEXP r_mut_env_parent(SEXP env, SEXP new_parent) { + SET_ENCLOS(env, new_parent); + return env; +} diff --git a/src/init.c b/src/init.c index 846b70da58..c1f2777f26 100644 --- a/src/init.c +++ b/src/init.c @@ -12,6 +12,7 @@ extern bool is_clevel_spliceable(SEXP); // Callable from this package extern SEXP f_lhs_(SEXP); extern SEXP f_rhs_(SEXP); +extern SEXP r_mut_env_parent(SEXP, SEXP); extern SEXP rlang_replace_na(SEXP, SEXP); extern SEXP rlang_car(SEXP); extern SEXP rlang_cdr(SEXP); @@ -40,7 +41,6 @@ extern SEXP rlang_is_reference(SEXP, SEXP); extern SEXP rlang_sxp_address(SEXP); extern SEXP rlang_length(SEXP); extern SEXP rlang_new_dictionary(SEXP, SEXP, SEXP); -extern SEXP rlang_set_parent(SEXP, SEXP); extern SEXP rlang_squash(SEXP, SEXP, SEXP, SEXP); extern SEXP rlang_symbol(SEXP); extern SEXP rlang_symbol_to_character(SEXP); @@ -78,7 +78,7 @@ static const R_CallMethodDef call_entries[] = { {"rlang_set_cdar", (DL_FUNC) &rlang_set_cdar, 2}, {"rlang_set_cddr", (DL_FUNC) &rlang_set_cddr, 2}, {"rlang_set_cdr", (DL_FUNC) &rlang_set_cdr, 2}, - {"rlang_set_parent", (DL_FUNC) &rlang_set_parent, 2}, + {"rlang_mut_env_parent", (DL_FUNC) &r_mut_env_parent, 2}, {"rlang_set_tag", (DL_FUNC) &rlang_set_tag, 2}, {"rlang_shallow_duplicate", (DL_FUNC) &rlang_shallow_duplicate, 1}, {"rlang_squash", (DL_FUNC) &rlang_squash, 4}, diff --git a/src/internals.c b/src/internals.c deleted file mode 100644 index d272c2b690..0000000000 --- a/src/internals.c +++ /dev/null @@ -1,17 +0,0 @@ -#define R_NO_REMAP -#define USE_RINTERNALS -#include - -SEXP rlang_set_parent(SEXP env, SEXP new_parent) { - ENCLOS(env) = new_parent; - return env; -} - -SEXP rlang_mut_language_type(SEXP node) { - TYPEOF(node) = LANGSXP; - return node; -} -SEXP rlang_mut_pairlist_type(SEXP node) { - TYPEOF(node) = LISTSXP; - return node; -} From 48b42e1baf23255e78538eabea7e1271be1fd3b8 Mon Sep 17 00:00:00 2001 From: Lionel Henry Date: Thu, 3 Aug 2017 13:21:03 +0200 Subject: [PATCH 2/4] Merge pull request #149 from lionel-/maint-R-3.1 Support for R 3.1 --- .Rbuildignore | 1 + .travis.yml | 12 +++++--- R/compat-oldrel.R | 56 ++++++++++++------------------------ R/utils.R | 22 ++++++++++++++ src/vector.h | 2 +- tests/testthat.R | 4 +-- tests/testthat/test-compat.R | 7 +++++ tests/testthat/test-env.R | 8 +++--- 8 files changed, 64 insertions(+), 48 deletions(-) diff --git a/.Rbuildignore b/.Rbuildignore index 28455c37ba..99c6f14c66 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -8,3 +8,4 @@ ^codecov\.yml$ ^_pkgdown\.yml$ ^docs$ +^appveyor\.yml$ diff --git a/.travis.yml b/.travis.yml index e76cae1737..eacc46264b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,10 +3,14 @@ language: r sudo: false cache: packages -r: - - oldrel - - release - - devel + +matrix: + include: + - r: 3.1 + warnings_are_errors: false + - r: oldrel + - r: release + - r: devel after_success: - Rscript -e 'covr::codecov(line_exclusions = c("R/lazy.R", "R/lazy-as.R", "R/lazy-dots.R", "R/lazy-names.R", "R/lazy-call.R", "R/lazy-eval.R", "R/lazy-interp.R", "src/lazy.c"))' diff --git a/R/compat-oldrel.R b/R/compat-oldrel.R index 8557bc35ae..1c9cf93ac6 100644 --- a/R/compat-oldrel.R +++ b/R/compat-oldrel.R @@ -1,57 +1,39 @@ -# nocov start - compat-oldrel (last updated: rlang 0.1.9000) +# nocov start - compat-oldrel (last updated: rlang 0.1.2) # This file serves as a reference for compatibility functions for old -# versions of R. - - -# Compat function for capture functions (that will hopefully make -# their way to the next R version) ----------------------------------- - -if (TRUE || utils::packageVersion("base") < "3.4.0") { - - captureArg <- function(x, strict = TRUE) { - caller_env <- parent.frame() - - if (identical(caller_env, globalenv())) { - stop("must be called in a function") - } - if (missing(x)) { - stop("argument \"x\" is missing") - } - - .Call(rlang_capturearg, NULL, NULL, pairlist(caller_env, strict), get_env()) - } - - captureDots <- function(strict = TRUE) { - caller_env <- parent.frame() - - if (!exists("...", caller_env)) { - stop("must be called in a function where dots exist") - } - - .Call(rlang_capturedots, NULL, NULL, pairlist(caller_env, strict), get_env()) - } - -} +# versions of R. Please find the most recent version in rlang's +# repository. # R 3.2.0 ------------------------------------------------------------ -if (utils::packageVersion("base") < "3.2.0") { +if (getRversion() < "3.2.0") { dir_exists <- function(path) { !identical(path, "") && file.exists(paste0(path, .Platform$file.sep)) } dir.exists <- function(paths) { - map_lgl(paths, dir_exists) + vapply(paths, dir_exists, logical(1)) } names <- function(x) { if (is.environment(x)) { - ls(x, all.names = TRUE) + return(ls(x, all.names = TRUE)) } else { - base::names(x) + return(base::names(x)) } + + # So R CMD check on old versions of R sees a generic, since we + # declare a names() method for dictionary objects + UseMethod("names") + } + + trimws <- function(x, which = c("both", "left", "right")) { + switch(match.arg(which), + left = sub("^[ \t\r\n]+", "", x, perl = TRUE), + right = sub("[ \t\r\n]+$", "", x, perl = TRUE), + both = trimws(trimws(x, "left"), "right") + ) } } diff --git a/R/utils.R b/R/utils.R index b3718f8b55..197054f340 100644 --- a/R/utils.R +++ b/R/utils.R @@ -75,3 +75,25 @@ discard_unnamed <- function(x) { sxp_address <- function(x) { .Call(rlang_sxp_address, x) } + +captureArg <- function(x, strict = TRUE) { + caller_env <- parent.frame() + + if (identical(caller_env, globalenv())) { + stop("must be called in a function") + } + if (missing(x)) { + stop("argument \"x\" is missing") + } + + .Call(rlang_capturearg, NULL, NULL, pairlist(caller_env, strict), get_env()) +} +captureDots <- function(strict = TRUE) { + caller_env <- parent.frame() + + if (!exists("...", caller_env)) { + stop("must be called in a function where dots exist") + } + + .Call(rlang_capturedots, NULL, NULL, pairlist(caller_env, strict), get_env()) +} diff --git a/src/vector.h b/src/vector.h index fcc566d3c7..d9c25936d8 100644 --- a/src/vector.h +++ b/src/vector.h @@ -91,7 +91,7 @@ SEXP namespace_rlang_sym(SEXP sym) { static SEXP rlang_sym = NULL; if (!rlang_sym) rlang_sym = Rf_install("rlang"); - return(Rf_lang3(R_DoubleColonSymbol, rlang_sym, sym)); + return(Rf_lang3(Rf_install("::"), rlang_sym, sym)); } SEXP vec_coercer_sym(SEXP dest) { diff --git a/tests/testthat.R b/tests/testthat.R index 156ae82aa9..70f8b030af 100644 --- a/tests/testthat.R +++ b/tests/testthat.R @@ -1,4 +1,4 @@ -library(testthat) -library(rlang) +library("testthat") +library("rlang") test_check("rlang") diff --git a/tests/testthat/test-compat.R b/tests/testthat/test-compat.R index 429fbb30c9..25c924fe1a 100644 --- a/tests/testthat/test-compat.R +++ b/tests/testthat/test-compat.R @@ -81,3 +81,10 @@ test_that("compat_lazy() handles bare formulas", { expect_identical(compat_lazy(~foo), quo(foo)) expect_identical(compat_lazy_dots(~foo), named_list(quo(foo))) }) + +test_that("trimws() trims", { + x <- " foo. " + expect_identical(trimws(x), "foo.") + expect_identical(trimws(x, "l"), "foo. ") + expect_identical(trimws(x, "r"), " foo.") +}) diff --git a/tests/testthat/test-env.R b/tests/testthat/test-env.R index aa9391ccd6..ff7da3c4d9 100644 --- a/tests/testthat/test-env.R +++ b/tests/testthat/test-env.R @@ -165,16 +165,16 @@ test_that("scoped_env() deals with empty environment", { }) test_that("env() doesn't partial match on env_bind()'s .env", { - expect_named(env(.data = 1, . = 2), c(".data", ".")) + expect_true(all(env_has(env(.data = 1, . = 2), c(".data", ".")))) }) test_that("new_environment() creates a child of the empty env", { env <- new_environment(list(a = 1, b = 2)) - expect_named(env, c("a", "b")) + expect_true(all(env_has(env, c("a", "b")))) expect_identical(env_parent(env), empty_env()) }) test_that("new_environment() accepts empty vectors", { - expect_named(new_environment(), chr()) - expect_named(new_environment(dbl()), chr()) + expect_identical(length(new_environment()), 0L) + expect_identical(length(new_environment(dbl())), 0L) }) From 4bebec20e30b3a4cc993cba9fd53ac8f71a98a3c Mon Sep 17 00:00:00 2001 From: Lionel Henry Date: Tue, 8 Aug 2017 14:19:17 +0200 Subject: [PATCH 3/4] Remove example where an attribute is added to a symbol cc @kalibera --- R/types.R | 5 ----- man/is_copyable.Rd | 5 ----- 2 files changed, 10 deletions(-) diff --git a/R/types.R b/R/types.R index d4ddc49eb4..f01b0e7da3 100644 --- a/R/types.R +++ b/R/types.R @@ -664,11 +664,6 @@ lang_type_of <- function(x) { #' #' structure(base::list, foo = "bar") #' str(base::list) -#' -#' # In expressions, calls and pairlists are safely copyable. However, -#' # symbols are not: -#' structure(quote(foo), foo = "bar") -#' quote(foo) is_copyable <- function(x) { switch_type(x, NULL = , diff --git a/man/is_copyable.Rd b/man/is_copyable.Rd index bcae55e794..88a162c316 100644 --- a/man/is_copyable.Rd +++ b/man/is_copyable.Rd @@ -31,9 +31,4 @@ is_copyable(env) structure(base::list, foo = "bar") str(base::list) - -# In expressions, calls and pairlists are safely copyable. However, -# symbols are not: -structure(quote(foo), foo = "bar") -quote(foo) } From ec61b304b181d04fa26791a8cd014e799761850d Mon Sep 17 00:00:00 2001 From: Lionel Henry Date: Tue, 8 Aug 2017 17:32:31 +0200 Subject: [PATCH 4/4] Prepare release 0.1.2 --- DESCRIPTION | 2 +- NEWS.md | 5 +++ cran-comments.md | 16 ++------ revdep/README.md | 92 ++++++++++++++++++++++++++------------------- revdep/data.sqlite | Bin 0 -> 536576 bytes revdep/problems.md | 69 +++++++++++++++++++--------------- 6 files changed, 103 insertions(+), 81 deletions(-) create mode 100644 revdep/data.sqlite diff --git a/DESCRIPTION b/DESCRIPTION index fbab7f8a98..55047fa14c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,5 +1,5 @@ Package: rlang -Version: 0.1.1 +Version: 0.1.2 Title: Functions for Base Types and Core R and 'Tidyverse' Features Description: A toolbox for working with base types, core R features like the condition system, and core 'Tidyverse' features like tidy diff --git a/NEWS.md b/NEWS.md index 86364948af..db76322a7d 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,4 +1,9 @@ +# rlang 0.1.2 + +This hotfix release makes rlang compatible with the R 3.1 branch. + + # rlang 0.1.1 This release includes two important fixes for tidy evaluation: diff --git a/cran-comments.md b/cran-comments.md index c5642e9c30..a1b8966123 100644 --- a/cran-comments.md +++ b/cran-comments.md @@ -1,16 +1,8 @@ -## Bugfix release - -The last rlang release was sent recently, but we have discovered one -issue with the bytecode compiler that causes downstream failures in -the reverse dependencies of the next dplyr version. This release -should prevent many R CMD check failures for compiled packages -depending on dplyr. - ## Test environments -* local OS X install, R 3.4.0 -* ubuntu 12.04 (on travis-ci), R 3.4.0 +* local OS X install, R 3.4.1 +* ubuntu 12.04 (on travis-ci), R 3.4.1 * win-builder (devel and release) @@ -21,7 +13,7 @@ depending on dplyr. ## Reverse dependencies -I have run R CMD check on the 2 downstream dependencies. (Summary at -https://github.com/tidyverse/rlang/tree/master/revdep). +I have run R CMD check on the 37 downstream dependencies. (Summary at +https://github.com/tidyverse/rlang/tree/v0.1.2/revdep). There were no problems. diff --git a/revdep/README.md b/revdep/README.md index 2e1fdc2ba0..4d8e8442e0 100644 --- a/revdep/README.md +++ b/revdep/README.md @@ -1,53 +1,69 @@ -# Setup +# Platform -## Platform - -|setting |value | +|field |value | |:--------|:----------------------------| -|version |R version 3.4.0 (2017-04-21) | +|version |R version 3.4.1 (2017-06-30) | +|os |macOS Sierra 10.12 | |system |x86_64, darwin15.6.0 | |ui |X11 | |language |(EN) | |collate |en_US.UTF-8 | |tz |Europe/Brussels | -|date |2017-05-17 | - -## Packages - -|package |* |version |date |source | -|:---------|:--|:-------|:----------|:--------------| -|covr | |2.2.2 |2017-01-05 |cran (@2.2.2) | -|knitr | |1.15.1 |2016-11-22 |cran (@1.15.1) | -|rlang | |0.1 |2017-05-06 |cran (@0.1) | -|rmarkdown | |1.5 |2017-04-26 |cran (@1.5) | -|testthat | |1.0.2 |2016-04-23 |cran (@1.0.2) | - -# Check results +|date |2017-08-08 | -2 packages +# Dependencies -|package |version | errors| warnings| notes| -|:-------|:-------|------:|--------:|-----:| -|sf |0.4-3 | 0| 0| 1| -|tibble |1.3.1 | 0| 0| 0| +|package |old |new |Δ | +|:-------|:-----|:-----|:--| +|rlang |0.1.1 |0.1.2 |* | -## sf (0.4-3) -Maintainer: Edzer Pebesma -Bug reports: https://github.com/edzer/sfr/issues/ +# Revdeps -0 errors | 0 warnings | 1 note +## Broken (1) -``` -checking installed package size ... NOTE - installed size is 7.9Mb - sub-directories of 1Mb or more: - doc 4.0Mb - sqlite 1.5Mb -``` +|package |version |error |warning |note | +|:------------------------|:-------|:------|:-------|:----| +|[banR](problems.md#banR) |0.2.0 |__+1__ | |1 | -## tibble (1.3.1) -Maintainer: Kirill Müller -Bug reports: https://github.com/tidyverse/tibble/issues +## All (37) -0 errors | 0 warnings | 0 notes +|package |version |error |warning |note | +|:------------------------|:-------|:------|:-------|:----| +|[banR](problems.md#banR) |0.2.0 |__+1__ | |1 | +|dbplyr |1.1.0 | | |1 | +|dexter |0.4.2 | |2 |1 | +|dplyr |0.7.2 | | |2 | +|fold |0.2.1 | | | | +|ggformula |0.5 | | |1 | +|iadf |0.1.0 | | | | +|implyr |0.2.1 |1 | | | +|later |0.3 | | | | +|metaplot |0.1.5 | | | | +|mosaicCore |0.2.0 | | | | +|nofrills |0.1.0 | | | | +|nonmemica |0.7.6 | |1 |1 | +|NPMOD |0.1.0 |1 | | | +|polypoly |0.0.2 | | | | +|prisonbrief |0.1.0 | | |1 | +|purrr |0.2.3 | | | | +|recipes |0.1.0 | | | | +|rsample |0.0.1 | | | | +|RSDA |2.0.2 | | | | +|seplyr |0.1.3 | | |1 | +|sf |0.5-3 |1 | | | +|sjmisc |2.6.0 | | | | +|sjPlot |2.3.2 | | |2 | +|sjstats |0.10.3 | | |1 | +|sparklyr |0.6.1 |1 | | | +|spdplyr |0.1.3 | | | | +|statar |0.6.5 | | | | +|stplanr |0.1.9 | |1 | | +|sugrrants |0.1.0 | | | | +|tatoo |1.0.7 | | | | +|taxa |0.1.0 | | |1 | +|tibble |1.3.3 | | | | +|tidygraph |1.0.0 | | | | +|tidyselect |0.1.1 | | |1 | +|valr |0.3.1 | | | | +|vdiffr |0.2.0 | | | | diff --git a/revdep/data.sqlite b/revdep/data.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..c960798a8233db7868d707f81a9be9d3f86ac9ca GIT binary patch literal 536576 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 literal 0 HcmV?d00001 diff --git a/revdep/problems.md b/revdep/problems.md index 7ad489f347..a3ef2b563a 100644 --- a/revdep/problems.md +++ b/revdep/problems.md @@ -1,31 +1,40 @@ -# Setup - -## Platform - -|setting |value | -|:--------|:----------------------------| -|version |R version 3.4.0 (2017-04-21) | -|system |x86_64, darwin15.6.0 | -|ui |X11 | -|language |(EN) | -|collate |en_US.UTF-8 | -|tz |Europe/Brussels | -|date |2017-05-17 | - -## Packages - -|package |* |version |date |source | -|:---------|:--|:-------|:----------|:--------------| -|covr | |2.2.2 |2017-01-05 |cran (@2.2.2) | -|knitr | |1.15.1 |2016-11-22 |cran (@1.15.1) | -|rlang | |0.1 |2017-05-06 |cran (@0.1) | -|rmarkdown | |1.5 |2017-04-26 |cran (@1.5) | -|testthat | |1.0.2 |2016-04-23 |cran (@1.0.2) | - -# Check results - -0 packages with problems - - - +# banR + +Version: 0.2.0 + +## Newly broken + +* checking examples ... ERROR + ``` + ... + If file is larger than 8 MB, it must be splitted + Size is : 61 bytes + SuccessOKSuccess: (200) OK + # A tibble: 3 x 16 + y z x latitude longitude + + 1 75015 -0.6264538 39 quai Andre Citroen 48.84683 2.279092 + 2 75012 0.1836433 64 Allee de Bercy 48.84255 2.375933 + 3 75007 -0.8356286 20 avenue de Segur 48.85032 2.308332 + # ... with 11 more variables: result_label , result_score , + # result_type , result_id , result_housenumber , + # result_name , result_street , result_postcode , + # result_city , result_context , result_citycode + > geocode_tbl(tbl = table_test, adresse = x, code_postal = y) + Writing tempfile to.../var/folders/b9/1vbq6rn93_1fk71sn95dqb8r0000gn/T//RtmpTIqQ1D/file970d7b3ad7f0.csv + If file is larger than 8 MB, it must be splitted + Size is : 81 bytes + Server errorService UnavailableServer error: (503) Service Unavailable + Error in geocode_tbl(tbl = table_test, adresse = x, code_postal = y) : + The API sent back an error 503 + Execution halted + ``` + +## In both + +* checking dependencies in R code ... NOTE + ``` + Namespace in Imports field not imported from: ‘stringr’ + All declared Imports should be used. + ```