【问题标题】:R submit to CRAN: which R version to build package?R 提交给 CRAN:构建包的 R 版本是什么?
【发布时间】:2013-06-19 13:48:04
【问题描述】:

我想向 CRAN 提交一个包裹。在CRAN repository policy 它指出 “当新的 R x.y.0 版本发布时,R CMD 检查给出‘ERROR’的包将被归档”

它还说“请确保在提交之前对要上传的压缩包运行 R CMD check --as-cran”

在我的 tarball 上运行 R CMD check --as cran 会发出警告:

Warning: unknown option ‘--as-cran’

我在 Ubuntu 12.04.2 LTS 上运行 R 版本 2.14.1。我可以使用此版本构建源代码包还是必须使用 R 3.0?

为什么R CMD check --as-cran 对我不起作用?

【问题讨论】:

  • 当你说R CMD check --as-cran 不适合你时,你是什么意思?您收到什么错误消息?
  • 我没有收到错误,但上面发布的警告。
  • 您的 R 版本没有 --as-cran 检查,因为它是在 R 2.14.2 中引入的 ...

标签: r package version cran


【解决方案1】:

您链接到的文档说:

请确保 R CMD check --as-cran 已在 tarball 上运行 提交前上传。这应该用当前的 发布 R 或(最好是)R-devel 或 R-patched。

因此,现在,您应该使用 R-3.0.1 并针对 R-devel 分支进行测试(如果可能)。

【讨论】:

  • 这听起来很合理,我现在正在尝试安装 R 3.0.1 以查看 R CMD check --as-cran 是否有效。
  • 刚刚安装了 R 3,它不再对 --as-cran 参数发出警告。在提交之前,我会用这个版本检查我的包。非常感谢!
  • 您可能还想添加参数--vanilla,尽管这可能在--as-cran 中被捕获。它确保在启动期间不会读取任何本地文件。
  • 或使用devtools::check() 最好模拟cran 的功能。
【解决方案2】:

从当前 2015 年 10 月的 CRAN 政策开始: "请确保在提交之前已在要上传的 tarball 上运行 R CMD check --as-cran。这应该使用当前版本的 R-devel 完成(或者如果这不可能并在提交中解释,当前的 R 补丁或当前版本的 R.)"

我认为这与最初接受的答案中描述的政策有所不同。

docker/rocker 是一种在不破坏开发环境的情况下相当容易实现这一目标的方法。

我认为用最新版本构建是正确的,但是用 R-devel 和最新版本进行测试。

【讨论】:

    【解决方案3】:

    您可以在https://hub.docker.com/r/starfox/r-devel/ 上试用新的starfox/r-devel 容器。它已经包含一些包,这将使您的发布更加方便。还有一个guide how to use it

    免责声明:我是容器和指南两者的维护者。

    【讨论】:

      猜你喜欢
      • 2021-05-26
      • 1970-01-01
      • 1970-01-01
      • 2022-07-08
      • 2018-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多