Kornelius Rohmeyer
2011-Jun-10 22:52 UTC
[Rd] CRAN package with dependencies on Bioconductor
Dear all, for a CRAN-package that depends on another Bioconductor-package I find two things annoying and would like to know whether there are some workarounds: 1) Is there some inevitable problem that install.packages does not install uninstalled packages (on which the specified package depends) also from Bioconductor (in the correct version)? 2) In my understanding (please correct me if I'm wrong!) CRAN uses bioconductor packages in another version than biocLite would install. For example: Our package gMCP depends on the package graph that has recently switched to the bioconductor repositories. But even the following commands will fail (i.e. install incompatible versions) for R 2.12 under Windows (and most likely MacOS): source("http://www.bioconductor.org/biocLite.R") biocLite("graph") install.packages("gMCP") This results in errors like the following:> BonferroniHolmGraph(2)Error in validObject(.Object) : invalid class "graphMCP" object: superclass "graphBase" not defined in the environment of the object's class The superclass graphBase is introduced in graph 1.30. In my understanding the problem is that our package gMCP is build on CRAN for R 2.12 with the package graph in version 1.30. Unfortunately biocLite installs graph_1.28.0.zip for R 2.12. Are there ways to make dependencies on Bioconductor less complicated? Thanks and best regards, Kornelius [[alternative HTML version deleted]]
Kornelius Rohmeyer
2011-Jun-10 23:04 UTC
[Rd] CRAN package with dependencies on Bioconductor
I'm sorry for sending a wrongly formated mail before. This is the missing text: Dear all, for a CRAN-package that depends on another Bioconductor-package I find two things annoying and would like to know whether there are some workarounds: 1) Is there some inevitable problem that install.packages does not install uninstalled packages (on which the specified package depends) also from Bioconductor (in the correct version)? 2) In my understanding (please correct me if I'm wrong!) CRAN uses bioconductor packages in another version than biocLite would install. For example: Our package gMCP depends on the package graph that has recently switched to the bioconductor repositories. But even the following commands will fail (i.e. install incompatible versions) for R 2.12 under Windows (and most likely MacOS): source("http://www.bioconductor.org/biocLite.R") biocLite("graph") install.packages("gMCP") This results in errors like the following:> BonferroniHolmGraph(2)Error in validObject(.Object) : invalid class "graphMCP" object: superclass "graphBase" not defined in the environment of the object's class The superclass graphBase is introduced in graph 1.30. In my understanding the problem is that our package gMCP is build on CRAN for R 2.12 with the package graph in version 1.30. Unfortunately biocLite installs graph_1.28.0.zip for R 2.12. Are there ways to make dependencies on Bioconductor less complicated? Thanks and best regards, Kornelius
Kornelius Rohmeyer
2011-Jun-11 08:20 UTC
[Rd] CRAN package with dependencies on Bioconductor
2011/6/11 Prof Brian Ripley <ripley at stats.ox.ac.uk>:> On Sat, 11 Jun 2011, Kornelius Rohmeyer wrote: >> 2011/6/11 Prof Brian Ripley <ripley at stats.ox.ac.uk>: >>> Note that until May 8 graph was a CRAN packge and the current version was >>> 1.30.0. So of course CRAN binary packages built between April 26 and May >>> 8 >>> were built against the current CRAN version of graph, for any version of >>> R. >> >> Thanks for the notice! But if I am not wrong, a version of my package >> that was published on May 26 and build therefore after the time period >> specified by you still suffers from these version incompatibilities. >> (Nevertheless it is of course possible that the problem is only caused >> by the migration to Bioconductor and in this case less problematic and >> only unfortunate in this one case). Perhaps the version downgrade of >> the graph package caused problems? > >> So you say that the versions of Bioconductor packages on CRAN for >> binary builds are already normally the same as you would get by >> installing them as binaries from Bioconductor? > > No, I did not say that.That means that for a binary package that depends on Bioconductor packages you sometimes need a bit of luck to select the correct versions of binary Bioconductor packages? Or is there a way to tell which (and an easy way to install them)? Thanks and best regards, Kornelius.
Actually I do not understand what is so hard to understand with CRAN policy. This is: Any source package on CRAN is build in binary form with R-release/patched and R-oldrelease. This does not happen if you tell your package it requires a particular R version - such as the declaration R (>= 2.13.0) in the Depends field will cause the package not to be build as a binary. Anotehr exception would be if the package does not longer pass the checks and gives an ERROR, in that case we also keep the old version in the binary repository. On CRAN we assume that R-2.12.x users may want to get a bugfix release of a package without the requirement to upgrade R, hence we distribute new or updates packages for the oldrelease version (which is current R-2.12.x). And if BioC has a different policy, that is fine with us. Uwe Ligges On 11.06.2011 10:20, Kornelius Rohmeyer wrote:> 2011/6/11 Prof Brian Ripley<ripley at stats.ox.ac.uk>: >> On Sat, 11 Jun 2011, Kornelius Rohmeyer wrote: >>> 2011/6/11 Prof Brian Ripley<ripley at stats.ox.ac.uk>: >>>> Note that until May 8 graph was a CRAN packge and the current version was >>>> 1.30.0. So of course CRAN binary packages built between April 26 and May >>>> 8 >>>> were built against the current CRAN version of graph, for any version of >>>> R. >>> >>> Thanks for the notice! But if I am not wrong, a version of my package >>> that was published on May 26 and build therefore after the time period >>> specified by you still suffers from these version incompatibilities. >>> (Nevertheless it is of course possible that the problem is only caused >>> by the migration to Bioconductor and in this case less problematic and >>> only unfortunate in this one case). Perhaps the version downgrade of >>> the graph package caused problems? >> >>> So you say that the versions of Bioconductor packages on CRAN for >>> binary builds are already normally the same as you would get by >>> installing them as binaries from Bioconductor? >> >> No, I did not say that. > > That means that for a binary package that depends on Bioconductor > packages you sometimes need a bit of luck to select the correct > versions of binary Bioconductor packages? Or is there a way to tell > which (and an easy way to install them)? > > Thanks and best regards, Kornelius. > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel
Reasonably Related Threads
- install "multtest" and "preprocessCore" packages in Bioconductor library
- Installation Error with Bioconductor on R
- [BioC] Rcurl 0.8-1 update for bioconductor 2.7
- error installing bioconductor
- Cannot install pakages from Bioconductor besides the default installation