ankane / jetpack

A friendly package manager for R

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ideas

ankane opened this issue · comments

Please create a new issue to discuss any ideas or share your own.

Explored, but on-hold

  • More ways to install (Chocolatey or Scoop for Windows, Homebrew for Mac, packager.io for Linux)
  • Add option to require all dependencies without library calls - jetpack.require() (could be slow, requires Jetpack as runtime dependency)
  • Automatic dependency resolution (this could be a huge undertaking - maybe use something like https://github.com/r-lib/pkgdepends or https://github.com/CocoaPods/Molinillo)
  • Remove desc to reduce dependencies down to 4
  • No dependencies (vendor all code)
  • Add ability to vendor packages in project - vendor_src branch
  • Shortcut for specifying GitHub remotes
  • Add ability to specify CRAN repo in DESCRIPTION or remote

One issue packrat hasn't solved is system dependencies (when installing older package versions from source). Any ideas to tackle that issue in jetpack?

Hey @quartin, I'm not familiar with that issue. Can you explain more, and give steps to reproduce if you have them?

Hey, I'm sorry for the huge delay. These sort of problems:

> packrat::restore()
Installing Rcpp (0.12.13) ... 
[1] "Command failed (1)\n\nFailed to run system command:\n\n\t'/Library/Frameworks/R.framework/Resources/bin/R' --vanilla CMD INSTALL '/private/var/folders/r3/5pj1gsqn6934q_jfdt3dy5540000gp/T/RtmpK2hGgy/Rcpp' --library='/xxxx/src/R/packrat/lib/x86_64-apple-darwin15.6.0/3.5.1' --install-tests --no-docs --no-multiarch --no-demo \n\nThe command failed with output:\n* installing *source* package 'Rcpp' ...\n
** package 'Rcpp' successfully unpacked and MD5 sums checked\n
** libs\nclang++  -I\"/Library/Frameworks/R.framework/Resources/include\" -DNDEBUG -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c Date.cpp -o Date.o\nIn file included from Date.cpp:31:\nIn file included from ../inst/include/Rcpp.h:77:\n../inst/include/Rcpp/Rmath.h:222:55: error: no member named 'Rf_pythag' in the global namespace; did you mean 'pythag'?\n    inline double pythag(double a, double b)    { return ::Rf_pythag(a, b); }\n                                                         ^~~~~~~~~~~\n                                                         pythag\n../inst/include/Rcpp/Rmath.h:222:19: note: 'pythag' declared here\n    inline double pythag(double a, double b)    { return ::Rf_pythag(a, b); }\n                  ^\n1 error generated.\nmake: *** [Date.o] Error 1\nERROR: compilation failed for package 'Rcpp'\n* removing '/xxxx/src/R/packrat/lib/x86_64-apple-darwin15.6.0/3.5.1/Rcpp'"
Error: Command failed (1)

Failed to run system command:

	'/Library/Frameworks/R.framework/Resources/bin/R' --vanilla CMD INSTALL '/private/var/folders/r3/5pj1gsqn6934q_jfdt3dy5540000gp/T/RtmpK2hGgy/Rcpp' --library='/xxxx/src/R/packrat/lib/x86_64-apple-darwin15.6.0/3.5.1' --install-tests --no-docs --no-multiarch --no-demo 

The command failed with output:
* installing *source* package 'Rcpp' ...
** package 'Rcpp' successfully unpacked and MD5 sums checked
** libs
clang++  -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c Date.cpp -o Date.o
In file included from Date.cpp:31:
In file included from ../inst/include/Rcpp.h:77:
../inst/include/Rcpp/Rmath.h:222:55: error: no member named 'Rf_pythag' in the global namespace; did you mean 'pythag'?
    inline double pythag(double a, double b)    { return ::Rf_pythag(a, b); }
session info

> sessionInfo()
R version 3.5.1 (2018-07-02)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS High Sierra 10.13.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
 [1] compiler_3.5.1  backports_1.1.2 magrittr_1.5    rprojroot_1.3-2 htmltools_0.3.6 tools_3.5.1     yaml_2.2.0      Rcpp_1.0.0      stringi_1.2.4   rmarkdown_1.10  knitr_1.20      stringr_1.3.1   digest_0.6.18   packrat_0.4.8-1
[15] evaluate_0.10.1

clang

▶ clang -v
Apple LLVM version 9.0.0 (clang-900.0.39.2)
Target: x86_64-apple-darwin17.7.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

Hi @quartin, I've never encountered that error, but I'm not sure there's much Jetpack can do since it relies on Packrat (unless there's a known workaround for it).