KevCaz's Website

I was looking at some issues on GitHub when I found this example provided by Dirk Eddelbuettel to evaluate the number of species of a dependencies of a package. I decided to experiment a little bit package_dependencies().

1
2
3
4
R> library(tools)
R> ap <- available.packages()
R> nrow(ap) # nb available package
[1] 13385

Retrieve the packages rcites depends on:

1
2
3
4
R> rc <- tools::package_dependencies("rcites", ap, "Imports")
R> rc
$rcites
[1] "httr"       "jsonlite"   "data.table" "methods"

The number of packages that depend or import Rcpp:

1
2
3
4
R> rc <- package_dependencies("Rcpp", ap, reverse = TRUE) %>% unlist %>% length
R> rc
$rcites
[1] "httr"       "jsonlite"   "data.table" "methods"

https://twitter.com/eddelbuettel/status/1063051483661381633

1
2
3
R> rc <- package_dependencies("Rcpp", ap, reverse = TRUE) %>% unlist %>% length
R> rc
[1] 1503

Yep, >1500! Dirk Eddelbuettel mentioned this recently:

A last example, the full list of packages rcites depends on (including the dependencies of the dependencies):

1
2
3
4
5
R> rcf <- tools::package_dependencies("rcites", ap, recursive = TRUE)
R> rcf
$rcites
[1] "httr"       "jsonlite"   "data.table" "methods"    "mime"       
[6] "curl"       "openssl"    "R6"         "tools"