Nothing
renv_pretty_print_records <- function(preamble, records, postamble = NULL) {
if (empty(records))
return(invisible(NULL))
if (!renv_verbose())
return(invisible(NULL))
# NOTE: use 'sort()' rather than 'csort()' here so that
# printed output is sorted in the expected way in the users locale
# https://github.com/rstudio/renv/issues/1289
names(records) <- names(records) %||% map_chr(records, `[[`, "Package")
records <- records[sort(names(records))]
packages <- names(records)
descs <- map_chr(records, renv_record_format_short)
text <- sprintf("- %s [%s]", format(packages), descs)
all <- c(preamble, text, postamble, if (length(postamble)) "")
renv_caution_impl(all)
}
renv_pretty_print_records_pair <- function(preamble,
old,
new,
postamble = NULL,
formatter = NULL)
{
formatter <- formatter %||% renv_record_format_pair
all <- c(
c(preamble, ""),
renv_pretty_print_records_pair_impl(old, new, formatter),
if (length(postamble)) c(postamble, "")
)
renv_caution_impl(all)
}
renv_pretty_print_records_pair_impl <- function(old, new, formatter) {
# NOTE: use 'sort()' rather than 'csort()' here so that
# printed output is sorted in the expected way in the users locale
# https://github.com/rstudio/renv/issues/1289
all <- sort(union(names(old), names(new)))
# compute groups
groups <- map_chr(all, function(package) {
lhs <- old[[package]]; rhs <- new[[package]]
case(
is.null(lhs$Source) ~ rhs$Repository %||% rhs$Source,
is.null(rhs$Source) ~ lhs$Repository %||% lhs$Source,
!is.null(rhs$Repository) ~ rhs$Repository,
!is.null(rhs$Source) ~ rhs$Source
)
})
n <- max(nchar(all))
# iterate over each group and print
uapply(csort(unique(groups)), function(group) {
lhs <- renv_records_select(old, groups, group)
rhs <- renv_records_select(new, groups, group)
nms <- union(names(lhs), names(rhs))
text <- map_chr(nms, function(nm) {
formatter(lhs[[nm]], rhs[[nm]])
})
if (group == "unknown")
group <- "(Unknown Source)"
c(
header(group),
paste("-", format(nms, width = n), " ", text),
""
)
})
}
# NOTE: Used by vetiver, so perhaps is part of the API.
# We should think of a cleaner way of exposing this.
# https://github.com/rstudio/renv/issues/1413
renv_pretty_print_impl <- renv_caution_impl
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.