在R包中,我有两个遗留的Sweave小插图作为.Rnw
文件。当我在本地检查包时(在R Studio:Build - > Check中),没有错误或警告,当使用R版本3.3.1补丁(2016-)在R-Forge上检查我的包时,同样的事情发生了10-17 r71531)。
但是,当我将包提交给Win-builder(通过devtools::build_win()
)进行R devel(不稳定)(2016-10-16 r71524)下的检查时,我收到以下警告,我无法解决:
Files in the 'vignettes' directory newer than all files in 'inst/doc':
'fig/plot-Ortho-fm1.pdf', 'fig/plot-Ortho-fm3.pdf',
'fig/plot-grades-can-class.pdf', 'fig/plot-grades-can-gpa.pdf',
'fig/plot-grades-can-sex.pdf', 'fig/plot-grades-pairs.pdf',
'fig/plot-hern-can-age.pdf', 'fig/plot-hern-can-build.pdf',
'fig/plot-hern-can-cardiac.pdf', 'fig/plot-hern-can-pstat.pdf',
'fig/plot-hern-pairs.pdf', 'fig/plot-jury-can1.pdf',
...
我的包目录结构包括vignettes/
中的小插图和devtools::build_vignettes()
中inst/doc/
的结果,如下所示:
...
man/
inst/
doc/HE-examples.{pdf,R,Rnw}
doc/repeated.{pdf,R,Rnw}
R/
vignettes/HE-examples.Rnw
/repeated.Rnw
/fig/ # all generated fig files
我在.pdf
中包含生成的inst/doc/
文件的原因是,我收到警告,.pdf
文件需要使用qpdf
压缩,并且我实际上可以这样做的唯一方法是在Acrobat Pro中打开它们并重新保存为压缩PDF。
我尝试将inst/doc
添加到.Rbuildignore
,但这会产生错误。我也尝试将inst/doc/*.pdf
添加到.Rbuildignore
,但这没有效果。
警告阻止我向CRAN提交更新。我不明白为什么vignettes/
中的较新文件应该是一个问题,但我该如何修复警告?
答案 0 :(得分:5)
我发布了一个答案,以防其他人遇到此问题。
此devtools issue #1348中提到了此问题。那里的解决方案只是删除inst/doc
下的所有插图文件。在我的情况下,一个小插图PDF文件需要手动压缩,以避免有关qpdf
的投诉。
删除inst/doc/
下的所有文件后,我重新复制了压缩的PDF文件,因此它现在比vignettes/
下的文件更新
这两个问题都解决了,CRAN守护进程很高兴。