繁体   English   中英

如何通过 GitHub Actions 向 CRAN 提交 R package?

[英]How to submit an R package to CRAN via GitHub Actions?

我创建了一个 R package,每当我将更改合并到 master 分支时,我想通过 GitHub Actions 将它上传到 CRAN。 我已经找到了很多 R 操作的例子,我什至查看了一些最流行的包,如 dplyr 是如何做到的,即使我找到了一个devtools::release()助手 function,我仍然没有'当您将更改合并到 master 分支时,还没有看到将库提交给 CRAN 的工作流。 package 开发人员是否手动执行此操作? 是否有任何原因导致这没有自动化?

CRAN 的工作方式与其他语言存储库完全不同,因为上传不像 PyPI 那样完全自动化。

当您上传新的 package 时,它需要经过真人验证。 当您更新 package 时,如果它触发某些检查,它也将接受人工的新审查。 当 package 成功上传并通过第一次验证时,会在数周内对其运行许多自动检查(例如不同的操作系统、编译器、编译器选项、体系结构、消毒剂、valgrind 等),并自动生成预编译的二进制文件一些平台和 R 版本来自您的源代码。

CRAN 政策明确 state 不允许频繁更新,并且您提交上传的速度不应该超过每两个月一次,我认为这种自动化水平不值得。

即使你确实想自动化这个过程,中间有一个 email 验证,所以你可能必须用 selenium + 其他脚本做一些事情。

顺便说一句,如果您担心复杂的构建过程并且正在使用 RStudio,您可以在每个项目的基础上配置在构建 package 的源代码或二进制分发时使用的 arguments。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM