To be looked at after #20. This simplifies the dependency graph of {cyclocomp} by removing 3 (heavy) recursive dependencies. This seems possible by leveraging other imported packages. The context of this is to remove these dependencies so {lintr} has a smaller dependency graph, in the light of lorenzwalthert/precommit#356.
library(magrittr)
setwd("~/git/cyclocomp/")
deps <- desc::desc_get_deps() %>%
dplyr::filter(type == 'Imports') %>%
dplyr::pull(package) %>%
c("callr")
recursive_deps_before <- purrr::map(deps, ~names(renv:::renv_package_dependencies(.x))) %>%
unlist() %>%
unique()
print(recursive_deps_before)
#> [1] "processx" "R6" "utils" "callr" "ps" "graphics"
#> [7] "grDevices" "stats" "crayon" "methods" "rprojroot" "desc"
#> [13] "tools" "remotes" "withr"
deps_after <- desc::desc_get_deps() %>%
dplyr::filter(type == 'Imports') %>%
dplyr::pull(package) %>%
setdiff('callr')
recursive_deps_after <- purrr::map(deps_after, ~names(renv:::renv_package_dependencies(.x))) %>%
unlist() %>%
unique()
print(recursive_deps_after)
#> [1] "graphics" "utils" "grDevices" "stats" "crayon" "methods"
#> [7] "R6" "rprojroot" "desc" "tools" "remotes" "withr"
setdiff(recursive_deps_before, recursive_deps_after)
#> [1] "processx" "callr" "ps"
Created on 2022-01-09 by the reprex package (v2.0.1)
cc: @MichaelChirico
To be looked at after #20. This simplifies the dependency graph of {cyclocomp} by removing 3 (heavy) recursive dependencies. This seems possible by leveraging other imported packages. The context of this is to remove these dependencies so {lintr} has a smaller dependency graph, in the light of lorenzwalthert/precommit#356.
Created on 2022-01-09 by the reprex package (v2.0.1)
cc: @MichaelChirico