Skip to content

fix: allow async hooks in RouteShorthandOptions without breaking request and reply types#5147

Merged
mcollina merged 8 commits intofastify:mainfrom
bienzaaron:main
Dec 10, 2023
Merged

fix: allow async hooks in RouteShorthandOptions without breaking request and reply types#5147
mcollina merged 8 commits intofastify:mainfrom
bienzaaron:main

Conversation

@bienzaaron
Copy link
Contributor

@bienzaaron bienzaaron commented Nov 7, 2023

Closes #4859, without breaking RouteShorthandOptions in the same way #4655 did (see #4705 for details on that).

The idea is to use an intermediate type to infer the return type of the hook, and determine which hook handler interface to use based on that (sync or async).

A couple things I wanted to call out:

  • this new meta hook type is intentionally not exported from the main fastify.d.ts file. It's really just an internal helper and shouldn't need to be exported.
  • Not a huge fan of the meta name - suggestions welcome. I think it would make the most sense to rename the existing hooks sync and async and then just make the new type <hook name>HookHandler (what the sync hook currently is named), but that would be breaking.

Checklist

@github-actions github-actions bot added the typescript TypeScript related label Nov 7, 2023
@jsumners
Copy link
Member

jsumners commented Nov 9, 2023

Attn: @fastify/typescript

@SlyryD
Copy link

SlyryD commented Nov 13, 2023

Very nice!

Copy link

@SlyryD SlyryD left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

Copy link
Contributor

@Uzlopak Uzlopak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Imho not strict enough.

E.g. mixing async and callback is possible.

  onRequest: async (request, reply, done) => {
    expectType<FastifyRequest>(request)
    expectType<FastifyReply>(reply)
  },

It should be investigated if it can be done like in #4945

@fox1t
Copy link
Member

fox1t commented Nov 15, 2023

@Uzlopak good catch!

@SlyryD
Copy link

SlyryD commented Dec 9, 2023

@Uzlopak good catch!

Following this change... any updates?

@Eomm Eomm requested a review from Uzlopak December 9, 2023 07:56
@Uzlopak
Copy link
Contributor

Uzlopak commented Dec 9, 2023

@Eomm

The code did not change since my last review. Maybe if I have time tonight I can patch it to my liking, then you can review it.

@Uzlopak
Copy link
Contributor

Uzlopak commented Dec 9, 2023

I modified the typings tests to demonstrate the issue ;)

Copy link

@SlyryD SlyryD left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@Uzlopak
Copy link
Contributor

Uzlopak commented Dec 10, 2023

I removed the most obvious errors. but i couldnt implement the requested change by myself. So I think we should review and merge it as is.

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@mcollina
Copy link
Member

@Uzlopak could you lgtm this?

@Uzlopak Uzlopak dismissed their stale review December 10, 2023 11:11

I modified it.

@Uzlopak
Copy link
Contributor

Uzlopak commented Dec 10, 2023

@mcollina i dismissed my review because i modified this PR heavily

