我想把一个包装到CRAN上.但是,该软件包目前使用外部C模型(ISDA标准模型),该模型是在公共可再分发许可下创建的.但是,如果包含此C模型,则CRAN管理员拒绝将包放在CRAN上.那么无论如何在没有这个C模型的情况下将软件包放到CRAN上,并且在调用时install.packages("my.package")
,它可以从github.com/my_github自动下载C模型?
现在,我在下面编写了以下代码zzz.R
:
.onLoad <- function(libname, pkgname) {
if ( ! "Github_pkg" %in% (all.available = TRUE)){
devtools::install_github("myGithub/Github_pkg")
}
}
Run Code Online (Sandbox Code Playgroud)
如果我提交给CRAN,这可以吗?或者我应该使用drat
Dirk的套餐?谢谢!!
您可以查看我的drat包,在GitHub上创建自己的存储库.我使用它来举例说明我在这个使用drat构建的ghrr存储库中贡献的Rblpapi包(它依赖于Bloomberg的库).
这一切都有效.CRAN甚至接受了一个使用ghrr drat repo作为外部存储库的程序包(但是由于其他原因删除了该程序包).
您仍然需要在CRAN上组织"主"包,使得"辅助"包只是"建议:",因为实际的依赖关系也必须在CRAN上.但至少这为您提供了一种自动化这些过程的方法.
归档时间: |
|
查看次数: |
91 次 |
最近记录: |