[Rd] R 3.5.0 fails its regression test suite on Linux/x86_64
Peter Simons
simons at nospf.cryp.to
Mon Apr 23 12:33:04 CEST 2018
Hi,
I just tried to upgrade Nixpkgs to R 3.5.0, but unfortunately the new
version fails its regression test suite. We configure the build using
the flags "--without-recommended-packages", in case that's relevant. You
can see a complete build log with all relevant information at [1].
Anyway, the test failures look like this:
| make[3]: Entering directory '/build/R-3.5.0/tests/Examples'
| Testing examples for package 'base'
| Testing examples for package 'tools'
| comparing 'tools-Ex.Rout' to 'tools-Ex.Rout.save' ... OK
| Testing examples for package 'utils'
| Testing examples for package 'grDevices'
| comparing 'grDevices-Ex.Rout' to 'grDevices-Ex.Rout.save' ... OK
| Testing examples for package 'graphics'
| comparing 'graphics-Ex.Rout' to 'graphics-Ex.Rout.save' ... OK
| Testing examples for package 'stats'
| comparing 'stats-Ex.Rout' to 'stats-Ex.Rout.save' ... NOTE
| 6599c6599
| < Grand Mean: 291.5937
| ---
| > Grand Mean: 291.5938
| 15124c15124
| < Grand Mean: 291.5937
| ---
| > Grand Mean: 291.5938
| 17444c17444
| < assertCondition: caught "error"
| ---
| > assertCondition: caught 'error'
| Testing examples for package 'datasets'
| comparing 'datasets-Ex.Rout' to 'datasets-Ex.Rout.save' ... OK
| Testing examples for package 'methods'
| Testing examples for package 'grid'
| comparing 'grid-Ex.Rout' to 'grid-Ex.Rout.save' ... OK
| Testing examples for package 'splines'
| comparing 'splines-Ex.Rout' to 'splines-Ex.Rout.save' ... OK
| Testing examples for package 'stats4'
| comparing 'stats4-Ex.Rout' to 'stats4-Ex.Rout.save' ... OK
| Testing examples for package 'tcltk'
| Testing examples for package 'compiler'
| Testing examples for package 'parallel'
| make[3]: Leaving directory '/build/R-3.5.0/tests/Examples'
| make[2]: Leaving directory '/build/R-3.5.0/tests'
| make[2]: Entering directory '/build/R-3.5.0/tests'
| make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
| running strict specific tests
| make[3]: Entering directory '/build/R-3.5.0/tests'
| running code in 'eval-etc.R' ... OK
| comparing 'eval-etc.Rout' to './eval-etc.Rout.save' ...414,416c414,548
| < Warning message:
| < In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
| < there is no package called 'Matrix'
| ---
| > Trying some Matrix objects, too
| >
| > Matrix> Matrix(0, 3, 2) # 3 by 2 matrix of zeros -> sparse
| > 3 x 2 sparse Matrix of class "dgCMatrix"
| >
| > [1,] . .
| > [2,] . .
| > [3,] . .
| >
| > Matrix> Matrix(0, 3, 2, sparse=FALSE)# -> 'dense'
| > 3 x 2 Matrix of class "dgeMatrix"
| > [,1] [,2]
| > [1,] 0 0
| > [2,] 0 0
| > [3,] 0 0
| >
| > Matrix> Matrix(0, 2, 2, sparse=FALSE)# diagonal !
| > 2 x 2 diagonal matrix of class "ddiMatrix"
| > [,1] [,2]
| > [1,] 0 .
| > [2,] . 0
| >
| > Matrix> Matrix(0, 2, 2, sparse=FALSE, doDiag=FALSE)# -> dense
| > 2 x 2 Matrix of class "dsyMatrix"
| > [,1] [,2]
| > [1,] 0 0
| > [2,] 0 0
| >
| > Matrix> Matrix(1:6, 3, 2) # a 3 by 2 matrix (+ integer warning)
| > 3 x 2 Matrix of class "dgeMatrix"
| > [,1] [,2]
| > [1,] 1 4
| > [2,] 2 5
| > [3,] 3 6
| >
| > Matrix> Matrix(1:6 + 1, nrow=3)
| > 3 x 2 Matrix of class "dgeMatrix"
| > [,1] [,2]
| > [1,] 2 5
| > [2,] 3 6
| > [3,] 4 7
| >
| > Matrix> ## logical ones:
| > Matrix> Matrix(diag(4) > 0)# -> "ldiMatrix" with diag = "U"
| > 4 x 4 diagonal matrix of class "ldiMatrix"
| > [,1] [,2] [,3] [,4]
| > [1,] TRUE . . .
| > [2,] . TRUE . .
| > [3,] . . TRUE .
| > [4,] . . . TRUE
| >
| > Matrix> Matrix(diag(4) > 0, sparse=TRUE)# -> sparse...
| > 4 x 4 sparse Matrix of class "lsCMatrix"
| >
| > [1,] | . . .
| > [2,] . | . .
| > [3,] . . | .
| > [4,] . . . |
| >
| > Matrix> Matrix(diag(4) >= 0)# -> "lsyMatrix" (of all 'TRUE')
| > 4 x 4 Matrix of class "lsyMatrix"
| > [,1] [,2] [,3] [,4]
| > [1,] TRUE TRUE TRUE TRUE
| > [2,] TRUE TRUE TRUE TRUE
| > [3,] TRUE TRUE TRUE TRUE
| > [4,] TRUE TRUE TRUE TRUE
| >
| > Matrix> ## triangular
| > Matrix> l3 <- upper.tri(matrix(,3,3))
| >
| > Matrix> (M <- Matrix(l3)) # -> "ltCMatrix"
| > 3 x 3 sparse Matrix of class "ltCMatrix"
| >
| > [1,] . | |
| > [2,] . . |
| > [3,] . . .
| >
| > Matrix> Matrix(! l3)# -> "ltrMatrix"
| > 3 x 3 Matrix of class "ltrMatrix"
| > [,1] [,2] [,3]
| > [1,] TRUE . .
| > [2,] TRUE TRUE .
| > [3,] TRUE TRUE TRUE
| >
| > Matrix> as(l3, "CsparseMatrix")
| > 3 x 3 sparse Matrix of class "lgCMatrix"
| >
| > [1,] . | |
| > [2,] . . |
| > [3,] . . .
| >
| > Matrix> Matrix(1:9, nrow=3,
| > Matrix+ dimnames = list(c("a", "b", "c"), c("A", "B", "C")))
| > 3 x 3 Matrix of class "dgeMatrix"
| > A B C
| > a 1 4 7
| > b 2 5 8
| > c 3 6 9
| >
| > Matrix> (I3 <- Matrix(diag(3)))# identity, i.e., unit "diagonalMatrix"
| > 3 x 3 diagonal matrix of class "ddiMatrix"
| > [,1] [,2] [,3]
| > [1,] 1 . .
| > [2,] . 1 .
| > [3,] . . 1
| >
| > Matrix> str(I3) # note the empty 'x' slot
| > Formal class 'ddiMatrix' [package "Matrix"] with 4 slots
| > ..@ diag : chr "U"
| > ..@ Dim : int [1:2] 3 3
| > ..@ Dimnames:List of 2
| > .. ..$ : NULL
| > .. ..$ : NULL
| > ..@ x : num(0)
| >
| > Matrix> (A <- cbind(a=c(2,1), b=1:2))# symmetric *apart* from dimnames
| > a b
| > [1,] 2 1
| > [2,] 1 2
| >
| > Matrix> Matrix(A) # hence 'dgeMatrix'
| > 2 x 2 Matrix of class "dgeMatrix"
| > a b
| > [1,] 2 1
| > [2,] 1 2
| >
| > Matrix> (As <- Matrix(A, dimnames = list(NULL,NULL)))# -> symmetric
| > 2 x 2 Matrix of class "dsyMatrix"
| > [,1] [,2]
| > [1,] 2 1
| > [2,] 1 2
| >
| > Matrix> stopifnot(is(As, "symmetricMatrix"),
| > Matrix+ is(Matrix(0, 3,3), "sparseMatrix"),
| > Matrix+ is(Matrix(FALSE, 1,1), "sparseMatrix"))
| 430,436c562,564
| < A: function (x, y, ...)
| < {
| < B <- function(a, b, ...) {
| < match.call()
| < }
| < B(x + y, ...)
| < }
| ---
| > A: new("dgCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(8L, 10L), Dimnames = list(
| > NULL, NULL), x = c(7, 21, 28, 35, 14, 42, 49), factors = list())
| 438,444c566,589
| < checking body(.):
| < quote({
| < B <- function(a, b, ...) {
| < match.call()
| < }
| < B(x + y, ...)
| < })
| ---
| > --=--=--=--=--
| > A.: new("dgCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(8L, 10L), Dimnames = list(
| > NULL, NULL), x = c(2, 21, 28, 35, 14, 42, 49), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| > A1: new("dgCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(8L, 10L), Dimnames = list(
| > NULL, NULL), x = c(7, 21, 28, 35, 14, 42, 49), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| > AA: new("dgCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L, 7L, 7L, 7L, 7L, 7L, 7L,
| > 7L, 7L, 7L, 7L), Dim = c(10L, 20L), Dimnames = list(NULL, NULL),
| > x = c(7, 21, 28, 35, 14, 42, 49), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| > Aa: new("dgCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(8L, 10L), Dimnames = list(
| > NULL, NULL), x = c(9, 21, 28, 35, 14, 42, 49), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| > As: new("dsyMatrix", x = c(2, 1, 1, 2), Dim = c(2L, 2L), Dimnames = list(
| > NULL, NULL), uplo = "U", factors = list())
| 446,448d590
| < checking formals(.):
| < as.pairlist(alist(x = , y = , ... = ))
| < __ not parse()able __: hasMissObj(.) is true
| 551a694,701
| > D5.: new("ddiMatrix", diag = "N", Dim = c(5L, 5L), Dimnames = list(
| > NULL, NULL), x = c(5, 4, 3, 2, 1))
| > --> checking list(*): Ok
| > --=--=--=--=--
| > D5N: new("ddiMatrix", diag = "N", Dim = c(5L, 5L), Dimnames = list(
| > NULL, NULL), x = c(5, 4, 3, 2, NA))
| > --> checking list(*): Ok
| > --=--=--=--=--
| 564a715,718
| > I3: new("ddiMatrix", diag = "U", Dim = c(3L, 3L), Dimnames = list(
| > NULL, NULL), x = numeric(0))
| > --> checking list(*): Ok
| > --=--=--=--=--
| 588a743,747
| > M: new("ltCMatrix", i = c(0L, 0L, 1L), p = c(0L, 0L, 1L, 3L), Dim = c(3L,
| > 3L), Dimnames = list(NULL, NULL), x = c(TRUE, TRUE, TRUE), uplo = "U",
| > diag = "N")
| > --> checking list(*): Ok
| > --=--=--=--=--
| 612a772,776
| > args: structure(list(i = c(1, 3, 4, 5, 6, 7, 8, 1), j = c(2, 9, 6,
| > 7, 8, 9, 10, 2), x = c(7, 14, 21, 28, 35, 42, 49, 2)), class = "data.frame", row.names = c(NA,
| > -8L))
| > --> checking list(*): Ok
| > --=--=--=--=--
| 732,733c896,901
| < e: <environment>
| < __ not parse()able __: environment
| ---
| > dn: list(c("A", "B", "C"), c("a", "b", "c", "d", "e"))
| > --> checking list(*): Ok
| > --=--=--=--=--
| > e: new("ngCMatrix", i = integer(0), p = c(0L, 0L, 0L, 0L, 0L, 0L,
| > 0L), Dim = c(4L, 6L), Dimnames = list(NULL, NULL), factors = list())
| > --> checking list(*): Ok
| 844a1013,1015
| > i: c(1, 3, 4, 5, 6, 7, 8)
| > --> checking list(*): Ok
| > --=--=--=--=--
| 876a1048,1050
| > j: c(2, 9, 6, 7, 8, 9, 10)
| > --> checking list(*): Ok
| > --=--=--=--=--
| 886a1061,1064
| > l3: structure(c(FALSE, FALSE, FALSE, TRUE, FALSE, FALSE, TRUE, TRUE,
| > FALSE), .Dim = c(3L, 3L))
| > --> checking list(*): Ok
| > --=--=--=--=--
| 891a1070,1074
| > m: new("dgCMatrix", i = c(2L, 0L, 1L, 2L, 0L, 1L), p = c(0L, 1L,
| > 2L, 4L, 4L, 6L), Dim = c(3L, 5L), Dimnames = list(c("A", "B",
| > "C"), c("a", "b", "c", "d", "e")), x = c(1, 2, 4, 3, 6, 5), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| 944a1128,1136
| > n: new("ngCMatrix", i = 5:0, p = c(0L, 0L, 1L, 2L, 3L, 4L, 5L, 6L
| > ), Dim = 6:7, Dimnames = list(NULL, NULL), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| > nA: new("ngCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(8L, 10L), Dimnames = list(
| > NULL, NULL), factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| 961a1154,1156
| > perm: c(2L, 3L, 6L, 4L, 1L, 7L, 5L)
| > --> checking list(*): Ok
| > --=--=--=--=--
| 1010a1206,1211
| > sA: new("dsCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(10L, 10L), Dimnames = list(
| > NULL, NULL), x = c(7, 21, 28, 35, 14, 42, 49), uplo = "U",
| > factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| 1014a1216,1220
| > sy: new("dsCMatrix", i = c(1L, 3L, 4L, 2L, 3L), p = c(0L, 0L, 0L,
| > 0L, 1L, 3L, 4L, 5L), Dim = c(7L, 7L), Dimnames = list(NULL, NULL),
| > x = c(1, 4, 5, 3, 2), uplo = "U", factors = list())
| > --> checking list(*): Ok
| > --=--=--=--=--
| 1018a1225,1230
| > tA: new("dtCMatrix", i = c(0L, 3L, 4L, 5L, 2L, 6L, 7L), p = c(0L,
| > 0L, 1L, 1L, 1L, 1L, 2L, 3L, 4L, 6L, 7L), Dim = c(10L, 10L), Dimnames = list(
| > NULL, NULL), x = c(7, 21, 28, 35, 14, 42, 49), uplo = "U",
| > diag = "N")
| > --> checking list(*): Ok
| > --=--=--=--=--
| 1048c1260,1261
| < 2: In dput(x, control = control) : deparse may be incomplete
| ---
| > 2: In deparse(expr, backtick = backtick, control = control, ...) :
| > deparse may be incomplete
| 1051c1264,1265
| < 4: In deparse(expr, backtick = backtick, control = control, ...) :
| ---
| > 4: In dput(x, control = control) : deparse may be incomplete
| > 5: In deparse(expr, backtick = backtick, control = control, ...) :
| 1053d1266
| < 5: In dput(x, control = control) : deparse may be incomplete
| 1056c1269,1270
| < 7: In deparse(expr, backtick = backtick, control = control, ...) :
| ---
| > 7: In dput(x, control = control) : deparse may be incomplete
| > 8: In deparse(expr, backtick = backtick, control = control, ...) :
| 1058d1271
| < 8: In dput(x, control = control) : deparse may be incomplete
| 1061,1062d1273
| < 10: In deparse(expr, backtick = backtick, control = control, ...) :
| < deparse may be incomplete
| 1064c1275
| < Summary of (a total of 10) warning messages:
| ---
| > Summary of (a total of 9) warning messages:
| 1066c1277
| < 4x : In deparse(expr, backtick = backtick, control = control, ... :
| ---
| > 3x : In deparse(expr, backtick = backtick, control = control, ... :
| make[3]: *** [Makefile.common:106: eval-etc.Rout] Error 1
Now, I'm not quite sure how to interpret that output. Some of these
issues seem harmless, really, and not indicative of a serious problem in
R. Still, I reckon that it would be nice if the test suite would pass
and for all I know other people might run into the same issue as we did,
so I felt I should report it to the devs.
If there is any advice how to remedy this issues, then I'd very much
appreciate it.
Best regards,
Peter
[1] https://hydra.nixos.org/build/73154582/nixlog/3
More information about the R-devel
mailing list