Deprecation helpers
If the user leaves verbose unspecified or if they request verbose = TRUE (default behavior), warn_for_verbose() does nothing.
But if they explicitly ask for verbose = FALSE, we throw a warning.
warn_for_verbose <- function(verbose = TRUE,
env = rlang::caller_env(),
user_env = rlang::caller_env(2)) {
# This function is not meant to be called directly, so don't worry about its
# default of `verbose = TRUE`.
# In authentic, indirect usage of this helper, this picks up on whether
# `verbose` was present in the **user's** call to the calling function.
if (!lifecycle::is_present(verbose) || isTRUE(verbose)) {
return(invisible())
}
lifecycle::deprecate_warn(
when = "2.0.0",
what = I("The `verbose` argument"),
details = c(
"Set `options(googledrive_quiet = TRUE)` to suppress all googledrive messages.",
"For finer control, use `local_drive_quiet()` or `with_drive_quiet()`.",
"googledrive's `verbose` argument will be removed in the future."
),
user_env = user_env
)
# only set the option during authentic, indirect usage
if (!identical(env, global_env())) {
local_drive_quiet(env = env)
}
invisible()
}