El uso correcto de devtools y/o RStudio con respecto a.Rbuildignore
(1)
Me gustaría excluir los siguientes recursos al crear un paquete R a través de .Rbuildignore
:
^.*/.Rproj$
^/.Rproj/.user$
inst/examples
inst/prof
man-roxygen
tests
Pero estoy confundido, ya que a veces parece funcionar y otras no.
Supongo que tiene que ver si estoy usando devtools::build()
, devtools::install()
o lo que suceda exactamente al golpear SHFT + CTRL + B
(o Build >> Build and Reload ) en RStudio.
Los únicos recursos relevantes que pude encontrar fueron esta publicación que conduce a este problema , pero todavía no lo entiendo completamente.
Esto es lo que intenté:
Cargue todo seguido de Construir y Recargar a través de atajos de RStudio:
Esto es lo que veo al llamar a
list.files(file.path(R.home("library"), "mypackage"))
:[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R"
Cargue todos seguidos de Build and Reload seguido de
devtools::install()
:Esto es lo que veo al llamar a
list.files(file.path(R.home("library"), "mypackage"))
:[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" "tests"
devtools::load_all()
seguido pordevtools::build()
seguido pordevtools::install()
:Esto es lo que veo al llamar a
list.files(file.path(R.home("library"), "mypackage"))
:[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" "tests"
Descomprimiendo el archivo
.tar.gz
e inspeccionando el contenido del directorio:[1] "DESCRIPTION" "man" "NAMESPACE" "R"
devtools::load_all()
seguido pordevtools::build(binary=TRUE)
seguido pordevtools::install()
:[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" "tests"
Descomprimiendo el archivo
.zip
e inspeccionando el contenido del directorio:[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "MD5" "Meta" "NAMESPACE" [9] "prof" "R"
Ver esto también me da razones para creer que todavía no entiendo completamente las diferencias entre devtools::build()
, devtools::install()
y install.packages()
después de que se haya creado el paquete ;-)
Información de la sesión:
R version 3.1.1 (2014-07-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=German_Germany.1252
[2] LC_CTYPE=German_Germany.1252
[3] LC_MONETARY=German_Germany.1252
[4] LC_NUMERIC=C
[5] LC_TIME=German_Germany.1252
attached base packages:
[1] compiler stats graphics grDevices utils
[6] datasets methods base
other attached packages:
[1] mypackage_0.1.0.1
loaded via a namespace (and not attached):
[1] devtools_1.5 digest_0.6.4 evaluate_0.5.5
[4] httr_0.4 memoise_0.2.1 packrat_0.4.0.5
[7] parallel_3.1.1 RCurl_1.95-4.3 stringr_0.6.2
[10] tools_3.1.1 whisker_0.3-2
Estoy usando RStudio 0.98.978
Lo que me funciona es usar devtools::build
para crear un paquete fuente, luego install.packages
.
devtools::build() %>%
install.packages(repos = NULL, type = "source")
Usar devtools::build(binary = TRUE)
no funciona, ya que se llama R CMD INSTALL
lugar de R CMD build
, que ignora los archivos .Rbuildignore
. Del mismo modo, el botón "Construir y recargar" de RStudio utiliza R CMD INSTALL
.