From: Justin Wind Date: Sat, 26 Aug 2023 20:55:15 +0000 (-0700) Subject: update docs X-Git-Tag: v2.0.0^2~1 X-Git-Url: https://git.squeep.com/?a=commitdiff_plain;h=d0652d97adc258c72bfa676abced33eb57dd0a2b;p=squeep-api-dingus update docs --- diff --git a/CHANGELOG.md b/CHANGELOG.md index 7585cff..5e82304 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,13 @@ Releases and notable changes to this project are documented here. ## [Unreleased] +## [v2.0.0] - TBD + +- HEAD requests are now handled automatically by default, if not otherwise specifically registered, on a route with a GET handler +- trailing slashes on a request url now default to being ignored when matching routes - removed deprecated functions +- minor refactors +- updated devDependencies ## [v1.2.10] - 2023-07-20 @@ -93,7 +99,8 @@ Releases and notable changes to this project are documented here. --- -[Unreleased]: https://git.squeep.com/?p=squeep-api-dingus;a=commitdiff;h=HEAD;hp=v1.2.10 +[Unreleased]: https://git.squeep.com/?p=squeep-api-dingus;a=commitdiff;h=HEAD;hp=v2.0.0 +[v2.0.0]: https://git.squeep.com/?p=squeep-api-dingus;a=commitdiff;h=v2.0.0;hp=v1.2.10 [v1.2.10]: https://git.squeep.com/?p=squeep-api-dingus;a=commitdiff;h=v1.2.10;hp=v1.2.9 [v1.2.9]: https://git.squeep.com/?p=squeep-api-dingus;a=commitdiff;h=v1.2.9;hp=v1.2.8 [v1.2.8]: https://git.squeep.com/?p=squeep-api-dingus;a=commitdiff;h=v1.2.8;hp=v1.2.7 diff --git a/README.md b/README.md index 7056184..e4c153c 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ This is not drop-in compatible with the industry standards, and is in no way int The primary design goals are: - self-contained: Uses as few external dependencies as are feasible. -- not-infinitely-extensible: The projects it gets used in drive the feature set. +- not-infinitely-extensible: The projects it gets used in drive the feature set, so some expected functionality may be surprisingly missing. - learning from mistakes made along the way: This was partly created as a means to gain a better understanding of the existing web framework ecosystem by fussing with all the involved fiddly bits, a priori, from the bottom up. ## Getting Started @@ -16,11 +16,11 @@ The primary design goals are: Construct it with a console-level-compatible logger object capable of doing something meaningful with calls like `logger[level](scopeString, messageString, dataObject)`. Within the server request handler: -- `dispatch(req, res)` makes things go. +- `async dispatch(req, res)` makes things go. Within the application implementation: - `on(method, urlPath, handler)` declares a thing to do when a request matches. -- `preHandler(req, res, ctx)` is called on every request before the handler function, by default adding some request information to the context. +- `async preHandler(req, res, ctx)` is called on every request before the handler function, by default adding some request information to the context. Within your handlers: - parameters from the route and query, along with other metadata, are set in each context. @@ -33,5 +33,9 @@ Negotiated content types can be extended by overriding: - `renderError(contentType, err)` for outgoing types. Some handler functions are provided: -- `handlerGetStaticFile(req, res, ctx, file)` will return a file from a configured directory, and also supports including CERN-style header metadata. It will also serve pre-encoded variations (e.g `.gz` or `.br`) if available and requested. -- `handlerRedirect(req, res, ctx, newPath, statusCode)` will return a redirect response. +- `async handlerGetStaticFile(req, res, ctx, file)` will return a file from a configured directory, and also supports including CERN-style header metadata. It will also serve pre-encoded variations (e.g. `.gz` or `.br`) if available and requested. +- `async handlerRedirect(req, res, ctx, newPath, statusCode)` will return a redirect response. + +## Performance + +While not a specifically-focused target, performance falls roughly midway between [koa](https://koajs.com/) and [fastify](https://fastify.dev/).