Проблемы с установкой пакетов R с devtools на Travis - PullRequest
10 голосов
/ 17 марта 2019

Сборки Travis CI для drake R руководства пользователя недавно начали давать сбой :

Downloading GitHub repo ropensci/drake@master
Error: Could not find tools necessary to compile a package
In addition: Warning message:
In get0(oNam, envir = ns) : internal error -3 in R_decompress1
Execution halted
The command "Rscript -e 'deps <- devtools::dev_package_deps(dependencies = NA);devtools::install_deps(dependencies = TRUE);if (!all(deps$package %in% installed.packages())) { message("missing: ", paste(setdiff(deps$package, installed.packages()), collapse=", ")); q(status = 1, save = "no")}'" failed and exited with 1 during .

Я пытался использовать разрабатываемые версии devtools и pkgload, а ошибки изменились :

$ Rscript -e 'deps <- devtools::dev_package_deps(dependencies = NA);devtools::install_deps(dependencies = TRUE);if (!all(deps$package %in% installed.packages())) { message("missing: ", paste(setdiff(deps$package, installed.packages()), collapse=", ")); q(status = 1, save = "no")}'
Error in match.arg(upgrade, c("ask", "always", "never")) : 
  'arg' must be of length 1
Calls: <Anonymous> ... upgradable_packages -> resolve_upgrade -> match.arg
Execution halted
The command "Rscript -e 'deps <- devtools::dev_package_deps(dependencies = NA);devtools::install_deps(dependencies = TRUE);if (!all(deps$package %in% installed.packages())) { message("missing: ", paste(setdiff(deps$package, installed.packages()), collapse=", ")); q(status = 1, save = "no")}'" failed and exited with 1 during .

И когда я также использовал версию разработки remotes:

$ Rscript -e 'deps <- devtools::dev_package_deps(dependencies = NA);devtools::install_deps(dependencies = TRUE);if (!all(deps$package %in% installed.packages())) { message("missing: ", paste(setdiff(deps$package, installed.packages()), collapse=", ")); q(status = 1, save = "no")}'
drake     (ae093a068... -> 7f40fc6be...) [GitHub]
lazyeval  (0.2.1        -> 0.2.2       ) [CRAN]
polyclip  (1.9-1        -> 1.10-0      ) [CRAN]
purrr     (0.3.1        -> 0.3.2       ) [CRAN]
readxl    (1.3.0        -> 1.3.1       ) [CRAN]
rmarkdown (1.11         -> 1.12        ) [CRAN]
stringi   (1.3.1        -> 1.4.3       ) [CRAN]
tibble    (2.0.1        -> 2.1.1       ) [CRAN]
tinytex   (0.10         -> 0.11        ) [CRAN]
Installing 8 packages: lazyeval, polyclip, purrr, readxl, rmarkdown, stringi, tibble, tinytex
Error in if (type == "binary") { : argument is of length zero
Calls: <Anonymous> ... with_rprofile_user -> with_envvar -> force -> force -> i.p
Execution halted
The command "Rscript -e 'deps <- devtools::dev_package_deps(dependencies = NA);devtools::install_deps(dependencies = TRUE);if (!all(deps$package %in% installed.packages())) { message("missing: ", paste(setdiff(deps$package, installed.packages()), collapse=", ")); q(status = 1, save = "no")}'" failed and exited with 1 during .

Я считаю, что сборки должны быть успешными, по крайней мере, до того момента, когда собственно руководство начнет работать.

Ответы [ 2 ]

1 голос
/ 10 апреля 2019

remotes 2.0.3 (теперь на CRAN) это исправить. Travis CI получает его оттуда.

См https://github.com/r-lib/devtools/issues/2020

Спасибо Джиму Хестеру!

0 голосов
/ 10 апреля 2019

Мне удалось решить эту проблему в devtools 2.0.2, передав сам аргумент upgrade: devtools::install_deps(dependencies = TRUE, upgrade="always")

...