tidytlg
A tables-listings-graphs package that reached CRAN and then went quiet.
A side-by-side editorial comparison of webchem and webmockr — release velocity, themes, recent moves, and the top alternatives to consider.
Adding chemical databases with one hand while public ones close programmatic access with the other.
webchem is the R interface to public chemical data — retrieving identifiers, properties and structures across roughly a dozen web services. Its release history reads as a running account of which of those services still allow automated access. Version 1.3.0 removed two functions outright because their sources withdrew: ChemIDplus was retired by the NLM, and PAN stopped supporting programmatic access. Version 1.3.1 continues the pattern, updating URLs that stopped working and noting that ChemSpider InChIKey validation now requires an API key like the rest of that provider's endpoints.
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.
webchem is the R interface to public chemical data — retrieving identifiers, properties and structures across roughly a dozen web services. Its release history reads as a running account of which of those services still allow automated access. Version 1.3.0 removed two functions outright because their sources withdrew: ChemIDplus was retired by the NLM, and PAN stopped supporting programmatic access. Version 1.3.1 continues the pattern, updating URLs that stopped working and noting that ChemSpider InChIKey validation now requires an API key like the rest of that provider's endpoints.
Two opposing forces run through these entries. The package keeps widening its coverage — ChEMBL in 1.2.0, LIPID MAPS and SwissLipids identifiers via Wikidata, structure images, Mol export — while the open, unauthenticated end of the chemical web keeps contracting. The other consistent thread is interface harmonisation: successive releases have converged the get_* functions on the same query and from arguments, tibble returns, and CAS reformatting, so the package feels like one interface rather than a dozen wrappers.
Expect further defunct functions and URL repairs as more providers move behind keys or shut down, alongside occasional additions of sources that remain open. The entries show no sign of a general credential-management layer, which is what a package facing this trend would eventually need.
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 webchem 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 webchem alternatives → · See all webmockr alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
Both compete on the same themes — ropensci — within Analytics. webchem 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. webchem 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 webchem alternatives in Analytics are ranked by recent ship velocity. Browse the "webchem alternatives" section above for the current picks, or visit /alternatives/webchem 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.