Xavier Robin
2015-Feb-09 22:08 UTC
[Rd] R CMD check: Uses the superseded package: ‘doSNOW’
Dear list, When I run an R CMD check --as-cran on my package (pROC) I get the following note:> Uses the superseded package: ?doSNOW?The fact that it uses the doSNOW package is correct as I have the following example in an .Rd file:> #ifdef windows > if (require(doSNOW)) { > registerDoSNOW(cl <- makeCluster(2, type = "SOCK")) > ci(roc2, method="bootstrap", parallel=TRUE) > \dontrun{ci(roc2, method="bootstrap", parallel=TRUE)} > \dontshow{ci(roc2, method="bootstrap", parallel=TRUE, boot.n=20)} > stopCluster(cl) > } > #endif > #ifdef unix > if (require(doMC)) { > registerDoMC(2) > \dontrun{ci(roc2, method="bootstrap", parallel=TRUE)} > \dontshow{ci(roc2, method="bootstrap", parallel=TRUE, boot.n=20)} > } > #endifThe "superseded" part is more confusing to me, though. The doSNOW package seems to be still available on CRAN with no special notice, listed in the HighPerformanceComputing view likewise, and under active development (last change a couple of days ago on R-Forge). I could find no mention of what it has been superseded with. Surprisingly, Google was no help on this. I could see the note is triggered in QC.R file of the tools package. However this finding is not much help and leaves me just as confused as before. I recall spending quite some time to setup this example to run both under Windows and Unix. doSNOW was the only way I could get it to work there. doMC is apparently still available for Unix only. I couldn't get doRNG to work on either platforms. So what is R CMD check noticing me about? Should I ignore the notice, or take an action? If so, which one? Best wishes, Xavier -- Xavier Robin, PhD Cellular Signal Integration Group (C-SIG) - Linding Lab Biotech Research and Innovation Center (BRIC) - University of Copenhagen Anker Engelundsvej, DTU Campus, Building 301, DK-2800 Lyngby, DENMARK Mobile: +45 42 799 833 www.lindinglab.org - www.bric.ku.dk
Martyn Plummer
2015-Feb-10 09:52 UTC
[Rd] R CMD check: Uses the superseded package: ‘doSNOW’
The CRAN package snow is superseded by the parallel package which is distributed with R since version 2.14.0. Here are the release notes \item There is a new package \pkg{parallel}. It incorporates (slightly revised) copies of packages \CRANpkg{multicore} and \CRANpkg{snow} (excluding MPI, PVM and NWS clusters). Code written to use the higher-level API functions in those packages should work unchanged (apart from changing any references to their namespaces to a reference to \pkg{parallel}, and links explicitly to \CRANpkg{multicore} or \CRANpkg{snow} on help pages). So you should replace your dependency on doSNOW with doParallel, which is the equivalent foreach adapter for the parallel package. Martyn On Mon, 2015-02-09 at 23:08 +0100, Xavier Robin wrote:> Dear list, > > When I run an R CMD check --as-cran on my package (pROC) I get the > following note: > > Uses the superseded package: ?doSNOW? > The fact that it uses the doSNOW package is correct as I have the > following example in an .Rd file: > > #ifdef windows > > if (require(doSNOW)) { > > registerDoSNOW(cl <- makeCluster(2, type = "SOCK")) > > ci(roc2, method="bootstrap", parallel=TRUE) > > \dontrun{ci(roc2, method="bootstrap", parallel=TRUE)} > > \dontshow{ci(roc2, method="bootstrap", parallel=TRUE, boot.n=20)} > > stopCluster(cl) > > } > > #endif > > #ifdef unix > > if (require(doMC)) { > > registerDoMC(2) > > \dontrun{ci(roc2, method="bootstrap", parallel=TRUE)} > > \dontshow{ci(roc2, method="bootstrap", parallel=TRUE, boot.n=20)} > > } > > #endif > > The "superseded" part is more confusing to me, though. The doSNOW > package seems to be still available on CRAN with no special notice, > listed in the HighPerformanceComputing view likewise, and under active > development (last change a couple of days ago on R-Forge). I could find > no mention of what it has been superseded with. Surprisingly, Google was > no help on this. > > I could see the note is triggered in QC.R file of the tools package. > However this finding is not much help and leaves me just as confused as > before. > > I recall spending quite some time to setup this example to run both > under Windows and Unix. doSNOW was the only way I could get it to work > there. doMC is apparently still available for Unix only. I couldn't get > doRNG to work on either platforms. > > So what is R CMD check noticing me about? > Should I ignore the notice, or take an action? If so, which one? > > Best wishes, > Xavier >
Xavier Robin
2015-Feb-10 11:10 UTC
[Rd] R CMD check: Uses the superseded package: ‘doSNOW’
Oh, I completely missed that one. It's very neat as it seems to work both on Windows and Unix. Thanks! Xavier On 10/02/15 10:52, Martyn Plummer wrote:> The CRAN package snow is superseded by the parallel package which is > distributed with R since version 2.14.0. Here are the release notes > > \item There is a new package \pkg{parallel}. > > It incorporates (slightly revised) copies of packages > \CRANpkg{multicore} and \CRANpkg{snow} (excluding MPI, PVM and NWS > clusters). Code written to use the higher-level API functions in > those packages should work unchanged (apart from changing any > references to their namespaces to a reference to \pkg{parallel}, > and links explicitly to \CRANpkg{multicore} or \CRANpkg{snow} on help > pages). > > So you should replace your dependency on doSNOW with doParallel, which > is the equivalent foreach adapter for the parallel package. > > Martyn > > On Mon, 2015-02-09 at 23:08 +0100, Xavier Robin wrote: >> Dear list, >> >> When I run an R CMD check --as-cran on my package (pROC) I get the >> following note: >>> Uses the superseded package: ?doSNOW? >> The fact that it uses the doSNOW package is correct as I have the >> following example in an .Rd file: >>> #ifdef windows >>> if (require(doSNOW)) { >>> registerDoSNOW(cl <- makeCluster(2, type = "SOCK")) >>> ci(roc2, method="bootstrap", parallel=TRUE) >>> \dontrun{ci(roc2, method="bootstrap", parallel=TRUE)} >>> \dontshow{ci(roc2, method="bootstrap", parallel=TRUE, boot.n=20)} >>> stopCluster(cl) >>> } >>> #endif >>> #ifdef unix >>> if (require(doMC)) { >>> registerDoMC(2) >>> \dontrun{ci(roc2, method="bootstrap", parallel=TRUE)} >>> \dontshow{ci(roc2, method="bootstrap", parallel=TRUE, boot.n=20)} >>> } >>> #endif >> The "superseded" part is more confusing to me, though. The doSNOW >> package seems to be still available on CRAN with no special notice, >> listed in the HighPerformanceComputing view likewise, and under active >> development (last change a couple of days ago on R-Forge). I could find >> no mention of what it has been superseded with. Surprisingly, Google was >> no help on this. >> >> I could see the note is triggered in QC.R file of the tools package. >> However this finding is not much help and leaves me just as confused as >> before. >> >> I recall spending quite some time to setup this example to run both >> under Windows and Unix. doSNOW was the only way I could get it to work >> there. doMC is apparently still available for Unix only. I couldn't get >> doRNG to work on either platforms. >> >> So what is R CMD check noticing me about? >> Should I ignore the notice, or take an action? If so, which one? >> >> Best wishes, >> Xavier >>-- Xavier Robin, PhD Cellular Signal Integration Group (C-SIG) - Linding Lab Biotech Research and Innovation Center (BRIC) - University of Copenhagen Anker Engelundsvej, DTU Campus, Building 301, DK-2800 Lyngby, DENMARK Mobile: +45 42 799 833 www.lindinglab.org - www.bric.ku.dk