← Back to home
Comparison · DevOps

rappdirs vs RcppParallel

A side-by-side editorial comparison of rappdirs and RcppParallel — release velocity, themes, recent moves, and the top alternatives to consider.

rappdirs vs RcppParallel: at a glance

FeaturerappdirsRcppParallel
SectorDevOpsDevOps
Velocity score0.06.3
Sparks · 30d01
Top themesfilesystem, config-paths, dependency, dormantrcpp, onetbb, parallelism, abi-break
Last editorial update3h ago1h ago
WebsiteVisit →Visit →

What is rappdirs?

Load-bearing across CRAN, and untouched since January 2021.

rappdirs answers one question — where does an application put its data, cache and config on this operating system — and it has answered it the same way since 2014. The last release was 0.3.3 in January 2021, a revert of accidental vectorisation introduced four days earlier. The only substantive change in the package's visible history is 0.3.2 teaching user_data_dir(), use_cache_dir() and use_config_dir() to respect the R_USER_DATA_DIR, R_USER_CACHE_DIR and R_USER_CONFIG_DIR environment variables.

Read the full rappdirs trajectory →

What is RcppParallel?

RcppParallel rebuilt its TBB foundation in 6.0.0, then spent a week fixing what that broke.

Four releases landed in eight days. 6.0.0 bundles oneTBB 2022.0.0, stops re-exporting TBB headers through `RcppParallel/TBB.h`, and changes the TBB ABI so dependent packages need rebuilding; on Windows it switched to Rtools' TBB, restricting the TBB backend to R 4.2.0 and later. 6.1.0 adds `isProcessForkedChild()` in both R and C++ so packages can detect a forked process and fall back to serial work, and enables TBB by default on musl distributions like Alpine. 6.1.1 and 6.2.0 are installation repairs — cmake discovery on macOS, a C++20 iterator-dispatch bug in bundled oneTBB, and a return to shared TBB libraries on Windows.

Read the full RcppParallel trajectory →

rappdirs vs RcppParallel: editorial side-by-side

R
rappdirs
DEVOPS
0.0

Load-bearing across CRAN, and untouched since January 2021.

◆ Current state

rappdirs answers one question — where does an application put its data, cache and config on this operating system — and it has answered it the same way since 2014. The last release was 0.3.3 in January 2021, a revert of accidental vectorisation introduced four days earlier. The only substantive change in the package's visible history is 0.3.2 teaching user_data_dir(), use_cache_dir() and use_config_dir() to respect the R_USER_DATA_DIR, R_USER_CACHE_DIR and R_USER_CONFIG_DIR environment variables.

◆ Where it's heading

Nothing is heading anywhere, and that is the finding. A port of a Python utility with no open direction, four releases in eleven years, and a dependency position underneath a large share of CRAN packages that need a cache directory. The 0.3.2 and 0.3.3 pair is instructive: a real improvement shipped alongside an accidental behaviour change that had to be reverted within the week, and then silence.

◆ Prediction

The entries give no basis for predicting a next release; on eleven years of evidence the most likely next change is a CRAN-mandated check fix rather than anything user-facing.

R6.3

RcppParallel rebuilt its TBB foundation in 6.0.0, then spent a week fixing what that broke.

◆ Current state

Four releases landed in eight days. 6.0.0 bundles oneTBB 2022.0.0, stops re-exporting TBB headers through `RcppParallel/TBB.h`, and changes the TBB ABI so dependent packages need rebuilding; on Windows it switched to Rtools' TBB, restricting the TBB backend to R 4.2.0 and later. 6.1.0 adds `isProcessForkedChild()` in both R and C++ so packages can detect a forked process and fall back to serial work, and enables TBB by default on musl distributions like Alpine. 6.1.1 and 6.2.0 are installation repairs — cmake discovery on macOS, a C++20 iterator-dispatch bug in bundled oneTBB, and a return to shared TBB libraries on Windows.

◆ Where it's heading

The direction is toward RcppParallel owning its TBB, consistently, on every platform: 6.0.0 handed Windows to Rtools, and 6.2.0 reversed that to ship `tbb.dll` like everywhere else, explicitly so downstream packages have a library to link against and the ABI stops depending on the user's toolchain. Read together, the four releases are one migration and its aftermath. The fork-detection API is the other notable thread — it acknowledges that TBB and `mclapply()` do not mix.

◆ Prediction

Further installation and toolchain fixes are likely while the CRAN build farm exercises the new oneTBB on more configurations; the platform layout looks close to settled after 6.2.0.

Alternatives to rappdirs and RcppParallel

Other DevOps products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either rappdirs or RcppParallel.

See all rappdirs alternatives → · See all RcppParallel alternatives →

Recent activity from rappdirs and RcppParallel

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 14d agoRcppParallelRcppParallel 6.2.0
  2. 17d agoRcppParallelRcppParallel 6.1.1 fixes cmake discovery on macOS
  3. 17d agoRcppParallelRcppParallel 6.1.0 adds fork detection, enables TBB on musl
  4. 21d agoRcppParallelRcppParallel 6.0.0 bundles oneTBB 2022 and breaks the ABI
  5. 5y agorappdirsRevert accidental vectorisation from 0.3.2
  6. 5y agorappdirsRespect the R_USER_*_DIR environment variables
  7. 10y agorappdirsrappdirs 0.3.1
  8. 11y agorappdirsFirst CRAN release

Frequently asked questions

What is the difference between rappdirs and RcppParallel?

They serve adjacent needs but don't currently overlap on shipped themes. RcppParallel is currently shipping more aggressively (velocity 6.3 vs 0.0), with 1 editorial sparks in the last 30 days against 0. See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is rappdirs better than RcppParallel?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. RcppParallel is currently shipping more aggressively (velocity 6.3 vs 0.0), with 1 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other DevOps products to evaluate alongside.

What are the best alternatives to rappdirs?

Top rappdirs alternatives in DevOps are ranked by recent ship velocity. Browse the "rappdirs alternatives" section above for the current picks, or visit /alternatives/rappdirs for the full list with editorial commentary on each.

What are the best alternatives to RcppParallel?

Top RcppParallel alternatives in DevOps are ranked by recent ship velocity. Browse the "RcppParallel alternatives" section above for the current picks, or visit /alternatives/rcppparallel for the full list with editorial commentary on each.