R/assert_package.R
assert_package.RdThe function .assert_package() checks whether a package is installed and
returns an error or FALSE if not available. If a package search is provided,
the function will check whether a minimum version of a package is required.
The function .get_package_dependencies() returns a tibble with all
dependencies of a specific package. Finally, .get_min_version_required()
will return, if any, the minimum version of pkg required by pkg_search,
NULL if no minimum version required.
.assert_package(pkg, fn = NULL, pkg_search = "broom.helpers", boolean = FALSE)
.get_package_dependencies(pkg_search = "broom.helpers")
.get_all_packages_dependencies(
pkg_search = NULL,
remove_duplicates = FALSE,
lib.loc = NULL
)
.get_min_version_required(pkg, pkg_search = "broom.helpers")(string)
Name of the required package.
(string)
Name of the calling function from the user perspective. Used to write
informative error messages.
(string)
Name of the package the function will search for a minimum
required version from.
(logical)
Whether to return a TRUE/FALSE, rather
than error when package/package version not available. Default is FALSE,
which will return an error if pkg is not installed.
(logical)
If several versions of a package are installed,
should only the first one be returned?
(string)
Location of R library trees to search through, see
utils::installed.packages().
logical or error for .assert_package(), NULL or character with
the minimum version required for .get_min_version_required(), a tibble for
.get_package_dependencies().
get_all_packages_dependencies() could be used to get the list of
dependencies of all installed packages.
# \donttest{
.assert_package("broom", boolean = TRUE)
#> [1] TRUE
.get_package_dependencies()
#> # A tibble: 66 × 6
#> pkg_search pkg_search_version dependency_type pkg version compare
#> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 broom.helpers 1.22.0 Imports broom 0.8 >=
#> 2 broom.helpers 1.22.0 Imports cards NA NA
#> 3 broom.helpers 1.22.0 Imports cli NA NA
#> 4 broom.helpers 1.22.0 Imports dplyr 1.1.0 >=
#> 5 broom.helpers 1.22.0 Imports labelled NA NA
#> 6 broom.helpers 1.22.0 Imports lifecycle NA NA
#> 7 broom.helpers 1.22.0 Imports purrr NA NA
#> 8 broom.helpers 1.22.0 Imports rlang 1.0.1 >=
#> 9 broom.helpers 1.22.0 Imports stats NA NA
#> 10 broom.helpers 1.22.0 Imports stringr NA NA
#> # ℹ 56 more rows
.get_min_version_required("brms")
#> Suggests
#> "2.13.0"
#> attr(,"compare")
#> [1] ">="
# }