[R] Issue with Imports in NAMESPACE

luke-tierney at uiowa.edu luke-tierney at uiowa.edu
Tue Jun 25 15:50:23 CEST 2013


On Tue, 25 Jun 2013, Duncan Murdoch wrote:

> On 13-06-25 7:14 AM, Søren Højsgaard wrote:
>> Dear Duncan,
>> 
>> Excellent, thanks!
>> 
>> Maybe this is worth a remark in a future version of "Writing R Extensions" 
>> (including that those "local copies" are not exported again with 
>> exportPattern("^[[:alpha:]]+")).
>
> It is mentioned that they can be exported.  The fact that exportPattern 
> doesn't see them might be a bug.

I don't think it's a bug -- including all imports would usually bring
in way too much.

In general re-exporting is probably not such a great idea since the
help system isn't aware of the import/export chain. I don't know if R
CMD check complains if you don't provide your own help page; if it
doesn't it probably should.  I also don't recall if we have a
mechanism for such a help page on an import/export to just link to the
real page.

Best,

luke


>
> Duncan
>
>> 
>> Thanks!
>> 
>> Søren
>> 
>> -----Original Message-----
>> From: Duncan Murdoch [mailto:murdoch.duncan at gmail.com]
>> Sent: 25. juni 2013 13:02
>> To: Søren Højsgaard
>> Cc: R hELP (r-help at stat.math.ethz.ch)
>> Subject: Re: [R] Issue with Imports in NAMESPACE
>> 
>> On 13-06-25 6:50 AM, Søren Højsgaard wrote:
>>> Dear all,
>>> In my gRbase package I have up until now "Depend"-ed on RBGL (from 
>>> Bioconductor), but good people have convinced me that I should use 
>>> "Import"-it instead because I only use few functions from RBGL.
>>> 
>>> In DESCRIPTION I therefore now have
>>> Imports: Matrix,RBGL
>>> 
>>> In NAMESPACE I now have
>>> importFrom(RBGL, maxClique, is.triangulated, separates)
>>> 
>>> The package compiles without complaints, but I have noticed that if I 
>>> start a fresh R-session, then maxClique etc. from RBGL is NOT available 
>>> for "interactive use" in my session:
>>>> library(gRbase)
>>>> maxClique
>>> Error: object 'maxClique' not found
>>> 
>>> 1) Is this as it should be?
>>> 
>>> 2) If yes, is there any other way in which maxClique can be imported for 
>>> interactive use without Depend-ing the whole RBGL package?
>> 
>> The importFrom directive effectively makes local copies of those functions 
>> in your package (with the usual caveats that copies aren't as inefficient 
>> as you might think).  If you want to export them, you need to add them to 
>> the exports list.
>> 
>> Duncan Murdoch
>> 
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

-- 
Luke Tierney
Chair, Statistics and Actuarial Science
Ralph E. Wareham Professor of Mathematical Sciences
University of Iowa                  Phone:             319-335-3386
Department of Statistics and        Fax:               319-335-3017
    Actuarial Science
241 Schaeffer Hall                  email:   luke-tierney at uiowa.edu
Iowa City, IA 52242                 WWW:  http://www.stat.uiowa.edu


More information about the R-help mailing list