[英]When creating an R package how do I include warnings that display upon installation? Is there a convenient roxygen2 tag?
我正在定期打包我公司使用的一些功能。 我想在安裝/更新時顯示的包中包含警告,通知同事可能對其代碼產生下游影響的更改? 我可以在包文檔中使用 roxgen2 標簽嗎?
據我所知, package:roxygen2
沒有這樣的標簽。
但是您可以直接編輯函數。 這是RPushBullet
所做的(在解析配置文件的上下文中)。
.onLoad <- function(libname, pkgname) {
dotfile <- .getDotfile()
if (file.exists(dotfile)) .parseResourceFile(dotfile)
}
.onAttach <- function(libname, pkgname) {
packageStartupMessage("Attaching RPushbullet version ",
packageDescription("RPushbullet")$Version, ".")
dotfile <- .getDotfile()
if (file.exists(dotfile)) {
packageStartupMessage("Reading ", dotfile)
.parseResourceFile(dotfile)
} else {
txt <- paste("No file", dotfile, "found. Consider placing the",
"Pushbullet API key and your device id(s) there.")
txt <- paste(strwrap(txt), collapse="\n")
packageStartupMessage(txt)
.pkgenv[["pb"]] <- NULL
}
}
所以.onLoad()
實際上不允許打印消息,但是.onAttach()
。 由於以可抑制的方式顯示它們更禮貌,因此不應直接使用cat()
或warning()
,而應使用packageStartupMessage()
。
這些通常放置在文件R/init.R
或R/zzz.R
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.