Bioconductor and Bioconda version mismatch when deploying application

I've encountered a problem which I am not sure how to solve with rsconnect:

  • I have created a conda environment which contains multiple Bioconductor packages (installed through conda using the bioconda repository).
  • Within this environment I wanted to upload a shiny app to the shiny apps.io server (using rsconnect, also installed through conda in the same environment). This is the code I used:
options(repos = c(BiocManager::repositories()))

rsconnect::setAccountInfo(
    name = <NAME>,
    token = <TOKEN>,
    secret = <SECRET>
)

rsconnect::deployApp(appDir = "analysis/interactive", appName = "Name", appTitle = "Title", launch.browser = FALSE, forceUpdate = TRUE)
  • The deployment of the app encountered this error:
Preparing to deploy application...DONE
Uploading bundle for application: 3337933...DONE
Deploying bundle: 3933665 for application: 3337933 ...
Waiting for task: 833619360
  building: Processing bundle: 3933665
  building: Building image: 4481080
  building: Installing system dependencies
  building: Fetching packages
  building: Building package: ComplexHeatmap
################################ Begin Task Log ################################
[2020-12-02T16:20:15.163619436+0000] Execute script: packages/build/igraph.sh
+ set -e
+ apt-get update -qq
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://cran.rstudio.com/bin/linux/ubuntu xenial/ InRelease: The following signatures were invalid: KEYEXPIRED 1602869253  KEYEXPIRED 1602869253  KEYEXPIRED 1602869253
W: Failed to fetch http://cran.rstudio.com/bin/linux/ubuntu/xenial/InRelease  The following signatures were invalid: KEYEXPIRED 1602869253  KEYEXPIRED 1602869253  KEYEXPIRED 1602869253
W: Some index files failed to download. They have been ignored, or old ones used instead.
+ apt-get install -y libglpk-dev
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  libamd2.4.1 libbtf1.2.1 libcamd2.4.1 libccolamd2.9.1 libcholmod3.0.6
  libcolamd2.9.1 libcsparse3.1.4 libcxsparse3.1.4 libglpk36 libgmp-dev
  libgmpxx4ldbl libklu1.3.3 libldl2.2.1 libspqr2.0.2 libsuitesparse-dev
  libsuitesparseconfig4.4.6 libumfpack5.7.1
Suggested packages:
  libiodbc2-dev gmp-doc libgmp10-doc libmpfr-dev
The following NEW packages will be installed:
  libamd2.4.1 libbtf1.2.1 libcamd2.4.1 libccolamd2.9.1 libcholmod3.0.6
  libcolamd2.9.1 libcsparse3.1.4 libcxsparse3.1.4 libglpk-dev libglpk36
  libgmp-dev libgmpxx4ldbl libklu1.3.3 libldl2.2.1 libspqr2.0.2
  libsuitesparse-dev libsuitesparseconfig4.4.6 libumfpack5.7.1
