← Back to home
Comparison · Analytics

waywiser vs webmockr

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

waywiser vs webmockr: at a glance

Featurewaywiserwebmockr
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesspatial-statistics, model-assessment, tidymodels, cran-compliancehttp-mocking, testing, httr2, ropensci
Last editorial update4h ago1h ago
WebsiteVisit →Visit →

What is waywiser?

Spatial model assessment that spent the last year on cross-platform arithmetic and CRAN rules.

waywiser provides spatial model assessment metrics in a tidymodels idiom — spatial autocorrelation measures, area of applicability, and multi-scale assessment of predictions. The substantive work landed in 0.3.0 through 0.5.0, and the recent releases are consolidation: 0.6.0 made metric functions return NA everywhere they previously returned NaN, because macOS disagreed with every other platform, and taught ww_multi_scale() to handle classification and class probability metrics correctly when given rasters. The three releases since are entirely CRAN policy compliance — no internet downloads during checks, no writing to directories, no syntax that would raise the R version floor.

Read the full waywiser trajectory →

What is webmockr?

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.

Read the full webmockr trajectory →

waywiser vs webmockr: editorial side-by-side

W
waywiser
ANALYTICS
0.0

Spatial model assessment that spent the last year on cross-platform arithmetic and CRAN rules.

◆ Current state

waywiser provides spatial model assessment metrics in a tidymodels idiom — spatial autocorrelation measures, area of applicability, and multi-scale assessment of predictions. The substantive work landed in 0.3.0 through 0.5.0, and the recent releases are consolidation: 0.6.0 made metric functions return NA everywhere they previously returned NaN, because macOS disagreed with every other platform, and taught ww_multi_scale() to handle classification and class probability metrics correctly when given rasters. The three releases since are entirely CRAN policy compliance — no internet downloads during checks, no writing to directories, no syntax that would raise the R version floor.

◆ Where it's heading

The package has reached the point where the interesting bugs are cross-platform and cross-package rather than statistical. Its main function, ww_multi_scale(), has been the focus of nearly every release since 0.4.0, working through units handling, aggregation ordering, raster inputs and metric-type dispatch. The dependency on vip and the tidymodels metric machinery means a share of releases exist only to track breaking changes elsewhere.

◆ Prediction

Expect the next substantive release to continue on ww_multi_scale() edge cases, given that it has absorbed most of the fixes in this window. The recent run of CRAN-compliance patches suggests no feature work is currently in flight.

W
webmockr
ANALYTICS
0.0

The stubbing library added httr2 support, then spent a year cutting itself free of everything else

◆ Current state

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.

◆ Where it's heading

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.

◆ Prediction

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.

Alternatives to waywiser and webmockr

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 waywiser or webmockr.

See all waywiser alternatives → · See all webmockr alternatives →

Recent activity from waywiser and webmockr

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

  1. 1y agowebmockrvcr dependency severed
  2. 1y agowebmockrInternal classes unexported; crul becomes an optional dependency
  3. 1y agowaywiserStops downloading data during CRAN checks
  4. 1y agowaywiserVignettes no longer write to CRAN directories
  5. 1y agowaywiserKeeps the R version floor below 4.1
  6. 1y agowebmockrFailed stub construction cleans up; partial matching extends to bodies and queries
  7. 2y agowebmockrhttr2 joins httr and crul as a supported client
  8. 2y agowaywiserNaN results become NA; raster metrics dispatch correctly
  9. 2y agowaywiserGuards against ignored grid arguments; faster on sf data
  10. 2y agowaywiserFixes wrong observation counts and ignored grid units
  11. 3y agowebmockrQueued responses, body matching and integer status codes fixed
  12. 3y agowebmockrRegex URI matching fixed

Frequently asked questions

What is the difference between waywiser and webmockr?

They serve adjacent needs but don't currently overlap on shipped themes. waywiser 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.

Is waywiser better than webmockr?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. waywiser 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.

What are the best alternatives to waywiser?

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

What are the best alternatives to webmockr?

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.