@mcollina mcollina merged commit 49b62f5 into fastify:main Dec 10, 2023
@Uzlopak Uzlopak mentioned this pull request Dec 13, 2023
2 tasks
renovate bot referenced this pull request in tomacheese/telcheck Dec 13, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [fastify](https://www.fastify.dev/)
([source](https://togithub.com/fastify/fastify)) | [`4.24.3` ->
`4.25.0`](https://renovatebot.com/diffs/npm/fastify/4.24.3/4.25.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastify/4.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastify/4.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastify/4.24.3/4.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastify/4.24.3/4.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>fastify/fastify (fastify)</summary>

###
[`v4.25.0`](https://togithub.com/fastify/fastify/releases/tag/v4.25.0)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.24.3...v4.25.0)

#### What's Changed

- feat: Improve RouteShorthandOptions\['constraints'] type by
[@&#8203;Fcmam5](https://togithub.com/Fcmam5) in
[https://github.com/fastify/fastify/pull/5097](https://togithub.com/fastify/fastify/pull/5097)
- fix: add [@&#8203;eomm](https://togithub.com/eomm) and
[@&#8203;jsumners](https://togithub.com/jsumners) as lead maintainers by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5115](https://togithub.com/fastify/fastify/pull/5115)
- fix: reply.send supports Uint8Array payload by
[@&#8203;SgtPooki](https://togithub.com/SgtPooki) in
[https://github.com/fastify/fastify/pull/5124](https://togithub.com/fastify/fastify/pull/5124)
- refactor: migrate deprecation warnings to actual deprecation warnings
by [@&#8203;jsumners](https://togithub.com/jsumners) in
[https://github.com/fastify/fastify/pull/5126](https://togithub.com/fastify/fastify/pull/5126)
- docs: added documentation about warnings by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5108](https://togithub.com/fastify/fastify/pull/5108)
- test(logger): restrict temp file permissions by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5128](https://togithub.com/fastify/fastify/pull/5128)
- refactor(lib/hooks): replace `typeof` undefined check by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5127](https://togithub.com/fastify/fastify/pull/5127)
- chore: replace mention of fastify `.io` domain with `.dev` by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5129](https://togithub.com/fastify/fastify/pull/5129)
- docs(security): add prose explaining OpenSSF CII Best Practices badge
results by [@&#8203;ljharb](https://togithub.com/ljharb) in
[https://github.com/fastify/fastify/pull/5111](https://togithub.com/fastify/fastify/pull/5111)
- chore: Bump actions/setup-node from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/5134](https://togithub.com/fastify/fastify/pull/5134)
- fix(types): add handler property to routeOptions by
[@&#8203;MikeJeffers](https://togithub.com/MikeJeffers) in
[https://github.com/fastify/fastify/pull/5136](https://togithub.com/fastify/fastify/pull/5136)
- docs(readme): fix ci badge path by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5138](https://togithub.com/fastify/fastify/pull/5138)
- docs: Fix small typo in Typescript docs by
[@&#8203;john-ko](https://togithub.com/john-ko) in
[https://github.com/fastify/fastify/pull/5145](https://togithub.com/fastify/fastify/pull/5145)
- feat(plugins): mixing async and callback style now returns a warning
by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5139](https://togithub.com/fastify/fastify/pull/5139)
- docs: mention about multipart support by
[@&#8203;fawazahmed0](https://togithub.com/fawazahmed0) in
[https://github.com/fastify/fastify/pull/5144](https://togithub.com/fastify/fastify/pull/5144)
- docs: add [@&#8203;fastify/vite](https://togithub.com/fastify/vite) to
core plugins list by [@&#8203;galvez](https://togithub.com/galvez) in
[https://github.com/fastify/fastify/pull/5153](https://togithub.com/fastify/fastify/pull/5153)
- docs: add
[@&#8203;scalar/fastify-api-reference](https://togithub.com/scalar/fastify-api-reference)
to community plugins list by
[@&#8203;hanspagel](https://togithub.com/hanspagel) in
[https://github.com/fastify/fastify/pull/5154](https://togithub.com/fastify/fastify/pull/5154)
- docs: Remove routeOptions reference in Reply.md by
[@&#8203;shadahmad7](https://togithub.com/shadahmad7) in
[https://github.com/fastify/fastify/pull/5156](https://togithub.com/fastify/fastify/pull/5156)
- docs(ecosystem): add fastify-uws by
[@&#8203;tinchoz49](https://togithub.com/tinchoz49) in
[https://github.com/fastify/fastify/pull/5160](https://togithub.com/fastify/fastify/pull/5160)
- docs: removed unmaintained fastify-nodemailer from ecosystem by
[@&#8203;giovanni-bertoncelli](https://togithub.com/giovanni-bertoncelli)
in
[https://github.com/fastify/fastify/pull/5161](https://togithub.com/fastify/fastify/pull/5161)
- docs: clarify handling of streams and buffers by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[https://github.com/fastify/fastify/pull/5166](https://togithub.com/fastify/fastify/pull/5166)
-
docs([#&#8203;5142](https://togithub.com/fastify/fastify/issues/5142)):
aligned errors and warnings documentation by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5162](https://togithub.com/fastify/fastify/pull/5162)
- docs(reference/hooks): add information about prehandler by
[@&#8203;RjManhas](https://togithub.com/RjManhas) in
[https://github.com/fastify/fastify/pull/5163](https://togithub.com/fastify/fastify/pull/5163)
- fix: type FastifyInstance\['route'] and RouteShorthandMethod by
[@&#8203;MunifTanjim](https://togithub.com/MunifTanjim) in
[https://github.com/fastify/fastify/pull/5155](https://togithub.com/fastify/fastify/pull/5155)
- docs (reference): Fix small typo in Request by
[@&#8203;bngarren](https://togithub.com/bngarren) in
[https://github.com/fastify/fastify/pull/5186](https://togithub.com/fastify/fastify/pull/5186)
- chore: gitpodify by
[@&#8203;ghostdevv](https://togithub.com/ghostdevv) in
[https://github.com/fastify/fastify/pull/5168](https://togithub.com/fastify/fastify/pull/5168)
- docs(ecosystem): Add Apitally by
[@&#8203;itssimon](https://togithub.com/itssimon) in
[https://github.com/fastify/fastify/pull/5175](https://togithub.com/fastify/fastify/pull/5175)
- fix: Update reply.context deprecation warning by
[@&#8203;avaly](https://togithub.com/avaly) in
[https://github.com/fastify/fastify/pull/5179](https://togithub.com/fastify/fastify/pull/5179)
- docs(ecosystem): adds @&#8203;blastorg/fastify/aws-dynamodb-cache to
community plugins list by
[@&#8203;fredrikj31](https://togithub.com/fredrikj31) in
[https://github.com/fastify/fastify/pull/5158](https://togithub.com/fastify/fastify/pull/5158)
- docs: update preHandler hook example by
[@&#8203;tarunrajput](https://togithub.com/tarunrajput) in
[https://github.com/fastify/fastify/pull/5189](https://togithub.com/fastify/fastify/pull/5189)
- types: added http header types to reply by
[@&#8203;skwee357](https://togithub.com/skwee357) in
[https://github.com/fastify/fastify/pull/5046](https://togithub.com/fastify/fastify/pull/5046)
- test: add tests for TOC of errors.md by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5194](https://togithub.com/fastify/fastify/pull/5194)
- ci: pin node 18 to 18.18.2 by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5197](https://togithub.com/fastify/fastify/pull/5197)
- docs(ecosystem): add http-wizard by
[@&#8203;flodlc](https://togithub.com/flodlc) in
[https://github.com/fastify/fastify/pull/5132](https://togithub.com/fastify/fastify/pull/5132)
- chore: Bump actions/github-script from 6 to 7 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/5183](https://togithub.com/fastify/fastify/pull/5183)
- ci: fix broken ci by skipping tests if node v > 18.19.0 by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5195](https://togithub.com/fastify/fastify/pull/5195)
- fix: allow async hooks in `RouteShorthandOptions` without breaking
`request` and `reply` types by
[@&#8203;bienzaaron](https://togithub.com/bienzaaron) in
[https://github.com/fastify/fastify/pull/5147](https://togithub.com/fastify/fastify/pull/5147)
- fix([#&#8203;5180](https://togithub.com/fastify/fastify/issues/5180)):
close secondary bindings after primary is closed by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/5201](https://togithub.com/fastify/fastify/pull/5201)
- chore: update process-warning by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[https://github.com/fastify/fastify/pull/5206](https://togithub.com/fastify/fastify/pull/5206)
- types: nullish error types in callback function's parameter for
`after` and `ready` method by
[@&#8203;nokazn](https://togithub.com/nokazn) in
[https://github.com/fastify/fastify/pull/5191](https://togithub.com/fastify/fastify/pull/5191)
- fix([#&#8203;5049](https://togithub.com/fastify/fastify/issues/5049)):
Remove duplicated calls to onReady by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/5051](https://togithub.com/fastify/fastify/pull/5051)
- chore: remove unused type assertion by
[@&#8203;UndefinedBehaviour](https://togithub.com/UndefinedBehaviour) in
[https://github.com/fastify/fastify/pull/5184](https://togithub.com/fastify/fastify/pull/5184)

#### New Contributors

- [@&#8203;Fcmam5](https://togithub.com/Fcmam5) made their first
contribution in
[https://github.com/fastify/fastify/pull/5097](https://togithub.com/fastify/fastify/pull/5097)
- [@&#8203;SgtPooki](https://togithub.com/SgtPooki) made their first
contribution in
[https://github.com/fastify/fastify/pull/5124](https://togithub.com/fastify/fastify/pull/5124)
- [@&#8203;MikeJeffers](https://togithub.com/MikeJeffers) made their
first contribution in
[https://github.com/fastify/fastify/pull/5136](https://togithub.com/fastify/fastify/pull/5136)
- [@&#8203;john-ko](https://togithub.com/john-ko) made their first
contribution in
[https://github.com/fastify/fastify/pull/5145](https://togithub.com/fastify/fastify/pull/5145)
- [@&#8203;fawazahmed0](https://togithub.com/fawazahmed0) made their
first contribution in
[https://github.com/fastify/fastify/pull/5144](https://togithub.com/fastify/fastify/pull/5144)
- [@&#8203;hanspagel](https://togithub.com/hanspagel) made their first
contribution in
[https://github.com/fastify/fastify/pull/5154](https://togithub.com/fastify/fastify/pull/5154)
- [@&#8203;shadahmad7](https://togithub.com/shadahmad7) made their first
contribution in
[https://github.com/fastify/fastify/pull/5156](https://togithub.com/fastify/fastify/pull/5156)
-
[@&#8203;giovanni-bertoncelli](https://togithub.com/giovanni-bertoncelli)
made their first contribution in
[https://github.com/fastify/fastify/pull/5161](https://togithub.com/fastify/fastify/pull/5161)
- [@&#8203;RjManhas](https://togithub.com/RjManhas) made their first
contribution in
[https://github.com/fastify/fastify/pull/5163](https://togithub.com/fastify/fastify/pull/5163)
- [@&#8203;MunifTanjim](https://togithub.com/MunifTanjim) made their
first contribution in
[https://github.com/fastify/fastify/pull/5155](https://togithub.com/fastify/fastify/pull/5155)
- [@&#8203;bngarren](https://togithub.com/bngarren) made their first
contribution in
[https://github.com/fastify/fastify/pull/5186](https://togithub.com/fastify/fastify/pull/5186)
- [@&#8203;ghostdevv](https://togithub.com/ghostdevv) made their first
contribution in
[https://github.com/fastify/fastify/pull/5168](https://togithub.com/fastify/fastify/pull/5168)
- [@&#8203;itssimon](https://togithub.com/itssimon) made their first
contribution in
[https://github.com/fastify/fastify/pull/5175](https://togithub.com/fastify/fastify/pull/5175)
- [@&#8203;avaly](https://togithub.com/avaly) made their first
contribution in
[https://github.com/fastify/fastify/pull/5179](https://togithub.com/fastify/fastify/pull/5179)
- [@&#8203;fredrikj31](https://togithub.com/fredrikj31) made their first
contribution in
[https://github.com/fastify/fastify/pull/5158](https://togithub.com/fastify/fastify/pull/5158)
- [@&#8203;tarunrajput](https://togithub.com/tarunrajput) made their
first contribution in
[https://github.com/fastify/fastify/pull/5189](https://togithub.com/fastify/fastify/pull/5189)
- [@&#8203;skwee357](https://togithub.com/skwee357) made their first
contribution in
[https://github.com/fastify/fastify/pull/5046](https://togithub.com/fastify/fastify/pull/5046)
- [@&#8203;flodlc](https://togithub.com/flodlc) made their first
contribution in
[https://github.com/fastify/fastify/pull/5132](https://togithub.com/fastify/fastify/pull/5132)
- [@&#8203;nokazn](https://togithub.com/nokazn) made their first
contribution in
[https://github.com/fastify/fastify/pull/5191](https://togithub.com/fastify/fastify/pull/5191)
- [@&#8203;UndefinedBehaviour](https://togithub.com/UndefinedBehaviour)
made their first contribution in
[https://github.com/fastify/fastify/pull/5184](https://togithub.com/fastify/fastify/pull/5184)

**Full Changelog**:
fastify/fastify@v4.24.3...v4.25.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 has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/tomacheese/telcheck).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in redwoodjs/graphql Jan 29, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [fastify](https://www.fastify.dev/)
([source](https://togithub.com/fastify/fastify)) | [`4.24.3` ->
`4.25.2`](https://renovatebot.com/diffs/npm/fastify/4.24.3/4.25.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastify/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastify/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastify/4.24.3/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastify/4.24.3/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>fastify/fastify (fastify)</summary>

###
[`v4.25.2`](https://togithub.com/fastify/fastify/releases/tag/v4.25.2)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.25.1...v4.25.2)

#### What's Changed

- fix: `npm run test:watch` by
[@&#8203;domdomegg](https://togithub.com/domdomegg) in
[https://github.com/fastify/fastify/pull/5221](https://togithub.com/fastify/fastify/pull/5221)
- fix: always consume stream payloads when responding to 204 with no
body by [@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5231](https://togithub.com/fastify/fastify/pull/5231)
- docs: update setErrorHandler to explain not found behaviour by
[@&#8203;domdomegg](https://togithub.com/domdomegg) in
[https://github.com/fastify/fastify/pull/5218](https://togithub.com/fastify/fastify/pull/5218)

#### New Contributors

- [@&#8203;domdomegg](https://togithub.com/domdomegg) made their first
contribution in
[https://github.com/fastify/fastify/pull/5221](https://togithub.com/fastify/fastify/pull/5221)

**Full Changelog**:
fastify/fastify@v4.25.1...v4.25.2

###
[`v4.25.1`](https://togithub.com/fastify/fastify/releases/tag/v4.25.1)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.25.0...v4.25.1)

#### What's Changed

- fix: route constraints by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[https://github.com/fastify/fastify/pull/5207](https://togithub.com/fastify/fastify/pull/5207)
- fix: Better plugin name detection for FSTWRN002 by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5209](https://togithub.com/fastify/fastify/pull/5209)
- chore: at-large project by [@&#8203;Eomm](https://togithub.com/Eomm)
in
[https://github.com/fastify/fastify/pull/5211](https://togithub.com/fastify/fastify/pull/5211)

**Full Changelog**:
fastify/fastify@v4.25.0...v4.25.1

###
[`v4.25.0`](https://togithub.com/fastify/fastify/releases/tag/v4.25.0)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.24.3...v4.25.0)

#### What's Changed

- feat: Improve RouteShorthandOptions\['constraints'] type by
[@&#8203;Fcmam5](https://togithub.com/Fcmam5) in
[https://github.com/fastify/fastify/pull/5097](https://togithub.com/fastify/fastify/pull/5097)
- fix: add [@&#8203;eomm](https://togithub.com/eomm) and
[@&#8203;jsumners](https://togithub.com/jsumners) as lead maintainers by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5115](https://togithub.com/fastify/fastify/pull/5115)
- fix: reply.send supports Uint8Array payload by
[@&#8203;SgtPooki](https://togithub.com/SgtPooki) in
[https://github.com/fastify/fastify/pull/5124](https://togithub.com/fastify/fastify/pull/5124)
- refactor: migrate deprecation warnings to actual deprecation warnings
by [@&#8203;jsumners](https://togithub.com/jsumners) in
[https://github.com/fastify/fastify/pull/5126](https://togithub.com/fastify/fastify/pull/5126)
- docs: added documentation about warnings by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5108](https://togithub.com/fastify/fastify/pull/5108)
- test(logger): restrict temp file permissions by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5128](https://togithub.com/fastify/fastify/pull/5128)
- refactor(lib/hooks): replace `typeof` undefined check by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5127](https://togithub.com/fastify/fastify/pull/5127)
- chore: replace mention of fastify `.io` domain with `.dev` by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5129](https://togithub.com/fastify/fastify/pull/5129)
- docs(security): add prose explaining OpenSSF CII Best Practices badge
results by [@&#8203;ljharb](https://togithub.com/ljharb) in
[https://github.com/fastify/fastify/pull/5111](https://togithub.com/fastify/fastify/pull/5111)
- chore: Bump actions/setup-node from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/5134](https://togithub.com/fastify/fastify/pull/5134)
- fix(types): add handler property to routeOptions by
[@&#8203;MikeJeffers](https://togithub.com/MikeJeffers) in
[https://github.com/fastify/fastify/pull/5136](https://togithub.com/fastify/fastify/pull/5136)
- docs(readme): fix ci badge path by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5138](https://togithub.com/fastify/fastify/pull/5138)
- docs: Fix small typo in Typescript docs by
[@&#8203;john-ko](https://togithub.com/john-ko) in
[https://github.com/fastify/fastify/pull/5145](https://togithub.com/fastify/fastify/pull/5145)
- feat(plugins): mixing async and callback style now returns a warning
by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5139](https://togithub.com/fastify/fastify/pull/5139)
- docs: mention about multipart support by
[@&#8203;fawazahmed0](https://togithub.com/fawazahmed0) in
[https://github.com/fastify/fastify/pull/5144](https://togithub.com/fastify/fastify/pull/5144)
- docs: add [@&#8203;fastify/vite](https://togithub.com/fastify/vite) to
core plugins list by [@&#8203;galvez](https://togithub.com/galvez) in
[https://github.com/fastify/fastify/pull/5153](https://togithub.com/fastify/fastify/pull/5153)
- docs: add
[@&#8203;scalar/fastify-api-reference](https://togithub.com/scalar/fastify-api-reference)
to community plugins list by
[@&#8203;hanspagel](https://togithub.com/hanspagel) in
[https://github.com/fastify/fastify/pull/5154](https://togithub.com/fastify/fastify/pull/5154)
- docs: Remove routeOptions reference in Reply.md by
[@&#8203;shadahmad7](https://togithub.com/shadahmad7) in
[https://github.com/fastify/fastify/pull/5156](https://togithub.com/fastify/fastify/pull/5156)
- docs(ecosystem): add fastify-uws by
[@&#8203;tinchoz49](https://togithub.com/tinchoz49) in
[https://github.com/fastify/fastify/pull/5160](https://togithub.com/fastify/fastify/pull/5160)
- docs: removed unmaintained fastify-nodemailer from ecosystem by
[@&#8203;giovanni-bertoncelli](https://togithub.com/giovanni-bertoncelli)
in
[https://github.com/fastify/fastify/pull/5161](https://togithub.com/fastify/fastify/pull/5161)
- docs: clarify handling of streams and buffers by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[https://github.com/fastify/fastify/pull/5166](https://togithub.com/fastify/fastify/pull/5166)
-
docs([#&#8203;5142](https://togithub.com/fastify/fastify/issues/5142)):
aligned errors and warnings documentation by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5162](https://togithub.com/fastify/fastify/pull/5162)
- docs(reference/hooks): add information about prehandler by
[@&#8203;RjManhas](https://togithub.com/RjManhas) in
[https://github.com/fastify/fastify/pull/5163](https://togithub.com/fastify/fastify/pull/5163)
- fix: type FastifyInstance\['route'] and RouteShorthandMethod by
[@&#8203;MunifTanjim](https://togithub.com/MunifTanjim) in
[https://github.com/fastify/fastify/pull/5155](https://togithub.com/fastify/fastify/pull/5155)
- docs (reference): Fix small typo in Request by
[@&#8203;bngarren](https://togithub.com/bngarren) in
[https://github.com/fastify/fastify/pull/5186](https://togithub.com/fastify/fastify/pull/5186)
- chore: gitpodify by
[@&#8203;ghostdevv](https://togithub.com/ghostdevv) in
[https://github.com/fastify/fastify/pull/5168](https://togithub.com/fastify/fastify/pull/5168)
- docs(ecosystem): Add Apitally by
[@&#8203;itssimon](https://togithub.com/itssimon) in
[https://github.com/fastify/fastify/pull/5175](https://togithub.com/fastify/fastify/pull/5175)
- fix: Update reply.context deprecation warning by
[@&#8203;avaly](https://togithub.com/avaly) in
[https://github.com/fastify/fastify/pull/5179](https://togithub.com/fastify/fastify/pull/5179)
- docs(ecosystem): adds @&#8203;blastorg/fastify/aws-dynamodb-cache to
community plugins list by
[@&#8203;fredrikj31](https://togithub.com/fredrikj31) in
[https://github.com/fastify/fastify/pull/5158](https://togithub.com/fastify/fastify/pull/5158)
- docs: update preHandler hook example by
[@&#8203;tarunrajput](https://togithub.com/tarunrajput) in
[https://github.com/fastify/fastify/pull/5189](https://togithub.com/fastify/fastify/pull/5189)
- types: added http header types to reply by
[@&#8203;skwee357](https://togithub.com/skwee357) in
[https://github.com/fastify/fastify/pull/5046](https://togithub.com/fastify/fastify/pull/5046)
- test: add tests for TOC of errors.md by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5194](https://togithub.com/fastify/fastify/pull/5194)
- ci: pin node 18 to 18.18.2 by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5197](https://togithub.com/fastify/fastify/pull/5197)
- docs(ecosystem): add http-wizard by
[@&#8203;flodlc](https://togithub.com/flodlc) in
[https://github.com/fastify/fastify/pull/5132](https://togithub.com/fastify/fastify/pull/5132)
- chore: Bump actions/github-script from 6 to 7 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/5183](https://togithub.com/fastify/fastify/pull/5183)
- ci: fix broken ci by skipping tests if node v > 18.19.0 by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5195](https://togithub.com/fastify/fastify/pull/5195)
- fix: allow async hooks in `RouteShorthandOptions` without breaking
`request` and `reply` types by
[@&#8203;bienzaaron](https://togithub.com/bienzaaron) in
[https://github.com/fastify/fastify/pull/5147](https://togithub.com/fastify/fastify/pull/5147)
- fix([#&#8203;5180](https://togithub.com/fastify/fastify/issues/5180)):
close secondary bindings after primary is closed by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/5201](https://togithub.com/fastify/fastify/pull/5201)
- chore: update process-warning by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[https://github.com/fastify/fastify/pull/5206](https://togithub.com/fastify/fastify/pull/5206)
- types: nullish error types in callback function's parameter for
`after` and `ready` method by
[@&#8203;nokazn](https://togithub.com/nokazn) in
[https://github.com/fastify/fastify/pull/5191](https://togithub.com/fastify/fastify/pull/5191)
- fix([#&#8203;5049](https://togithub.com/fastify/fastify/issues/5049)):
Remove duplicated calls to onReady by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/5051](https://togithub.com/fastify/fastify/pull/5051)
- chore: remove unused type assertion by
[@&#8203;UndefinedBehaviour](https://togithub.com/UndefinedBehaviour) in
[https://github.com/fastify/fastify/pull/5184](https://togithub.com/fastify/fastify/pull/5184)

#### New Contributors

- [@&#8203;Fcmam5](https://togithub.com/Fcmam5) made their first
contribution in
[https://github.com/fastify/fastify/pull/5097](https://togithub.com/fastify/fastify/pull/5097)
- [@&#8203;SgtPooki](https://togithub.com/SgtPooki) made their first
contribution in
[https://github.com/fastify/fastify/pull/5124](https://togithub.com/fastify/fastify/pull/5124)
- [@&#8203;MikeJeffers](https://togithub.com/MikeJeffers) made their
first contribution in
[https://github.com/fastify/fastify/pull/5136](https://togithub.com/fastify/fastify/pull/5136)
- [@&#8203;john-ko](https://togithub.com/john-ko) made their first
contribution in
[https://github.com/fastify/fastify/pull/5145](https://togithub.com/fastify/fastify/pull/5145)
- [@&#8203;fawazahmed0](https://togithub.com/fawazahmed0) made their
first contribution in
[https://github.com/fastify/fastify/pull/5144](https://togithub.com/fastify/fastify/pull/5144)
- [@&#8203;hanspagel](https://togithub.com/hanspagel) made their first
contribution in
[https://github.com/fastify/fastify/pull/5154](https://togithub.com/fastify/fastify/pull/5154)
- [@&#8203;shadahmad7](https://togithub.com/shadahmad7) made their first
contribution in
[https://github.com/fastify/fastify/pull/5156](https://togithub.com/fastify/fastify/pull/5156)
-
[@&#8203;giovanni-bertoncelli](https://togithub.com/giovanni-bertoncelli)
made their first contribution in
[https://github.com/fastify/fastify/pull/5161](https://togithub.com/fastify/fastify/pull/5161)
- [@&#8203;RjManhas](https://togithub.com/RjManhas) made their first
contribution in
[https://github.com/fastify/fastify/pull/5163](https://togithub.com/fastify/fastify/pull/5163)
- [@&#8203;MunifTanjim](https://togithub.com/MunifTanjim) made their
first contribution in
[https://github.com/fastify/fastify/pull/5155](https://togithub.com/fastify/fastify/pull/5155)
- [@&#8203;bngarren](https://togithub.com/bngarren) made their first
contribution in
[https://github.com/fastify/fastify/pull/5186](https://togithub.com/fastify/fastify/pull/5186)
- [@&#8203;ghostdevv](https://togithub.com/ghostdevv) made their first
contribution in
[https://github.com/fastify/fastify/pull/5168](https://togithub.com/fastify/fastify/pull/5168)
- [@&#8203;itssimon](https://togithub.com/itssimon) made their first
contribution in
[https://github.com/fastify/fastify/pull/5175](https://togithub.com/fastify/fastify/pull/5175)
- [@&#8203;avaly](https://togithub.com/avaly) made their first
contribution in
[https://github.com/fastify/fastify/pull/5179](https://togithub.com/fastify/fastify/pull/5179)
- [@&#8203;fredrikj31](https://togithub.com/fredrikj31) made their first
contribution in
[https://github.com/fastify/fastify/pull/5158](https://togithub.com/fastify/fastify/pull/5158)
- [@&#8203;tarunrajput](https://togithub.com/tarunrajput) made their
first contribution in
[https://github.com/fastify/fastify/pull/5189](https://togithub.com/fastify/fastify/pull/5189)
- [@&#8203;skwee357](https://togithub.com/skwee357) made their first
contribution in
[https://github.com/fastify/fastify/pull/5046](https://togithub.com/fastify/fastify/pull/5046)
- [@&#8203;flodlc](https://togithub.com/flodlc) made their first
contribution in
[https://github.com/fastify/fastify/pull/5132](https://togithub.com/fastify/fastify/pull/5132)
- [@&#8203;nokazn](https://togithub.com/nokazn) made their first
contribution in
[https://github.com/fastify/fastify/pull/5191](https://togithub.com/fastify/fastify/pull/5191)
- [@&#8203;UndefinedBehaviour](https://togithub.com/UndefinedBehaviour)
made their first contribution in
[https://github.com/fastify/fastify/pull/5184](https://togithub.com/fastify/fastify/pull/5184)

**Full Changelog**:
fastify/fastify@v4.24.3...v4.25.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 these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/redwoodjs/redwood).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE1My4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
jtoar referenced this pull request in redwoodjs/graphql Jan 29, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [fastify](https://www.fastify.dev/)
([source](https://togithub.com/fastify/fastify)) | [`4.24.3` ->
`4.25.2`](https://renovatebot.com/diffs/npm/fastify/4.24.3/4.25.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastify/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastify/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastify/4.24.3/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastify/4.24.3/4.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>fastify/fastify (fastify)</summary>

###
[`v4.25.2`](https://togithub.com/fastify/fastify/releases/tag/v4.25.2)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.25.1...v4.25.2)

#### What's Changed

- fix: `npm run test:watch` by
[@&#8203;domdomegg](https://togithub.com/domdomegg) in
[https://github.com/fastify/fastify/pull/5221](https://togithub.com/fastify/fastify/pull/5221)
- fix: always consume stream payloads when responding to 204 with no
body by [@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5231](https://togithub.com/fastify/fastify/pull/5231)
- docs: update setErrorHandler to explain not found behaviour by
[@&#8203;domdomegg](https://togithub.com/domdomegg) in
[https://github.com/fastify/fastify/pull/5218](https://togithub.com/fastify/fastify/pull/5218)

#### New Contributors

- [@&#8203;domdomegg](https://togithub.com/domdomegg) made their first
contribution in
[https://github.com/fastify/fastify/pull/5221](https://togithub.com/fastify/fastify/pull/5221)

**Full Changelog**:
fastify/fastify@v4.25.1...v4.25.2

###
[`v4.25.1`](https://togithub.com/fastify/fastify/releases/tag/v4.25.1)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.25.0...v4.25.1)

#### What's Changed

- fix: route constraints by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[https://github.com/fastify/fastify/pull/5207](https://togithub.com/fastify/fastify/pull/5207)
- fix: Better plugin name detection for FSTWRN002 by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5209](https://togithub.com/fastify/fastify/pull/5209)
- chore: at-large project by [@&#8203;Eomm](https://togithub.com/Eomm)
in
[https://github.com/fastify/fastify/pull/5211](https://togithub.com/fastify/fastify/pull/5211)

**Full Changelog**:
fastify/fastify@v4.25.0...v4.25.1

###
[`v4.25.0`](https://togithub.com/fastify/fastify/releases/tag/v4.25.0)

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.24.3...v4.25.0)

#### What's Changed

- feat: Improve RouteShorthandOptions\['constraints'] type by
[@&#8203;Fcmam5](https://togithub.com/Fcmam5) in
[https://github.com/fastify/fastify/pull/5097](https://togithub.com/fastify/fastify/pull/5097)
- fix: add [@&#8203;eomm](https://togithub.com/eomm) and
[@&#8203;jsumners](https://togithub.com/jsumners) as lead maintainers by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/5115](https://togithub.com/fastify/fastify/pull/5115)
- fix: reply.send supports Uint8Array payload by
[@&#8203;SgtPooki](https://togithub.com/SgtPooki) in
[https://github.com/fastify/fastify/pull/5124](https://togithub.com/fastify/fastify/pull/5124)
- refactor: migrate deprecation warnings to actual deprecation warnings
by [@&#8203;jsumners](https://togithub.com/jsumners) in
[https://github.com/fastify/fastify/pull/5126](https://togithub.com/fastify/fastify/pull/5126)
- docs: added documentation about warnings by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5108](https://togithub.com/fastify/fastify/pull/5108)
- test(logger): restrict temp file permissions by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5128](https://togithub.com/fastify/fastify/pull/5128)
- refactor(lib/hooks): replace `typeof` undefined check by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5127](https://togithub.com/fastify/fastify/pull/5127)
- chore: replace mention of fastify `.io` domain with `.dev` by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5129](https://togithub.com/fastify/fastify/pull/5129)
- docs(security): add prose explaining OpenSSF CII Best Practices badge
results by [@&#8203;ljharb](https://togithub.com/ljharb) in
[https://github.com/fastify/fastify/pull/5111](https://togithub.com/fastify/fastify/pull/5111)
- chore: Bump actions/setup-node from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/5134](https://togithub.com/fastify/fastify/pull/5134)
- fix(types): add handler property to routeOptions by
[@&#8203;MikeJeffers](https://togithub.com/MikeJeffers) in
[https://github.com/fastify/fastify/pull/5136](https://togithub.com/fastify/fastify/pull/5136)
- docs(readme): fix ci badge path by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[https://github.com/fastify/fastify/pull/5138](https://togithub.com/fastify/fastify/pull/5138)
- docs: Fix small typo in Typescript docs by
[@&#8203;john-ko](https://togithub.com/john-ko) in
[https://github.com/fastify/fastify/pull/5145](https://togithub.com/fastify/fastify/pull/5145)
- feat(plugins): mixing async and callback style now returns a warning
by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5139](https://togithub.com/fastify/fastify/pull/5139)
- docs: mention about multipart support by
[@&#8203;fawazahmed0](https://togithub.com/fawazahmed0) in
[https://github.com/fastify/fastify/pull/5144](https://togithub.com/fastify/fastify/pull/5144)
- docs: add [@&#8203;fastify/vite](https://togithub.com/fastify/vite) to
core plugins list by [@&#8203;galvez](https://togithub.com/galvez) in
[https://github.com/fastify/fastify/pull/5153](https://togithub.com/fastify/fastify/pull/5153)
- docs: add
[@&#8203;scalar/fastify-api-reference](https://togithub.com/scalar/fastify-api-reference)
to community plugins list by
[@&#8203;hanspagel](https://togithub.com/hanspagel) in
[https://github.com/fastify/fastify/pull/5154](https://togithub.com/fastify/fastify/pull/5154)
- docs: Remove routeOptions reference in Reply.md by
[@&#8203;shadahmad7](https://togithub.com/shadahmad7) in
[https://github.com/fastify/fastify/pull/5156](https://togithub.com/fastify/fastify/pull/5156)
- docs(ecosystem): add fastify-uws by
[@&#8203;tinchoz49](https://togithub.com/tinchoz49) in
[https://github.com/fastify/fastify/pull/5160](https://togithub.com/fastify/fastify/pull/5160)
- docs: removed unmaintained fastify-nodemailer from ecosystem by
[@&#8203;giovanni-bertoncelli](https://togithub.com/giovanni-bertoncelli)
in
[https://github.com/fastify/fastify/pull/5161](https://togithub.com/fastify/fastify/pull/5161)
- docs: clarify handling of streams and buffers by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[https://github.com/fastify/fastify/pull/5166](https://togithub.com/fastify/fastify/pull/5166)
-
docs([#&#8203;5142](https://togithub.com/fastify/fastify/issues/5142)):
aligned errors and warnings documentation by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[https://github.com/fastify/fastify/pull/5162](https://togithub.com/fastify/fastify/pull/5162)
- docs(reference/hooks): add information about prehandler by
[@&#8203;RjManhas](https://togithub.com/RjManhas) in
[https://github.com/fastify/fastify/pull/5163](https://togithub.com/fastify/fastify/pull/5163)
- fix: type FastifyInstance\['route'] and RouteShorthandMethod by
[@&#8203;MunifTanjim](https://togithub.com/MunifTanjim) in
[https://github.com/fastify/fastify/pull/5155](https://togithub.com/fastify/fastify/pull/5155)
- docs (reference): Fix small typo in Request by
[@&#8203;bngarren](https://togithub.com/bngarren) in
[https://github.com/fastify/fastify/pull/5186](https://togithub.com/fastify/fastify/pull/5186)
- chore: gitpodify by
[@&#8203;ghostdevv](https://togithub.com/ghostdevv) in
[https://github.com/fastify/fastify/pull/5168](https://togithub.com/fastify/fastify/pull/5168)
- docs(ecosystem): Add Apitally by
[@&#8203;itssimon](https://togithub.com/itssimon) in
[https://github.com/fastify/fastify/pull/5175](https://togithub.com/fastify/fastify/pull/5175)
- fix: Update reply.context deprecation warning by
[@&#8203;avaly](https://togithub.com/avaly) in
[https://github.com/fastify/fastify/pull/5179](https://togithub.com/fastify/fastify/pull/5179)
- docs(ecosystem): adds @&#8203;blastorg/fastify/aws-dynamodb-cache to
community plugins list by
[@&#8203;fredrikj31](https://togithub.com/fredrikj31) in
[https://github.com/fastify/fastify/pull/5158](https://togithub.com/fastify/fastify/pull/5158)
- docs: update preHandler hook example by
[@&#8203;tarunrajput](https://togithub.com/tarunrajput) in
[https://github.com/fastify/fastify/pull/5189](https://togithub.com/fastify/fastify/pull/5189)
- types: added http header types to reply by
[@&#8203;skwee357](https://togithub.com/skwee357) in
[https://github.com/fastify/fastify/pull/5046](https://togithub.com/fastify/fastify/pull/5046)
- test: add tests for TOC of errors.md by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5194](https://togithub.com/fastify/fastify/pull/5194)
- ci: pin node 18 to 18.18.2 by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5197](https://togithub.com/fastify/fastify/pull/5197)
- docs(ecosystem): add http-wizard by
[@&#8203;flodlc](https://togithub.com/flodlc) in
[https://github.com/fastify/fastify/pull/5132](https://togithub.com/fastify/fastify/pull/5132)
- chore: Bump actions/github-script from 6 to 7 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/5183](https://togithub.com/fastify/fastify/pull/5183)
- ci: fix broken ci by skipping tests if node v > 18.19.0 by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/5195](https://togithub.com/fastify/fastify/pull/5195)
- fix: allow async hooks in `RouteShorthandOptions` without breaking
`request` and `reply` types by
[@&#8203;bienzaaron](https://togithub.com/bienzaaron) in
[https://github.com/fastify/fastify/pull/5147](https://togithub.com/fastify/fastify/pull/5147)
- fix([#&#8203;5180](https://togithub.com/fastify/fastify/issues/5180)):
close secondary bindings after primary is closed by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/5201](https://togithub.com/fastify/fastify/pull/5201)
- chore: update process-warning by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[https://github.com/fastify/fastify/pull/5206](https://togithub.com/fastify/fastify/pull/5206)
- types: nullish error types in callback function's parameter for
`after` and `ready` method by
[@&#8203;nokazn](https://togithub.com/nokazn) in
[https://github.com/fastify/fastify/pull/5191](https://togithub.com/fastify/fastify/pull/5191)
- fix([#&#8203;5049](https://togithub.com/fastify/fastify/issues/5049)):
Remove duplicated calls to onReady by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/5051](https://togithub.com/fastify/fastify/pull/5051)
- chore: remove unused type assertion by
[@&#8203;UndefinedBehaviour](https://togithub.com/UndefinedBehaviour) in
[https://github.com/fastify/fastify/pull/5184](https://togithub.com/fastify/fastify/pull/5184)

#### New Contributors

- [@&#8203;Fcmam5](https://togithub.com/Fcmam5) made their first
contribution in
[https://github.com/fastify/fastify/pull/5097](https://togithub.com/fastify/fastify/pull/5097)
- [@&#8203;SgtPooki](https://togithub.com/SgtPooki) made their first
contribution in
[https://github.com/fastify/fastify/pull/5124](https://togithub.com/fastify/fastify/pull/5124)
- [@&#8203;MikeJeffers](https://togithub.com/MikeJeffers) made their
first contribution in
[https://github.com/fastify/fastify/pull/5136](https://togithub.com/fastify/fastify/pull/5136)
- [@&#8203;john-ko](https://togithub.com/john-ko) made their first
contribution in
[https://github.com/fastify/fastify/pull/5145](https://togithub.com/fastify/fastify/pull/5145)
- [@&#8203;fawazahmed0](https://togithub.com/fawazahmed0) made their
first contribution in
[https://github.com/fastify/fastify/pull/5144](https://togithub.com/fastify/fastify/pull/5144)
- [@&#8203;hanspagel](https://togithub.com/hanspagel) made their first
contribution in
[https://github.com/fastify/fastify/pull/5154](https://togithub.com/fastify/fastify/pull/5154)
- [@&#8203;shadahmad7](https://togithub.com/shadahmad7) made their first
contribution in
[https://github.com/fastify/fastify/pull/5156](https://togithub.com/fastify/fastify/pull/5156)
-
[@&#8203;giovanni-bertoncelli](https://togithub.com/giovanni-bertoncelli)
made their first contribution in
[https://github.com/fastify/fastify/pull/5161](https://togithub.com/fastify/fastify/pull/5161)
- [@&#8203;RjManhas](https://togithub.com/RjManhas) made their first
contribution in
[https://github.com/fastify/fastify/pull/5163](https://togithub.com/fastify/fastify/pull/5163)
- [@&#8203;MunifTanjim](https://togithub.com/MunifTanjim) made their
first contribution in
[https://github.com/fastify/fastify/pull/5155](https://togithub.com/fastify/fastify/pull/5155)
- [@&#8203;bngarren](https://togithub.com/bngarren) made their first
contribution in
[https://github.com/fastify/fastify/pull/5186](https://togithub.com/fastify/fastify/pull/5186)
- [@&#8203;ghostdevv](https://togithub.com/ghostdevv) made their first
contribution in
[https://github.com/fastify/fastify/pull/5168](https://togithub.com/fastify/fastify/pull/5168)
- [@&#8203;itssimon](https://togithub.com/itssimon) made their first
contribution in
[https://github.com/fastify/fastify/pull/5175](https://togithub.com/fastify/fastify/pull/5175)
- [@&#8203;avaly](https://togithub.com/avaly) made their first
contribution in
[https://github.com/fastify/fastify/pull/5179](https://togithub.com/fastify/fastify/pull/5179)
- [@&#8203;fredrikj31](https://togithub.com/fredrikj31) made their first
contribution in
[https://github.com/fastify/fastify/pull/5158](https://togithub.com/fastify/fastify/pull/5158)
- [@&#8203;tarunrajput](https://togithub.com/tarunrajput) made their
first contribution in
[https://github.com/fastify/fastify/pull/5189](https://togithub.com/fastify/fastify/pull/5189)
- [@&#8203;skwee357](https://togithub.com/skwee357) made their first
contribution in
[https://github.com/fastify/fastify/pull/5046](https://togithub.com/fastify/fastify/pull/5046)
- [@&#8203;flodlc](https://togithub.com/flodlc) made their first
contribution in
[https://github.com/fastify/fastify/pull/5132](https://togithub.com/fastify/fastify/pull/5132)
- [@&#8203;nokazn](https://togithub.com/nokazn) made their first
contribution in
[https://github.com/fastify/fastify/pull/5191](https://togithub.com/fastify/fastify/pull/5191)
- [@&#8203;UndefinedBehaviour](https://togithub.com/UndefinedBehaviour)
made their first contribution in
[https://github.com/fastify/fastify/pull/5184](https://togithub.com/fastify/fastify/pull/5184)

**Full Changelog**:
fastify/fastify@v4.24.3...v4.25.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 these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/redwoodjs/redwood).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE1My4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@github-actions
Copy link

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.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Dec 14, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

typescript TypeScript related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support RouteShorthandOptions to receive async hooks

7 participants