Your message dated Sun, 04 Mar 2018 07:50:32 +0000
with message-id <[email protected]>
and subject line Bug#891947: fixed in r-cran-dplyr 0.7.4-3
has caused the Debian Bug report #891947,
regarding r-cran-dplyr: autopkgtest regressions
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
891947: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=891947
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: r-cran-dplyr
Version: 0.7.4-2
Severity: normal
Tags: patch
User: [email protected]
Usertags: origin-ubuntu bionic ubuntu-patch autopkgtest

Hi Andreas,

r-cran-dplyr has recently started failing its autopkgtests in Debian and Ubuntu:

== testthat results  ===========================================================
OK: 2657 SKIPPED: 11 FAILED: 4
1. Failure: Non-ascii column names in version 0.3 are not duplicated (#636) 
(@test-mutate.r#400) 
2. Error: mutate() supports unquoted values (@test-mutate.r#721) 
3. Failure: summarise() supports unquoted values (@test-summarise.r#980) 
4. Error: summarise() supports unquoted values (@test-summarise.r#985) 

Error: testthat unit tests failed
Execution halted
autopkgtest [18:49:31]: test run-unit-test: -----------------------]

(https://ci.debian.net/packages/r/r-cran-dplyr/unstable/amd64/)

I don't know what triggered the behavior change, but the tests are
definitely buggy.

I've applied the following patch to r-cran-dplyr in Ubuntu, consisting of
one upstream cherry-pick and a change to the test environment, fixing the
failures.

It seems likely that debian/patches/skip-utf8-tests.patch can also be
dropped now as unnecessary, when setting a sensible UTF-8 default
environment.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
[email protected]                                     [email protected]
diff -Nru 
r-cran-dplyr-0.7.4/debian/patches/0001-Use-instead-of-UQ-and-fix-operator-precedence.patch
 
r-cran-dplyr-0.7.4/debian/patches/0001-Use-instead-of-UQ-and-fix-operator-precedence.patch
--- 
r-cran-dplyr-0.7.4/debian/patches/0001-Use-instead-of-UQ-and-fix-operator-precedence.patch
  1969-12-31 16:00:00.000000000 -0800
+++ 
r-cran-dplyr-0.7.4/debian/patches/0001-Use-instead-of-UQ-and-fix-operator-precedence.patch
  2018-03-02 16:17:37.000000000 -0800
@@ -0,0 +1,163 @@
+From 866df054d1d08fcfa687bb4feb0313ae053e125d Mon Sep 17 00:00:00 2001
+From: Lionel Henry <[email protected]>
+Date: Sat, 30 Dec 2017 15:46:01 +0100
+Subject: [PATCH] Use !! instead of UQ() and fix operator precedence
+
+---
+ R/compat-dbplyr.R                     | 11 ++++++-----
+ R/funs-predicates.R                   |  2 +-
+ tests/testthat/test-hybrid-traverse.R |  2 +-
+ tests/testthat/test-hybrid.R          |  2 +-
+ tests/testthat/test-mutate.r          | 20 ++++++++++----------
+ tests/testthat/test-summarise.r       | 18 +++++++++---------
+ vignettes/compatibility.Rmd           |  2 +-
+ 7 files changed, 29 insertions(+), 28 deletions(-)
+
+Index: r-cran-dplyr-0.7.4/R/compat-dbplyr.R
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/R/compat-dbplyr.R
++++ r-cran-dplyr-0.7.4/R/compat-dbplyr.R
+@@ -35,8 +35,8 @@
+     args <- formals()
+     pass_on <- map(set_names(names(args)), sym)
+ 
+-    dbplyr_call <- expr(UQ(dbplyr_sym)(!!!pass_on))
+-    dplyr_call <- expr(UQ(dplyr_sym)(!!!pass_on))
++    dbplyr_call <- expr((!!dbplyr_sym)(!!! pass_on))
++    dplyr_call <- expr((!!dplyr_sym)(!!! pass_on))
+   } else {
+     args <- list()
+ 
+@@ -47,15 +47,16 @@
+   body <- expr({
+     if (utils::packageVersion("dplyr") > "0.5.0") {
+       dplyr::check_dbplyr()
+-      UQ(dbplyr_call)
++      !!dbplyr_call
+     } else {
+-      UQ(dplyr_call)
++      !!dplyr_call
+     }
+   })
+   wrapper <- new_function(args, body, caller_env())
+ 
+-  expr(UQ(obj_sym) <- UQE(wrapper))
++  expr(!!obj_sym <- !!get_expr(wrapper))
+ }
++utils::globalVariables("!<-")
+ 
+ #' @inherit dbplyr::sql
+ #' @export
+Index: r-cran-dplyr-0.7.4/R/funs-predicates.R
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/R/funs-predicates.R
++++ r-cran-dplyr-0.7.4/R/funs-predicates.R
+@@ -43,6 +43,6 @@
+   op_quo <- as_quosure(.op, base_env())
+   op <- f_rhs(op_quo)
+ 
+-  expr <- reduce(dots, function(x, y) expr(UQ(op)((!! x), (!! y))))
++  expr <- reduce(dots, function(x, y) expr((!!op)((!! x), (!! y))))
+   new_quosure(expr, f_env(op_quo))
+ }
+Index: r-cran-dplyr-0.7.4/tests/testthat/test-hybrid-traverse.R
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/tests/testthat/test-hybrid-traverse.R
++++ r-cran-dplyr-0.7.4/tests/testthat/test-hybrid-traverse.R
+@@ -189,7 +189,7 @@
+     expect_equal(
+       test_df %>%
+         grouping %>%
+-        mutate(., f = mean(UQ(var))) %>%
++        mutate(., f = mean(!!var)) %>%
+         select(-e),
+       test_df %>%
+         grouping %>%
+Index: r-cran-dplyr-0.7.4/tests/testthat/test-hybrid.R
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/tests/testthat/test-hybrid.R
++++ r-cran-dplyr-0.7.4/tests/testthat/test-hybrid.R
+@@ -800,7 +800,7 @@
+ test_that("%in% handler supports quosured symbols", {
+   `%in%` <- bad_hybrid_handler
+   expect_identical(
+-    pull(mutate(mtcars, UQ(quo(cyl)) %in% 4)),
++    pull(mutate(mtcars, !!quo(cyl) %in% 4)),
+     base::`%in%`(mtcars$cyl, 4)
+   )
+ })
+Index: r-cran-dplyr-0.7.4/tests/testthat/test-mutate.r
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/tests/testthat/test-mutate.r
++++ r-cran-dplyr-0.7.4/tests/testthat/test-mutate.r
+@@ -710,18 +710,18 @@
+ 
+ test_that("mutate() supports unquoted values", {
+   df <- tibble(g = c(1, 1, 2, 2, 2), x = 1:5)
+-  expect_identical(mutate(df, out = !! 1), mutate(df, out = 1))
+-  expect_identical(mutate(df, out = !! 1:5), mutate(df, out = 1:5))
+-  expect_identical(mutate(df, out = !! quote(1:5)), mutate(df, out = 1:5))
+-  expect_error(mutate(df, out = !! 1:2), "must be length 5 (the number of 
rows)", fixed = TRUE)
+-  expect_error(mutate(df, out = !! get_env()), "unsupported type")
++  expect_identical(mutate(df, out = !!1), mutate(df, out = 1))
++  expect_identical(mutate(df, out = !!(1:5)), mutate(df, out = 1:5))
++  expect_identical(mutate(df, out = !!quote(1:5)), mutate(df, out = 1:5))
++  expect_error(mutate(df, out = !!(1:2)), "must be length 5 (the number of 
rows)", fixed = TRUE)
++  expect_error(mutate(df, out = !!get_env()), "unsupported type")
+ 
+   gdf <- group_by(df, g)
+-  expect_identical(mutate(gdf, out = !! 1), mutate(gdf, out = 1))
+-  expect_identical(mutate(gdf, out = !! 1:5), group_by(mutate(df, out = 1:5), 
g))
+-  expect_error(mutate(gdf, out = !! quote(1:5)), "must be length 2 (the group 
size)", fixed = TRUE)
+-  expect_error(mutate(gdf, out = !! 1:2), "must be length 5 (the number of 
rows)", fixed = TRUE)
+-  expect_error(mutate(gdf, out = !! get_env()), "unsupported type")
++  expect_identical(mutate(gdf, out = !!1), mutate(gdf, out = 1))
++  expect_identical(mutate(gdf, out = !!(1:5)), group_by(mutate(df, out = 
1:5), g))
++  expect_error(mutate(gdf, out = !!quote(1:5)), "must be length 2 (the group 
size)", fixed = TRUE)
++  expect_error(mutate(gdf, out = !!(1:2)), "must be length 5 (the number of 
rows)", fixed = TRUE)
++  expect_error(mutate(gdf, out = !!get_env()), "unsupported type")
+ })
+ 
+ 
+Index: r-cran-dplyr-0.7.4/tests/testthat/test-summarise.r
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/tests/testthat/test-summarise.r
++++ r-cran-dplyr-0.7.4/tests/testthat/test-summarise.r
+@@ -975,15 +975,15 @@
+ 
+ test_that("summarise() supports unquoted values", {
+   df <- tibble(g = c(1, 1, 2, 2, 2), x = 1:5)
+-  expect_identical(summarise(df, out = !! 1), tibble(out = 1))
+-  expect_identical(summarise(df, out = !! quote(identity(1))), tibble(out = 
1))
+-  expect_error(summarise(df, out = !! 1:2), "must be length 1 (the number of 
groups)", fixed = TRUE)
+-  expect_error(summarise(df, out = !! env(a = 1)), "unsupported type")
++  expect_identical(summarise(df, out = !!1), tibble(out = 1))
++  expect_identical(summarise(df, out = !!quote(identity(1))), tibble(out = 1))
++  expect_error(summarise(df, out = !!(1:2)), "must be length 1 (the number of 
groups)", fixed = TRUE)
++  expect_error(summarise(df, out = !!env(a = 1)), "unsupported type")
+ 
+   gdf <- group_by(df, g)
+-  expect_identical(summarise(gdf, out = !! 1), summarise(gdf, out = 1))
+-  expect_identical(summarise(gdf, out = !! 1:2), tibble(g = c(1, 2), out = 
1:2))
+-  expect_identical(summarise(gdf, out = !! quote(identity(1))), 
summarise(gdf, out = 1))
+-  expect_error(summarise(gdf, out = !! 1:5), "must be length 2 (the number of 
groups)", fixed = TRUE)
+-  expect_error(summarise(gdf, out = !! env(a = 1)), "unsupported type")
++  expect_identical(summarise(gdf, out = !!1), summarise(gdf, out = 1))
++  expect_identical(summarise(gdf, out = !!(1:2)), tibble(g = c(1, 2), out = 
1:2))
++  expect_identical(summarise(gdf, out = !!quote(identity(1))), summarise(gdf, 
out = 1))
++  expect_error(summarise(gdf, out = !!(1:5)), "must be length 2 (the number 
of groups)", fixed = TRUE)
++  expect_error(summarise(gdf, out = !!env(a = 1)), "unsupported type")
+ })
+Index: r-cran-dplyr-0.7.4/vignettes/compatibility.Rmd
+===================================================================
+--- r-cran-dplyr-0.7.4.orig/vignettes/compatibility.Rmd
++++ r-cran-dplyr-0.7.4/vignettes/compatibility.Rmd
+@@ -157,7 +157,7 @@
+ quo(my_call(!!! syms))
+ 
+ fun <- rlang::sym("my_call")
+-quo(UQ(fun)(!!! syms))
++quo((!!fun)(!!! syms))
+ ```
+ 
+ Or create the call with `lang()`:
diff -Nru r-cran-dplyr-0.7.4/debian/patches/series 
r-cran-dplyr-0.7.4/debian/patches/series
--- r-cran-dplyr-0.7.4/debian/patches/series    2017-11-09 04:46:33.000000000 
-0800
+++ r-cran-dplyr-0.7.4/debian/patches/series    2018-03-02 15:51:05.000000000 
-0800
@@ -1,2 +1,3 @@
 use_debian_packages_boost.patch
 skip-utf8-tests.patch
+0001-Use-instead-of-UQ-and-fix-operator-precedence.patch
diff -Nru r-cran-dplyr-0.7.4/debian/tests/run-unit-test 
r-cran-dplyr-0.7.4/debian/tests/run-unit-test
--- r-cran-dplyr-0.7.4/debian/tests/run-unit-test       2017-10-01 
09:23:15.000000000 -0700
+++ r-cran-dplyr-0.7.4/debian/tests/run-unit-test       2018-03-02 
16:16:32.000000000 -0800
@@ -17,4 +17,4 @@
     fi
 done
 sed -i '/[Ll]ahman/d' testthat.R
-LC_ALL=C R --no-save < testthat.R
+LC_ALL=C.UTF-8 R --no-save < testthat.R

--- End Message ---
--- Begin Message ---
Source: r-cran-dplyr
Source-Version: 0.7.4-3

We believe that the bug you reported is fixed in the latest version of
r-cran-dplyr, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Andreas Tille <[email protected]> (supplier of updated r-cran-dplyr package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sun, 04 Mar 2018 08:22:37 +0100
Source: r-cran-dplyr
Binary: r-cran-dplyr
Architecture: source
Version: 0.7.4-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team 
<[email protected]>
Changed-By: Andreas Tille <[email protected]>
Description:
 r-cran-dplyr - GNU R grammar of data manipulation
Closes: 891947
Changes:
 r-cran-dplyr (0.7.4-3) unstable; urgency=medium
 .
   * Fix autopkgtest (thanks for the patch to Steve Langasek
     <[email protected]>)
     Closes: #891947
   * Deactivate skip-utf8-tests
Checksums-Sha1:
 3c60fb07f1ef04ea21d7cd70cc34d2cdbd1a3dd7 2377 r-cran-dplyr_0.7.4-3.dsc
 bbb439a0e8c55389ca899ddc0a32569d55cdf70f 5692 
r-cran-dplyr_0.7.4-3.debian.tar.xz
 87ee869ed1f049b381638ebe7e6b005862064e61 15412 
r-cran-dplyr_0.7.4-3_source.buildinfo
Checksums-Sha256:
 ec4ac028cb8095e1e7513d6dc2e7a92d64020f51c8347f8d3a3e23d88df9d616 2377 
r-cran-dplyr_0.7.4-3.dsc
 002c37eb0a7402282c66776f85b7358b105f9fc2002de5b0967152e118126f6e 5692 
r-cran-dplyr_0.7.4-3.debian.tar.xz
 b9483f4524891546f95d24e7229b646b73148d605224203fc2412bcc4e8e2917 15412 
r-cran-dplyr_0.7.4-3_source.buildinfo
Files:
 2c4ad77f898d56056085867fb10550f5 2377 gnu-r optional r-cran-dplyr_0.7.4-3.dsc
 1da3cf7c437eaa10f309555af7ebf74b 5692 gnu-r optional 
r-cran-dplyr_0.7.4-3.debian.tar.xz
 9988d576936462afb82f6b7437a9c313 15412 gnu-r optional 
r-cran-dplyr_0.7.4-3_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQJCBAEBCAAsFiEE8fAHMgoDVUHwpmPKV4oElNHGRtEFAlqboMcOHHRpbGxlYUBy
a2kuZGUACgkQV4oElNHGRtEegBAAk6BI3HHp9W8/nWqh5JGfuNZCwLELpeqLciHX
INVwWpYMK30AeJ3x360ENfPsaXZJUiXKzYAdermR7I2vicWDIlEU8gyqJMTNNpiJ
ydiu/fpqiLP4Men7cShhd05hOoSlZRo5NLVLWMoZ8QLvWCs0x2Txxw/z9Wf63+O1
c/8XGDq52ulAWJls+OJSFS7ldwXHCTAwf5RGufb1kT6XsyLmH2NxtfpB8aA53z5F
E/hGaO6nRKNg9LSFButTwrxt4tsD7hNsiWhtMndeP3DuaU4oW8RxI+R/B6YVD/EP
Myr0/zZaxBgKl9ITgjFji4QR6y9l+F+H2Xb7FOykkh//zNRmGCDZ3jTR0ybXFO7O
UwbPrB8cPZTOOeOPKEmX62Z8VWVCC9+OJVZq6m9COHfA4/w8Xdr6+3Id3b98XtRX
RoaYGUDFmbQeZwjrmtYgiM/OoaOMituWv4X4OPWAFXCJfemUd+YobUq8BeGO3oA4
TBMYD4Bq2O1o12xR5lRybxclD7cnRxF1GNXfG24fa7PgVpUwx3MVnDfK2Mig5eTx
Y0icr1Dz9hM86HYeTBYFxsifDCBsov3hsNhqtRftxip5EZ+Tkk6jwnonWMNw5KIc
vFEtZLeA+HZL6MIgSHuSrWdtpIcfLNm00gfk1l3vlnGH64+ZKcf84UQ+3yjzjAl8
m5OS5Go=
=2B4i
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to