←back to thread

68 points Keats | 1 comments | | HN request time: 0.315s | source

We have been building a package manager for R inspired by Cargo in Rust. The main idea behind rv is to be explicit about the R version in use as well as declaring which dependencies are used in a rproject.toml file for a given project. There's no renv::snapshot equivalent, everything needs to be declared up front, the config file (and resulting lockfile) is the source of truth. This avoids issue where renv might miss information about the installation and is also easy to tweak some packages, eg install one from source and install suggests from another.

If you have used Cargo/npm/any Python package manager/etc, it will be very familiar.

Show context
simpaticoder ◴[] No.44007555[source]
You might want to consider writing a plugin for R with Mise en Place https://mise.jdx.dev/core-tools.html This would extend your reach and might take some of the heavy lifting out of the project. (At least for the runtime portion. I don't think it will help with package management.)
replies(1): >>44008748 #
Keats ◴[] No.44008748[source]
I could be wrong but I feel like the overlap between mise and R users is likely very tiny
replies(2): >>44008900 #>>44010176 #
1. 0cf8612b2e1e ◴[] No.44008900[source]
Tend to agree. Majority of users are leaving that icky computer stuff to RStudio and have no idea what happens behind the scenes.