renv::restore() 无法检索旧包版本

renv::restore() failed to retrieve older package version

我正在将 renv 用于需要使用旧版本 mongolite(1.0 版)的项目。我可以用 remotes::install_version("mongolite", "1.0") 安装这个版本。但是,renv 无法在 renv::restore() 上安装此软件包。我试图像这样将显式源插入 lock 文件中:

"mongolite": {
      "Package": "mongolite",
      "Version": "1.0.0",
      "Source": "https://cran.rstudio.com/src/contrib/Archive/mongolite/mongolite_1.0.tar.gz"
    }

(我也试过https://github.com/jeroen/mongolite/archive/refs/tags/v1.0.tar.gz)。它只是不起作用 (Error: failed to retrieve package 'mongolite' )。我也尝试按照常见问题解答中的建议设置 Sys.setenv(RENV_DOWNLOAD_FILE_METHOD = getOption("download.file.method")),但这也无济于事。

还有什么我可以尝试的吗?

如果您发布在 renv::restore() 失败时看到的完整输出,将会有所帮助。唯一让我印象深刻的是版本是 1.0,而不是 1.0.0,所以这可能就是 renv 找不到包的原因(假设您正在手动修改锁定文件)。