将R包拆分为两个包,不会中断用户

时间:2013-02-08 14:14:58

标签: r packages

假设我正在开发一个名为mypackage的包。随着时间的推移,许多不同的功能已经落在那里,我想重新组织它。所以我想创建一个名为newpackage的新包,我将在其中移动mypackage的一些功能(以后再包含新功能)。

问题在于,我不希望mypackage的原始用户在想要使用其中一个已移动的函数时出现object not found错误。

所以,我考虑过做以下事情:

  • 创建newpackage并移动功能
  • 添加到mypackage说明文件中:Depends: newpackage

因此,当人们安装,升级或加载mypackage时,也会安装或加载newpackage,并且所有功能都可用。

你觉得它会起作用,还是会出现一些我没想过的问题?

谢谢!

1 个答案:

答案 0 :(得分:2)

是不是因为不建议从包中删除函数而不先将它们标记为折旧?!所以,也许你按计划进行,但在从mypackage中删除之前,你可以先将它们标记为折旧,然后在包的下一个版本中将它们从中删除。在迁移阶段,您可以使用包的命名空间按照您的计划引用newpackage中的函数。