0 upgraded, 18 newly installed, 0 to remove and 107 not upgraded.
Need to get 2864 kB of archives.
After this operation, 12.2 MB of additional disk space will be used.
Get:1 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libsuitesparseconfig4.4.6 amd64 1:4.4.6-1 [9322 B]
Get:2 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libamd2.4.1 amd64 1:4.4.6-1 [21.3 kB]
Get:3 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libbtf1.2.1 amd64 1:4.4.6-1 [10.8 kB]
Get:4 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libcamd2.4.1 amd64 1:4.4.6-1 [20.0 kB]
Get:5 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libccolamd2.9.1 amd64 1:4.4.6-1 [21.5 kB]
Get:6 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libcolamd2.9.1 amd64 1:4.4.6-1 [15.7 kB]
Get:7 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libcholmod3.0.6 amd64 1:4.4.6-1 [293 kB]
Get:8 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libcsparse3.1.4 amd64 1:4.4.6-1 [26.3 kB]
Get:9 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libcxsparse3.1.4 amd64 1:4.4.6-1 [62.8 kB]
Get:10 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/universe amd64 libglpk36 amd64 4.57-1build3 [386 kB]
Get:11 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libgmpxx4ldbl amd64 2:6.1.0+dfsg-2 [8948 B]
Get:12 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libgmp-dev amd64 2:6.1.0+dfsg-2 [314 kB]
Get:13 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libklu1.3.3 amd64 1:4.4.6-1 [71.5 kB]
Get:14 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libldl2.2.1 amd64 1:4.4.6-1 [10.6 kB]
Get:15 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libumfpack5.7.1 amd64 1:4.4.6-1 [223 kB]
Get:16 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libspqr2.0.2 amd64 1:4.4.6-1 [63.6 kB]
Get:17 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/main amd64 libsuitesparse-dev amd64 1:4.4.6-1 [899 kB]
Get:18 http://us-east-1.ec2.archive.ubuntu.com/ubuntu xenial/universe amd64 libglpk-dev amd64 4.57-1build3 [408 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 2864 kB in 0s (36.2 MB/s)
Selecting previously unselected package libsuitesparseconfig4.4.6:amd64.
(Reading database ... 121086 files and directories currently installed.)
Preparing to unpack .../libsuitesparseconfig4.4.6_1%3a4.4.6-1_amd64.deb ...
Unpacking libsuitesparseconfig4.4.6:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libamd2.4.1:amd64.
Preparing to unpack .../libamd2.4.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libamd2.4.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libbtf1.2.1:amd64.
Preparing to unpack .../libbtf1.2.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libbtf1.2.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libcamd2.4.1:amd64.
Preparing to unpack .../libcamd2.4.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libcamd2.4.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libccolamd2.9.1:amd64.
Preparing to unpack .../libccolamd2.9.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libccolamd2.9.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libcolamd2.9.1:amd64.
Preparing to unpack .../libcolamd2.9.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libcolamd2.9.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libcholmod3.0.6:amd64.
Preparing to unpack .../libcholmod3.0.6_1%3a4.4.6-1_amd64.deb ...
Unpacking libcholmod3.0.6:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libcsparse3.1.4:amd64.
Preparing to unpack .../libcsparse3.1.4_1%3a4.4.6-1_amd64.deb ...
Unpacking libcsparse3.1.4:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libcxsparse3.1.4:amd64.
Preparing to unpack .../libcxsparse3.1.4_1%3a4.4.6-1_amd64.deb ...
Unpacking libcxsparse3.1.4:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libglpk36:amd64.
Preparing to unpack .../libglpk36_4.57-1build3_amd64.deb ...
Unpacking libglpk36:amd64 (4.57-1build3) ...
Selecting previously unselected package libgmpxx4ldbl:amd64.
Preparing to unpack .../libgmpxx4ldbl_2%3a6.1.0+dfsg-2_amd64.deb ...
Unpacking libgmpxx4ldbl:amd64 (2:6.1.0+dfsg-2) ...
Selecting previously unselected package libgmp-dev:amd64.
Preparing to unpack .../libgmp-dev_2%3a6.1.0+dfsg-2_amd64.deb ...
Unpacking libgmp-dev:amd64 (2:6.1.0+dfsg-2) ...
Selecting previously unselected package libklu1.3.3:amd64.
Preparing to unpack .../libklu1.3.3_1%3a4.4.6-1_amd64.deb ...
Unpacking libklu1.3.3:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libldl2.2.1:amd64.
Preparing to unpack .../libldl2.2.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libldl2.2.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libumfpack5.7.1:amd64.
Preparing to unpack .../libumfpack5.7.1_1%3a4.4.6-1_amd64.deb ...
Unpacking libumfpack5.7.1:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libspqr2.0.2:amd64.
Preparing to unpack .../libspqr2.0.2_1%3a4.4.6-1_amd64.deb ...
Unpacking libspqr2.0.2:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libsuitesparse-dev:amd64.
Preparing to unpack .../libsuitesparse-dev_1%3a4.4.6-1_amd64.deb ...
Unpacking libsuitesparse-dev:amd64 (1:4.4.6-1) ...
Selecting previously unselected package libglpk-dev.
Preparing to unpack .../libglpk-dev_4.57-1build3_amd64.deb ...
Unpacking libglpk-dev (4.57-1build3) ...
Processing triggers for libc-bin (2.23-0ubuntu11) ...
Setting up libsuitesparseconfig4.4.6:amd64 (1:4.4.6-1) ...
Setting up libamd2.4.1:amd64 (1:4.4.6-1) ...
Setting up libbtf1.2.1:amd64 (1:4.4.6-1) ...
Setting up libcamd2.4.1:amd64 (1:4.4.6-1) ...
Setting up libccolamd2.9.1:amd64 (1:4.4.6-1) ...
Setting up libcolamd2.9.1:amd64 (1:4.4.6-1) ...
Setting up libcholmod3.0.6:amd64 (1:4.4.6-1) ...
Setting up libcsparse3.1.4:amd64 (1:4.4.6-1) ...
Setting up libcxsparse3.1.4:amd64 (1:4.4.6-1) ...
Setting up libglpk36:amd64 (4.57-1build3) ...
Setting up libgmpxx4ldbl:amd64 (2:6.1.0+dfsg-2) ...
Setting up libgmp-dev:amd64 (2:6.1.0+dfsg-2) ...
Setting up libklu1.3.3:amd64 (1:4.4.6-1) ...
Setting up libldl2.2.1:amd64 (1:4.4.6-1) ...
Setting up libumfpack5.7.1:amd64 (1:4.4.6-1) ...
Setting up libspqr2.0.2:amd64 (1:4.4.6-1) ...
Setting up libsuitesparse-dev:amd64 (1:4.4.6-1) ...
Setting up libglpk-dev (4.57-1build3) ...
Processing triggers for libc-bin (2.23-0ubuntu11) ...
################################# End Task Log #################################
Error: Unhandled Exception: Child Task 833619411 failed: Error building image: Error fetching ComplexHeatmap (2.6.0) source. Error downloading package source. Please update your BioConductor packages to the latest version and try again: <BioconductorPackageSourc

I was wondering if it is possible to tell rsconnect to also look in the archive directory or provide a direct URL to the source package? My current work-around is to create a seperate conda environment for deployment where all of the Bioconductor packages are manually installed through BiocManager. I'm not sure how often this sort of error occurs and whether it should be fixed through rsconnect (e.g. providing a direct URL or access to the Bioc archives) or on a case-by-case basis by updating the recipes on bioconda?

1 Like

The latest version of ComplexHeatmap from bioconda is 2.6.2 (link to Anaconda Cloud). The latest version of ComplexHeatmap on Bioconductor is 2.6.2. What happens when you try to install ComplexHeatmap 2.6.2 with conda?

conda install bioconda::bioconductor-complexheatmap=2.6.2

I confirmed that I was able to install ComplexHeatmap 2.6.2 from bioconda. If it doesn't work for you, please share your conda channels and currently installed conda packages:

conda config --get channels
conda list