[Bioc-devel] Challenges with package installation on fresh R
Vladislav Petyuk
petyuk at gmail.com
Fri Jun 26 23:44:32 CEST 2015
the issue posted
https://github.com/hadley/devtools/issues/864
On Fri, Jun 26, 2015 at 2:36 PM, Vladislav Petyuk <petyuk at gmail.com> wrote:
> 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 <petyuk at 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 <dtenenba at fredhutch.org>
>> wrote:
>>
>>>
>>>
>>> ----- Original Message -----
>>> > From: "Hervé Pagès" <hpages at fredhutch.org>
>>> > To: "Vladislav Petyuk" <petyuk at gmail.com>, "Dan Tenenbaum" <
>>> dtenenba at fredhutch.org>
>>> > Cc: Bioc-devel at 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
>>> > > <dtenenba at fredhutch.org>
>>> > > wrote:
>>> > >
>>> > >>
>>> > >>
>>> > >> ----- Original Message -----
>>> > >>> From: "Vladislav Petyuk" <petyuk at gmail.com>
>>> > >>> To: "Dan Tenenbaum" <dtenenba at fredhutch.org>
>>> > >>> Cc: Bioc-devel at 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 <
>>> > >>> dtenenba at fredhutch.org > wrote:
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>> ----- Original Message -----
>>> > >>>> From: "Vladislav Petyuk" < petyuk at gmail.com >
>>> > >>>> To: Bioc-devel at 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 at r-project.org mailing list
>>> > >>>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>>> > >>>>
>>> > >>>
>>> > >>>
>>> > >>
>>> > >
>>> > > [[alternative HTML version deleted]]
>>> > >
>>> > > _______________________________________________
>>> > > Bioc-devel at 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: hpages at fredhutch.org
>>> > Phone: (206) 667-5791
>>> > Fax: (206) 667-1319
>>> >
>>>
>>
>>
>
[[alternative HTML version deleted]]
More information about the Bioc-devel
mailing list