From sfalcon at fhcrc.org  Wed Aug 30 16:06:24 2006
From: sfalcon at fhcrc.org (Seth Falcon)
Date: Wed, 30 Aug 2006 07:06:24 -0700
Subject: [Rd] 'CanMakeUseOf' field
In-Reply-To: <17653.20352.330891.556094@mithrandir.hornik.net> (Kurt Hornik's
	message of "Wed, 30 Aug 2006 10:42:40 +0200")
References: <m2wt8sgyo0.fsf@ziti.fhcrc.org>
	<17651.65163.240840.365787@stat.math.ethz.ch>
	<44F4473D.9030203@bank-banque-canada.ca>
	<17652.19292.998960.686119@stat.math.ethz.ch>
	<44F46112.7060809@stats.uwo.ca>
	<17653.20352.330891.556094@mithrandir.hornik.net>
Message-ID: <m2fyfe5ndr.fsf@ziti.fhcrc.org>

Kurt Hornik <Kurt.Hornik at wu-wien.ac.at> writes:
> An internal environment variable called
>
>   _R_CHECK_FORCE_SUGGESTS_
>
> which controls this has been in place for quite some time now.  One can
> trivially add a Perl R CMD check configure variable for it.  I am a bit
> hesitant to add a --force-suggests cola to R CMD check, as this
> hardwires a legacy dependency model which may not be up to future needs.
>
> As an aside, I have never understood whe developers have need for such
> an option (as I would have assumed that they'd typically try to check
> all of their code).

This is not an aside, but the heart of the issue IMHO :-)

One case in which checking Suggests does not make sense is when a
package provides optional functionality that is platform specific.  A
given Suggests entry may only be available on platform A, but it still
is desirable to check the package on platform B.  Similar issues can
arise during development when a given Suggests entry stops working
with R-devel.

Further, if an item in Suggests means it is optional, then one
_should_ test that by testing the package without the optional packge
being available.  There are a few ways for a true dependency to sneak
into the code.  So I agree that typically developers want to test all
of their code, but that implies being able to check a package without
its Suggests being available (I realize this may be hard to implement,
but easily having R CMD check ignore Suggests is a good start).

And lastly, Suggests is currently used to list packages used for
extended examples in package vignettes and being able to easily
perform all other checks makes sense to me.


Bw,

+ seth




[Rd] 'CanMakeUseOf' field
Seth Falcon