ITADN
rstudio/renv

版本发布 8

renv 1.2.1v1.2.1
? · 2026-04-12

* `RENV_PATHS_LOCKFILE` now resolves relative paths against the project directory rather than the working directory. Previously, the effective lockfile path could change as the working directory changed within an R session. (#2238) * `renv::install()` no longer upgrades transitive dependencies when the installed version already satisfies all dependency requirements. Previously, transitive dependencies were always upgraded to the latest available version, even when the existing library version was compatible. (#2232) * Fixed an issue where `renv::update()` and `renv::install()` did not handle `RemoteSubdir` correctly for Bitbucket and GitLab packages. The subdirectory was not passed through during remote resolution, causing DESCRIPTION lookups to fail for packages that live in a repository subdirectory. (#2229) * Fixed an issue where repository URLs from the lockfile could have `/src/contrib` appended twice, producing download URLs like `.../src/contrib/src/contrib/PACKAGES`. * Fixed an issue where `renv::install(..., type = "binary")` was not respected during dependency graph resolution, causing renv to resolve source-only versions even when binaries were requested. (#2264, #2266) * Fixed an infinite recursion in the JSON writer when encountering `numeric_version` objects. * Packages installed from local sources can now fall back to repository sources when the local source is no longer available. * `renv::install()` and `renv::restore()` now display progress when installing binary packages. * `renv::use(repos = NULL)` now correctly resolves and installs transitive dependencies from the cache. Previously, only explicitly requested packages were installed. (#2254) * The slow-dependency-discovery message during `renv::snapshot()` now accounts for whether an `.renvignore` file already exists, and adjusts the suggested action accordingly. (#2193, #2261) * Fixed an error during `restore()` when a package from a custom repository could not be found in available packages, and the lockfile used the v2 format. (#2263) * The new `lockfile.sanitize` project setting controls whether renv strips embedded credentials from repository URLs when writing the lockfile. Set to `FALSE` to preserve credentials in the lockfile. See `?renv::settings` for more details. (#2262) * Fixed an error when calling `renv::use()` multiple times in a single session. (#2248) * Fixed an issue where GitLab packages with an empty `RemoteSubdir` field caused restore and install failures. (#2249) * Fixed an error in the install report when a package record had no version, e.g. when a dependency could not be found in any configured repository. (#2251) * Fixed an issue where `renv_record_source()` returned `"unknown"` for lockfile records that had a `Repository` field but no `Source` field. * Fixed an issue where `renv::checkout()` could produce a broken `activate.R` script (e.g. `object '..md5..' not found` on session restart) when upgrading `renv` itself during checkout. (#2257) * Fixed an issue where `renv::restore(packages = ...)` did not install transitive dependencies of the requested packages. (#2259)

renv 1.1.5v1.1.5
? · 2025-07-24

* Fixed an issue where `renv::dependencies()` could fail for chunks which had a `label` which was not a length-one character vector. (#2144) * Fixed an issue where `file.rename()` could fail when unpacking a package during installation in certain Windows environments. (#2156) * `renv`'s dependency discovery now supports usages of `base::use()`. (#2130) * Fixed an issue where `renv` could fail to parse remote references containing an `@` character. (#2135) * Fixed an issue where `renv::sysreqs(distro = <...>)` could fail when passed an alternate distribution without a version specifier. (#2105) * Fixed an issue where multimode R documents containing chunk headers which did not parse to an R list could cause dependency inference to fail. (#2110)

renv 1.1.3v1.1.3
? · 2025-03-18

* Fixed an issue where `renv::hydrate()` could fail to install packages discovered in the user library during `renv::init()`. (#2109) * `renv::update()` now only updates the packages installed in the project library by default. `renv::update(all = TRUE)` can be used to also check if packages installed in the default library are out-of-date, and install updated copies into the project library. (#2108) * Fixed an issue where package installation could fail on Arch Linux with the error message "don't know how to check sysreqs on this system". (#2107) * `renv` now supports profile-specific comments within `.gitignore` and `.renvignore` files. These are comments of the form `#| <code>`, where `<code>` is R code which should indicate if the `.renvignore` rules should apply. Typically, this should be of the form `#| profile == "extra"`, or `#| profile %in% c("extra", "other")`. Note that only a small subset of base R functions are available for evaluation in this context. Note that the first section in a `.renvignore` implicitly applies to all profiles -- if you want to limit it to just the default profile, you can use `#| profile == "default"` for the first line. (#1662) * The environment variable `RENV_PATHS_VERSION` can now be used to substitute the R version component normally used in library / cache paths. The provided path can include placeholders like `%V` for the full R version including the patch level, and `%v` for the R version without the patch level. Defaults to `R-%v` when unset. (#1687) * `renv::install()` gains the `transactional` argument, for parity with `renv::restore()`. (#1109)

renv 1.1.2v1.1.2
? · 2025-03-03

* `renv` gains the `sysreqs()` function, which can be used to query the system packages required by a set of R packages. Functionality is currently available for Debian-based distributions, as well as Red Hat distributions. * On Linux, `renv` now uses the database from <https://github.com/rstudio/r-system-requirements> when determining if an R package's required system libraries are installed, and notifies the user which packages (if any) are missing during install / restore. * Fixed an issue where `renv` could fail to retrieve credentials registered for 'github.com' when querying URLs at 'api.github.com'. * Fixed an issue where `renv` could stall when loading a project and validating that the configured version of Bioconductor is compatible with the version of R currently in use. * `renv::snapshot()` no longer fails to generate a new lockfile if the project contains a lockfile which could not be read or parsed. * Fixed an issue where lockfiles containing unicode characters were not correctly written or read with versions of R (< 4.2.0) on Windows. (#2091)

renv 1.1.1v1.1.1
? · 2025-02-07

* Fixed an issue where very long lockfiles could be truncated on write. (#2089) * Fixed an issue where `renv` inadvertently made web requests in tests during `R CMD check`.

renv 1.0.11v1.0.11
? · 2024-10-12

* Fixed an issue where headers were not properly passed to `available.packages()` during `renv` bootstrap. (#1942) * `renv` now assumes that Artifactory package repositories will use a CRAN-like layout of packages for packages in the archive. (#1996) * `renv` now includes compiled extensions on Linux + macOS. These extensions are primarily used to improve the performance of `renv::dependencies()` and other static analysis code. Support for Windows may come in a future release. * Fixed an issue where `renv::snapshot()` could fail if the project contained a call to `module()` with no arguments. (#2007) * On Linux, `renv` now emits a message on load if the R temporary directory is within a folder that has been mounted as 'noexec'. This message can be suppressed by setting the `RENV_TEMPDIR_NOEXEC_CHECK=FALSE` environment variable.

renv 1.0.10v1.0.10
? · 2024-10-05

* Fixed a performance regression in `renv::dependencies()`. (#1999) * Fixed an issue where `renv` tests could fail if the `parallel` package was loaded during test execution. * `renv` now determines a package repository's type through the HTTP headers provided when accessing `src/contrib/PACKAGES`. This is mainly relevant when detecting Nexus and Artifactory repositories.

renv 1.0.9v1.0.9
? · 2024-09-23

* Fixed an issue where repository URLs were inappropriately transformed into binary repository URLs on Linux. (#1991) * Fixed an issue where code following `source("renv/activate.R")` in the project `.Rprofile` was not invoked for projects using RStudio. (#1990)