Re: [Rd] optional package dependency (enhances)

From: Ross Boylan <ross_at_biostat.ucsf.edu>
Date: Fri, 15 Jan 2010 10:17:51 -0800

On Fri, 2010-01-15 at 10:48 +0000, Benilton Carvalho wrote:
> How about using:
>
> Enhances: Rmpi
>
> ?
>
> b
The main reason is that "enhances" seems a peculiar way to describe the relation between a package that (optionally) uses a piece of infrastructure and the infrastructure. Similarly, I would not say that a car enhances metal. The example given in the R extension documentation ("e.g., by providing methods for classes from these packages") seems more in line with the usual meaning of enhance.

A secondary reason is that I can not tell from the documentation exactly what putting a package in enhances does. The example of adding functionality to a class suggests that packages that are enhanced are required. However, clearly one could surround code that enhanced a class from another package with a conditional, so that if the code was skipped if the enhanced package was absent. Even that logic isn't quite right if the enhanced package is added later.

My package only loads/verifies the presence of rmpi if one attempts to use the distributed features, so the relation is at run time, not load time.

Ross
>
> On Fri, Jan 15, 2010 at 6:00 AM, Ross Boylan <ross_at_biostat.ucsf.edu> wrote:
> > I have a package that can use rmpi, but works fine without it. None of
> > the automatic test code invokes rmpi functionality. (One test file
> > illustrates how to use it, but has quit() as its first command.)
> >
> > What's the best way to handle this? In particular, what is the
> > appropriate form for upload to CRAN?
> >
> > When I omitted rmpi from the DESCRITPION file R CMD check gave
> > <quote>
> > * checking R code for possible problems ... NOTE
> > alldone: no visible global function definition for ‘mpi.bcast.Robj’
> > alldone: no visible global function definition for ‘mpi.exit’
> > <quote>
> > followed by many more warnings.
> >
> > When I add
> > Suggests: Rmpi
> > in DESCRIPTION the check stops if the package is not installed:
> > <quote>
> > * checking package dependencies ... ERROR
> > Packages required but not available:
> > Rmpi
> > </quote>
> > Rmpi is not required, but I gather from previous discussion on this list
> > that suggests basically means required for R CMD check.
> >
> > NAMESPACE seems to raise similar issues; I don't see any mechanism for
> > optional imports. Also, I have not used namespaces, and am not eager to
> > destabilize things so close to release. At least, I hope I'm close to
> > release :)
> >
> > Thanks for any advice.
> >
> > Ross Boylan
> >
> > P.S. Thanks, Duncan, for your recent advice on my help format problem
> > with R 2.7. I removed the nested \description, and now things look OK.
> >
> > ______________________________________________
> > R-devel_at_r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-devel
> >



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Fri 15 Jan 2010 - 18:22:16 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 21 Jan 2010 - 04:50:17 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive