feat: emit diagnostics_channel events upon routing request#5252
feat: emit diagnostics_channel events upon routing request#5252mcollina merged 3 commits intofastify:mainfrom
Conversation
|
/cc @Qard |
Qard
left a comment
There was a problem hiding this comment.
Left a few suggestions. Basically try/finally to more reliably ensure end events happen. Should probably also just put a catch in there too to be sure any unexpected errors get reported too.
lib/handleRequest.js
Outdated
|
|
||
| reply[kReplyIsError] = true | ||
| reply.send(err) | ||
| channels.end.publish(store) |
There was a problem hiding this comment.
Rather than putting the end in all the branches you could use try/finally. That also ensures the event still fires if something throws.
lib/wrapThenable.js
Outdated
| } | ||
| } | ||
|
|
||
| if (channels) channels.asyncEnd.publish(store) |
mcollina
left a comment
There was a problem hiding this comment.
given dc-polyfill, I think we can land this on main if it does not introduce overhead when disabled.
fastify.js
Outdated
| } catch (e) { | ||
| // This only happens if `diagnostics_channel` isn't available, i.e. earlier | ||
| // versions of Node.js. In that event, we don't care, so ignore the error. | ||
| const dc = require('dc-polyfill') |
There was a problem hiding this comment.
move this to the top of the file
There was a problem hiding this comment.
Also, I'd rather it be named at least diagnostics instead of dc in order to avoid having to lookup what "dc" means.
inside |
|
What about the diagnostics_channel plugin? |
|
Clarifying my last comment. How does this PR relate to https://github.com/fastify/fastify-diagnostics-channel ? Seems like this PR makes the plugin partially redundant? |
|
Definitely overlaps with the plugin, though this is more limited to just producing a trace around a request whereas the plugin gives a bit more control. This might benefit from a few more events to cover the other use cases provided by the plugin. The main benefit I see for this existing rather than just the plugin is that if it lives directly in the library it enables automatic instrumentation tracers to listen without producing side effects while adding the plugin could have user-visible behaviour. There's also probably performance advantages to going direct rather than going through the plugin. |
|
I think instrumentation hooks such as these should be in core. They provide a way for other instrumentations to do things via a specific plugin or wrapping package. If we were trying to add such hooks via some third party library, like dtrace, then my opinion would be different. But the API used in this PR is meant to be a core API. |
@Uzlopak I think you're asking about the removal of the If so, the If anyone is curious please checkout the dc-polyfill docs for more info. Ultimately |
It is a core API. The dc-polyfill API just enables supporting the newer features beyond the limited backporting window of Node.js core. With dc-polyfill we had it tested and working all the way back to Node.js 12. It uses the core API where available though, so it should always be a drop-in replacement for using the core API as if using the current version of Node.js. As for the plugin versus embedding in the library, I much favour embedding in the library as the diagnostics_channel API (and dc-polyfill on top of it) are aimed at very high performance and as close to zero cost as possible when nothing is listening. Abstracting that with a plugin in the middle adds a bunch of unnecessary overhead as fastify then loses the context of what is ignorable as the plugin barrier isn't designed to forward that information. I created diagnostics_channel and it is quite specifically my intent that it be used directly in libraries in this way as it gets us as close to the source as possible feed of diagnostics data, eliminating a ton of instrumentation cost in the process and making gathering instrumentation insights much, much easier in the process. The existing model of monkey-patching everything is highly unreliable and very unapproachable to an average developer to be able to use as a way to gain insight about their applications. I intended for diagnostics_channel to encourage library developers to start thinking about exposing diagnostics data directly and thinking about the performance profile of their code more. |
@mcollina I'm now grabbing the payload within That said I'm not sure if there are expectations on how long |
|
I wonder if we should integrate then the whole diagnostics-channel stuff from the plugin into core. |
lib/reply.js
Outdated
| this[kReplyTrailers] = null | ||
| this[kReplyHasStatusCode] = false | ||
| this[kReplyStartTime] = undefined | ||
| this[kReplyPayload] = undefined |
There was a problem hiding this comment.
Only concern is when the payload is stream.
How can the subscriber safely consume the stream for logging?
The same problem exist when I implement the Trailer feature and it is not resolved until now.
Reference #4373
There was a problem hiding this comment.
I can see so many ways this can end badly long term. Can you avoid storing the payload inside reply?
There was a problem hiding this comment.
The latest commit no longer attaches the payload value to the Reply instance: 325ba54
|
I think you can target main for this. |
Agreed |
4b3a0cb to
1b00702
Compare
lib/handleRequest.js
Outdated
| if (result !== null && typeof result.then === 'function') { | ||
| wrapThenable(result, reply, channels, store) | ||
| } else { | ||
| store.result = result |
There was a problem hiding this comment.
This line becomes redundant as the kReplyOnSend callback sets the value.
This PR is now based on main. Ended up squashing due to conflicts. |
There was a problem hiding this comment.
Good work! I think a few edge cases are missing:
-
reply.callNotFound()// this will execute the not found handler - Fastify error handlers (nested)
- routes with
setImmediate(() => reply.send('hello world)) - async routes with
setImmediate(() => reply.send('hello world)); return reply
The reason why I'm asking is that it will definitely pass through reply.send() multiple times, and both synchronously and asynchronously.
lib/wrapThenable.js
Outdated
| } = require('./symbols') | ||
|
|
||
| function wrapThenable (thenable, reply) { | ||
| function wrapThenable (thenable, reply, channels, store) { |
There was a problem hiding this comment.
I don't think this function should be modified, I would recommend to keep the change between preHandlerCallback and reply.send().
Specifically, I would emit asyncStart and asyncEnd within reply.send(), as there are multiple ways to call that function (synchronous and asynchronous)
|
@mcollina So far it seems that by returning a simple value from a sync request handler that value is used as the response. Or, if a request handler returns a promise, the resolved value from that promise is used as the response. Or, if at any time |
|
Yes. The error flow resets all this for the error handler. |
|
Should this PR also integrate the plugins behaviour? Or should this be a follow up? |
Can you clarify? |
|
@mcollina I think @Uzlopak is asking if I should copy all of the code from the existing |
|
A follow up would be good, this would be massive already after the fixes I mentioned. |
|
@mcollina Just so I know if I'm on the right track, do you think I need to refactor a bunch of Fastify to achieve those changes? |
|
No, but possibly change the approach you have taken with this PR. |
325ba54 to
0ffca42
Compare
|
This can land I think |
c5d68d4 to
a21666d
Compare
|
https://github.com/fastify/fastify/actions/runs/9114429260/job/25058583913?pr=5252#step:5:17959 There is a test timing out. |
|
I'm able to reproduce this locally but only if I run via c8: Notably the individual tests pass but something about c8 hangs indefinitely while using 100% CPU. It appears to be an occurance of this c8 issue. I'm still looking into it. If the However this only happens in this branch not in main. After bisecting Node.js versions I discovered that this hang appears in Node.js v18.19.0 but isn't present in v18.18.2.
globalThis.FinalizationRegistry = function(){};
globalThis.FinalizationRegistry.prototype.register = function(){}; |
a21666d to
0cf6590
Compare
|
Is it only happening on 18? Does it pass on 20+? |
|
Looks like it also happens on the oldest and newest 20, and not the last 16. |
|
Drat! If it were only on 18, we had an easy solution. |
e38ab6c to
33e79ee
Compare
|
Hopefully the problem with the v18 FinalizationRegistry timeouts will be fixed with the upcoming release, the fix has finally been backported. |
33e79ee to
0c30876
Compare
|
I rebased and kicked off the CI jobs again. It appears that fewer are failing: I did some more testing locally: Currently it looks like CI is running the final failing tests against v18.20.2. Hopefully it'll disappear from the cache soon and the PR will turn green? |
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [fastify](https://fastify.dev/) ([source](https://redirect.github.com/fastify/fastify)) | [`^4.28.1` -> `^5.0.0`](https://renovatebot.com/diffs/npm/fastify/4.28.1/5.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>fastify/fastify (fastify)</summary> ### [`v5.0.0`](https://redirect.github.com/fastify/fastify/releases/tag/v5.0.0) [Compare Source](https://redirect.github.com/fastify/fastify/compare/v4.28.1...v5.0.0) #### What's Changed - add missing route shorthands by [@​Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/fastify/fastify/pull/4409](https://redirect.github.com/fastify/fastify/pull/4409) - lib: drop setDefaultRoute and getDefaultRoute methods by [@​RafaelGSS](https://redirect.github.com/RafaelGSS) in [https://github.com/fastify/fastify/pull/4485](https://redirect.github.com/fastify/fastify/pull/4485) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4815](https://redirect.github.com/fastify/fastify/pull/4815) - Next: Disallow `decorate('name', null)` in the types by [@​voxpelli](https://redirect.github.com/voxpelli) in [https://github.com/fastify/fastify/pull/4878](https://redirect.github.com/fastify/fastify/pull/4878) - feat!: Add req.hostname and req.port by [@​aarontravass](https://redirect.github.com/aarontravass) in [https://github.com/fastify/fastify/pull/4766](https://redirect.github.com/fastify/fastify/pull/4766) - Change request id header default value to false by [@​philippviereck](https://redirect.github.com/philippviereck) in [https://github.com/fastify/fastify/pull/4194](https://redirect.github.com/fastify/fastify/pull/4194) - Remove deprecated variadic listen by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/4900](https://redirect.github.com/fastify/fastify/pull/4900) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4894](https://redirect.github.com/fastify/fastify/pull/4894) - fix: requestIdHeader docs by [@​philippviereck](https://redirect.github.com/philippviereck) in [https://github.com/fastify/fastify/pull/4916](https://redirect.github.com/fastify/fastify/pull/4916) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4930](https://redirect.github.com/fastify/fastify/pull/4930) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4941](https://redirect.github.com/fastify/fastify/pull/4941) - types: Remove variadic listen types by [@​Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/fastify/fastify/pull/4966](https://redirect.github.com/fastify/fastify/pull/4966) - fix: remove http version check by [@​beyazit](https://redirect.github.com/beyazit) in [https://github.com/fastify/fastify/pull/4962](https://redirect.github.com/fastify/fastify/pull/4962) - feat: new logger api by [@​aarontravass](https://redirect.github.com/aarontravass) in [https://github.com/fastify/fastify/pull/5020](https://redirect.github.com/fastify/fastify/pull/5020) - fix(plugins): mixing async and callback style now returns an error by [@​giuliowaitforitdavide](https://redirect.github.com/giuliowaitforitdavide) in [https://github.com/fastify/fastify/pull/5141](https://redirect.github.com/fastify/fastify/pull/5141) - feat: align fastify.hasRoute to fmw.hasRoute by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5102](https://redirect.github.com/fastify/fastify/pull/5102) - feat: set useSemicolonDefault default option to false by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5320](https://redirect.github.com/fastify/fastify/pull/5320) - feat: make contentTypeParser's existingParser check more strict by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5329](https://redirect.github.com/fastify/fastify/pull/5329) - feat: loosen content-type checking by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/4450](https://redirect.github.com/fastify/fastify/pull/4450) - feat: rework contentTypeParser methods by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5372](https://redirect.github.com/fastify/fastify/pull/5372) - perf: limit search space for contentType by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5400](https://redirect.github.com/fastify/fastify/pull/5400) - perf: update method matching by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5419](https://redirect.github.com/fastify/fastify/pull/5419) - chore: updated dependencies to latest versions by [@​puskin94](https://redirect.github.com/puskin94) in [https://github.com/fastify/fastify/pull/5422](https://redirect.github.com/fastify/fastify/pull/5422) - chore: merge next into main for v5 release by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5446](https://redirect.github.com/fastify/fastify/pull/5446) - docs(ref/typescript): support Docusaurus v3 by [@​james-kaguru](https://redirect.github.com/james-kaguru) in [https://github.com/fastify/fastify/pull/5450](https://redirect.github.com/fastify/fastify/pull/5450) - chore: remove unused dependency and fix ci by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5454](https://redirect.github.com/fastify/fastify/pull/5454) - feat: (types) add shorthand types for MKCALENDAR and REPORT by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5455](https://redirect.github.com/fastify/fastify/pull/5455) - fix: ci labeler by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5463](https://redirect.github.com/fastify/fastify/pull/5463) - docs(guides/database): correct typo by [@​monish001](https://redirect.github.com/monish001) in [https://github.com/fastify/fastify/pull/5461](https://redirect.github.com/fastify/fastify/pull/5461) - test: add tests for error handling by [@​domdomegg](https://redirect.github.com/domdomegg) in [https://github.com/fastify/fastify/pull/5451](https://redirect.github.com/fastify/fastify/pull/5451) - docs(reference/routes): fix example on constraints by [@​Cadienvan](https://redirect.github.com/Cadienvan) in [https://github.com/fastify/fastify/pull/5468](https://redirect.github.com/fastify/fastify/pull/5468) - perf: Optimize resolving X-Forwarded-For addresses by [@​dmkng](https://redirect.github.com/dmkng) in [https://github.com/fastify/fastify/pull/5458](https://redirect.github.com/fastify/fastify/pull/5458) - fix: `config` type in RouteShorthandOptions by [@​BrianValente](https://redirect.github.com/BrianValente) in [https://github.com/fastify/fastify/pull/5355](https://redirect.github.com/fastify/fastify/pull/5355) - feat: request and reply decorators can not be a reference type by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5462](https://redirect.github.com/fastify/fastify/pull/5462) - docs: update indentation on type providers section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5474](https://redirect.github.com/fastify/fastify/pull/5474) - feat: log all available addresses if listening host is 0.0.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5476](https://redirect.github.com/fastify/fastify/pull/5476) - chore: remove node 18 from CI by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5481](https://redirect.github.com/fastify/fastify/pull/5481) - feat: writeEarlyHints by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5480](https://redirect.github.com/fastify/fastify/pull/5480) - docs: update indentation and code snippet in the routes section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5482](https://redirect.github.com/fastify/fastify/pull/5482) - refactor: change `reply.redirect()` signature by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5483](https://redirect.github.com/fastify/fastify/pull/5483) - docs: update indentation and code snippet in the type providers section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5485](https://redirect.github.com/fastify/fastify/pull/5485) - feat: emit diagnostics_channel events upon routing request by [@​tlhunter](https://redirect.github.com/tlhunter) in [https://github.com/fastify/fastify/pull/5252](https://redirect.github.com/fastify/fastify/pull/5252) - chore: Bump pnpm/action-setup from 3 to 4 by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5492](https://redirect.github.com/fastify/fastify/pull/5492) - chore: remove unnecessary eslint override by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5493](https://redirect.github.com/fastify/fastify/pull/5493) - docs(ecosystem): Add fastify-kysely plugin by [@​alenap93](https://redirect.github.com/alenap93) in [https://github.com/fastify/fastify/pull/5475](https://redirect.github.com/fastify/fastify/pull/5475) - chore: update tap@19 by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5471](https://redirect.github.com/fastify/fastify/pull/5471) - chore: Remove `reply.getReponseTime()` in [https://github.com/fastify/fastify/pull/5490](https://redirect.github.com/fastify/fastify/pull/5490) - chore: remove unused test by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5496](https://redirect.github.com/fastify/fastify/pull/5496) - chore: readyListener can be async on server.ready() by [@​remidewitte](https://redirect.github.com/remidewitte) in [https://github.com/fastify/fastify/pull/5501](https://redirect.github.com/fastify/fastify/pull/5501) - chore: test deprecation cleanup by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5510](https://redirect.github.com/fastify/fastify/pull/5510) - chore: Migrate to neostandard by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5509](https://redirect.github.com/fastify/fastify/pull/5509) - fix: hasRoute method comparison with case insensitive by [@​SMNBLMRR](https://redirect.github.com/SMNBLMRR) in [https://github.com/fastify/fastify/pull/5508](https://redirect.github.com/fastify/fastify/pull/5508) - feat(types): Introduce SafePromiseLike by [@​rozzilla](https://redirect.github.com/rozzilla) in [https://github.com/fastify/fastify/pull/5506](https://redirect.github.com/fastify/fastify/pull/5506) - fix: Type inferrence with auxilliary hook handlers by [@​aadito123](https://redirect.github.com/aadito123) in [https://github.com/fastify/fastify/pull/5517](https://redirect.github.com/fastify/fastify/pull/5517) - docs: addContentTypeParser with fastify.register by [@​moradebianchetti81](https://redirect.github.com/moradebianchetti81) in [https://github.com/fastify/fastify/pull/5499](https://redirect.github.com/fastify/fastify/pull/5499) - docs: remove navigation for empty content by [@​liuhanqu](https://redirect.github.com/liuhanqu) in [https://github.com/fastify/fastify/pull/5521](https://redirect.github.com/fastify/fastify/pull/5521) - fix: server.listen listener is not cleanup properly by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5522](https://redirect.github.com/fastify/fastify/pull/5522) - feat: type definitions and documentation for separated type provider. by [@​Bram-dc](https://redirect.github.com/Bram-dc) in [https://github.com/fastify/fastify/pull/5427](https://redirect.github.com/fastify/fastify/pull/5427) - chore: support pre and alpha tags by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5528](https://redirect.github.com/fastify/fastify/pull/5528) - chore: Bump the dependencies-major group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5530](https://redirect.github.com/fastify/fastify/pull/5530) - chore: Bump neostandard from 0.7.2 to 0.8.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5531](https://redirect.github.com/fastify/fastify/pull/5531) - fix(v5): update .npmignore by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5537](https://redirect.github.com/fastify/fastify/pull/5537) - test: fix test finished earlier than expected by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5540](https://redirect.github.com/fastify/fastify/pull/5540) - chore: rm < node19 support from secondaryServer.close() by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5542](https://redirect.github.com/fastify/fastify/pull/5542) - chore(sponsor): add valtown by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5543](https://redirect.github.com/fastify/fastify/pull/5543) - chore: Bump the dev-dependencies group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5546](https://redirect.github.com/fastify/fastify/pull/5546) - docs: use `http2` directive in nginx config by [@​LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) in [https://github.com/fastify/fastify/pull/5548](https://redirect.github.com/fastify/fastify/pull/5548) - chore: Bump neostandard from 0.10.0 to 0.11.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5554](https://redirect.github.com/fastify/fastify/pull/5554) - chore: fix lint by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5558](https://redirect.github.com/fastify/fastify/pull/5558) - ci: remove automerge from ci alternative runtimes by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5557](https://redirect.github.com/fastify/fastify/pull/5557) - feat: support different body schema per content type by [@​nflaig](https://redirect.github.com/nflaig) in [https://github.com/fastify/fastify/pull/5545](https://redirect.github.com/fastify/fastify/pull/5545) - chore: remove dc-polyfill by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5560](https://redirect.github.com/fastify/fastify/pull/5560) - fix: res serializer not given reply ([#​5556](https://redirect.github.com/fastify/fastify/issues/5556)) by [@​mch-dsk](https://redirect.github.com/mch-dsk) in [https://github.com/fastify/fastify/pull/5561](https://redirect.github.com/fastify/fastify/pull/5561) - chore: Bump process-warning from 3.0.0 to 4.0.0 in the dependencies-major group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5568](https://redirect.github.com/fastify/fastify/pull/5568) - chore: Bump the dev-dependencies group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5569](https://redirect.github.com/fastify/fastify/pull/5569) - chore: allow ! in PR title by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5571](https://redirect.github.com/fastify/fastify/pull/5571) - docs: add [@​pybot/fastify-autoload](https://redirect.github.com/pybot/fastify-autoload) to comm plugins by [@​kunal097](https://redirect.github.com/kunal097) in [https://github.com/fastify/fastify/pull/5579](https://redirect.github.com/fastify/fastify/pull/5579) - feat: customize http methods by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5567](https://redirect.github.com/fastify/fastify/pull/5567) - refactor(typescript): re-order FastifyReply generic parameters by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5570](https://redirect.github.com/fastify/fastify/pull/5570) - docs: Adding `crudify-mongo` plugin to community list by [@​aaroncadillac](https://redirect.github.com/aaroncadillac) in [https://github.com/fastify/fastify/pull/5581](https://redirect.github.com/fastify/fastify/pull/5581) - docs(reference/typescript): remove type provider from typebox example by [@​jscheffner](https://redirect.github.com/jscheffner) in [https://github.com/fastify/fastify/pull/5576](https://redirect.github.com/fastify/fastify/pull/5576) - refactor!: remove json shorthand by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5586](https://redirect.github.com/fastify/fastify/pull/5586) - chore: remove deprecation 005 by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5589](https://redirect.github.com/fastify/fastify/pull/5589) - fix: nullish host by [@​sourcecodeit](https://redirect.github.com/sourcecodeit) in [https://github.com/fastify/fastify/pull/5590](https://redirect.github.com/fastify/fastify/pull/5590) - chore(sponsor): add handsontable by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5592](https://redirect.github.com/fastify/fastify/pull/5592) - fix: removed warning listener from tests by [@​sourcecodeit](https://redirect.github.com/sourcecodeit) in [https://github.com/fastify/fastify/pull/5598](https://redirect.github.com/fastify/fastify/pull/5598) - fix: test suite import.js emitting errors by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5599](https://redirect.github.com/fastify/fastify/pull/5599) - chore: Bump [@​types/node](https://redirect.github.com/types/node) from 20.14.13 to 22.0.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5600](https://redirect.github.com/fastify/fastify/pull/5600) - docs(reply): standardize import style in examples by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5580](https://redirect.github.com/fastify/fastify/pull/5580) - docs(typescript): update example fastify version by [@​Fdawgs](https://redirect.github.com/Fdawgs) in [https://github.com/fastify/fastify/pull/5602](https://redirect.github.com/fastify/fastify/pull/5602) - refactor: remove FSTDEP007 by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5604](https://redirect.github.com/fastify/fastify/pull/5604) - refactor: remove `FSTDEP008` and `FSTDEP009` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5609](https://redirect.github.com/fastify/fastify/pull/5609) - refactor: remove `FSTDEP010` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5611](https://redirect.github.com/fastify/fastify/pull/5611) - refactor: remove `FSTDEP021` by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5613](https://redirect.github.com/fastify/fastify/pull/5613) - refactor: use `Object.hasOwn` by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5614](https://redirect.github.com/fastify/fastify/pull/5614) - refactor: remove `FSTDEP012`, `FSTDEP015`, `FSTDEP016`, `FSTDEP017`, `FSTDEP018`, `FSTDEP019` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5616](https://redirect.github.com/fastify/fastify/pull/5616) - refactor: remove `FSTDEP013` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5618](https://redirect.github.com/fastify/fastify/pull/5618) - fix: throwing "FST_ERR_DUPLICATED_ROUTE" error instead of raw error by [@​Rantoledo](https://redirect.github.com/Rantoledo) in [https://github.com/fastify/fastify/pull/5621](https://redirect.github.com/fastify/fastify/pull/5621) - chore: Bump [@​sinclair/typebox](https://redirect.github.com/sinclair/typebox) from 0.32.35 to 0.33.4 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5625](https://redirect.github.com/fastify/fastify/pull/5625) - fix: reorder handling of `Response` replies by [@​barbieri](https://redirect.github.com/barbieri) in [https://github.com/fastify/fastify/pull/5612](https://redirect.github.com/fastify/fastify/pull/5612) - ci(.github): use latest node lts version by [@​Fdawgs](https://redirect.github.com/Fdawgs) in [https://github.com/fastify/fastify/pull/5577](https://redirect.github.com/fastify/fastify/pull/5577) - docs: add default value for maxParamLength by [@​busybox11](https://redirect.github.com/busybox11) in [https://github.com/fastify/fastify/pull/5630](https://redirect.github.com/fastify/fastify/pull/5630) - chore: simplify `neostandard` setup by [@​voxpelli](https://redirect.github.com/voxpelli) in [https://github.com/fastify/fastify/pull/5635](https://redirect.github.com/fastify/fastify/pull/5635) - chore: fix sponsor link by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5640](https://redirect.github.com/fastify/fastify/pull/5640) - docs: move RafaelGSS to past collaborators by [@​RafaelGSS](https://redirect.github.com/RafaelGSS) in [https://github.com/fastify/fastify/pull/5645](https://redirect.github.com/fastify/fastify/pull/5645) - docs(type-providers): fix typos by [@​mikesamm](https://redirect.github.com/mikesamm) in [https://github.com/fastify/fastify/pull/5651](https://redirect.github.com/fastify/fastify/pull/5651) - feat: add fastify v4 codemods by [@​arshcodemod](https://redirect.github.com/arshcodemod) in [https://github.com/fastify/fastify/pull/5642](https://redirect.github.com/fastify/fastify/pull/5642) - chore: bump find-my-way to v9 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5652](https://redirect.github.com/fastify/fastify/pull/5652) - chore: bump ajv-compiler to v4.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5653](https://redirect.github.com/fastify/fastify/pull/5653) - chore: Bumped light-my-request to v6.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5655](https://redirect.github.com/fastify/fastify/pull/5655) - chore: Bumped avvio to v9.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5656](https://redirect.github.com/fastify/fastify/pull/5656) - chore: bump fast-json-stringify-compiler to v5.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5660](https://redirect.github.com/fastify/fastify/pull/5660) - docs: add dancastillo to Fastify Plugins team by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5668](https://redirect.github.com/fastify/fastify/pull/5668) - docs: join plugin team by [@​jean-michelet](https://redirect.github.com/jean-michelet) in [https://github.com/fastify/fastify/pull/5677](https://redirect.github.com/fastify/fastify/pull/5677) - chore: list the next deprecation code by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5673](https://redirect.github.com/fastify/fastify/pull/5673) - types: remove nonexistant done parameter from onRegister by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5678](https://redirect.github.com/fastify/fastify/pull/5678) - docs: add v5 guide by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5674](https://redirect.github.com/fastify/fastify/pull/5674) - feat: bind `this` to instance in onclose by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5670](https://redirect.github.com/fastify/fastify/pull/5670) - docs: update v4 codemods by [@​mohab-sameh](https://redirect.github.com/mohab-sameh) in [https://github.com/fastify/fastify/pull/5666](https://redirect.github.com/fastify/fastify/pull/5666) - docs: Add required .js extension to relative ESM imports by [@​masto](https://redirect.github.com/masto) in [https://github.com/fastify/fastify/pull/5685](https://redirect.github.com/fastify/fastify/pull/5685) #### New Contributors - [@​beyazit](https://redirect.github.com/beyazit) made their first contribution in [https://github.com/fastify/fastify/pull/4962](https://redirect.github.com/fastify/fastify/pull/4962) - [@​puskin94](https://redirect.github.com/puskin94) made their first contribution in [https://github.com/fastify/fastify/pull/5422](https://redirect.github.com/fastify/fastify/pull/5422) - [@​james-kaguru](https://redirect.github.com/james-kaguru) made their first contribution in [https://github.com/fastify/fastify/pull/5450](https://redirect.github.com/fastify/fastify/pull/5450) - [@​monish001](https://redirect.github.com/monish001) made their first contribution in [https://github.com/fastify/fastify/pull/5461](https://redirect.github.com/fastify/fastify/pull/5461) - [@​dmkng](https://redirect.github.com/dmkng) made their first contribution in [https://github.com/fastify/fastify/pull/5458](https://redirect.github.com/fastify/fastify/pull/5458) - [@​BrianValente](https://redirect.github.com/BrianValente) made their first contribution in [https://github.com/fastify/fastify/pull/5355](https://redirect.github.com/fastify/fastify/pull/5355) - [@​Cangit](https://redirect.github.com/Cangit) made their first contribution in [https://github.com/fastify/fastify/pull/5493](https://redirect.github.com/fastify/fastify/pull/5493) - [@​alenap93](https://redirect.github.com/alenap93) made their first contribution in [https://github.com/fastify/fastify/pull/5475](https://redirect.github.com/fastify/fastify/pull/5475) - [@​moradebianchetti81](https://redirect.github.com/moradebianchetti81) made their first contribution in [https://github.com/fastify/fastify/pull/5499](https://redirect.github.com/fastify/fastify/pull/5499) - [@​Bram-dc](https://redirect.github.com/Bram-dc) made their first contribution in [https://github.com/fastify/fastify/pull/5427](https://redirect.github.com/fastify/fastify/pull/5427) - [@​LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) made their first contribution in [https://github.com/fastify/fastify/pull/5548](https://redirect.github.com/fastify/fastify/pull/5548) - [@​mch-dsk](https://redirect.github.com/mch-dsk) made their first contribution in [https://github.com/fastify/fastify/pull/5561](https://redirect.github.com/fastify/fastify/pull/5561) - [@​kunal097](https://redirect.github.com/kunal097) made their first contribution in [https://github.com/fastify/fastify/pull/5579](https://redirect.github.com/fastify/fastify/pull/5579) - [@​aaroncadillac](https://redirect.github.com/aaroncadillac) made their first contribution in [https://github.com/fastify/fastify/pull/5581](https://redirect.github.com/fastify/fastify/pull/5581) - [@​jscheffner](https://redirect.github.com/jscheffner) made their first contribution in [https://github.com/fastify/fastify/pull/5576](https://redirect.github.com/fastify/fastify/pull/5576) - [@​sourcecodeit](https://redirect.github.com/sourcecodeit) made their first contribution in [https://github.com/fastify/fastify/pull/5590](https://redirect.github.com/fastify/fastify/pull/5590) - [@​Rantoledo](https://redirect.github.com/Rantoledo) made their first contribution in [https://github.com/fastify/fastify/pull/5621](https://redirect.github.com/fastify/fastify/pull/5621) - [@​barbieri](https://redirect.github.com/barbieri) made their first contribution in [https://github.com/fastify/fastify/pull/5612](https://redirect.github.com/fastify/fastify/pull/5612) - [@​busybox11](https://redirect.github.com/busybox11) made their first contribution in [https://github.com/fastify/fastify/pull/5630](https://redirect.github.com/fastify/fastify/pull/5630) - [@​mikesamm](https://redirect.github.com/mikesamm) made their first contribution in [https://github.com/fastify/fastify/pull/5651](https://redirect.github.com/fastify/fastify/pull/5651) - [@​arshcodemod](https://redirect.github.com/arshcodemod) made their first contribution in [https://github.com/fastify/fastify/pull/5642](https://redirect.github.com/fastify/fastify/pull/5642) - [@​jean-michelet](https://redirect.github.com/jean-michelet) made their first contribution in [https://github.com/fastify/fastify/pull/5677](https://redirect.github.com/fastify/fastify/pull/5677) - [@​mohab-sameh](https://redirect.github.com/mohab-sameh) made their first contribution in [https://github.com/fastify/fastify/pull/5666](https://redirect.github.com/fastify/fastify/pull/5666) - [@​masto](https://redirect.github.com/masto) made their first contribution in [https://github.com/fastify/fastify/pull/5685](https://redirect.github.com/fastify/fastify/pull/5685) **Full Changelog**: fastify/fastify@v4.27.0...v5.0.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/rustymotors/server). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC44MC4wIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6ImRldiIsImxhYmVscyI6W119-->
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [fastify](https://fastify.dev/) ([source](https://redirect.github.com/fastify/fastify)) | [`4.28.1` -> `5.0.0`](https://renovatebot.com/diffs/npm/fastify/4.28.1/5.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>fastify/fastify (fastify)</summary> ### [`v5.0.0`](https://redirect.github.com/fastify/fastify/releases/tag/v5.0.0) [Compare Source](https://redirect.github.com/fastify/fastify/compare/v4.28.1...v5.0.0) #### What's Changed - add missing route shorthands by [@​Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/fastify/fastify/pull/4409](https://redirect.github.com/fastify/fastify/pull/4409) - lib: drop setDefaultRoute and getDefaultRoute methods by [@​RafaelGSS](https://redirect.github.com/RafaelGSS) in [https://github.com/fastify/fastify/pull/4485](https://redirect.github.com/fastify/fastify/pull/4485) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4815](https://redirect.github.com/fastify/fastify/pull/4815) - Next: Disallow `decorate('name', null)` in the types by [@​voxpelli](https://redirect.github.com/voxpelli) in [https://github.com/fastify/fastify/pull/4878](https://redirect.github.com/fastify/fastify/pull/4878) - feat!: Add req.hostname and req.port by [@​aarontravass](https://redirect.github.com/aarontravass) in [https://github.com/fastify/fastify/pull/4766](https://redirect.github.com/fastify/fastify/pull/4766) - Change request id header default value to false by [@​philippviereck](https://redirect.github.com/philippviereck) in [https://github.com/fastify/fastify/pull/4194](https://redirect.github.com/fastify/fastify/pull/4194) - Remove deprecated variadic listen by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/4900](https://redirect.github.com/fastify/fastify/pull/4900) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4894](https://redirect.github.com/fastify/fastify/pull/4894) - fix: requestIdHeader docs by [@​philippviereck](https://redirect.github.com/philippviereck) in [https://github.com/fastify/fastify/pull/4916](https://redirect.github.com/fastify/fastify/pull/4916) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4930](https://redirect.github.com/fastify/fastify/pull/4930) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4941](https://redirect.github.com/fastify/fastify/pull/4941) - types: Remove variadic listen types by [@​Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/fastify/fastify/pull/4966](https://redirect.github.com/fastify/fastify/pull/4966) - fix: remove http version check by [@​beyazit](https://redirect.github.com/beyazit) in [https://github.com/fastify/fastify/pull/4962](https://redirect.github.com/fastify/fastify/pull/4962) - feat: new logger api by [@​aarontravass](https://redirect.github.com/aarontravass) in [https://github.com/fastify/fastify/pull/5020](https://redirect.github.com/fastify/fastify/pull/5020) - fix(plugins): mixing async and callback style now returns an error by [@​giuliowaitforitdavide](https://redirect.github.com/giuliowaitforitdavide) in [https://github.com/fastify/fastify/pull/5141](https://redirect.github.com/fastify/fastify/pull/5141) - feat: align fastify.hasRoute to fmw.hasRoute by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5102](https://redirect.github.com/fastify/fastify/pull/5102) - feat: set useSemicolonDefault default option to false by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5320](https://redirect.github.com/fastify/fastify/pull/5320) - feat: make contentTypeParser's existingParser check more strict by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5329](https://redirect.github.com/fastify/fastify/pull/5329) - feat: loosen content-type checking by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/4450](https://redirect.github.com/fastify/fastify/pull/4450) - feat: rework contentTypeParser methods by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5372](https://redirect.github.com/fastify/fastify/pull/5372) - perf: limit search space for contentType by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5400](https://redirect.github.com/fastify/fastify/pull/5400) - perf: update method matching by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5419](https://redirect.github.com/fastify/fastify/pull/5419) - chore: updated dependencies to latest versions by [@​puskin94](https://redirect.github.com/puskin94) in [https://github.com/fastify/fastify/pull/5422](https://redirect.github.com/fastify/fastify/pull/5422) - chore: merge next into main for v5 release by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5446](https://redirect.github.com/fastify/fastify/pull/5446) - docs(ref/typescript): support Docusaurus v3 by [@​james-kaguru](https://redirect.github.com/james-kaguru) in [https://github.com/fastify/fastify/pull/5450](https://redirect.github.com/fastify/fastify/pull/5450) - chore: remove unused dependency and fix ci by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5454](https://redirect.github.com/fastify/fastify/pull/5454) - feat: (types) add shorthand types for MKCALENDAR and REPORT by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5455](https://redirect.github.com/fastify/fastify/pull/5455) - fix: ci labeler by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5463](https://redirect.github.com/fastify/fastify/pull/5463) - docs(guides/database): correct typo by [@​monish001](https://redirect.github.com/monish001) in [https://github.com/fastify/fastify/pull/5461](https://redirect.github.com/fastify/fastify/pull/5461) - test: add tests for error handling by [@​domdomegg](https://redirect.github.com/domdomegg) in [https://github.com/fastify/fastify/pull/5451](https://redirect.github.com/fastify/fastify/pull/5451) - docs(reference/routes): fix example on constraints by [@​Cadienvan](https://redirect.github.com/Cadienvan) in [https://github.com/fastify/fastify/pull/5468](https://redirect.github.com/fastify/fastify/pull/5468) - perf: Optimize resolving X-Forwarded-For addresses by [@​dmkng](https://redirect.github.com/dmkng) in [https://github.com/fastify/fastify/pull/5458](https://redirect.github.com/fastify/fastify/pull/5458) - fix: `config` type in RouteShorthandOptions by [@​BrianValente](https://redirect.github.com/BrianValente) in [https://github.com/fastify/fastify/pull/5355](https://redirect.github.com/fastify/fastify/pull/5355) - feat: request and reply decorators can not be a reference type by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5462](https://redirect.github.com/fastify/fastify/pull/5462) - docs: update indentation on type providers section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5474](https://redirect.github.com/fastify/fastify/pull/5474) - feat: log all available addresses if listening host is 0.0.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5476](https://redirect.github.com/fastify/fastify/pull/5476) - chore: remove node 18 from CI by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5481](https://redirect.github.com/fastify/fastify/pull/5481) - feat: writeEarlyHints by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5480](https://redirect.github.com/fastify/fastify/pull/5480) - docs: update indentation and code snippet in the routes section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5482](https://redirect.github.com/fastify/fastify/pull/5482) - refactor: change `reply.redirect()` signature by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5483](https://redirect.github.com/fastify/fastify/pull/5483) - docs: update indentation and code snippet in the type providers section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5485](https://redirect.github.com/fastify/fastify/pull/5485) - feat: emit diagnostics_channel events upon routing request by [@​tlhunter](https://redirect.github.com/tlhunter) in [https://github.com/fastify/fastify/pull/5252](https://redirect.github.com/fastify/fastify/pull/5252) - chore: Bump pnpm/action-setup from 3 to 4 by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5492](https://redirect.github.com/fastify/fastify/pull/5492) - chore: remove unnecessary eslint override by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5493](https://redirect.github.com/fastify/fastify/pull/5493) - docs(ecosystem): Add fastify-kysely plugin by [@​alenap93](https://redirect.github.com/alenap93) in [https://github.com/fastify/fastify/pull/5475](https://redirect.github.com/fastify/fastify/pull/5475) - chore: update tap@19 by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5471](https://redirect.github.com/fastify/fastify/pull/5471) - chore: Remove `reply.getReponseTime()` in [https://github.com/fastify/fastify/pull/5490](https://redirect.github.com/fastify/fastify/pull/5490) - chore: remove unused test by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5496](https://redirect.github.com/fastify/fastify/pull/5496) - chore: readyListener can be async on server.ready() by [@​remidewitte](https://redirect.github.com/remidewitte) in [https://github.com/fastify/fastify/pull/5501](https://redirect.github.com/fastify/fastify/pull/5501) - chore: test deprecation cleanup by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5510](https://redirect.github.com/fastify/fastify/pull/5510) - chore: Migrate to neostandard by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5509](https://redirect.github.com/fastify/fastify/pull/5509) - fix: hasRoute method comparison with case insensitive by [@​SMNBLMRR](https://redirect.github.com/SMNBLMRR) in [https://github.com/fastify/fastify/pull/5508](https://redirect.github.com/fastify/fastify/pull/5508) - feat(types): Introduce SafePromiseLike by [@​rozzilla](https://redirect.github.com/rozzilla) in [https://github.com/fastify/fastify/pull/5506](https://redirect.github.com/fastify/fastify/pull/5506) - fix: Type inferrence with auxilliary hook handlers by [@​aadito123](https://redirect.github.com/aadito123) in [https://github.com/fastify/fastify/pull/5517](https://redirect.github.com/fastify/fastify/pull/5517) - docs: addContentTypeParser with fastify.register by [@​moradebianchetti81](https://redirect.github.com/moradebianchetti81) in [https://github.com/fastify/fastify/pull/5499](https://redirect.github.com/fastify/fastify/pull/5499) - docs: remove navigation for empty content by [@​liuhanqu](https://redirect.github.com/liuhanqu) in [https://github.com/fastify/fastify/pull/5521](https://redirect.github.com/fastify/fastify/pull/5521) - fix: server.listen listener is not cleanup properly by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5522](https://redirect.github.com/fastify/fastify/pull/5522) - feat: type definitions and documentation for separated type provider. by [@​Bram-dc](https://redirect.github.com/Bram-dc) in [https://github.com/fastify/fastify/pull/5427](https://redirect.github.com/fastify/fastify/pull/5427) - chore: support pre and alpha tags by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5528](https://redirect.github.com/fastify/fastify/pull/5528) - chore: Bump the dependencies-major group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5530](https://redirect.github.com/fastify/fastify/pull/5530) - chore: Bump neostandard from 0.7.2 to 0.8.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5531](https://redirect.github.com/fastify/fastify/pull/5531) - fix(v5): update .npmignore by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5537](https://redirect.github.com/fastify/fastify/pull/5537) - test: fix test finished earlier than expected by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5540](https://redirect.github.com/fastify/fastify/pull/5540) - chore: rm < node19 support from secondaryServer.close() by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5542](https://redirect.github.com/fastify/fastify/pull/5542) - chore(sponsor): add valtown by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5543](https://redirect.github.com/fastify/fastify/pull/5543) - chore: Bump the dev-dependencies group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5546](https://redirect.github.com/fastify/fastify/pull/5546) - docs: use `http2` directive in nginx config by [@​LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) in [https://github.com/fastify/fastify/pull/5548](https://redirect.github.com/fastify/fastify/pull/5548) - chore: Bump neostandard from 0.10.0 to 0.11.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5554](https://redirect.github.com/fastify/fastify/pull/5554) - chore: fix lint by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5558](https://redirect.github.com/fastify/fastify/pull/5558) - ci: remove automerge from ci alternative runtimes by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5557](https://redirect.github.com/fastify/fastify/pull/5557) - feat: support different body schema per content type by [@​nflaig](https://redirect.github.com/nflaig) in [https://github.com/fastify/fastify/pull/5545](https://redirect.github.com/fastify/fastify/pull/5545) - chore: remove dc-polyfill by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5560](https://redirect.github.com/fastify/fastify/pull/5560) - fix: res serializer not given reply ([#​5556](https://redirect.github.com/fastify/fastify/issues/5556)) by [@​mch-dsk](https://redirect.github.com/mch-dsk) in [https://github.com/fastify/fastify/pull/5561](https://redirect.github.com/fastify/fastify/pull/5561) - chore: Bump process-warning from 3.0.0 to 4.0.0 in the dependencies-major group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5568](https://redirect.github.com/fastify/fastify/pull/5568) - chore: Bump the dev-dependencies group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5569](https://redirect.github.com/fastify/fastify/pull/5569) - chore: allow ! in PR title by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5571](https://redirect.github.com/fastify/fastify/pull/5571) - docs: add [@​pybot/fastify-autoload](https://redirect.github.com/pybot/fastify-autoload) to comm plugins by [@​kunal097](https://redirect.github.com/kunal097) in [https://github.com/fastify/fastify/pull/5579](https://redirect.github.com/fastify/fastify/pull/5579) - feat: customize http methods by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5567](https://redirect.github.com/fastify/fastify/pull/5567) - refactor(typescript): re-order FastifyReply generic parameters by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5570](https://redirect.github.com/fastify/fastify/pull/5570) - docs: Adding `crudify-mongo` plugin to community list by [@​aaroncadillac](https://redirect.github.com/aaroncadillac) in [https://github.com/fastify/fastify/pull/5581](https://redirect.github.com/fastify/fastify/pull/5581) - docs(reference/typescript): remove type provider from typebox example by [@​jscheffner](https://redirect.github.com/jscheffner) in [https://github.com/fastify/fastify/pull/5576](https://redirect.github.com/fastify/fastify/pull/5576) - refactor!: remove json shorthand by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5586](https://redirect.github.com/fastify/fastify/pull/5586) - chore: remove deprecation 005 by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5589](https://redirect.github.com/fastify/fastify/pull/5589) - fix: nullish host by [@​sourcecodeit](https://redirect.github.com/sourcecodeit) in [https://github.com/fastify/fastify/pull/5590](https://redirect.github.com/fastify/fastify/pull/5590) - chore(sponsor): add handsontable by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5592](https://redirect.github.com/fastify/fastify/pull/5592) - fix: removed warning listener from tests by [@​sourcecodeit](https://redirect.github.com/sourcecodeit) in [https://github.com/fastify/fastify/pull/5598](https://redirect.github.com/fastify/fastify/pull/5598) - fix: test suite import.js emitting errors by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5599](https://redirect.github.com/fastify/fastify/pull/5599) - chore: Bump [@​types/node](https://redirect.github.com/types/node) from 20.14.13 to 22.0.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5600](https://redirect.github.com/fastify/fastify/pull/5600) - docs(reply): standardize import style in examples by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5580](https://redirect.github.com/fastify/fastify/pull/5580) - docs(typescript): update example fastify version by [@​Fdawgs](https://redirect.github.com/Fdawgs) in [https://github.com/fastify/fastify/pull/5602](https://redirect.github.com/fastify/fastify/pull/5602) - refactor: remove FSTDEP007 by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5604](https://redirect.github.com/fastify/fastify/pull/5604) - refactor: remove `FSTDEP008` and `FSTDEP009` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5609](https://redirect.github.com/fastify/fastify/pull/5609) - refactor: remove `FSTDEP010` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5611](https://redirect.github.com/fastify/fastify/pull/5611) - refactor: remove `FSTDEP021` by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5613](https://redirect.github.com/fastify/fastify/pull/5613) - refactor: use `Object.hasOwn` by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5614](https://redirect.github.com/fastify/fastify/pull/5614) - refactor: remove `FSTDEP012`, `FSTDEP015`, `FSTDEP016`, `FSTDEP017`, `FSTDEP018`, `FSTDEP019` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5616](https://redirect.github.com/fastify/fastify/pull/5616) - refactor: remove `FSTDEP013` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5618](https://redirect.github.com/fastify/fastify/pull/5618) - fix: throwing "FST_ERR_DUPLICATED_ROUTE" error instead of raw error by [@​Rantoledo](https://redirect.github.com/Rantoledo) in [https://github.com/fastify/fastify/pull/5621](https://redirect.github.com/fastify/fastify/pull/5621) - chore: Bump [@​sinclair/typebox](https://redirect.github.com/sinclair/typebox) from 0.32.35 to 0.33.4 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5625](https://redirect.github.com/fastify/fastify/pull/5625) - fix: reorder handling of `Response` replies by [@​barbieri](https://redirect.github.com/barbieri) in [https://github.com/fastify/fastify/pull/5612](https://redirect.github.com/fastify/fastify/pull/5612) - ci(.github): use latest node lts version by [@​Fdawgs](https://redirect.github.com/Fdawgs) in [https://github.com/fastify/fastify/pull/5577](https://redirect.github.com/fastify/fastify/pull/5577) - docs: add default value for maxParamLength by [@​busybox11](https://redirect.github.com/busybox11) in [https://github.com/fastify/fastify/pull/5630](https://redirect.github.com/fastify/fastify/pull/5630) - chore: simplify `neostandard` setup by [@​voxpelli](https://redirect.github.com/voxpelli) in [https://github.com/fastify/fastify/pull/5635](https://redirect.github.com/fastify/fastify/pull/5635) - chore: fix sponsor link by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5640](https://redirect.github.com/fastify/fastify/pull/5640) - docs: move RafaelGSS to past collaborators by [@​RafaelGSS](https://redirect.github.com/RafaelGSS) in [https://github.com/fastify/fastify/pull/5645](https://redirect.github.com/fastify/fastify/pull/5645) - docs(type-providers): fix typos by [@​mikesamm](https://redirect.github.com/mikesamm) in [https://github.com/fastify/fastify/pull/5651](https://redirect.github.com/fastify/fastify/pull/5651) - feat: add fastify v4 codemods by [@​arshcodemod](https://redirect.github.com/arshcodemod) in [https://github.com/fastify/fastify/pull/5642](https://redirect.github.com/fastify/fastify/pull/5642) - chore: bump find-my-way to v9 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5652](https://redirect.github.com/fastify/fastify/pull/5652) - chore: bump ajv-compiler to v4.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5653](https://redirect.github.com/fastify/fastify/pull/5653) - chore: Bumped light-my-request to v6.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5655](https://redirect.github.com/fastify/fastify/pull/5655) - chore: Bumped avvio to v9.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5656](https://redirect.github.com/fastify/fastify/pull/5656) - chore: bump fast-json-stringify-compiler to v5.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5660](https://redirect.github.com/fastify/fastify/pull/5660) - docs: add dancastillo to Fastify Plugins team by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5668](https://redirect.github.com/fastify/fastify/pull/5668) - docs: join plugin team by [@​jean-michelet](https://redirect.github.com/jean-michelet) in [https://github.com/fastify/fastify/pull/5677](https://redirect.github.com/fastify/fastify/pull/5677) - chore: list the next deprecation code by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5673](https://redirect.github.com/fastify/fastify/pull/5673) - types: remove nonexistant done parameter from onRegister by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5678](https://redirect.github.com/fastify/fastify/pull/5678) - docs: add v5 guide by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5674](https://redirect.github.com/fastify/fastify/pull/5674) - feat: bind `this` to instance in onclose by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5670](https://redirect.github.com/fastify/fastify/pull/5670) - docs: update v4 codemods by [@​mohab-sameh](https://redirect.github.com/mohab-sameh) in [https://github.com/fastify/fastify/pull/5666](https://redirect.github.com/fastify/fastify/pull/5666) - docs: Add required .js extension to relative ESM imports by [@​masto](https://redirect.github.com/masto) in [https://github.com/fastify/fastify/pull/5685](https://redirect.github.com/fastify/fastify/pull/5685) #### New Contributors - [@​beyazit](https://redirect.github.com/beyazit) made their first contribution in [https://github.com/fastify/fastify/pull/4962](https://redirect.github.com/fastify/fastify/pull/4962) - [@​puskin94](https://redirect.github.com/puskin94) made their first contribution in [https://github.com/fastify/fastify/pull/5422](https://redirect.github.com/fastify/fastify/pull/5422) - [@​james-kaguru](https://redirect.github.com/james-kaguru) made their first contribution in [https://github.com/fastify/fastify/pull/5450](https://redirect.github.com/fastify/fastify/pull/5450) - [@​monish001](https://redirect.github.com/monish001) made their first contribution in [https://github.com/fastify/fastify/pull/5461](https://redirect.github.com/fastify/fastify/pull/5461) - [@​dmkng](https://redirect.github.com/dmkng) made their first contribution in [https://github.com/fastify/fastify/pull/5458](https://redirect.github.com/fastify/fastify/pull/5458) - [@​BrianValente](https://redirect.github.com/BrianValente) made their first contribution in [https://github.com/fastify/fastify/pull/5355](https://redirect.github.com/fastify/fastify/pull/5355) - [@​Cangit](https://redirect.github.com/Cangit) made their first contribution in [https://github.com/fastify/fastify/pull/5493](https://redirect.github.com/fastify/fastify/pull/5493) - [@​alenap93](https://redirect.github.com/alenap93) made their first contribution in [https://github.com/fastify/fastify/pull/5475](https://redirect.github.com/fastify/fastify/pull/5475) - [@​moradebianchetti81](https://redirect.github.com/moradebianchetti81) made their first contribution in [https://github.com/fastify/fastify/pull/5499](https://redirect.github.com/fastify/fastify/pull/5499) - [@​Bram-dc](https://redirect.github.com/Bram-dc) made their first contribution in [https://github.com/fastify/fastify/pull/5427](https://redirect.github.com/fastify/fastify/pull/5427) - [@​LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) made their first contribution in [https://github.com/fastify/fastify/pull/5548](https://redirect.github.com/fastify/fastify/pull/5548) - [@​mch-dsk](https://redirect.github.com/mch-dsk) made their first contribution in [https://github.com/fastify/fastify/pull/5561](https://redirect.github.com/fastify/fastify/pull/5561) - [@​kunal097](https://redirect.github.com/kunal097) made their first contribution in [https://github.com/fastify/fastify/pull/5579](https://redirect.github.com/fastify/fastify/pull/5579) - [@​aaroncadillac](https://redirect.github.com/aaroncadillac) made their first contribution in [https://github.com/fastify/fastify/pull/5581](https://redirect.github.com/fastify/fastify/pull/5581) - [@​jscheffner](https://redirect.github.com/jscheffner) made their first contribution in [https://github.com/fastify/fastify/pull/5576](https://redirect.github.com/fastify/fastify/pull/5576) - [@​sourcecodeit](https://redirect.github.com/sourcecodeit) made their first contribution in [https://github.com/fastify/fastify/pull/5590](https://redirect.github.com/fastify/fastify/pull/5590) - [@​Rantoledo](https://redirect.github.com/Rantoledo) made their first contribution in [https://github.com/fastify/fastify/pull/5621](https://redirect.github.com/fastify/fastify/pull/5621) - [@​barbieri](https://redirect.github.com/barbieri) made their first contribution in [https://github.com/fastify/fastify/pull/5612](https://redirect.github.com/fastify/fastify/pull/5612) - [@​busybox11](https://redirect.github.com/busybox11) made their first contribution in [https://github.com/fastify/fastify/pull/5630](https://redirect.github.com/fastify/fastify/pull/5630) - [@​mikesamm](https://redirect.github.com/mikesamm) made their first contribution in [https://github.com/fastify/fastify/pull/5651](https://redirect.github.com/fastify/fastify/pull/5651) - [@​arshcodemod](https://redirect.github.com/arshcodemod) made their first contribution in [https://github.com/fastify/fastify/pull/5642](https://redirect.github.com/fastify/fastify/pull/5642) - [@​jean-michelet](https://redirect.github.com/jean-michelet) made their first contribution in [https://github.com/fastify/fastify/pull/5677](https://redirect.github.com/fastify/fastify/pull/5677) - [@​mohab-sameh](https://redirect.github.com/mohab-sameh) made their first contribution in [https://github.com/fastify/fastify/pull/5666](https://redirect.github.com/fastify/fastify/pull/5666) - [@​masto](https://redirect.github.com/masto) made their first contribution in [https://github.com/fastify/fastify/pull/5685](https://redirect.github.com/fastify/fastify/pull/5685) **Full Changelog**: fastify/fastify@v4.27.0...v5.0.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/tomacheese/telcheck). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC44MC4wIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [fastify](https://fastify.dev/) ([source](https://redirect.github.com/fastify/fastify)) | [`4.28.1` -> `5.0.0`](https://renovatebot.com/diffs/npm/fastify/4.28.1/5.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>fastify/fastify (fastify)</summary> ### [`v5.0.0`](https://redirect.github.com/fastify/fastify/releases/tag/v5.0.0) [Compare Source](https://redirect.github.com/fastify/fastify/compare/v4.28.1...v5.0.0) #### What's Changed - add missing route shorthands by [@​Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/fastify/fastify/pull/4409](https://redirect.github.com/fastify/fastify/pull/4409) - lib: drop setDefaultRoute and getDefaultRoute methods by [@​RafaelGSS](https://redirect.github.com/RafaelGSS) in [https://github.com/fastify/fastify/pull/4485](https://redirect.github.com/fastify/fastify/pull/4485) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4815](https://redirect.github.com/fastify/fastify/pull/4815) - Next: Disallow `decorate('name', null)` in the types by [@​voxpelli](https://redirect.github.com/voxpelli) in [https://github.com/fastify/fastify/pull/4878](https://redirect.github.com/fastify/fastify/pull/4878) - feat!: Add req.hostname and req.port by [@​aarontravass](https://redirect.github.com/aarontravass) in [https://github.com/fastify/fastify/pull/4766](https://redirect.github.com/fastify/fastify/pull/4766) - Change request id header default value to false by [@​philippviereck](https://redirect.github.com/philippviereck) in [https://github.com/fastify/fastify/pull/4194](https://redirect.github.com/fastify/fastify/pull/4194) - Remove deprecated variadic listen by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/4900](https://redirect.github.com/fastify/fastify/pull/4900) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4894](https://redirect.github.com/fastify/fastify/pull/4894) - fix: requestIdHeader docs by [@​philippviereck](https://redirect.github.com/philippviereck) in [https://github.com/fastify/fastify/pull/4916](https://redirect.github.com/fastify/fastify/pull/4916) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4930](https://redirect.github.com/fastify/fastify/pull/4930) - Sync next-branch by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/fastify/fastify/pull/4941](https://redirect.github.com/fastify/fastify/pull/4941) - types: Remove variadic listen types by [@​Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/fastify/fastify/pull/4966](https://redirect.github.com/fastify/fastify/pull/4966) - fix: remove http version check by [@​beyazit](https://redirect.github.com/beyazit) in [https://github.com/fastify/fastify/pull/4962](https://redirect.github.com/fastify/fastify/pull/4962) - feat: new logger api by [@​aarontravass](https://redirect.github.com/aarontravass) in [https://github.com/fastify/fastify/pull/5020](https://redirect.github.com/fastify/fastify/pull/5020) - fix(plugins): mixing async and callback style now returns an error by [@​giuliowaitforitdavide](https://redirect.github.com/giuliowaitforitdavide) in [https://github.com/fastify/fastify/pull/5141](https://redirect.github.com/fastify/fastify/pull/5141) - feat: align fastify.hasRoute to fmw.hasRoute by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5102](https://redirect.github.com/fastify/fastify/pull/5102) - feat: set useSemicolonDefault default option to false by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5320](https://redirect.github.com/fastify/fastify/pull/5320) - feat: make contentTypeParser's existingParser check more strict by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5329](https://redirect.github.com/fastify/fastify/pull/5329) - feat: loosen content-type checking by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/4450](https://redirect.github.com/fastify/fastify/pull/4450) - feat: rework contentTypeParser methods by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5372](https://redirect.github.com/fastify/fastify/pull/5372) - perf: limit search space for contentType by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5400](https://redirect.github.com/fastify/fastify/pull/5400) - perf: update method matching by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5419](https://redirect.github.com/fastify/fastify/pull/5419) - chore: updated dependencies to latest versions by [@​puskin94](https://redirect.github.com/puskin94) in [https://github.com/fastify/fastify/pull/5422](https://redirect.github.com/fastify/fastify/pull/5422) - chore: merge next into main for v5 release by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5446](https://redirect.github.com/fastify/fastify/pull/5446) - docs(ref/typescript): support Docusaurus v3 by [@​james-kaguru](https://redirect.github.com/james-kaguru) in [https://github.com/fastify/fastify/pull/5450](https://redirect.github.com/fastify/fastify/pull/5450) - chore: remove unused dependency and fix ci by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5454](https://redirect.github.com/fastify/fastify/pull/5454) - feat: (types) add shorthand types for MKCALENDAR and REPORT by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5455](https://redirect.github.com/fastify/fastify/pull/5455) - fix: ci labeler by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5463](https://redirect.github.com/fastify/fastify/pull/5463) - docs(guides/database): correct typo by [@​monish001](https://redirect.github.com/monish001) in [https://github.com/fastify/fastify/pull/5461](https://redirect.github.com/fastify/fastify/pull/5461) - test: add tests for error handling by [@​domdomegg](https://redirect.github.com/domdomegg) in [https://github.com/fastify/fastify/pull/5451](https://redirect.github.com/fastify/fastify/pull/5451) - docs(reference/routes): fix example on constraints by [@​Cadienvan](https://redirect.github.com/Cadienvan) in [https://github.com/fastify/fastify/pull/5468](https://redirect.github.com/fastify/fastify/pull/5468) - perf: Optimize resolving X-Forwarded-For addresses by [@​dmkng](https://redirect.github.com/dmkng) in [https://github.com/fastify/fastify/pull/5458](https://redirect.github.com/fastify/fastify/pull/5458) - fix: `config` type in RouteShorthandOptions by [@​BrianValente](https://redirect.github.com/BrianValente) in [https://github.com/fastify/fastify/pull/5355](https://redirect.github.com/fastify/fastify/pull/5355) - feat: request and reply decorators can not be a reference type by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5462](https://redirect.github.com/fastify/fastify/pull/5462) - docs: update indentation on type providers section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5474](https://redirect.github.com/fastify/fastify/pull/5474) - feat: log all available addresses if listening host is 0.0.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5476](https://redirect.github.com/fastify/fastify/pull/5476) - chore: remove node 18 from CI by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5481](https://redirect.github.com/fastify/fastify/pull/5481) - feat: writeEarlyHints by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5480](https://redirect.github.com/fastify/fastify/pull/5480) - docs: update indentation and code snippet in the routes section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5482](https://redirect.github.com/fastify/fastify/pull/5482) - refactor: change `reply.redirect()` signature by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5483](https://redirect.github.com/fastify/fastify/pull/5483) - docs: update indentation and code snippet in the type providers section by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5485](https://redirect.github.com/fastify/fastify/pull/5485) - feat: emit diagnostics_channel events upon routing request by [@​tlhunter](https://redirect.github.com/tlhunter) in [https://github.com/fastify/fastify/pull/5252](https://redirect.github.com/fastify/fastify/pull/5252) - chore: Bump pnpm/action-setup from 3 to 4 by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5492](https://redirect.github.com/fastify/fastify/pull/5492) - chore: remove unnecessary eslint override by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5493](https://redirect.github.com/fastify/fastify/pull/5493) - docs(ecosystem): Add fastify-kysely plugin by [@​alenap93](https://redirect.github.com/alenap93) in [https://github.com/fastify/fastify/pull/5475](https://redirect.github.com/fastify/fastify/pull/5475) - chore: update tap@19 by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5471](https://redirect.github.com/fastify/fastify/pull/5471) - chore: Remove `reply.getReponseTime()` in [https://github.com/fastify/fastify/pull/5490](https://redirect.github.com/fastify/fastify/pull/5490) - chore: remove unused test by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5496](https://redirect.github.com/fastify/fastify/pull/5496) - chore: readyListener can be async on server.ready() by [@​remidewitte](https://redirect.github.com/remidewitte) in [https://github.com/fastify/fastify/pull/5501](https://redirect.github.com/fastify/fastify/pull/5501) - chore: test deprecation cleanup by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5510](https://redirect.github.com/fastify/fastify/pull/5510) - chore: Migrate to neostandard by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5509](https://redirect.github.com/fastify/fastify/pull/5509) - fix: hasRoute method comparison with case insensitive by [@​SMNBLMRR](https://redirect.github.com/SMNBLMRR) in [https://github.com/fastify/fastify/pull/5508](https://redirect.github.com/fastify/fastify/pull/5508) - feat(types): Introduce SafePromiseLike by [@​rozzilla](https://redirect.github.com/rozzilla) in [https://github.com/fastify/fastify/pull/5506](https://redirect.github.com/fastify/fastify/pull/5506) - fix: Type inferrence with auxilliary hook handlers by [@​aadito123](https://redirect.github.com/aadito123) in [https://github.com/fastify/fastify/pull/5517](https://redirect.github.com/fastify/fastify/pull/5517) - docs: addContentTypeParser with fastify.register by [@​moradebianchetti81](https://redirect.github.com/moradebianchetti81) in [https://github.com/fastify/fastify/pull/5499](https://redirect.github.com/fastify/fastify/pull/5499) - docs: remove navigation for empty content by [@​liuhanqu](https://redirect.github.com/liuhanqu) in [https://github.com/fastify/fastify/pull/5521](https://redirect.github.com/fastify/fastify/pull/5521) - fix: server.listen listener is not cleanup properly by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5522](https://redirect.github.com/fastify/fastify/pull/5522) - feat: type definitions and documentation for separated type provider. by [@​Bram-dc](https://redirect.github.com/Bram-dc) in [https://github.com/fastify/fastify/pull/5427](https://redirect.github.com/fastify/fastify/pull/5427) - chore: support pre and alpha tags by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5528](https://redirect.github.com/fastify/fastify/pull/5528) - chore: Bump the dependencies-major group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5530](https://redirect.github.com/fastify/fastify/pull/5530) - chore: Bump neostandard from 0.7.2 to 0.8.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5531](https://redirect.github.com/fastify/fastify/pull/5531) - fix(v5): update .npmignore by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5537](https://redirect.github.com/fastify/fastify/pull/5537) - test: fix test finished earlier than expected by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5540](https://redirect.github.com/fastify/fastify/pull/5540) - chore: rm < node19 support from secondaryServer.close() by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5542](https://redirect.github.com/fastify/fastify/pull/5542) - chore(sponsor): add valtown by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5543](https://redirect.github.com/fastify/fastify/pull/5543) - chore: Bump the dev-dependencies group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5546](https://redirect.github.com/fastify/fastify/pull/5546) - docs: use `http2` directive in nginx config by [@​LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) in [https://github.com/fastify/fastify/pull/5548](https://redirect.github.com/fastify/fastify/pull/5548) - chore: Bump neostandard from 0.10.0 to 0.11.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5554](https://redirect.github.com/fastify/fastify/pull/5554) - chore: fix lint by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5558](https://redirect.github.com/fastify/fastify/pull/5558) - ci: remove automerge from ci alternative runtimes by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5557](https://redirect.github.com/fastify/fastify/pull/5557) - feat: support different body schema per content type by [@​nflaig](https://redirect.github.com/nflaig) in [https://github.com/fastify/fastify/pull/5545](https://redirect.github.com/fastify/fastify/pull/5545) - chore: remove dc-polyfill by [@​Cangit](https://redirect.github.com/Cangit) in [https://github.com/fastify/fastify/pull/5560](https://redirect.github.com/fastify/fastify/pull/5560) - fix: res serializer not given reply ([#​5556](https://redirect.github.com/fastify/fastify/issues/5556)) by [@​mch-dsk](https://redirect.github.com/mch-dsk) in [https://github.com/fastify/fastify/pull/5561](https://redirect.github.com/fastify/fastify/pull/5561) - chore: Bump process-warning from 3.0.0 to 4.0.0 in the dependencies-major group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5568](https://redirect.github.com/fastify/fastify/pull/5568) - chore: Bump the dev-dependencies group with 2 updates by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5569](https://redirect.github.com/fastify/fastify/pull/5569) - chore: allow ! in PR title by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5571](https://redirect.github.com/fastify/fastify/pull/5571) - docs: add [@​pybot/fastify-autoload](https://redirect.github.com/pybot/fastify-autoload) to comm plugins by [@​kunal097](https://redirect.github.com/kunal097) in [https://github.com/fastify/fastify/pull/5579](https://redirect.github.com/fastify/fastify/pull/5579) - feat: customize http methods by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5567](https://redirect.github.com/fastify/fastify/pull/5567) - refactor(typescript): re-order FastifyReply generic parameters by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5570](https://redirect.github.com/fastify/fastify/pull/5570) - docs: Adding `crudify-mongo` plugin to community list by [@​aaroncadillac](https://redirect.github.com/aaroncadillac) in [https://github.com/fastify/fastify/pull/5581](https://redirect.github.com/fastify/fastify/pull/5581) - docs(reference/typescript): remove type provider from typebox example by [@​jscheffner](https://redirect.github.com/jscheffner) in [https://github.com/fastify/fastify/pull/5576](https://redirect.github.com/fastify/fastify/pull/5576) - refactor!: remove json shorthand by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5586](https://redirect.github.com/fastify/fastify/pull/5586) - chore: remove deprecation 005 by [@​jsumners](https://redirect.github.com/jsumners) in [https://github.com/fastify/fastify/pull/5589](https://redirect.github.com/fastify/fastify/pull/5589) - fix: nullish host by [@​sourcecodeit](https://redirect.github.com/sourcecodeit) in [https://github.com/fastify/fastify/pull/5590](https://redirect.github.com/fastify/fastify/pull/5590) - chore(sponsor): add handsontable by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5592](https://redirect.github.com/fastify/fastify/pull/5592) - fix: removed warning listener from tests by [@​sourcecodeit](https://redirect.github.com/sourcecodeit) in [https://github.com/fastify/fastify/pull/5598](https://redirect.github.com/fastify/fastify/pull/5598) - fix: test suite import.js emitting errors by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5599](https://redirect.github.com/fastify/fastify/pull/5599) - chore: Bump [@​types/node](https://redirect.github.com/types/node) from 20.14.13 to 22.0.0 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5600](https://redirect.github.com/fastify/fastify/pull/5600) - docs(reply): standardize import style in examples by [@​Tony133](https://redirect.github.com/Tony133) in [https://github.com/fastify/fastify/pull/5580](https://redirect.github.com/fastify/fastify/pull/5580) - docs(typescript): update example fastify version by [@​Fdawgs](https://redirect.github.com/Fdawgs) in [https://github.com/fastify/fastify/pull/5602](https://redirect.github.com/fastify/fastify/pull/5602) - refactor: remove FSTDEP007 by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5604](https://redirect.github.com/fastify/fastify/pull/5604) - refactor: remove `FSTDEP008` and `FSTDEP009` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5609](https://redirect.github.com/fastify/fastify/pull/5609) - refactor: remove `FSTDEP010` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5611](https://redirect.github.com/fastify/fastify/pull/5611) - refactor: remove `FSTDEP021` by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5613](https://redirect.github.com/fastify/fastify/pull/5613) - refactor: use `Object.hasOwn` by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5614](https://redirect.github.com/fastify/fastify/pull/5614) - refactor: remove `FSTDEP012`, `FSTDEP015`, `FSTDEP016`, `FSTDEP017`, `FSTDEP018`, `FSTDEP019` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5616](https://redirect.github.com/fastify/fastify/pull/5616) - refactor: remove `FSTDEP013` by [@​climba03003](https://redirect.github.com/climba03003) in [https://github.com/fastify/fastify/pull/5618](https://redirect.github.com/fastify/fastify/pull/5618) - fix: throwing "FST_ERR_DUPLICATED_ROUTE" error instead of raw error by [@​Rantoledo](https://redirect.github.com/Rantoledo) in [https://github.com/fastify/fastify/pull/5621](https://redirect.github.com/fastify/fastify/pull/5621) - chore: Bump [@​sinclair/typebox](https://redirect.github.com/sinclair/typebox) from 0.32.35 to 0.33.4 in the dev-dependencies group by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/fastify/fastify/pull/5625](https://redirect.github.com/fastify/fastify/pull/5625) - fix: reorder handling of `Response` replies by [@​barbieri](https://redirect.github.com/barbieri) in [https://github.com/fastify/fastify/pull/5612](https://redirect.github.com/fastify/fastify/pull/5612) - ci(.github): use latest node lts version by [@​Fdawgs](https://redirect.github.com/Fdawgs) in [https://github.com/fastify/fastify/pull/5577](https://redirect.github.com/fastify/fastify/pull/5577) - docs: add default value for maxParamLength by [@​busybox11](https://redirect.github.com/busybox11) in [https://github.com/fastify/fastify/pull/5630](https://redirect.github.com/fastify/fastify/pull/5630) - chore: simplify `neostandard` setup by [@​voxpelli](https://redirect.github.com/voxpelli) in [https://github.com/fastify/fastify/pull/5635](https://redirect.github.com/fastify/fastify/pull/5635) - chore: fix sponsor link by [@​Eomm](https://redirect.github.com/Eomm) in [https://github.com/fastify/fastify/pull/5640](https://redirect.github.com/fastify/fastify/pull/5640) - docs: move RafaelGSS to past collaborators by [@​RafaelGSS](https://redirect.github.com/RafaelGSS) in [https://github.com/fastify/fastify/pull/5645](https://redirect.github.com/fastify/fastify/pull/5645) - docs(type-providers): fix typos by [@​mikesamm](https://redirect.github.com/mikesamm) in [https://github.com/fastify/fastify/pull/5651](https://redirect.github.com/fastify/fastify/pull/5651) - feat: add fastify v4 codemods by [@​arshcodemod](https://redirect.github.com/arshcodemod) in [https://github.com/fastify/fastify/pull/5642](https://redirect.github.com/fastify/fastify/pull/5642) - chore: bump find-my-way to v9 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5652](https://redirect.github.com/fastify/fastify/pull/5652) - chore: bump ajv-compiler to v4.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5653](https://redirect.github.com/fastify/fastify/pull/5653) - chore: Bumped light-my-request to v6.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5655](https://redirect.github.com/fastify/fastify/pull/5655) - chore: Bumped avvio to v9.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5656](https://redirect.github.com/fastify/fastify/pull/5656) - chore: bump fast-json-stringify-compiler to v5.0.0 by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5660](https://redirect.github.com/fastify/fastify/pull/5660) - docs: add dancastillo to Fastify Plugins team by [@​dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/fastify/fastify/pull/5668](https://redirect.github.com/fastify/fastify/pull/5668) - docs: join plugin team by [@​jean-michelet](https://redirect.github.com/jean-michelet) in [https://github.com/fastify/fastify/pull/5677](https://redirect.github.com/fastify/fastify/pull/5677) - chore: list the next deprecation code by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5673](https://redirect.github.com/fastify/fastify/pull/5673) - types: remove nonexistant done parameter from onRegister by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5678](https://redirect.github.com/fastify/fastify/pull/5678) - docs: add v5 guide by [@​mcollina](https://redirect.github.com/mcollina) in [https://github.com/fastify/fastify/pull/5674](https://redirect.github.com/fastify/fastify/pull/5674) - feat: bind `this` to instance in onclose by [@​gurgunday](https://redirect.github.com/gurgunday) in [https://github.com/fastify/fastify/pull/5670](https://redirect.github.com/fastify/fastify/pull/5670) - docs: update v4 codemods by [@​mohab-sameh](https://redirect.github.com/mohab-sameh) in [https://github.com/fastify/fastify/pull/5666](https://redirect.github.com/fastify/fastify/pull/5666) - docs: Add required .js extension to relative ESM imports by [@​masto](https://redirect.github.com/masto) in [https://github.com/fastify/fastify/pull/5685](https://redirect.github.com/fastify/fastify/pull/5685) #### New Contributors - [@​beyazit](https://redirect.github.com/beyazit) made their first contribution in [https://github.com/fastify/fastify/pull/4962](https://redirect.github.com/fastify/fastify/pull/4962) - [@​puskin94](https://redirect.github.com/puskin94) made their first contribution in [https://github.com/fastify/fastify/pull/5422](https://redirect.github.com/fastify/fastify/pull/5422) - [@​james-kaguru](https://redirect.github.com/james-kaguru) made their first contribution in [https://github.com/fastify/fastify/pull/5450](https://redirect.github.com/fastify/fastify/pull/5450) - [@​monish001](https://redirect.github.com/monish001) made their first contribution in [https://github.com/fastify/fastify/pull/5461](https://redirect.github.com/fastify/fastify/pull/5461) - [@​dmkng](https://redirect.github.com/dmkng) made their first contribution in [https://github.com/fastify/fastify/pull/5458](https://redirect.github.com/fastify/fastify/pull/5458) - [@​BrianValente](https://redirect.github.com/BrianValente) made their first contribution in [https://github.com/fastify/fastify/pull/5355](https://redirect.github.com/fastify/fastify/pull/5355) - [@​Cangit](https://redirect.github.com/Cangit) made their first contribution in [https://github.com/fastify/fastify/pull/5493](https://redirect.github.com/fastify/fastify/pull/5493) - [@​alenap93](https://redirect.github.com/alenap93) made their first contribution in [https://github.com/fastify/fastify/pull/5475](https://redirect.github.com/fastify/fastify/pull/5475) - [@​moradebianchetti81](https://redirect.github.com/moradebianchetti81) made their first contribution in [https://github.com/fastify/fastify/pull/5499](https://redirect.github.com/fastify/fastify/pull/5499) - [@​Bram-dc](https://redirect.github.com/Bram-dc) made their first contribution in [https://github.com/fastify/fastify/pull/5427](https://redirect.github.com/fastify/fastify/pull/5427) - [@​LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) made their first contribution in [https://github.com/fastify/fastify/pull/5548](https://redirect.github.com/fastify/fastify/pull/5548) - [@​mch-dsk](https://redirect.github.com/mch-dsk) made their first contribution in [https://github.com/fastify/fastify/pull/5561](https://redirect.github.com/fastify/fastify/pull/5561) - [@​kunal097](https://redirect.github.com/kunal097) made their first contribution in [https://github.com/fastify/fastify/pull/5579](https://redirect.github.com/fastify/fastify/pull/5579) - [@​aaroncadillac](https://redirect.github.com/aaroncadillac) made their first contribution in [https://github.com/fastify/fastify/pull/5581](https://redirect.github.com/fastify/fastify/pull/5581) - [@​jscheffner](https://redirect.github.com/jscheffner) made their first contribution in [https://github.com/fastify/fastify/pull/5576](https://redirect.github.com/fastify/fastify/pull/5576) - [@​sourcecodeit](https://redirect.github.com/sourcecodeit) made their first contribution in [https://github.com/fastify/fastify/pull/5590](https://redirect.github.com/fastify/fastify/pull/5590) - [@​Rantoledo](https://redirect.github.com/Rantoledo) made their first contribution in [https://github.com/fastify/fastify/pull/5621](https://redirect.github.com/fastify/fastify/pull/5621) - [@​barbieri](https://redirect.github.com/barbieri) made their first contribution in [https://github.com/fastify/fastify/pull/5612](https://redirect.github.com/fastify/fastify/pull/5612) - [@​busybox11](https://redirect.github.com/busybox11) made their first contribution in [https://github.com/fastify/fastify/pull/5630](https://redirect.github.com/fastify/fastify/pull/5630) - [@​mikesamm](https://redirect.github.com/mikesamm) made their first contribution in [https://github.com/fastify/fastify/pull/5651](https://redirect.github.com/fastify/fastify/pull/5651) - [@​arshcodemod](https://redirect.github.com/arshcodemod) made their first contribution in [https://github.com/fastify/fastify/pull/5642](https://redirect.github.com/fastify/fastify/pull/5642) - [@​jean-michelet](https://redirect.github.com/jean-michelet) made their first contribution in [https://github.com/fastify/fastify/pull/5677](https://redirect.github.com/fastify/fastify/pull/5677) - [@​mohab-sameh](https://redirect.github.com/mohab-sameh) made their first contribution in [https://github.com/fastify/fastify/pull/5666](https://redirect.github.com/fastify/fastify/pull/5666) - [@​masto](https://redirect.github.com/masto) made their first contribution in [https://github.com/fastify/fastify/pull/5685](https://redirect.github.com/fastify/fastify/pull/5685) **Full Changelog**: fastify/fastify@v4.27.0...v5.0.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/tf2pickup-org/tf2pickup). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC44MC4wIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJyZW5vdmF0ZSJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
|
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |


This adds support for emitting diagnostics channel events for a request. It's an extension of #5105.
The
dc-polyfillpackage provides a polyfill of thediagnostics_channelmodule for older versions of Node.js. This is why the existing diagnostics channel call has been removed from a conditional infastify.js. Note thatdc-polyfillfalls back to the existing diagnostics channel if present. That's why the tests are requiring diagnostics channel directly instead of the polyfill to show that it works as expected.Here's some things I'm wondering about:
reply.send()Benchmark results
main
this change
Checklist
npm run testandnpm run benchmarkand the Code of conduct