This release builds ntfy with Go 1.27.3 (security fixes, including rejecting the compromised eMudhra intermediate CAs), and adds monitoring for the experimental cluster: each node's view of its peers, per-peer and database connection pool metrics.
The v2.33.0 release had an issue that made it crash on older CPU architectures. The v2.33.1 release fixes that (see #2092).
Features:
- Show each cluster node's view of its peers with
ntfy cluster status,/v1/cluster/statuson the cluster listener, and per-peer metrics, so a link that only works in one direction is visible (experimental clustering, see cluster status) - Export PostgreSQL connection pool metrics (
ntfy_db_pool_*: connections in use, and queries that waited for a free connection, per pool), to sizepool_max_conns(see PostgreSQL)
Security:
- Build with Go 1.27.3, which includes the security fixes of Go 1.27.2 (
crypto/tls,net/http,html/templateand others) and 1.27.3 (crypto/x509: certificate chains through the compromised eMudhra intermediate CAs are rejected) - Reject phone number verification unless Twilio confirms the code as approved, instead of accepting any successful response
- Ignore duplicate topics in a subscription and limit a subscription to 150 topics, so a single request cannot replay the same topic's cache over and over
Bug fixes + maintenance:
- Count published messages from every cluster node: each node adds its own publishes to the stored total instead of the leader overwriting it with its own count (experimental clustering)
- Fix "Illegal instruction" crash of the amd64 binaries on CPUs without x86-64-v3 (AVX2/BMI2), by building releases on Ubuntu 24.04 again (#2092, thanks to @frank-bg for reporting)