Path to this page:
Subject: CVS commit: pkgsrc/devel/R-renv
From: Makoto Fujiwara
Date: 2024-10-20 00:57:13
Message id: 20241019225713.2FD0DFC7E@cvs.NetBSD.org
Log Message:
(devel/R-renv) Updated 1.0.3 to 1.0.11
# renv 1.0.11
* 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.10
* 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.9
* 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)
# renv 1.0.8
* `renv` now infers a dependency on the `ragg` package when the `ragg_png` device
is used in R Markdown / Quarto documents, for documents using the code
`knitr::opts_chunk$set(dev = "ragg_png")`. (#1985)
* `renv` now automatically generates a lockfile when loading a project containing
a `manifest.json` file (typical for application bundles published to Posit \
Connect).
(#1980, @toph-allen)
* `renv::install()` now errs if an incompatible `type` argument is provided.
* `renv::checkout()` now also checks out the version of `renv` available
and associated with the requested snapshot date. (#1966)
* Fixed an issue where `renv::hydrate()` did not hydrate packages which
were also listed as dependencies within a project's `DESCRIPTION` file.
(#1970)
* Fixed an issue where `renv::checkout()` omitted some fields from lockfile
records when using `actions = c("snapshot", "restore")`. \
(#1969)
* `renv` gains the function `renv::retrieve()`, which can be used to download
packages without installing them. This is primarily useful in CI / CD scenarios,
where you might want to download packages in a single stage before attempting
to install / restore them. (#1965)
* `renv` now preserves `Remote` fields present on packages installed from
public package repositories (e.g. <https://r-universe.dev/>). (#1961)
* Fixed an issue where `renv::load()` could fail to load an alternate project
when `options(renv.config.autoloader.enabled = FALSE)` was set. (#1959)
* `renv` now emits clickable hyperlinks for runnable code snippets and help,
for front-ends which support the `ide:run` and `ide:help` ANSI escapes.
* `renv::init(bioc = "<version>")` now prompts the user in \
interactive sessions
when requesting a version of Bioconductor which is not compatible with the
current version of R. (#1943)
* `renv::restore()` gains the `transactional` argument, which can be
used to control whether `renv` will allow successfully-installed
packages remain in the project library even if a package fails
to install during a later step. (#1109)
* `renv` now infers a dependency on the `xml2` package for projects
using the `testthat::JunitReporter` for tests. (#1936)
* Fixed an issue where `renv::dependencies()` could emit a warning
when attempting to parse chunks using chunk options like
`#| eval: c(1, 2)`. (#1906)
* `renv::install()` now properly delegates the `type` and `rebuild`
arguments to `pak` when `options(renv.config.pak.enabled = TRUE)`
is set. (#1924)
* `renv` now infers a dependency on the `svglite` package if it detects
calls of the form `ggsave(filename = "path.svg")`. (#1930)
* `renv` now supports setting of GitHub authentication credentials via
any of `GITHUB_TOKEN`, `GITHUB_PAT`, and `GH_TOKEN`. (#1937)
* `renv` now also passes any custom headers available to
`utils::available.packages()` during bootstrap. (#1942)
* Fixed an issue where `renv` could fail during installation of packages
stored within repository sub-directories, if that repository also
contained a top-level DESCRIPTION file. (#1941)
* `renv` now normalizes lockfile entries for Bioconductor packages installed
via `pak::pkg_install()`, to help prevent spurious diffs being produced
via `renv::status()`. (#1920)
* `renv::install()` now respects the `prompt` parameter when `pak` is enabled,
as via `options(renv.config.pak.enabled = TRUE)`. (#1907)
* Fixed an issue with `renv`'s `pak` integration where `renv` could install the
wrong version of a GitHub package during restore if
`options(renv.config.pak.enabled = TRUE)` was set. (#1883)
* `renv` no longer interacts with the user during autoloading, which coincides
with R startup. If the IDE offers a session init hook (RStudio does),
loading is deferred until startup is complete and interaction is possible.
Otherwise, any suggested renv actions, such as `renv::restore()`, are emitted
as a message for the user to act on. (#1879, #1915).
* Fixed an issue where installation of packages from local sources, as via
`install("<package>", repos = NULL, type = \
"source")`, could fail. (#1880)
* A new function, `renv::lockfile_validate()`, can be used to validate your \
`renv.lock`
against a default or custom schema. (#1889)
# renv 1.0.7
* Fixed an issue where `renv`'s activate script failed to report version
conflict errors when starting up. (#1874)
# renv 1.0.6
* Fixed an issue where downloads could fail with curl >= 8.7.1. (#1869)
* Fixed an issue where `renv::snapshot()` did not properly normalize
package records generated from packages installed using the `pak`
package, e.g. via `pak::pkg_install("cran::<package>")`.
* Fixed an issue where `renv` could incorrectly prompt the user to record
a version of `renv` installed from GitHub in some cases. (#1857)
* `renv::load()` now delegates to `base::load()` when it detects that the
call was likely intended for `base::load()`, but `renv::load()` was used
instead (e.g. because `base::load()` was masked by `renv::load()`).
* `renv::update()` gains the `lock` argument, which can be used to
instruct `renv` to automatically update the lockfile after the requested
packages have been updated. (#1849)
* Fixed an issue where `renv` could fail to update the project autoloader
after calling `renv::upgrade()`. (#1837)
* Fixed an issue where attempts to install binary packages from older
PPM snapshots could fail. (#1839)
* `renv` now uses a platform-specific prefix on Linux for library and
cache paths by default with R (>= 4.4.0). This is equivalent to setting
`RENV_PATHS_PREFIX_AUTO = TRUE`. If necessary, this behavior can be
disabled by setting `RENV_PATHS_PREFIX_AUTO = FALSE` in an appropriate
R startup file. (#1211)
# renv 1.0.5
* `renv` now only writes a `.renvignore` file into the cache directory
if the cache appears to be part of the current project.
* `renv` now reports missing system libraries as part of its ABI
checks in `renv::diagnostics()`.
* Fixed an issue where `renv::install(lock = TRUE)` produced lockfiles
containing records with extraneous data. (#1828)
# renv 1.0.4
* `renv::install()` gains the `lock` argument. When `TRUE`, the project
lockfile will be updated after the requested packages have been
successfully installed. (#1811)
* `renv` now supports the use of GitHub Enterprise servers with the
`gitcreds` package for authentication credentials. (#1814)
* `renv::dependencies()` now treats `#| eval: !expr <...>` chunk options
as truthy by default, implying that such chunks are scanned for their
R package dependencies. (#1816)
* `renv::dependencies()` now requires usages of the \
[import](https://cran.r-project.org/package=import)
package to be namespace-qualified in order to be handled via static
analysis; that is, `import::from(<pkg>)` is parsed for dependencies,
but `from(pkg)` is not. (#1815)
* `renv::load()` gains the `profile` argument, allowing one to
explicitly load a specific profile associated with an `renv` project.
See `vignette("profiles", package = "renv")` or
https://rstudio.github.io/renv/articles/profiles.html
for more details.
* `renv::dependencies()` no longer includes `R` dependency versions
declared from a `DESCRIPTION` file in its output. (#1806)
* Fixed an issue where `renv` could fail to infer dependencies from
R Markdown code chunks using engine 'R' (upper-case) rather than
'r' (lower-case). (#1803)
* Fixed an issue where `renv` did not report out-of-sync packages when
one or more packages used in the project were not installed. (#1788)
* Fixed an issue where `renv` could over-aggressively activate P3M
repositories when initializing a project. (#1782)
* `renv::status()` now notifies the user if the version of R recorded in
the lockfile does not match the version of R currently in use. (#1779)
* Fixed an issue where packages could appear multiple times in the lockfile,
if that package was installed into multiple library paths. (#1781)
* Installation of historical binaries of packages is once again enabled,
now using the [Posit Public Package Manager (P3M)](https://packagemanager.posit.co)
service instead of Microsoft's (now defunct) MRAN service.
* `renv::init()` now respects the `Remotes:` field declared in a project's
`DESCRIPTION` file, if any. (#1522)
* `renv::embed()` now supports Quarto Markdown (`.qmd`) files. (#1700)
* renv now sets the `R_INSTALL_TAR` environment variable to match the default
`tar` executable (if any) when installing packages. (#1724)
* renv now uses `--ssl-revoke-best-effort` by default when downloading files
using `curl` on Windows. (#1739)
* Fixed an issue where `renv::install()` could fail to detect incompatible
recursive package dependencies. (#1671)
* `renv::install()` now records remote information for packages installed from
CRAN-like repositories, and uses that information when generating a lockfile
and restoring those packages. This helps ensure that packages installed within
an renv project via calls like `renv::install("<pkg>", repos = \
"<repos>")` can
still be successfully restored in future sessions. (#1765)
* `renv::install()` now lazily resolves project remotes. (#1755)
* `renv::init()` now respects Remotes declared within a project's `DESCRIPTION`
file, if any.
* Calling `renv::activate()` without explicitly providing the `profile` argument
now preserves the current profile, if any. Use `renv::activate(profile = \
"default")`
if you'd like to re-activate a project using the default profile. (#1217)
* Fixed an issue where `renv` would try to prompt for the installation of
`BiocManager` when activating a project using Bioconductor. (#1754)
* Fixed an issue where directories containing a large number of files could
cause `renv` to fail to activate a project. (#1733)
* Expanded the set of Linux distributions detected for automatic transformation
of Posit Package Manager URLs to install binary packages. `renv` now correctly
detects Red Hat Enterprise Linux 9, Rocky Linux 8 and 9, SLES 15 SP4 and SP5,
Debian 11 and 12, AlmaLinux 8 and 9, and Amazon Linux 2. (#1720, #1721)
Files: