[Rd] Not documenting a function and not getting a check error?

Kevin Coombes
Fri, 06 Jan 2023 10:25:19 -0000

I am fairly certain that the check for documentation is really just a check
for the presence of the function name in an "alias" line. My
circumstantial
evidence, from a package in the early stages of development, came from
changing the name of a function. I updated everything else (usage,
examples, etc.) but forgot to change the alias. Got a warning that the
newly named function was not documented. It took me a while to figure out
why R CMD check was still complaining.

I am also pretty sure that, when looking for help in at least one existing
package (can't remember which one), I clicked on the link and got sent to a
page that said absolutely nothing about the function I was interested in.

On Fri, Jan 6, 2023, 4:48 AM Duncan Murdoch <murdoch.duncan at gmail.com>
wrote:

> On 05/01/2023 10:10 p.m., Deepayan Sarkar wrote:
> > On Fri, Jan 6, 2023 at 1:49 AM Duncan Murdoch <murdoch.duncan at
gmail.com>
> wrote:
> >>
> >> I'm in the process of a fairly large overhaul of the exports
from the
> >> rgl package, with an aim of simplifying maintenance of the
package.
> >> During this work, I came across the reverse dependency geomorph
that
> >> calls the rgl.primitive function.
> >>
> >> I had forgotten that rgl.primitive was still exported:  I've
been
> >> thinking of it as an internal function for a few years now.  I was
> >> surprised geomorph was able to call it.
> >>
> >> Particularly surprising to me was the fact that it is not properly
> >> documented.  One of the help topics lists it as an alias, but it
> >> contains no usage info, and is not mentioned in the .Rd file other
than
> >> the alias.  And yet "R CMD check rgl" has never
complained about it.
> >>
> >> Is this intentional?
> >
> > Does the Rd file that documents it have \keyword{internal}? These are
> > not checked fully (as I realized recently while working on the help
> > system), and I guess that's intentional.
>
> No, not marked internal.  Here's a simple example:  a package that
> exports f and g, and has only one help page:
>
> ---------------------
> NAMESPACE:
> ---------------------
> export(f, g)
> ---------------------
>
> ---------------------
> R/source.R:
> ---------------------
> f <- function() "this is f"
>
> g <- function() "this is g"
> ---------------------
>
> ---------------------
> man/f.Rd:
> ---------------------
> \name{f}
> \alias{f}
> \alias{g}
> \title{
> This is f.
> }
> \description{
> This does nothing
> }
> \usage{
> f()
> }
> ---------------------
>
>
> No complaints about the lack of documentation of g.
>
> Duncan Murdoch
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

	[[alternative HTML version deleted]]