Duncan I have a related question.
I need one function from R.utils. But R.utils depends on R.oo and R.methodsS3. so I made R.util an import and then used importFrom() in the namespace. The package passed the "check". However when it came to use the function it had not been loaded? do I need to add the upstream packages that R.util depends upon? also in the code do I need a library or require? A bit confused Steve On Mon, Sep 19, 2011 at 5:09 PM, Duncan Murdoch <murdoch.dun...@gmail.com> wrote: > On 11-09-19 4:48 PM, Stephanie M. Gogarten wrote: >> >> I am trying to build a package (GWASTools, submitted to Bioconductor) >> that uses the "sandwich" package. I have references to "sandwich" in >> DESCRIPTION: >> Imports: methods, DBI, RSQLite, sandwich, survival, DNAcopy >> >> and NAMESPACE: >> import(sandwich) >> >> In the code itself is a call to vcovHC: >> Vhat<- vcovHC(mod, type="HC0") >> >> I have sandwich version 2.2-7 installed. >> >> When I run R CMD check on my package, I get the following error during >> checking of examples: >> * using R Under development (unstable) (2011-08-29 r56828) >> * using platform: x86_64-apple-darwin9.8.0 (64-bit) >> ... >> * checking examples ... ERROR >> ... >> Error in estfun.glm(x) : could not find function "is.zoo" >> Calls: assocTestRegression ... meatHC -> rowMeans -> is.data.frame -> >> estfun -> estfun.glm >> >> I import sandwich, sandwich depends on zoo, but a function in zoo cannot >> be found during execution. >> >> I tried to get around this by explicitly including a "require" statement >> in assocTestRegression: >> require(sandwich) >> >> The example now runs, but I have a warning in R CMD check: >> * checking for unstated dependencies in R code ... WARNING >> ‘library’ or ‘require’ call not declared from: ‘sandwich’ >> >> I am not sure why this is a problem, as there is a "require" statement >> (for a different package) in another function which does not cause any >> warnings. >> >> Can anyone advise on how to get my package to successfully pass R CMD >> check? >> > > If you said that your package Depends on sandwich, you'd probably pass > checks, but this is arguably a bug in the sandwich package. > > The problem is that since you only import sandwich, it never gets attached. > So it never attaches its dependency zoo. It should import zoo (or import > the functions in zoo that it uses) to work properly the way you are calling > it. > > You can see the same error as follows: > > 1. Install sandwich, but don't attach it or zoo. > > 2. Run > > example(glm) > > to create the "glm" object glm.D93. > > Try to call > > sandwich::estfun(glm.D93) > > You'll get the same error as before because is.zoo() will not be loaded. > > It's also arguably a design flaw in R. For testing sandwich, zoo would > generally end up being attached, because the testing of sandwich would > attach it. However, examples like the one above are never tested. > > Duncan Murdoch > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel