On 14/06/2014, 7:48 AM, Martin Morgan wrote:
A package uses VignetteEngine: knitr; the package itself does not Suggests:
knitr, but it Suggests: BiocStyle which in turn Suggests: knitr. Nonetheless, R
CMD check fails indicating that a package required for checking is not declared.
Is it really the intention that the original package duplicate Suggests: knitr?
Yes. The VignetteEngine setting requires that knitr be available for
building and checking, but it doesn't imply how. You need to also
declare knitr in one of the other ways (Depends, Suggests, etc.).
It would be possible to change the checks so that a dependency of a
dependency was sufficient, but a suggestion of a suggestion would not
be. You can pass a check without having the Suggests of BiocStyle
present, because checking your package doesn't require doing anything
with BiocStyle that would need its suggestions. However, I don't think
it's worth complicating the check code to support this. If you need
knitr to be present to build your vignettes, why not just declare it
explicitly?