Compilación rápida para construir un paquete en R
Compilación rápida para construir un paquete en R
Cuando se crea un paquete innumerables veces se modifica y compila. Una posible automatización consiste en utilizar el siguiente código para compilarlo y testearlo cuando se modifique.
Por ejemplo, si el paquete se llama preferelation, entonces escribimos un fichero llamado compilarpreferelation.r con las siguientes instrucciones:
pathscran <- "~/paquete/" pathspaquete <- "~/paquete/preferelation" pathsrc <- "~/paquete/preferelation/src/" library(devtools);library(Rd2roxygen); options(roxygen.comment = "##' ") ## allow ESS style comments tools::package_native_routine_registration_skeleton(pathspaquete,con=paste0(pathsrc,"init.c")); library("preferelation");detach("package:preferelation", unload=TRUE);roxygen2::roxygenise(pathspaquete) old <- getwd();setwd(pathscran);system("R CMD build preferelation && R CMD INSTALL preferelation_0.1.tar.gz");setwd(old) library("preferelation");detach("package:preferelation", unload=TRUE);library("preferelation") ## Additional code to test the functions of the package...
Crea o regenera la documentación a partir de los comentarios de tipo roxygenise que aparecen en las funciones del subdirectorio R. La función packagenativeroutineregistrationskeleton revisa todo el código del directorio R para encontrar las llamadas de .Call y exportar las funciones de src que se hayan utilizado. Instala el paquete y lo carga en la sesión.
El código adicional de ese fichero contiene los ejemplos, tests o pruebas de interés.