安装具有特定版本和测试的 R 包
Posted
技术标签:
【中文标题】安装具有特定版本和测试的 R 包【英文标题】:Install R package with specific version AND tests 【发布时间】:2021-10-23 16:37:34 【问题描述】:我想使用testthat::test_package('httr')
对特定版本的包运行包内部测试。
有没有办法安装具有特定版本的 R 包(例如来自 CRAN)和它的测试?
我知道有
install.packages("httr", INSTALL_opts = "--install-tests")
为给定的包安装测试(没有任何选项来指定特定的包版本)。
还有
devtools::install_version("httr", version = "1.4.1")
或 renv::install("httr@1.4.1")
为软件包安装特定版本(不能指定例如 INSTALL_opts)。
我看不出有任何方法可以将包版本的规范和--install-tests
选项结合起来。
任何帮助将不胜感激!
注意:包“httr”在这里只是用作占位符。
【问题讨论】:
【参考方案1】:renv
提供了一个小扩展,可以通过INSTALL_opts
R 选项设置这些选项。因此,例如,以下内容应该适用于renv 0.14.0
:
# set options for renv
options(INSTALL_opts.httr = "--install-tests")
# use 'rebuild = true', in case an older version
# of the package without tests is cached
renv::install("httr@1.4.1", rebuild = TRUE)
如果您希望这些选项适用于所有要安装的软件包,您可以改用:
options(INSTALL_opts = "--install-tests")
(renv
主要支持通过选项设置这些选项,以便通过renv::restore()
安装的包可以根据每个包更符合人体工程学地进行配置。)
【讨论】:
非常感谢。我不知道可以将包名称添加到选项中,以便该选项仅适用于单个包!此外,我不知道rebuild=TRUE
选项。谢谢!以上是关于安装具有特定版本和测试的 R 包的主要内容,如果未能解决你的问题,请参考以下文章
R语言安装本地包Warning in system(cmd) : ‘make‘ not found安装和R版本匹配的Rtools