tidytlg
A tables-listings-graphs package that reached CRAN and then went quiet.
A side-by-side editorial comparison of simtrial and webmockr — release velocity, themes, recent moves, and the top alternatives to consider.
A fixed-design trial simulator grew a pluggable test framework, then spent a year proving the numbers
simtrial simulates time-to-event clinical trials and applies the tests used to analyse them — logrank, weighted logrank, MaxCombo, RMST, milestone. The 0.4.0 release turned it from a fixed-sample simulator into a group sequential one and standardised every test behind a common output contract, and the releases since have been about making that machinery correct and fast enough to run at scale. Version 1.0.0 arrived in June 2025 with the API settled and three vignettes explaining both the one-call and build-it-yourself paths.
The stubbing library added httr2 support, then spent a year cutting itself free of everything else
webmockr intercepts HTTP requests in R tests and returns stubbed responses, and since 1.0.0 it covers all three clients that matter — httr, httr2 and crul. The releases through 2025 have been about shedding dependencies: internal R6 classes unexported in 2.1.0, crul demoted from Imports to Suggests in the same release, and the mutual dependency with vcr severed in 2.2.0. The package now installs and runs without pulling in the rest of the rOpenSci HTTP stack.
simtrial simulates time-to-event clinical trials and applies the tests used to analyse them — logrank, weighted logrank, MaxCombo, RMST, milestone. The 0.4.0 release turned it from a fixed-sample simulator into a group sequential one and standardised every test behind a common output contract, and the releases since have been about making that machinery correct and fast enough to run at scale. Version 1.0.0 arrived in June 2025 with the API settled and three vignettes explaining both the one-call and build-it-yourself paths.
Post-1.0 the work is almost entirely statistical correctness and speed, and it is concentrated in sim_gs_n(): one-sided efficacy bounds, stratified targeted-event cut dates, a helper that derives cuttings straight from the design object. Performance moves in one direction throughout — dplyr replaced by data.table, foreach combination replaced by manual assembly, parallelisation added to sim_fixed_n() — because simulation-based operating characteristics are only useful if you can afford enough replications.
The recent fixes cluster on stratified and group sequential paths, so the next release most likely continues there rather than adding a new test type. The cut_from_design() helper suggests tighter coupling to gsDesign2 design objects is the direction of travel.
webmockr intercepts HTTP requests in R tests and returns stubbed responses, and since 1.0.0 it covers all three clients that matter — httr, httr2 and crul. The releases through 2025 have been about shedding dependencies: internal R6 classes unexported in 2.1.0, crul demoted from Imports to Suggests in the same release, and the mutual dependency with vcr severed in 2.2.0. The package now installs and runs without pulling in the rest of the rOpenSci HTTP stack.
Two arcs run in sequence. The first is coverage — multiple queued responses in 0.7.0, basic auth mocking, async through crul, then httr2 — building out what can be stubbed. The second, starting with 2.0.0, is correctness and independence: stubs are now deleted if an error occurs mid-construction rather than lingering half-built, partial matching arrives for bodies and queries, and the dependency graph is pruned release by release. The 2.2.0 split from vcr landed within a minute of crul's release taking mocking control into its own clients.
RequestPattern is documented as still exported in 2.1.0 but slated for removal, so the next major release is where that lands. Expect continued dependency pruning rather than new client support — the three clients that exist are already covered.
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 simtrial or webmockr.
A tables-listings-graphs package that reached CRAN and then went quiet.
Tplyr made clinical summary tables explain where every number came from.
Clinical listings that keep inheriting their hardest problem — pagination — from the layer below.
A cache-directory helper that has shipped nothing but CRAN-triggered patches for seven years.
gigs redesigned its whole conversion API for rOpenSci, then spent three releases getting the docs to build.
A weather-data client that keeps rewriting its HTTP layer while slowly tightening its API.
See all simtrial alternatives → · See all webmockr alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. simtrial and webmockr are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). 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. simtrial and webmockr are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.
Top simtrial alternatives in Analytics are ranked by recent ship velocity. Browse the "simtrial alternatives" section above for the current picks, or visit /alternatives/simtrial for the full list with editorial commentary on each.
Top webmockr alternatives in Analytics are ranked by recent ship velocity. Browse the "webmockr alternatives" section above for the current picks, or visit /alternatives/webmockr for the full list with editorial commentary on each.