Hono
Ultrafast web framework for the edge
Hono's news has moved from features to hardening — the 4.12 line is patching trust boundaries.
◆Recent moves
- 7d ago
Security fixes: SSR memo() cross-user leak, CORS ReDoS
Two advisories land at once: hono/jsx memo() reused a retained SSR render across requests when props compared equal, so a component reading request-scoped context could serve another user's HTML including CSRF tokens, and hono/cors carried a whitespace-tolerant regex vulnerable to ReDoS. The clearest evidence yet that Hono's hardening phase is about request isolation.
View source ↗ - 10d ago
Cookie parsing relaxed, undici dropped for global fetch
Relaxed cookie name validation on parse, a useSyncExternalStore subscription fix in JSX, and undici removed in favour of global fetch. Routine upkeep consistent with the settled-surface phase.
View source ↗ - 17d ago
Prototype-pollution hardening in query, header and param parsing
Query, header and param parsing move to Object.create(null), and secure-headers keeps CSP callbacks scoped to their own header. Alongside AWS Lambda authorizer types and an SSE fix, this is the hardening trajectory showing up weeks before the 4.12.34 advisories made it explicit.
View source ↗ - 22d ago
Multipart boundary and SSE retry-field corrections
A multipart boundary mismatch in cloneRawRequest, cached formData reuse in parseBody, and SSE emitting the retry field when it is zero. Small correctness repairs in the HTTP primitives layer.
View source ↗ - 28d ago
Cache-Control dedup and 206 compression fixes
Cache-Control directives deduplicated case-insensitively, 206 Partial Content responses no longer compressed, and a client param-matching fix. Middleware-level corrections with no change in capability.
View source ↗ - 1mo ago
Lambda@Edge base64 and content-encoding handling fixes
Lambda@Edge now base64-encodes content-encoded bodies and resolves handlers from the callback value, with any non-identity content-encoding treated as binary. Adapter maintenance, which is where most of this release line's volume lives.
View source ↗