首页 > 解决方案 > check_rhub 正在尝试安装 BiocManager 失败

问题描述

我正在尝试向 CRAN 提交一个 R 包。我正处于使用 check_rhub() 对其进行测试的阶段。如果我使用 linux-x86_64-centos-epel 或 windows-x86_64-release 之类的平台,它可以毫无问题地安装。但是,当我尝试使用其中一种 debian 平台时,例如 debian-clang-devel,它会尝试安装 BiocManager 管理器,然后失败并出现错误

Error: Bioconductor version '3.13' requires R version '4.1'; R version is too new; see
  https://bioconductor.org/install
Execution halted

这很奇怪,因为我的包不需要 bioconductor,而且我在任何依赖项列表中都没有 BiocManager。其实有一个依赖,reticulate,我的DESCRIPTION看起来是这样的

Imports:
  reticulate

check_rhub() 的完整错误跟踪是


❯ Build failed during preparation or aborted

[...]
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> install.packages('BiocManager')
Installing package into '/home/docker/R'
(as 'lib' is unspecified)
trying URL 'https://cloud.r-project.org/src/contrib/BiocManager_1.30.12.tar.gz'
Content type 'application/x-gzip' length 261321 bytes (255 KB)
==================================================
downloaded 255 KB

* installing *source* package 'BiocManager' ...
** package 'BiocManager' successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (BiocManager)

The downloaded source packages are in
    '/tmp/RtmpOzRXET/downloaded_packages'
> 
> 

─ Querying package dependencies

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  162k  100  162k    0     0   802k      0 --:--:-- --:--:-- --:--:--  802k

R Under development (unstable) (2021-04-25 r80223) -- "Unsuffered Consequences"
Copyright (C) 2021 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

Error: Bioconductor version '3.13' requires R version '4.1'; R version is too new; see
  https://bioconductor.org/install
Execution halted

─ Installing package dependencies

/opt/R-devel/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
clang
Debian clang version 11.0.1-2
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
clang++ -std=gnu++14
Debian clang version 11.0.1-2
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Pandoc:
/usr/bin/pandoc
-rwxr-xr-x 1 root root 63606952 Apr 26 06:04 /usr/bin/pandoc
-rwxr-xr-x 1 root root 58111640 Apr 26 06:04 /usr/bin/pandoc-citeproc

R Under development (unstable) (2021-04-25 r80223) -- "Unsuffered Consequences"
Copyright (C) 2021 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

Error: Bioconductor version '3.13' requires R version '4.1'; R version is too new; see
  https://bioconductor.org/install
Execution halted
Error: Bioconductor version '3.13' requires R version '4.1'; R version is too new; see
  https://bioconductor.org/install
Execution halted
Build step 'Execute shell' marked build as failure

标签: rpackagecran

解决方案


从建议的 URL https://bioconductor.org/install/

Bioconductor的开发版本是3.13版;它适用于 R 版本 4.1.0。下一个 Bioconductor 发布周期将支持更新的 R 的“开发”版本(如果可用)。

换句话说,R-hub 上的最新 R-devel 版本看起来比 4.1.0 更新,因此 Bioconductor 3.13 不支持(即“太新”)。

如果您的包rhub::check()在 a releaseoroldrel平台上通过 any 并在任何平台上失败,您可以确认此行为devel


推荐阅读