[R-pkg-devel] check cross-references error: Non-file package-anchored link(s)

Gábor Csárdi c@@rd|@g@bor @end|ng |rom gm@||@com
Wed Jul 1 20:10:24 CEST 2020


Linking to the manual _file_ is now enforced on CRAN. Here is how to
get the file name:

> help("clone.ff", package = "ff")[[1]]
[1] "/Users/gaborcsardi/Library/R/4.0/library/ff/help/clone"

So in this case you need to link to 'clone'.

Btw. since you already use roxygen2, you could also turn on markdown
support, and then [ff::clone.ff()] automatically creates the right
links in the latest version of roxygen2.

Gabor

On Wed, Jul 1, 2020 at 6:46 PM Dr. Jens Oehlschlägel
<jens.oehlschlaegel using truecluster.com> wrote:
>
> Good evening,
>
> My package bit 4.0.2 (https://github.com/truecluster/bit) is being
> rejected by CRAN checks with warning:
>
>
>  >Check: Rd cross-references, Result: WARNING
>  >  Non-file package-anchored link(s) in documentation object 'clone.Rd':
>  >    '[ff]{clone.ff}'
>  >
>  >  See section 'Cross-references' in the 'Writing R Extensions' manual.
>
> although clone.ff is in clone.ff.rd as confirmed by
>
>  > help("clone.ff","ff")[[1]]
> [1] "/home/mypc/R/x86_64-pc-linux-gnu-library/4.0/ff/help/clone.ff"
>
> I asked the maintainers to explain what is wrong and what to do and got
> no answer. Does someone here can help?
>
> Best regards
>
> Jens
>
>
>
>
> On 16.06.20 22:31, Gábor Csárdi wrote:
> > This is how to look up the filename. The first "sp" is the topic name,
> > the second is the package name.
> >
> >> help("sp", "sp")[[1]]
> > [1] "C:/Users/csard/R/win-library/4.0/sp/help/00sp"
> >
> > So you need to link to the "00sp.Rd" file:  \link[sp:00sp]{sp}
> >
> > Gabor
> >
> > On Tue, Jun 16, 2020 at 9:09 PM Wayne Oldford <rwoldford using uwaterloo.ca> wrote:
> >>
> >> Hi
> >>
> >> I got caught by this new test this week in trying to push an updated release of the loon package to CRAN.
> >>
> >> By following this thread, I corrected my cross-references to external packages but I got stymied by
> >> the one I hoped to give to the  "sp" package for Spatial data
> >>
> >> _________
> >>
> >> Here is the history:
> >>
> >> I tried
> >>     \link[sp:sp]{sp}
> >> which failed here:
> >> Debian: <https://win-builder.r-project.org/incoming_pretest/loon_1.3.1_20200616_162128/Debian/00check.log>
> >> Status: 1 WARNING
> >>
> >>
> >> That was meant to correct an earlier attempt (it did for other links to "scales" for example) where I had tried
> >>    \link[sp]{sp}
> >> and  failed here:
> >> Debian: <https://win-builder.r-project.org/incoming_pretest/loon_1.3.1_20200615_213749/Debian/00check.log>
> >> Status: 1 WARNING
> >>
> >>
> >> So to complete the possibilities as I understand them,  I just now tried
> >>     \link{sp}
> >> which, as might be expected, failed here:
> >> Debian: <https://win-builder.r-project.org/incoming_pretest/loon_1.3.1_20200616_213921/Debian/00check.log>
> >> Status: 1 WARNING
> >> As expected, error here was different:  "Missing  link"  as opposed to "Non-file package-anchored link"
> >>
> >> _________
> >>
> >>
> >> I am not sure whether I have missed a subtlety in WRE or that the peculiar circumstance
> >> where the package, the topic, and the file name are all identical (sp) is some weird boundary case.
> >>
> >> Without further advice, I think I am just going to remove the link to "sp".
> >> It really is just a courtesy link to the package description for "sp".
> >>
> >> Thanks in advance for your thoughts.
> >>
> >> Wayne
> >>
> >>
> >>
> >>
> >> -----Original Message-----
> >> From: R-package-devel <r-package-devel-bounces using r-project.org> on behalf of Georgi Boshnakov <georgi.boshnakov using manchester.ac.uk>
> >> Date: Tuesday, June 16, 2020 at 9:27 AM
> >> To: Gábor Csárdi <csardi.gabor using gmail.com>, Duncan Murdoch <murdoch.duncan using gmail.com>
> >> Cc: List r-package-devel <r-package-devel using r-project.org>
> >> Subject: Re: [R-pkg-devel] check cross-references error: Non-file package-anchored link(s)
> >>
> >>      I think that the current behaviour is documented in WRE:
> >>
> >>      "...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.
> >>      These are rarely needed, perhaps to refer to not-yet-installed packages (but there the HTML
> >>      help system will resolve the link at run time) or in the normally undesirable event that more
> >>      than one package offers help on a topic7 (in which case the present package has precedence so
> >>      this is only needed to refer to other packages). They are currently only used in HTML help
> >>      (and ignored for hyperlinks in LATEX conversions of help pages), and link to the file rather
> >>      than the topic (since there is no way to know which topics are in which files in an uninstalled
> >>      package) ...   Because they have been frequently misused, the HTML help system looks for topic foo in package pkg
> >>      if it does not find file foo.html."
> >>
> >>      Unless I am missing something, it seems that it would be relatively painless to reverse the logic of the current behaviour of the help system,
> >>      i.e. to start looking first for the topic and then for a file.
> >>
> >>      Georgi Boshnakov
> >>
> >>      -----Original Message-----
> >>      From: R-package-devel <r-package-devel-bounces using r-project.org> On Behalf Of Gábor Csárdi
> >>      Sent: 16 June 2020 13:44
> >>      To: Duncan Murdoch <murdoch.duncan using gmail.com>
> >>      Cc: List r-package-devel <r-package-devel using r-project.org>
> >>      Subject: Re: [R-pkg-devel] check cross-references error: Non-file package-anchored link(s)
> >>
> >>      On Mon, Jun 15, 2020 at 5:30 PM Duncan Murdoch <murdoch.duncan using gmail.com> wrote:
> >>      >
> >>      > On 15/06/2020 12:05 p.m., Martin Maechler wrote:
> >>      > >>>>>> Duncan Murdoch   on Sun, 14 Jun 2020 07:28:03 -0400 writes:
> >>      > >
> >>      > >      > I agree with almost everything you wrote, except one thing:  this isn't
> >>      > >      > newly enforced, it has been enforced since the help system began.  What
> >>      > >      > I think is new is that there are now tests for it.  Previously those
> >>      > >      > links just wouldn't work.
> >>      > >
> >>      > >      > Duncan Murdoch
> >>      > >
> >>      > > Yes, to all... including Duncan's agreement with Gábor.
> >>      > >
> >>      > > Also, Duncan M earlier did mention that he had wanted to
> >>      > > *change* the link-to-file behavior for these cases (when he wrote
> >>      > > most of the Rd2html source code) but somehow did not get it.
> >>      >
> >>      > Actually, I don't think I pushed for this change at the time (or at
> >>      > least I didn't push much).  I just wish now that I had, because I
> >>      > think it will be harder to do it now than it would have been then.
> >>      >
> >>      > Duncan
> >>
> >>      I am not entirely sure, but maybe just documenting the current behaviour and undoing 78674 could work. With some tweaks? E.g.
> >>
> >>      * updating R-exts to say that \link[pkg:topic]{text} will link to `topic.html` in `pkg` first (for historical reasons), and falls back to searching for `topic` in `pkg` at render time.
> >>      * updating Rd2HTML to look for the topic and use it in the link, instead of throwing a warning, in it cannot find `topic.html`
> >>      * removing the `R CMD check` warning for non-file links, that was added in 78674 :)
> >>
> >>      Is there anything else?
> >>
> >>      Gabor
> >>
> >>      [...]
> >>
> >>      ______________________________________________
> >>      R-package-devel using r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel
> >>      ______________________________________________
> >>      R-package-devel using r-project.org mailing list
> >>      https://stat.ethz.ch/mailman/listinfo/r-package-devel
> >>
> >>
> >> ______________________________________________
> >> R-package-devel using r-project.org mailing list
> >> https://stat.ethz.ch/mailman/listinfo/r-package-devel
> >
> > ______________________________________________
> > R-package-devel using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-package-devel
> >



More information about the R-package-devel mailing list