I'd like to exclude the following ressources when building an R package via .Rbuildignore:
^.*\.Rproj$ ^\.Rproj\.user$ inst/examples inst/prof man-roxygen tests But I'm confused as sometimes it seems to work and sometimes it doesn't.
I'm guessing that it has to do whether I'm using devtools::build(), devtools::install() or whatever exactly happens when hitting SHFT + CTRL + B (or Build >> Build and Reload) in RStudio.
The only relevant ressources I could find were this post leading to this issue, but I'm still not fully getting it.
This is what I tried:
Load all followed by Build and Reload via RStudio shortcuts:
This is what I see when calling list.files(file.path(R.home("library"), "mypackage")):
[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" Load all followed by Build and Reload followed by devtools::install():
This is what I see when calling list.files(file.path(R.home("library"), "mypackage")):
[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" "tests" devtools::load_all() followed by devtools::build() followed by devtools::install():
This is what I see when calling list.files(file.path(R.home("library"), "mypackage")):
[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" "tests" Uncompressing the .tar.gz file and inspecting the directory content:
[1] "DESCRIPTION" "man" "NAMESPACE" "R" devtools::load_all() followed by devtools::build(binary=TRUE) followed by devtools::install():
[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "Meta" "NAMESPACE" "prof" [9] "R" "tests" Uncompressing the .zip file and inspecting the directory content:
[1] "DESCRIPTION" "examples" "help" "html" [5] "INDEX" "MD5" "Meta" "NAMESPACE" [9] "prof" "R" Looking at this also gives me reason to believe that I'm still not fully understanding the differences between devtools::build(), devtools::install() and install.packages() after the package has been built ;-)
Session Info:
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 I'm using RStudio 0.98.978
The thing that works for me is to use devtools::build to make a source package, then install.packages.
devtools::build() %>% install.packages(repos = NULL, type = "source") Using devtools::build(binary = TRUE) does not work, since it calls R CMD INSTALL rather than R CMD build, which ignores .Rbuildignore files. Likewise, RStudio's "Build & Reload" button uses R CMD INSTALL.
I was encountering a similar problem when using devtools::check_win_devel() and devtools::release().
For consistent behaviour, I have found that it helps to use regular expressions for all entries in .Rbuildignore. This file would then become:
^.*\.Rproj$ ^\.Rproj\.user$ ^inst/examples ^inst/prof ^man\-roxygen ^tests The directories are then ignored.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With