CRAN package with dependencies on Bioconductor
On 06/10/2011 04:04 PM, Kornelius Rohmeyer wrote:
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)?
I don't understand what you are asking; a previously installed but then uninstalled package will not influence the ability of R to reinstall it.
2) In my understanding (please correct me if I'm wrong!) CRAN uses bioconductor packages in another version than biocLite would install. For example:
Usually, if you
setRepositories()
and choose BioCsoft, then you will have chosen the correct (i.e., 'same
as biocLite') bioc repository for your version of R (this can be
scripted by inspecting
read.table(file.path(R.home("etc"), "repositories"),
header=TRUE, sep="\t")
and using appropriate row indexes as the 'ind' argument to setRepositories).
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.
biocLite is returning the correct package -- graph 1.28.0. graph 1.30 did not come in to existence until the most recent release, 2011-04-13, approximately when R-2.13 became the current release version. CRAN is building packages with the current release, R-2.13, for which biocLite and install.packages both (correctly) return graph 1.30.
Are there ways to make dependencies on Bioconductor less complicated?
Use the current version of R. FWIW, part of the motivation for hosting graph only on Bioconductor (previously it was dual-hosted) is to simplify version problems -- prior to the change, the CRAN version was several releases out of date! Martin
Thanks and best regards, Kornelius
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
Computational Biology Fred Hutchinson Cancer Research Center 1100 Fairview Ave. N. PO Box 19024 Seattle, WA 98109 Location: M1-B861 Telephone: 206 667-2793