[R-pkg-devel] check cross-references error: Non-file package-anchored link(s)
Duncan Murdoch
murdoch@dunc@n @end|ng |rom gm@||@com
Sat Jun 13 21:09:50 CEST 2020
On 13/06/2020 1:17 p.m., Zhian Kamvar wrote:
> Hello,
>
> I noticed a strange error pop up for R-devel (2020-06-12 r78687) check on travis: https://travis-ci.org/github/grunwaldlab/poppr/jobs/697831376#L4653-L4654
>
> * checking Rd cross-references ... WARNING
> Non-file package-anchored link(s) in documentation object 'aboot.Rd':
> ‘[ape:phylo]{ape::phylo()}’
>
> I looked at the Cross-reference section of WRE, but I couldn't find any mention of non-file package-anchored links being a problem: https://cran.r-project.org/doc/manuals/r-devel/R-exts.html#Cross_002dreferences
>
> Is this a new policy?
>
This is probably a new test of the long-time requirement that links
should be to filenames, not aliases, when they go to other packages.
WRE says
"There are two other forms of optional argument specified as
\link[pkg]{foo} and \link[pkg:bar]{foo} to link to the package pkg, to
files foo.html and bar.html respectively."
The problem is that `phylo` is documented in the read.tree.Rd file in
ape, so your link needs to be
\link[ape:read.tree]{ape::phylo()}
I wish I had fixed this inconsistency years ago when I rewrote the Rd
code, but I didn't. It would have been painful at the time (there were
already thousands of CRAN packages, and lots would have needed fixing),
but would be much worse now.
Another design flaw that I didn't fix is that you can have an Rd with
\name{foo} and no \alias{foo}, and searching ?foo won't find it. In
that case I failed to convince other R core members that it would have
been a good change.
Duncan Murdoch
More information about the R-package-devel
mailing list