Volatility
Volatility 3 caught up with Volatility 2, then started reorganising itself.
A side-by-side editorial comparison of ZoneMinder and werf — release velocity, themes, recent moves, and the top alternatives to consider.
ZoneMinder 1.38 finally split capturing from analysing — and added roles to a system that had none.
ZoneMinder runs two lines in parallel. The 1.38 series, opened in February, brought role-based access control, WebRTC, Go2RTC and RTSP2Web streaming with hardware acceleration, a redesigned monitor model splitting Capturing, Analysing and Recording into separate settings, ONVIF events, MQTT and event tagging. The legacy 1.36 branch is still receiving fixes, including a stored SQL injection through event name and cause fields. The 1.38.1 release replaced four vendor-specific ONVIF implementations with a single control module.
Three release channels at once as werf 3 takes shape beside a still-shipping 2.75.
werf publishes into parallel channels simultaneously — v2.75.3 tagged beta, ea and stable landed the same minute as v2.75.4 for alpha, while the v3 line runs separately through 3.0.2, a 3.0.0 alpha and a 3.1.0 dev build. The 2.x entries are corrective: buildah pull retries and serialisation, a stapel service script made executable regardless of umask, host cleanup no longer wiping other werf versions' git cache. The v3 entries carry the actual features.
ZoneMinder runs two lines in parallel. The 1.38 series, opened in February, brought role-based access control, WebRTC, Go2RTC and RTSP2Web streaming with hardware acceleration, a redesigned monitor model splitting Capturing, Analysing and Recording into separate settings, ONVIF events, MQTT and event tagging. The legacy 1.36 branch is still receiving fixes, including a stored SQL injection through event name and cause fields. The 1.38.1 release replaced four vendor-specific ONVIF implementations with a single control module.
The project is consolidating a decade of accumulated special cases: four ONVIF implementations become one, monitor function modes become independent toggles, and streaming moves onto standard components rather than bespoke paths. Meanwhile 1.36 keeps being patched for security and build compatibility, which means a substantial install base has not moved. Release engineering itself is visibly strained — 1.38.2 was abandoned mid-flight over a Debian packaging conflict.
Expect 1.38 patch releases to keep folding in security and memory-safety fixes while the 1.36 branch receives only vulnerability backports until it is retired. Whether the new streaming stack becomes the default rather than an option is not settled by these entries.
werf publishes into parallel channels simultaneously — v2.75.3 tagged beta, ea and stable landed the same minute as v2.75.4 for alpha, while the v3 line runs separately through 3.0.2, a 3.0.0 alpha and a 3.1.0 dev build. The 2.x entries are corrective: buildah pull retries and serialisation, a stapel service script made executable regardless of umask, host cleanup no longer wiping other werf versions' git cache. The v3 entries carry the actual features.
The v3 work is about making builds predictable and inspectable: embedded kubeconform schemas, a per-project meta-repo safeguard with a migration path, additional patches files with the defaults disableable, and repo-built scratch images made readable by dive. Meanwhile v3 alphas are restoring flags that v3 had dropped, which suggests the major is being trimmed and then walked back based on review. Dockerfile fidelity — COPY --parents, COPY/ADD --exclude in staged builds — is a recurring thread across both lines.
Expect the 2.75 line to keep taking build-backend fixes while v3 stabilises, with more v2 flags restored in v3 alphas as review findings land before the major reaches a stable channel.
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 ZoneMinder or werf.
Volatility 3 caught up with Volatility 2, then started reorganising itself.
A small LDAP server that grew OpenTelemetry tracing, embedded plugins and RISC-V builds.
OctoPrint 2.0 turns serial into one connector among several, and breaks plugins doing it.
Patch tags land monthly with release notes that itemize nothing.
A self-hosted PaaS spending its releases on secrets, injection fixes and plan limits.
One release a year, each one a filesystem or networking rewrite you must plan for.
See all ZoneMinder alternatives → · See all werf alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. werf 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. werf 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 ZoneMinder alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "ZoneMinder alternatives" section above for the current picks, or visit /alternatives/zoneminder for the full list with editorial commentary on each.
Top werf alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "werf alternatives" section above for the current picks, or visit /alternatives/werf for the full list with editorial commentary on each.