我正在维护一个最近在R CMD check packagename
期间发出以下警告的R包:
** testing if installed package can be loaded
Warning: multiple methods tables found for ‘append’
(该软件包名为phyloseq,当前导致此问题的分支是here)
精制子请求:
append
方法的调度发生冲突。正确?"append"
的函数/方法,并且不导入任何函数/方法。 在R会话中抛出警告:
multiple methods tables found for ‘append’
当然,append
导出在RJSONIO和Biostrings的NAMESPACE
文件中。我不明白为什么这会在加载我的包时引起问题。我直接依赖的包(Biostrings-2.28.0,biom-0.3.8)没有完全导入 - 当然不会导入任何append
方法。这场冲突怎么可能出现呢?
解决方法:
如果我将Biostrings更新为“devel”版本2.29.2,那么警告似乎就会消失。但是,大多数用户都不会这样做,我仍然想了解这种碰撞是如何实现的,因为我从这些包中专门导入了函数和类,而不是完整的Import
或Depends