rnaturalearth
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
A side-by-side editorial comparison of dtplyr and mlr3tuning — release velocity, themes, recent moves, and the top alternatives to consider.
dtplyr stopped hijacking data.table objects and became an opt-in translator
dtplyr converts dplyr and tidyr code into data.table syntax, and 1.3.0 redrew its boundary: verbs no longer dispatch to dtplyr translations just because dtplyr is loaded, so lazy_dt() has to be called explicitly. Since then the work has been translation coverage — reframe(), case_match(), consecutive_id() — plus a long tail of correctness fixes in grouping and .by.
mlr3tuning is rebuilding its async machinery under a stable public surface
mlr3tuning provides hyperparameter optimization for the mlr3 ecosystem, and its recent history is dominated by the asynchronous tuning path: archive freezing, callback stages around queue evaluation, and version-locked compatibility with the rush backend. Releases pair a small feature with several fixes and an explicit compatibility line naming the mlr3 or rush version they track. The most recent release drops all workarounds for older rush versions, which suggests that dependency has stabilized enough to require rather than accommodate.
dtplyr converts dplyr and tidyr code into data.table syntax, and 1.3.0 redrew its boundary: verbs no longer dispatch to dtplyr translations just because dtplyr is loaded, so lazy_dt() has to be called explicitly. Since then the work has been translation coverage — reframe(), case_match(), consecutive_id() — plus a long tail of correctness fixes in grouping and .by.
The package is trailing dplyr's own feature releases rather than leading them, adding each new verb once it settles upstream. Performance work is targeted at specific verbs where data.table has a faster primitive: setorder() for arrange(), reference drops for select(), rleid() for consecutive_id(). Release cadence has thinned considerably since 2023.
Expect further one-for-one translations as dplyr adds verbs, and continued fixes around .by and non-standard column names; the entries show no sign of a broader redesign.
mlr3tuning provides hyperparameter optimization for the mlr3 ecosystem, and its recent history is dominated by the asynchronous tuning path: archive freezing, callback stages around queue evaluation, and version-locked compatibility with the rush backend. Releases pair a small feature with several fixes and an explicit compatibility line naming the mlr3 or rush version they track. The most recent release drops all workarounds for older rush versions, which suggests that dependency has stabilized enough to require rather than accommodate.
Two things are being tidied at once. The async archive is converging on a consistent data.table representation across batch and async variants, so results are shaped the same regardless of how tuning ran. Separately, the package is becoming a better ecosystem citizen — unioning tuner properties on load instead of overwriting them, removing its callbacks on unload, and raising informative errors from AutoTuner accessors on an untrained model. Both are the marks of a package used as a dependency more than as a destination.
With rush pinned to 1.2.0 and the compatibility shims gone, the next release is likely to expose more of the async path through callbacks rather than change the tuning interface.
Other Analytics 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 dtplyr or mlr3tuning.
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
writexl spent nine years refusing to do formatting, then shipped all of it in 2.0.0.
rgbif is steadily pushing users off paged searching and onto real downloads.
rstanarm is community-maintained now, tracking Stan and lme4 rather than adding models.
taxa started a ground-up rewrite in 2021 and has published almost nothing since.
rotl's whole release history is keeping name matching honest against a moving taxonomy.
See all dtplyr alternatives → · See all mlr3tuning alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. mlr3tuning is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 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.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. mlr3tuning is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.
Top dtplyr alternatives in Analytics are ranked by recent ship velocity. Browse the "dtplyr alternatives" section above for the current picks, or visit /alternatives/dtplyr for the full list with editorial commentary on each.
Top mlr3tuning alternatives in Analytics are ranked by recent ship velocity. Browse the "mlr3tuning alternatives" section above for the current picks, or visit /alternatives/mlr3tuning for the full list with editorial commentary on each.