Closed jasonserviss closed 6 years ago
I managed to resolve this myself... Apparently, Bioconductor automagically installs the package version associated with a specific version of R, so the solution was to remove the specific version after topGO so that the yml has only:
bioc: - topGO
instead of:
bioc: - topGO/2.280
@jasonserviss - thanks for reporting. That's exactly the type of package versioning solution I want to see for liftr -- a simple one without specifying an explicit number. 👍
Hello,
It would appear as though liftr is having difficulty with previous versions of Bioconductor and Bioconductor packages. Running the following .Rmd:
`
title: "Untitled" output: html_document liftr: maintainer: "Maintainer Name" email: "name@example.com" from: "bioconductor/release_core2:R3.4.0_Bioc3.5" pandoc: false texlive: false bioc:
topGO/2.28.0
`
results in the following once the initial installation of bioconductor/release_core2:R3.4.0_Bioc3.5 completes:
Step 5/7 : RUN Rscript -e "source('http://bioconductor.org/biocLite.R');biocLite(c('topGO/2.28.0'))" ---> Running in 043d8fee39fe [91mBioconductor version 3.5 (BiocInstaller 1.26.0), ?biocLite for help [0m[91mA newer version of Bioconductor is available for this version of R, ?BiocUpgrade for help [0m[91mBioconductor version 3.5 (BiocInstaller 1.26.0), ?biocLite for help [0m[91mA newer version of Bioconductor is available for this version of R, ?BiocUpgrade for help [0m[91mtrying URL 'https://bioconductor.org/packages/3.5/bioc/src/contrib/BiocInstaller_1.26.1.tar.gz' [0m[91mContent type 'application/x-gzip'[0m[91m length 18347 bytes (17 KB) [0m[91m================[0m[91m====[0m[91m===============[0m[91m===[0m[91m============ downloaded 17 KB
[0m[91mBioconductor version 3.5 (BiocInstaller 1.26.0), ?biocLite for help [0m[91mA newer version of Bioconductor is available for this version of R, ?BiocUpgrade for help [0m[91m installing source* package ‘BiocInstaller’ ... [0m[91m R [0m[91m inst [0m[91m preparing package for lazy loading [0m[91m help [0m[91m* installing help indices [0m[91m building package indices [0m[91m* testing if installed package can be loaded [0mBioconductor version 3.5 (BiocInstaller 1.26.1), ?biocLite for help A newer version of Bioconductor is available for this version of R, ?BiocUpgrade for help [91m DONE (BiocInstaller) [0m[91m The downloaded source packages are in ‘/tmp/RtmpDHoPBn/downloaded_packages’ [0m[91mBioconductor version 3.5 (BiocInstaller 1.26.1), ?biocLite for help [0m[91mA newer version of Bioconductor is available for this version of R, ?BiocUpgrade for help [0m[91m'BiocInstaller' updated to version 1.26.1 [0m[91mBioC_mirror: https://bioconductor.org [0m[91mUsing Bioconductor 3.5 (BiocInstaller 1.26.1), R 3.4.0 (2017-04-21). [0m[91mInstalling github package(s) ‘topGO/2.28.0’ [0m[91mDownloading GitHub repo topGO/2.28.0@master from URL https://api.github.com/repos/topGO/2.28.0/zipball/master [0m[91mInstallation failed: Not Found (404)
[0m[91mOld packages: 'AnnotationDbi', 'AnnotationHub', 'backports', 'BH', 'Biobase', 'BiocGenerics', 'BiocParallel', 'BiocStyle', 'biomaRt', 'Biostrings', 'bookdown', 'BSgenome', 'checkmate', 'curl', 'data.table', 'DBI', 'DelayedArray', 'ensembldb', 'evaluate', 'foreign', 'Formula', 'GenomeInfoDb', 'GenomicAlignments', 'GenomicFeatures', 'GenomicRanges', 'gridExtra', 'GSEABase', 'htmlwidgets', 'httr', 'IRanges', 'jsonlite', 'lambda.r', 'lazyeval', 'Matrix', 'mgcv', 'openssl', 'OrganismDbi', 'R6', 'Rcpp', 'RSQLite', 'rtracklayer', 'S4Vectors', 'scales', 'ShortRead', 'stringi', 'SummarizedExperiment', 'tibble', 'VariantAnnotation', 'XML' [0m ---> e64f91a7d127 Removing intermediate container 043d8fee39fe Step 6/7 : RUN mkdir /liftrroot/ ---> Running in 9c95cb7d4eca ---> 1dcb9ac6c7b3 Removing intermediate container 9c95cb7d4eca Step 7/7 : WORKDIR /liftrroot/ ---> f22056789c44 Removing intermediate container 7028e5fd2dc5 Successfully built f22056789c44 Successfully tagged test:latest $container_name [1] "liftr_container_a71c6c41_81a1_47eb_a525_1aedad258a80"
$image_name [1] "test"
$docker_build_cmd [1] "docker build --no-cache=true --rm=true -t=\"test\" /Users/jasonserviss/Desktop/test"
$docker_run_cmd [1] "docker run --rm --name \"liftr_container_a71c6c41_81a1_47eb_a525_1aedad258a80\" -u
id -u $USER
-v \"/Users/jasonserviss/Desktop/test:/liftrroot/\" test Rscript -e \"library('knitr');library('rmarkdown');library('shiny');setwd('/liftrroot/');render(input = 'test.Rmd')\""Loading required package: methods |.................................................................| 100% label: unnamed-chunk-1processing file: test.Rmd Quitting from lines 15-16 (test.Rmd) Error in library(topGO) : there is no package called 'topGO' Calls: render ... withCallingHandlers -> withVisible -> eval -> eval -> library Execution halted
The topGO version corresponds with the Bioconductor image version (can be seen here: https://bioconductor.org/packages/3.5/bioc/html/topGO.html) although it would appear that liftr is looking for the package version in an invalid place (i.e. https://api.github.com/repos/topGO/2.28.0/zipball/master).
I had originally thought that this is due to the relatively recent Bioconductor switch to Github (from SVN) and noticed that the earliest version of topGO on GitHub is 3.0... although both https://api.github.com/repos/topGO/3.0/zipball/master and https://api.github.com/repos/topGO/release-3.0/zipball/master are also invalid urls which probably indicates that liftr would fail with that version as well.