lintr
lintr makes the native pipe the default rule and clears out a decade of deprecations
A side-by-side editorial comparison of bench and Dragonfly — release velocity, themes, recent moves, and the top alternatives to consider.
bench has settled into slow, careful upkeep of R's benchmarking workhorse.
bench provides high-precision timing and memory profiling for R expressions, and is the measurement tool much of the tidyverse reaches for. Releases arrive roughly yearly and are dominated by small API corrections, CRAN compliance work, and keeping pace with tidyverse minimum-R requirements.
Dragonfly is spending its releases on correctness debt, not features.
The last two months are almost entirely correctness work: a pub/sub ordering bug that silently discarded queued messages on unsubscribe, a multi-key PFCOUNT that read sixteen wrong registers, an uninitialized pointer in the sparse HyperLogLog promote path, and now cluster FLUSHSLOTS that was not journaled inside its own flush transaction. The one structural move is the resync of the forked hyperloglog.c against valkey upstream, which cut divergence from 2,139 lines to 767 and pulled in a CVE fix plus AVX2 and NEON merge kernels. New user-facing options are rare; the list compression tuning flags are the exception.
bench provides high-precision timing and memory profiling for R expressions, and is the measurement tool much of the tidyverse reaches for. Releases arrive roughly yearly and are dominated by small API corrections, CRAN compliance work, and keeping pace with tidyverse minimum-R requirements.
The measurement surface has been effectively frozen since 1.1.0 added process-level memory tracking. Everything since trims rough edges — quieter progress output, consistent .grid handling, modern ggplot2 internals — rather than extending what the package can measure.
Expect continued maintenance releases driven by CRAN checks and ggplot2 or tidyverse deprecations, not new measurement capabilities.
The last two months are almost entirely correctness work: a pub/sub ordering bug that silently discarded queued messages on unsubscribe, a multi-key PFCOUNT that read sixteen wrong registers, an uninitialized pointer in the sparse HyperLogLog promote path, and now cluster FLUSHSLOTS that was not journaled inside its own flush transaction. The one structural move is the resync of the forked hyperloglog.c against valkey upstream, which cut divergence from 2,139 lines to 767 and pulled in a CVE fix plus AVX2 and NEON merge kernels. New user-facing options are rare; the list compression tuning flags are the exception.
Two threads run in parallel. One reduces the cost of carrying a Redis fork by re-syncing individual files against valkey and leaving provenance notes so the next sync is cheap. The other hardens the V2 IO loop while the V1 path still takes the fixes — several commits explicitly defer the V2 half of a fix to a later change, so the two loops are not at parity. Cluster correctness around slot migration and journaling is the newest front.
The deferred V2 IO-loop fixes are the obvious next commits, and more forked Redis files are likely to get the same upstream resync treatment now that the pattern and its accounting are established.
Other Infra & APIs 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 bench or Dragonfly.
lintr makes the native pipe the default rule and clears out a decade of deprecations
covr's coverage tooling has been stable to the point of dormancy since 2022
cli refines terminal output one formatting detail at a time.
roxygen2 8.0 cut stringi out of the entire devtools dependency tree.
pak's roadmap is written by enterprise R deployments and Posit Package Manager.
renv 1.2 made installs parallel, its biggest performance change in years.
See all bench alternatives → · See all Dragonfly alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. Dragonfly is currently shipping more aggressively (velocity 5.0 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. Dragonfly is currently shipping more aggressively (velocity 5.0 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 Infra & APIs products to evaluate alongside.
Top bench alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "bench alternatives" section above for the current picks, or visit /alternatives/bench-r for the full list with editorial commentary on each.
Top Dragonfly alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "Dragonfly alternatives" section above for the current picks, or visit /alternatives/dragonfly for the full list with editorial commentary on each.