[R-pkg-devel] function name conflict problem

sierr@stew m@iii@g oii mi@dspri@g@com sierr@stew m@iii@g oii mi@dspri@g@com
Tue Feb 4 22:48:16 CET 2020


Thanks Duncan.  Please clarify: if I use ellipse::ellipse in code, do I need to have @importFrom ellipse eliipse in the Roxygen code.

-----Original Message-----
From: Duncan Murdoch <murdoch.duncan using gmail.com> 
Sent: Tuesday, February 4, 2020 2:45 PM
To: sierrastew using mindspring.com
Subject: Re: [R-pkg-devel] function name conflict problem

If you call it via ellipse::ellipse, you don't need to mention it in NAMESPACE.

I can't tell what's going wrong in your NAMESPACE file, but that's where the problem is that leads to the errors you saw.

In future, please don't write privately, post to the list.

Duncan Murdoch

On 04/02/2020 4:40 p.m., sierrastew using mindspring.com wrote:
> Thanks very much for the quick reply.  Here is the entire set of import commands from NAMESPACE.  Also, when I use the function ellipse, I code it as ellipse::ellipse; similarly for using in.out.  I don't see any request for anything but ellipse from the package ellipse, and in.out from mgcv:
> 
> import(Formula)
> import(MASS)
> import(assertthat)
> import(corrplot)
> import(grDevices)
> import(graphics)
> import(missForest)
> import(nortest)
> import(partykit)
> import(qqtest)
> import(randomForest)
> import(rpart)
> import(scatterplot3d)
> import(stats)
> importFrom(MVN,mvn)
> importFrom(ellipse,ellipse)
> importFrom(graphics,pairs)
> importFrom(mgcv,in.out)
> importFrom(rgl,rgl.postscript)
> 
> -----Original Message-----
> From: Duncan Murdoch <murdoch.duncan using gmail.com>
> Sent: Tuesday, February 4, 2020 2:31 PM
> To: sierrastew using mindspring.com; r-package-devel using r-project. org 
> <r-package-devel using r-project.org>
> Subject: Re: [R-pkg-devel] function name conflict problem
> 
> On 04/02/2020 4:21 p.m., sierrastew using mindspring.com wrote:
>> In trying to develop a package to be submitted to CRAN, when I do 
>> Install and Reload or devtools::check(), I get the warning:
>>
>>    
>>
>> Warning: replacing previous import 'ellipse::pairs' by 'graphics::pairs'
>> when loading 'karon'
>>
>> Warning: replacing previous import 'MVN::mvn' by 'mgcv::mvn' when 
>> loading 'karon'
>>
>>    
>>
>> I need one function each from the packages ellipse and mgcv (I do not 
>> need pairs from ellipse and mvn from mgcv).  To restrict to the 
>> function that I need, I have used the commands
>>
>> @importFrom  ellipse  ellipse
>>
>> @importFrom  mgcv  in.out
>>
>>    
>>
>> NAMESPACE includes the lines
>>
>> importFrom(ellipse,ellipse)
>>
>> importFrom(mgcv,in.out)
>>
>>    
>>
>> However, DESCRIPTION does not restrict the functions imported from 
>> ellipse and mgcv; it has
>>
>> Imports: MVN, MASS, scatterplot3d, rgl, mgcv, randomForest, rpart, 
>> partykit, Formula, ellipse,..
>>
>>    
>>
>> Do these warnings need to be solved before submitting to CRAN?
>>
>> Is it necessary to edit DESCRIPTION  If so, what should be done?
>>
>> Is there some other potential solution?
> 
> I don't know if they *must* be fixed, but they should be.  Something in your NAMESPACE file (derived from some comment in your code by roxygen2) is importing ellipse::pairs, even though you say you don't want to do that.  You should fix that.
> 
>   From what we can see, your DESCRIPTION file is fine.  The problem lies in NAMESPACE.
> 
> Duncan Murdoch
> 



More information about the R-package-devel mailing list