It looks like devtools::package_deps is forcing type to be "binary". if (identical(type, "both")) { type <- "binary" }
> devtools::package_deps function (pkg, dependencies = NA, repos = getOption("repos"), type = getOption("pkgType")) { if (identical(type, "both")) { type <- "binary" } if (length(repos) == 0) repos <- character() repos[repos == "@CRAN@"] <- "http://cran.rstudio.com" cran <- available_packages(repos, type) if (missing(pkg)) { pkg <- as.package(".")$package } deps <- sort(find_deps(pkg, cran, top_dep = dependencies)) inst <- installed.packages() base <- unname(inst[inst[, "Priority"] %in% c("base", "recommended"), "Package"]) deps <- setdiff(deps, base) inst_ver <- unname(inst[, "Version"][match(deps, rownames(inst))]) cran_ver <- unname(cran[, "Version"][match(deps, rownames(cran))]) diff <- compare_versions(inst_ver, cran_ver) structure(data.frame(package = deps, installed = inst_ver, available = cran_ver, diff = diff, stringsAsFactors = FALSE), class = c("package_deps", "data.frame"), repos = repos, type = type) } <environment: namespace:devtools> On Fri, Jun 26, 2015 at 2:12 PM, Vladislav Petyuk <pet...@gmail.com> wrote: > Dan, Herve, thanks for taking a look. This gives some leads. > > On Thu, Jun 25, 2015 at 7:26 PM, Dan Tenenbaum <dtene...@fredhutch.org> > wrote: > >> >> >> ----- Original Message ----- >> > From: "Hervé Pagès" <hpa...@fredhutch.org> >> > To: "Vladislav Petyuk" <pet...@gmail.com>, "Dan Tenenbaum" < >> dtene...@fredhutch.org> >> > Cc: Bioc-devel@r-project.org >> > Sent: Thursday, June 25, 2015 6:56:56 PM >> > Subject: Re: [Bioc-devel] Challenges with package installation on fresh >> R >> > >> > Hi Vladislav, >> > >> > On 06/25/2015 01:13 PM, Vladislav Petyuk wrote: >> > > Yes, the issue is the same if I use >> > > devtools::install_github("vladpetyuk/toypack", >> > > build_vignettes=TRUE, >> > > dependencies=TRUE) >> > > >> > > I posted on Bioc-devel list because all the problematic packages >> > > are >> > > suspiciously similar - all related to Bioconductor and deal with >> > > some sort >> > > of databases (GO/KEGG/Reactome). >> > >> > What all these packages have in common is that we don't provide >> > binaries >> > for them anymore. That's because install.packages() (and thus >> > biocLite(), which uses install.packages() internally) knows how to >> > deal with this (via type="both", which is now the default on Windows >> > and Mac). However, some core utilities like >> > utils::download.packages() >> > have not been properly adapted to handle the situation where a binary >> > is missing. For example with R-3.2.1 on Windows: >> > >> > > library(BiocInstaller) >> > > download.packages("GO.db", destdir=".", >> > > repos=biocinstallRepos()) >> > trying URL >> > ' >> http://bioconductor.org/packages/3.2/data/annotation/src/contrib/GO.db_3.1.2 >> ' >> > Error in download.file(url, destfile, method, mode = "wb", ...) : >> > cannot open URL >> > ' >> http://bioconductor.org/packages/3.2/data/annotation/src/contrib/GO.db_3.1.2 >> ' >> > In addition: Warning message: >> > In download.file(url, destfile, method, mode = "wb", ...) : >> > cannot open: HTTP status was '404 Not Found' >> > Warning in download.packages("GO.db", destdir = ".", repos = >> > biocinstallRepos()): >> > download of package 'GO.db' failed >> > [,1] [,2] >> > >> > This could be what breaks install_github() (which doesn't seem to >> > use install.packages() internally but to instead handle the >> > downloading >> > of the packages itself). >> >> install_github() calls install() whose documentation says that its ... >> arguments are passed to install.packages() in order to install >> dependencies. But I agree that something else seems to be going on here and >> that devtools decides the packages can't be installed without running >> install.packages(). >> >> Dan >> >> >> > >> > Cheers, >> > H. >> > >> > > >> > > On Thu, Jun 25, 2015 at 1:08 PM, Dan Tenenbaum >> > > <dtene...@fredhutch.org> >> > > wrote: >> > > >> > >> >> > >> >> > >> ----- Original Message ----- >> > >>> From: "Vladislav Petyuk" <pet...@gmail.com> >> > >>> To: "Dan Tenenbaum" <dtene...@fredhutch.org> >> > >>> Cc: Bioc-devel@r-project.org >> > >>> Sent: Thursday, June 25, 2015 12:55:56 PM >> > >>> Subject: Re: [Bioc-devel] Challenges with package installation on >> > >>> fresh R >> > >>> >> > >>> >> > >>> Just added the full output to the README.md file >> > >>> https://github.com/vladpetyuk/toypack/blob/master/README.md >> > >>> >> > >>> >> > >> >> > >> Do you get the same results if you do: >> > >> >> > >> devtools::install_github("vladpetyuk/toypack", >> > >> build_vignettes=TRUE, >> > >> dependencies=TRUE) >> > >> >> > >> ? >> > >> >> > >> When you pass biocLite() a username/repos argument as you've done, >> > >> it just >> > >> delegates all the work to devtools::install_github(). >> > >> >> > >> If you get the same issue with install_github(), then the issue >> > >> has >> > >> nothing to do with Bioconductor and you need to discuss it with >> > >> the >> > >> maintainer of devtools. >> > >> If not, then maybe there is an issue with the way we delegate to >> > >> that >> > >> command. >> > >> >> > >> Dan >> > >> >> > >> >> > >>> >> > >>> >> > >>> >> > >>> On Thu, Jun 25, 2015 at 12:28 PM, Dan Tenenbaum < >> > >>> dtene...@fredhutch.org > wrote: >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> ----- Original Message ----- >> > >>>> From: "Vladislav Petyuk" < pet...@gmail.com > >> > >>>> To: Bioc-devel@r-project.org >> > >>>> Sent: Thursday, June 25, 2015 12:16:50 PM >> > >>>> Subject: [Bioc-devel] Challenges with package installation on >> > >>>> fresh >> > >>>> R >> > >>>> >> > >>>> Hi all, >> > >>>> I ran into a problem with dependencies during package >> > >>>> installation. >> > >>>> Here is an example that intends to reproduce the problem >> > >>>> >> > >>>> https://github.com/vladpetyuk/toypack >> > >>>> >> > >>>> Majority of the packages (in Imports/Depends/Suggests and their >> > >>>> Imports/Depends/Suggests) install just fine. >> > >>>> However there is a handful of packages ("DO.db", "GO.db", >> > >>>> "org.Ce.eg.db", >> > >>>> "org.Hs.eg.db" and "reactome.db") that are being skipped for not >> > >>>> an >> > >>>> obvious >> > >>>> to me reason. >> > >>>> In this toy example there is no use of those skipped packages. >> > >>>> So >> > >>>> it >> > >>>> won't >> > >>>> results in any kind of error. But in the real package their lack >> > >>>> results >> > >>>> in errors. >> > >>>> >> > >>> >> > >>> You need to provide the complete output of R when you try and >> > >>> install >> > >>> the package. >> > >>> The error is in that output somewhere. >> > >>> >> > >>> Dan >> > >>> >> > >>> >> > >>>> Thank you, >> > >>>> Vlad >> > >>>> >> > >>>> [[alternative HTML version deleted]] >> > >>>> >> > >>>> _______________________________________________ >> > >>>> Bioc-devel@r-project.org mailing list >> > >>>> https://stat.ethz.ch/mailman/listinfo/bioc-devel >> > >>>> >> > >>> >> > >>> >> > >> >> > > >> > > [[alternative HTML version deleted]] >> > > >> > > _______________________________________________ >> > > Bioc-devel@r-project.org mailing list >> > > https://stat.ethz.ch/mailman/listinfo/bioc-devel >> > > >> > >> > -- >> > Hervé Pagès >> > >> > Program in Computational Biology >> > Division of Public Health Sciences >> > Fred Hutchinson Cancer Research Center >> > 1100 Fairview Ave. N, M1-B514 >> > P.O. Box 19024 >> > Seattle, WA 98109-1024 >> > >> > E-mail: hpa...@fredhutch.org >> > Phone: (206) 667-5791 >> > Fax: (206) 667-1319 >> > >> > > [[alternative HTML version deleted]] _______________________________________________ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel