Bug fixes and a request hot-path performance improvement. No API changes.
⚠️ Notable behavior change
prioRequestsProcessingnow correctly defaults totrueeven when you pass a partial config (e.g.zero({ router }),zero({ errorHandler })). Previously the documented default only applied to the zero-argument callzero(), and any config object silently disabled it. On standardhttp/httpsservers this means requests are now dispatched viasetImmediateas documented. SetprioRequestsProcessing: falseexplicitly to opt out. (#52)
Bug fixes
- Cross-request
req.paramsleak: route matches served from the LRU cache shared a singleparamsobject across all requests to the same method+path. A middleware mutatingreq.paramscould bleed state into later requests.req.paramsis now shallow-copied per request. (#52)
Performance
- ~36% faster query-string parsing on the request hot path: the array-notation regex now runs only when
[]=is present, and the prototype-pollution segment check skips its per-parameter allocation for normal keys. Behavior is identical, including__proto__/prototype/constructorfiltering. (#53)
Internal
- Landing page modernized; added regression and query-parser tests (suite: 71 passing, query parser at 100% line coverage).
- Removed the TRON donate address from the README Support section. (#54)
Full changelog: v5.0.0...v5.0.1