dowhy
DoWhy adds one estimation method a year and keeps its identification edge.
A side-by-side editorial comparison of ggplot2 and iris — release velocity, themes, recent moves, and the top alternatives to consider.
ggplot2 swapped its object system out from under a decade of downstream code
The 4.0.0 release replaced ggplot2's S3 internals with S7 and made every geom's defaults settable from the theme, both breaking changes. The three releases since have been hotfixes cleaning up the fallout - regressions in geom_area(), position_stack() and the scale and guide systems - plus rlang interoperability repairs. The one genuinely new feature in that window is a quantile.type argument on boxplots.
Iris ships steadily on a two-a-year cadence, but its feed publishes only pointers.
Iris tags a release candidate roughly every four to five months — 3.13 through 3.16 over the past year — and the cadence is the only thing the feed actually reports. Every entry is the same seven-line template: a line saying this is a release candidate, conda-forge and PyPI install commands, and a link to a 'What's New' page held elsewhere. No release notes reach the feed at all.
The 4.0.0 release replaced ggplot2's S3 internals with S7 and made every geom's defaults settable from the theme, both breaking changes. The three releases since have been hotfixes cleaning up the fallout - regressions in geom_area(), position_stack() and the scale and guide systems - plus rlang interoperability repairs. The one genuinely new feature in that window is a quantile.type argument on boxplots.
This is the tail of a long-telegraphed migration: 3.5.2 existed largely to give downstream packages the is_*() predicates and accessor functions they would need before 4.0 landed. With theme(geom) and from_theme(), styling is consolidating into the theme rather than being repeated per layer, which is the direction the extension ecosystem now has to follow.
Expect further 4.0.x patches as S7-related regressions surface in extension packages, and more of the per-geom default surface to migrate into element_geom(). The entries give no indication of a 4.1 feature line yet.
Iris tags a release candidate roughly every four to five months — 3.13 through 3.16 over the past year — and the cadence is the only thing the feed actually reports. Every entry is the same seven-line template: a line saying this is a release candidate, conda-forge and PyPI install commands, and a link to a 'What's New' page held elsewhere. No release notes reach the feed at all.
The version numbers say a mature Met Office library is being maintained on a predictable schedule; nothing in the published entries says what is being maintained. Until the project puts release content in the tag body, its public trail will read as cadence without substance, and readers have to leave the feed to learn anything. The pattern has been identical across four consecutive releases, so it is a deliberate publishing choice rather than an oversight.
Expect v3.17.0rc0 around late 2026 on the same schedule, carrying the same boilerplate — the notes will again live on the documentation site rather than in the release entry.
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 ggplot2 or iris.
DoWhy adds one estimation method a year and keeps its identification edge.
OpenHouse is hardening the seams where table policies and jobs quietly fail.
silx 3.0 moved its default Qt binding to PySide6 — a migration for everyone embedding it.
statsmodels ships only what the ecosystem breaks — six releases, no new statistics.
StatsBase.jl is in caretaker mode — correctness fixes in, dependency bumps out.
Shiny made reactive apps observable, then gave them a way to tear themselves down
See all ggplot2 alternatives → · See all iris alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. iris 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. iris 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 ggplot2 alternatives in Analytics are ranked by recent ship velocity. Browse the "ggplot2 alternatives" section above for the current picks, or visit /alternatives/ggplot2 for the full list with editorial commentary on each.
Top iris alternatives in Analytics are ranked by recent ship velocity. Browse the "iris alternatives" section above for the current picks, or visit /alternatives/scitools-iris for the full list with editorial commentary on each.