[R] Issue with Imports in NAMESPACE

Bryan Hanson hanson at depauw.edu
Tue Jun 25 20:13:08 CEST 2013


By chance is any of this related to what I'll call the 'depends relay' discussed in this SO post?

http://stackoverflow.com/a/8638902/633251 (see the 'caveat' to Josh O'Brien's answer, which also links back to another answer by Martin Morgan).

This issue has happened to me and the symptoms are exactly as Soren originally reported them on this thread  (try to do the 'right' thing but be thwarted).

Bryan

On Jun 25, 2013, at 1:03 PM, Duncan Murdoch <murdoch.duncan at gmail.com> wrote:

> On 25/06/2013 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:]]+")).
> 
> Yes, from the followup discussion it's clear that this is desired behaviour, so I'll add that.
> 
> 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.



More information about the R-help mailing list