Ramblings
- Reading from https://rworks.dev/posts/r-managers/ and trying to get the gist of it
- So there are differenta xis we have to anylze in thi socnetxt
- we have scope
- Packge/depenendciy mangemnet
- R version angemern
- I wan tot undestnadn the R ecoceys btu importably to compare tot eh Python and JS ecoysstemt; expecially presntign this int eh context of
uvwhich i dont konw why jsut sticks out as the best UX i ahve ver had with a mangemnt but from hwat i udnresnt uv does both pyhotn and dpendenc in one thign? - implciaitnosf or loom-datawarehouse
- so a arcehtecutural decision is that we dont even need to ‘fork’ and modfy dbt-oss but rather we just
- what we can do is develop a wrapper
Processing
Table 1 - The post’s axes
The axes the r-managers post uses:
| Axis | Values |
|---|---|
| What it tracks | Packages, R version, system deps |
| Scope | Single file, project, whole system |
| Workflow | Snapshot or declarative |
Table 2 - R tools on those axes
R tools on those axes:
| Tool | Packages | R version | System deps | Scope | Workflow | Age | Stars | Releases | Releases (last 3 mo) | Merged PRs (last 3 mo) |
|---|---|---|---|---|---|---|---|---|---|---|
| renv | ✅ | ❌ | ❌ | Project | Snapshot | since 2018 | 1,164 | 26 | 3 | 54 |
| rv | ✅ | ❌ | ❌ | Project | Declarative | since Dec 2024 | 380 | 42 | 3 | 23 |
| uvr | ✅ | ✅ | ❌ | Project | Declarative | since Mar 2026 | 362 | 44 | 6 | 51 |
| ir | ✅ | ✅ | ❌ | Single file | Declarative | since Jun 2026 | 66 | 5 | 4 | 14 |
| rix | ✅ | ✅ | ✅ | Whole system | Declarative | since 2023 | 384 | 4 | 0 | 16 |
| uv (Python, for reference) | ✅ | ✅ (Python) | ❌ | Project | Declarative | since 2023 | 90,978 | 327 | 33 | 1,245 |
The last row is the Python baseline, not an R tool. The closest R match is the one whose row looks the same, which is uvr.
Repo stats are from GitHub as of 2026-10-21; “last 3 mo” means since 2026-07-21. Releases are GitHub releases, which undercount renv and rix because they ship most versions to CRAN.
Table 3 - Across languages
The same axes across languages:
| Language | Packages | Language version | System deps | Workflow |
|---|---|---|---|---|
| Python | uv | uv | conda / pixi | Declarative |
| R | renv / rv | rig / uvr | rix | Both |
| JS | pnpm | fnm | none (Docker) | Declarative |
Table 4 - My simple two-axis version
My simpler version, language × what the tool manages:
| Language version | Packages | |
|---|---|---|
| Python | uv | uv |
| R | rig | renv / pak |
| JS | fnm | pnpm |
Understanding
- There are many axis to langueng lamaugnes
- what it tracks (R packges vs R version vs System dmepoencines)
- scope (single file vs single proejct vs whole system
- How it works snapshot (install first hten udpate recrd) or Declarative (udpate record - htne managem ahndels the installs)
- The table 2 above is usepr informaiton comaprien R tools alaong hte acexis alognw ith amturity metrocsi vs UV
- it seems UVR is a great cadinaitia and something to test