[R] Dependency on R-Forge Package

Spencer Graves spencer.graves at structuremonitoring.com
Fri Feb 18 17:21:25 CET 2011


       I echo Prof. Ripley's and Jari Oksanen's concerns.  I see two 
options in case the R-Forge package maintainer does not submit the 
package to CRAN:


             (1) Copy the function(s) you want from that package into 
your own.  In such cases, I recommend you change the name of the 
function slightly to avoid confusion regarding which version of a 
function to use.  Failing to do this can lead to problems that are 
difficult to diagnose.  Later, if and when the desired non-CRAN package 
is released, you can replace your copy with a dummy function that just 
calls the function in the other package.  This allows you to offer your 
users more "trustworthy software" (Chambers, 2008, Software for Data 
Analysis, Springer).


             (2) List it as "suggests" in your DESCRIPTION file and 
precede each use with "if(require(desiredR_ForgePackage))".  If 
"require" returns TRUE, you do what you want.  Else issue an error message.


       Hope this helps.
       Spencer
p.s.  I've had reasonably good luck writing package maintainers, 
including being invited to co-author a book.  More commonly, I've been 
added as a developer on their project, accelerating the release to CRAN 
with minor extensions of their code that I suggested.  I've also had the 
opposite experience, namely being told to develop my own package 
separate from theirs, which I did.


On 2/18/2011 1:34 AM, Jari Oksanen wrote:
> Damian Betebenner<dbetebenner<at>  nciea.org>  writes:
>
>> In building a package, is it possible to make the package depend upon another
> package that is only available
>> on R-Forge (not CRAN). For example, by doing something in the DESCRIPTION file
>> I'd like to add a dependency to my package such that when the user install my
> package it will automatically
>> install this other package from R-forge as well.
>>
> Not strictly my business, but as an R-Forge developer I say that you should not
> depend on a pacakge in R-Forge. If a package is in the R-Forge it probably is
> (a) not ready for release, or (b) unstable, or (c) both. This means that you
> should not depend on the package.
>
> If you think that neither of these is true, but the package is both ready for
> the release and stable, you should urge its developer to release (a stable
> version of) the package in CRAN.
>
> Cheers, Jari Oksanen
>
> ______________________________________________
> 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