Check a package installation status or minimum required version
Source:R/assert_package.R
assert_package.Rd
The 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.
Usage
.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")
Arguments
- pkg
(
string
)
Name of the required package.- fn
(
string
)
Name of the calling function from the user perspective. Used to write informative error messages.- pkg_search
(
string
)
Name of the package the function will search for a minimum required version from.- boolean
(
logical
)
Whether to return aTRUE
/FALSE
, rather than error when package/package version not available. Default isFALSE
, which will return an error ifpkg
is not installed.- remove_duplicates
(
logical
)
If several versions of a package are installed, should only the first one be returned?- lib.loc
(
string
)
Location ofR
library trees to search through, seeutils::installed.packages()
.
Value
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()
.
Details
get_all_packages_dependencies()
could be used to get the list of
dependencies of all installed packages.
Examples
# \donttest{
.assert_package("broom", boolean = TRUE)
#> [1] TRUE
.get_package_dependencies()
#> # A tibble: 64 × 6
#> pkg_search pkg_search_version dependency_type pkg version compare
#> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 broom.helpers 1.20.0 Imports broom 0.8 >=
#> 2 broom.helpers 1.20.0 Imports cards NA NA
#> 3 broom.helpers 1.20.0 Imports cli NA NA
#> 4 broom.helpers 1.20.0 Imports dplyr 1.1.0 >=
#> 5 broom.helpers 1.20.0 Imports labelled NA NA
#> 6 broom.helpers 1.20.0 Imports lifecycle NA NA
#> 7 broom.helpers 1.20.0 Imports purrr NA NA
#> 8 broom.helpers 1.20.0 Imports rlang 1.0.1 >=
#> 9 broom.helpers 1.20.0 Imports stats NA NA
#> 10 broom.helpers 1.20.0 Imports stringr NA NA
#> # ℹ 54 more rows
.get_min_version_required("brms")
#> Suggests
#> "2.13.0"
#> attr(,"compare")
#> [1] ">="
# }