[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