```r > purrr:::capture_output function (code) { warnings <- character() wHandler <- function(w) { warnings <<- c(warnings, w$message) invokeRestart("muffleWarning") } messages <- character() mHandler <- function(m) { messages <<- c(messages, m$message) invokeRestart("muffleMessage") } ``` To give things like `rlang:::conditionMessage.rlang_error` a chance to run correctly