Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';在CRAN包中处理github脚本依赖关系的正确方法是什么?_R_Github_Dependency Management_Cran - Fatal编程技术网

什么';在CRAN包中处理github脚本依赖关系的正确方法是什么?

什么';在CRAN包中处理github脚本依赖关系的正确方法是什么?,r,github,dependency-management,cran,R,Github,Dependency Management,Cran,有一个via ggplot2(没关系,只是想做帽尖) 这个脚本是一个函数,但它不在CRAN上(因此),甚至不是一个包。 (它是上游CRAN包的一部分,但脚本中的关键错误修复似乎无法进入上游回购,更不用说CRAN了。如果没有这些错误修复,它将无法使用。) 此函数仅由我的软件包内部使用,从不直接向用户公开 在我的软件包中使用此脚本的正确方式是什么 我想: 正确识别脚本作者的工作 有这个通行证(显然) 能够轻松合并上游更改(来自脚本) 脚本应该在library(mypkg)上进行源代码(或其他任何内

有一个via ggplot2(没关系,只是想做帽尖)

这个脚本是一个函数,但它不在CRAN上(因此),甚至不是一个包。 (它是上游CRAN包的一部分,但脚本中的关键错误修复似乎无法进入上游回购,更不用说CRAN了。如果没有这些错误修复,它将无法使用。)

此函数仅由我的软件包内部使用,从不直接向用户公开

在我的软件包中使用此脚本的正确方式是什么

我想:

  • 正确识别脚本作者的工作
  • 有这个通行证(显然)
  • 能够轻松合并上游更改(来自脚本)
  • 脚本应该在
    library(mypkg)
    上进行源代码(或其他任何内容),这样就可以随时使用,而不是在任何时候有人使用该功能时通过互联网进行远程源代码(这将很糟糕)

我本想复制/粘贴文件,但a)识别,b)必须有更好的方法。

您是否尝试联系作者,让他们将
许可证
文件添加到他们的repo中?版权完全归所有者所有,没有明确的许可证,因此很遗憾,您不能复制/粘贴代码。试着用一个请求来填充一个问题,将代码包含在你的包中,然后在
描述
文件的Authors@R部分给作者评分。是的,完成了->谢谢,@hrbrmstr同一脚本的早期(错误)版本在CRAN上,并且得到了正确的许可,所以我猜版权在这里不会是问题。(当然,你是对的)。我想知道技术上最好的方法是什么…共享代码的最好方法是将其包装在一个包中。对@hrbrmstr的建议相同,但我认为最好将代码包装在一个新的包中。如果代码已经在CRAN上,它仍然在CRAN上(在存档中),并且将附带一个许可证。您不能重新授权代码,但只要根据许可条款保留许可证和属性作者身份,就可以将代码复制到您自己的包中(听起来您只需要创建一个非导出函数)。FOSS的全部目的是使代码易于重用,所以这就是您在这里所做的一切(使用CRAN代码,而不是受版权保护的Github代码)。@maxhold在这种情况下,上面的建议似乎完全合适。然而,由于GGALY属于GPL 2/3,我的理解是,尽管我不是律师,但任何衍生作品也必须是GPL(参见示例)。您是否尝试与作者联系,让他们将
许可证
文件添加到他们的回购协议中?版权完全归所有者所有,没有明确的许可证,因此很遗憾,您不能复制/粘贴代码。试着用一个请求来填充一个问题,将代码包含在你的包中,然后在
描述
文件的Authors@R部分给作者评分。是的,完成了->谢谢,@hrbrmstr同一脚本的早期(错误)版本在CRAN上,并且得到了正确的许可,所以我猜版权在这里不会是问题。(当然,你是对的)。我想知道技术上最好的方法是什么…共享代码的最好方法是将其包装在一个包中。对@hrbrmstr的建议相同,但我认为最好将代码包装在一个新的包中。如果代码已经在CRAN上,它仍然在CRAN上(在存档中),并且将附带一个许可证。您不能重新授权代码,但只要根据许可条款保留许可证和属性作者身份,就可以将代码复制到您自己的包中(听起来您只需要创建一个非导出函数)。FOSS的全部目的是使代码易于重用,所以这就是您在这里所做的一切(使用CRAN代码,而不是受版权保护的Github代码)。@maxhold在这种情况下,上面的建议似乎完全合适。然而,由于GGALY属于GPL 2/3,我的理解是,尽管我不是律师,但任何衍生作品也必须是GPL(参见示例)。您是否尝试与作者联系,让他们将
许可证
文件添加到他们的回购协议中?版权完全归所有者所有,没有明确的许可证,因此很遗憾,您不能复制/粘贴代码。试着用一个请求来填充一个问题,将代码包含在你的包中,然后在
描述
文件的Authors@R部分给作者评分。是的,完成了->谢谢,@hrbrmstr同一脚本的早期(错误)版本在CRAN上,并且得到了正确的许可,所以我猜版权在这里不会是问题。(当然,你是对的)。我想知道技术上最好的方法是什么…共享代码的最好方法是将其包装在一个包中。对@hrbrmstr的建议相同,但我认为最好将代码包装在一个新的包中。如果代码已经在CRAN上,它仍然在CRAN上(在存档中),并且将附带一个许可证。您不能重新授权代码,但只要根据许可条款保留许可证和属性作者身份,就可以将代码复制到您自己的包中(听起来您只需要创建一个非导出函数)。FOSS的全部目的是使代码易于重用,所以这就是您在这里所做的一切(使用CRAN代码,而不是受版权保护的Github代码)。@maxhold在这种情况下,上面的建议似乎完全合适。然而,由于GGALY属于GPL 2/3,我的理解是,尽管我不是律师,但任何衍生作品也必然是GPL(参见示例)。