On 27/02/2017 09:30, Peter Simons wrote:
Hi,
I tried compiling the latest pre-release for R 3.3.3 for the NixOS Linux
distribution [1], but the build fails during the "make check" phase
because of the following 2 issues:
Hmm, R-devel (your subject line) is not a pre-release of R 3.3.3: it is
'R Under development' for what is planned as R 3.4.0. Pre-release
tarballs for 3.3.3 are things like R-rc_2017-02-26_r72260.tar.gz (and
were previously labelled R-beta).
Your first point only occurs in R-devel, and was something already
reported and under investigation. Note that test does not actually
depend on network access: it depends on having an accessible CRAN
mirror. The latter could be local (and is on the CRAN check farm, for
example). So we have been working on a more sophisticated condition to
run that test.
There are lots of possible check environments: it is very time-consuming
to check them all and reasonable coverage is only attempted once a
pre-release reaches 'alpha' status -- 3.4.0 has not done so but is
planned to be in late March.
I have just re-checked on Linux, and R 3.3.3 RC passed its checks
without Internet access (which is checked for where needed).
I also re-checked 3.3.3 RC without recommended packages and got the
expected messages about incomplete testing but no failures except in
'make check-recommended' (expected!).
Our posting guide does ask you to include the output of sessionInfo():
that would have avoided the version confusion (and might even have
alerted you to it).
1) The "tools" test in "tests/Examples" requires network access, which
it doesn't have in our build environment. Therefore, it fails as
follows according to "tools-Ex.Rout.fail":
| [...]
| > set.seed(11)
| > ## End(Don't show)
| > pdb <- CRAN_package_db()
| Warning in url(sprintf("%s/%s", cran, path), open = "rb") :
| URL 'http://CRAN.R-project.org/web/packages/packages.rds': status was
'Couldn't resolve host name'
| Error in url(sprintf("%s/%s", cran, path), open = "rb") :
| cannot open the connection to
'http://CRAN.R-project.org/web/packages/packages.rds'
| Calls: CRAN_package_db -> as.data.frame -> read_CRAN_object -> gzcon -> url
| Execution halted
I'm wondering whether it would be possible to extend the test suite
with a configure-time flag that disable tests which depend on network
access? My experience is that most modern Linux distributions run
their builds in a restricted environment and therefore will run into
trouble if the suite assumes that it can access the Internet.
2) When R is compiled with the --without-recommended-packages flag
(which is our preferred configuration), the "base" test in
"tests/Examples" fails, apparently because it depends on MASS. I'm
citing from "base-Ex.Rout.fail":
| > ## The string "foo" and the symbol 'foo' can be used interchangably
here:
| > stopifnot( identical(isNamespaceLoaded( "foo" ), FALSE),
| + identical(isNamespaceLoaded(quote(foo)), FALSE),
| + identical(isNamespaceLoaded(quote(stats)), statL))
| >
| > hasM <- isNamespaceLoaded("MASS") # (to restore if needed)
| > Mns <- asNamespace("MASS") # loads it if not already
| Error in loadNamespace(name) : there is no package called 'MASS'
| Calls: asNamespace ... tryCatch -> tryCatchList -> tryCatchOne ->
| Execution halted
I hope this helps!
Best regards,
Peter
[1] http://nixos.org/
__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
--
Brian D. Ripley, rip...@stats.ox.ac.uk
Emeritus Professor of Applied Statistics, University of Oxford
__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel