Releases: kartikk221/hyper-express
Releases · kartikk221/hyper-express
6.14.1
What's Changed
- Fixed
Router
types bug due to conflictingUserRouteHandler
andMiddlewareHandler
spreadable arguments.
Full Changelog: 6.14.0...6.14.1
6.14.0
What's Changed
- Added support for callback on the
Server.listen()
method for improved Express.js compatibility. - Implemented
Router.route(pattern)
method which returns a chainableRouter
instance for binding multiple method routes on the same pattern easier.- Example:
Router.route('/api/v1').get(apiV1GetHandler).post(apiV1PostHandler)
- Example:
- Fixed bug with binding an
any
orall
wildcard route on the*
pattern which would lead to an incorrect duplicate route exception thrown when a not found handler was also defined. - Improved JSDoc and TypeScript Types.
Full Changelog: 6.13.0...6.14.0
6.13.0
What's Changed
- Added a default not found handler which sends an HTTP 404 response with no body to prevent browsers from showing ERR_EMPTY_RESPONSE due to unhandled requests.
- Optimized
path_parameters
to be lazy initialized. - Optimized
Response.send()
execution flow to lazy execute body cleanup functions depending on request state. - Updates
uWebsockets.js
tov20.34.0
.
Full Changelog: 6.12.0...6.13.0
6.12.0
What's Changed
- Optimized
Request
/Response
constructor intialization cost by reducing arguments and inlining property assignments. - Fixed
Response
streaming bug where certain chunks get incorrectly retried randomly. - Migrated all
#
prefixed private properties to_
prefixed implicit private properties onRequest
/Response
for faster access. - Improved Types & Comments.
Full Changelog: 6.11.0...6.12.0
6.11.0
What's Changed
- Implemented
Server.options.max_body_buffer
property which allows for controlling of the server'shighWaterMark
behavior for pre-buffering incoming body data until consumed. - Optimized various object initializations in Request lifecycle.
- Updated Docs and Types.
Full Changelog: 6.10.0...6.11.0
6.10.0
What's Changed
- Re-implemented the
Request
body parsing logic to now useUint8Array
and various optimizations for improved performance. - Added
Request
event calledreceived
which can be used to determine when a request body has flushed and a response can be gracefully sent for more intricate implementations. - Updated Docs and Types.
Full Changelog: 6.9.0...6.10.0
6.9.0
What's Changed
- Updated to uWebsockets.js v20.33.0 which results in support for Node.js 16, 18, 20 and 21.
Full Changelog: 6.8.7...6.9.0
6.8.7
What's Changed
- Optimized
Request
constructor by re-using cached paths for non wildcard routes instead of reading from uWebsockets.js - Improved types and added tests
Full Changelog: 6.8.6...6.8.7
6.8.6
What's Changed
- Optimized
Response.header()
method to now store each header value as a string on the first call and only allocate an Array when writing multiple headers of the same name. - Updated
uWebsockets.js
tov20.32.0
Full Changelog: 6.8.5...6.8.6
6.8.5
What's Changed
- Re-implemented
Response.drain()
to now only provide events to the latest assigned handler at any given time. - Added support for object based chunk arguments in
Response._write()
andResponse._writev()
implementations which power streaming.
Full Changelog: 6.8.4...6.8.5