Skip to content

improve hooks.validate#4804

Merged
mcollina merged 3 commits intomainfrom
make-hooks-more-generic-step1
Jul 9, 2023
Merged

improve hooks.validate#4804
mcollina merged 3 commits intomainfrom
make-hooks-more-generic-step1

Conversation

@Uzlopak
Copy link
Contributor

@Uzlopak Uzlopak commented Jun 9, 2023

I want to make the Hooks Class capable of handling other events too. To make it possible to add in future more events, the validation function will check if a field is an Array. Also making hooks extend from NullObject, so prototype pollution is not possible.

Checklist

Hooks.prototype.validate = function (hook, fn) {
if (typeof hook !== 'string') throw new FST_ERR_HOOK_INVALID_TYPE()
if (supportedHooks.indexOf(hook) === -1) {
if (Array.isArray(this[hook]) === false) {
Copy link
Member

Choose a reason for hiding this comment

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

Too relax for the check. I would put the supported hook as the static property of Hooks class.
So it own Hooks.ApplicationHooks, Hooks.LifeCycleHooks and Hooks.CustomHooks.

Then, it should be extendible in future by adding custom hook name to the Hooks.CustomHooks

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 with @climba03003 considerations

@Uzlopak
Copy link
Contributor Author

Uzlopak commented Jun 9, 2023

I personally disagree. By changing the prototype to NullObject, we only have add and validate and the rest are the arrays of the hooks.

@Uzlopak
Copy link
Contributor Author

Uzlopak commented Jul 8, 2023

I quite dont get, why @climba03003 and @mcollina want to separate the hook names into two or three Objects/Arrays.

In my PR I basically make Hooks inheriting from null property. So Hooks only has the methods validate and add as non-Arrays. The rest are the hookFn-Arrays. So checking if a hookName is a attribute of Hooks and is an Array is sufficient.

@climba03003 wrote that the check is too loose (which is disagree). And that he wants three additional attributes: ApplicationHooks, LifeCycleHooks and CustomHooks.

It makes for me not sense to check three different Objects or Arrays to determine if we have those Hooks already or not, if fastify is just having a method called addHook. If we would have methods like addLifecycleHook or addApplicationHook it would make sense to differentiate them.

Copy link
Member

@Eomm Eomm left a comment

Choose a reason for hiding this comment

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

Can't see the pro on splitting the hooks too right now

If we want to add a CustomHooks, the split should stay in that PR, IMHO

For sure a static array would be helpful if we expose it. I listed the hooks in different plugins tho

@Eomm Eomm added the chore Small changes or internal project maintenance label Jul 8, 2023
Co-authored-by: Manuel Spigolon <behemoth89@gmail.com>
@mcollina
Copy link
Member

mcollina commented Jul 8, 2023

I quite dont get, why @climba03003 and @mcollina want to separate the hook names into two or three Objects/Arrays.

Can you clarify this? I'm not sure what you refer to.

@Uzlopak
Copy link
Contributor Author

Uzlopak commented Jul 8, 2023

You wrote LGTM with @climba03003 considerations. So I assume you want the changes proposed by @climba03003 ?

@climba03003 climba03003 dismissed their stale review July 9, 2023 12:03

I see there is other place using Array.isArray for checking the same thing. So, not blocking.

@mcollina
Copy link
Member

mcollina commented Jul 9, 2023

My concern of the direction of this work is that it might slow us down without us realizing it. I wrote a good part of the hook system to maximize its performance, which meant duplicating some code. I would prefer to have all custom hooks elsewhere.

@mcollina mcollina merged commit 58dfb00 into main Jul 9, 2023
@mcollina mcollina deleted the make-hooks-more-generic-step1 branch July 9, 2023 13:13
renovate bot referenced this pull request in tomacheese/telcheck Jul 17, 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.io/)
([source](https://togithub.com/fastify/fastify)) | [`4.19.2` ->
`4.20.0`](https://renovatebot.com/diffs/npm/fastify/4.19.2/4.20.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastify/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastify/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastify/4.19.2/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastify/4.19.2/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.19.2...v4.20.0)

#### What's Changed

- build(deps-dev): Bump
[@&#8203;sinclair/typebox](https://togithub.com/sinclair/typebox) from
0.28.20 to 0.29.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/4877](https://togithub.com/fastify/fastify/pull/4877)
- Update Prototype-Poisoning.md by
[@&#8203;ed-henrique](https://togithub.com/ed-henrique) in
[https://github.com/fastify/fastify/pull/4879](https://togithub.com/fastify/fastify/pull/4879)
- docs: adjust line for linter by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/4882](https://togithub.com/fastify/fastify/pull/4882)
- Fixed type inference on .code().send() by
[@&#8203;aadito123](https://togithub.com/aadito123) in
[https://github.com/fastify/fastify/pull/4880](https://togithub.com/fastify/fastify/pull/4880)
- chore: refactor Error-typings and tests by
[@&#8203;svrnwnsch](https://togithub.com/svrnwnsch) in
[https://github.com/fastify/fastify/pull/4824](https://togithub.com/fastify/fastify/pull/4824)
- test: add missing assertion for a test by
[@&#8203;kibertoad](https://togithub.com/kibertoad) in
[https://github.com/fastify/fastify/pull/4701](https://togithub.com/fastify/fastify/pull/4701)
- chore: tests for genReqIdFactory and minor changes by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4783](https://togithub.com/fastify/fastify/pull/4783)
- Added type definition for allowUnsafeRegex by
[@&#8203;xijdk](https://togithub.com/xijdk) in
[https://github.com/fastify/fastify/pull/4792](https://togithub.com/fastify/fastify/pull/4792)
- docs(security): update policy on ci/cd reports by
[@&#8203;jsumners](https://togithub.com/jsumners) in
[https://github.com/fastify/fastify/pull/4890](https://togithub.com/fastify/fastify/pull/4890)
- improve hooks.validate by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4804](https://togithub.com/fastify/fastify/pull/4804)
- ci: enable caching; split jobs by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4889](https://togithub.com/fastify/fastify/pull/4889)
- docs(plugins): note side-effect when using `await` in
`fastify.register()` by
[@&#8203;hateablestream](https://togithub.com/hateablestream) in
[https://github.com/fastify/fastify/pull/4846](https://togithub.com/fastify/fastify/pull/4846)
- \[hooks] Refine hook runners by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4805](https://togithub.com/fastify/fastify/pull/4805)
- docs: fix wrong header size for FST_ERR_ASYNC_CONSTRAINT in Errors.md
by [@&#8203;graphiteisaac](https://togithub.com/graphiteisaac) in
[https://github.com/fastify/fastify/pull/4893](https://togithub.com/fastify/fastify/pull/4893)
- fix: rework FastifyErrors, ensure documentation completeness by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4892](https://togithub.com/fastify/fastify/pull/4892)
- feat: add childLoggerFactory config by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[https://github.com/fastify/fastify/pull/4760](https://togithub.com/fastify/fastify/pull/4760)
- Fix setNotFoundHandler handler type by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[https://github.com/fastify/fastify/pull/4897](https://togithub.com/fastify/fastify/pull/4897)
- restore code coverage by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/4841](https://togithub.com/fastify/fastify/pull/4841)
- fix: handle abort signal before server is ready by
[@&#8203;shayff](https://togithub.com/shayff) in
[https://github.com/fastify/fastify/pull/4886](https://togithub.com/fastify/fastify/pull/4886)
- docs(client-aborted): remove deprecated function by
[@&#8203;JekRock](https://togithub.com/JekRock) in
[https://github.com/fastify/fastify/pull/4898](https://togithub.com/fastify/fastify/pull/4898)
- Revert "docs(client-aborted): remove deprecated function
([#&#8203;4898](https://togithub.com/fastify/fastify/issues/4898))" by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[https://github.com/fastify/fastify/pull/4901](https://togithub.com/fastify/fastify/pull/4901)
- docs(logging): fix typo by
[@&#8203;yamanidev](https://togithub.com/yamanidev) in
[https://github.com/fastify/fastify/pull/4905](https://togithub.com/fastify/fastify/pull/4905)
- Support IPv6 ::1 in listeningOrigin by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/4902](https://togithub.com/fastify/fastify/pull/4902)
- fix: extend isCustomValidatorCompiler from parent controller by
[@&#8203;tinchoz49](https://togithub.com/tinchoz49) in
[https://github.com/fastify/fastify/pull/4903](https://togithub.com/fastify/fastify/pull/4903)
- fix: allow uppercase requestdHeader by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4906](https://togithub.com/fastify/fastify/pull/4906)

#### New Contributors

- [@&#8203;ed-henrique](https://togithub.com/ed-henrique) made their
first contribution in
[https://github.com/fastify/fastify/pull/4879](https://togithub.com/fastify/fastify/pull/4879)
- [@&#8203;svrnwnsch](https://togithub.com/svrnwnsch) made their first
contribution in
[https://github.com/fastify/fastify/pull/4824](https://togithub.com/fastify/fastify/pull/4824)
- [@&#8203;xijdk](https://togithub.com/xijdk) made their first
contribution in
[https://github.com/fastify/fastify/pull/4792](https://togithub.com/fastify/fastify/pull/4792)
- [@&#8203;hateablestream](https://togithub.com/hateablestream) made
their first contribution in
[https://github.com/fastify/fastify/pull/4846](https://togithub.com/fastify/fastify/pull/4846)
- [@&#8203;graphiteisaac](https://togithub.com/graphiteisaac) made their
first contribution in
[https://github.com/fastify/fastify/pull/4893](https://togithub.com/fastify/fastify/pull/4893)
- [@&#8203;shayff](https://togithub.com/shayff) made their first
contribution in
[https://github.com/fastify/fastify/pull/4886](https://togithub.com/fastify/fastify/pull/4886)
- [@&#8203;JekRock](https://togithub.com/JekRock) made their first
contribution in
[https://github.com/fastify/fastify/pull/4898](https://togithub.com/fastify/fastify/pull/4898)
- [@&#8203;yamanidev](https://togithub.com/yamanidev) made their first
contribution in
[https://github.com/fastify/fastify/pull/4905](https://togithub.com/fastify/fastify/pull/4905)
- [@&#8203;tinchoz49](https://togithub.com/tinchoz49) made their first
contribution in
[https://github.com/fastify/fastify/pull/4903](https://togithub.com/fastify/fastify/pull/4903)

**Full Changelog**:
fastify/fastify@v4.19.2...v4.20.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:eyJjcmVhdGVkSW5WZXIiOiIzNi44LjExIiwidXBkYXRlZEluVmVyIjoiMzYuOC4xMSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in redwoodjs/graphql Jul 18, 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.io/)
([source](https://togithub.com/fastify/fastify)) | [`4.19.2` ->
`4.20.0`](https://renovatebot.com/diffs/npm/fastify/4.19.2/4.20.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastify/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastify/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastify/4.19.2/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastify/4.19.2/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.19.2...v4.20.0)

#### What's Changed

- build(deps-dev): Bump
[@&#8203;sinclair/typebox](https://togithub.com/sinclair/typebox) from
0.28.20 to 0.29.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/4877](https://togithub.com/fastify/fastify/pull/4877)
- Update Prototype-Poisoning.md by
[@&#8203;ed-henrique](https://togithub.com/ed-henrique) in
[https://github.com/fastify/fastify/pull/4879](https://togithub.com/fastify/fastify/pull/4879)
- docs: adjust line for linter by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/4882](https://togithub.com/fastify/fastify/pull/4882)
- Fixed type inference on .code().send() by
[@&#8203;aadito123](https://togithub.com/aadito123) in
[https://github.com/fastify/fastify/pull/4880](https://togithub.com/fastify/fastify/pull/4880)
- chore: refactor Error-typings and tests by
[@&#8203;svrnwnsch](https://togithub.com/svrnwnsch) in
[https://github.com/fastify/fastify/pull/4824](https://togithub.com/fastify/fastify/pull/4824)
- test: add missing assertion for a test by
[@&#8203;kibertoad](https://togithub.com/kibertoad) in
[https://github.com/fastify/fastify/pull/4701](https://togithub.com/fastify/fastify/pull/4701)
- chore: tests for genReqIdFactory and minor changes by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4783](https://togithub.com/fastify/fastify/pull/4783)
- Added type definition for allowUnsafeRegex by
[@&#8203;xijdk](https://togithub.com/xijdk) in
[https://github.com/fastify/fastify/pull/4792](https://togithub.com/fastify/fastify/pull/4792)
- docs(security): update policy on ci/cd reports by
[@&#8203;jsumners](https://togithub.com/jsumners) in
[https://github.com/fastify/fastify/pull/4890](https://togithub.com/fastify/fastify/pull/4890)
- improve hooks.validate by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4804](https://togithub.com/fastify/fastify/pull/4804)
- ci: enable caching; split jobs by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4889](https://togithub.com/fastify/fastify/pull/4889)
- docs(plugins): note side-effect when using `await` in
`fastify.register()` by
[@&#8203;hateablestream](https://togithub.com/hateablestream) in
[https://github.com/fastify/fastify/pull/4846](https://togithub.com/fastify/fastify/pull/4846)
- \[hooks] Refine hook runners by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4805](https://togithub.com/fastify/fastify/pull/4805)
- docs: fix wrong header size for FST_ERR_ASYNC_CONSTRAINT in Errors.md
by [@&#8203;graphiteisaac](https://togithub.com/graphiteisaac) in
[https://github.com/fastify/fastify/pull/4893](https://togithub.com/fastify/fastify/pull/4893)
- fix: rework FastifyErrors, ensure documentation completeness by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4892](https://togithub.com/fastify/fastify/pull/4892)
- feat: add childLoggerFactory config by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[https://github.com/fastify/fastify/pull/4760](https://togithub.com/fastify/fastify/pull/4760)
- Fix setNotFoundHandler handler type by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[https://github.com/fastify/fastify/pull/4897](https://togithub.com/fastify/fastify/pull/4897)
- restore code coverage by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/4841](https://togithub.com/fastify/fastify/pull/4841)
- fix: handle abort signal before server is ready by
[@&#8203;shayff](https://togithub.com/shayff) in
[https://github.com/fastify/fastify/pull/4886](https://togithub.com/fastify/fastify/pull/4886)
- docs(client-aborted): remove deprecated function by
[@&#8203;JekRock](https://togithub.com/JekRock) in
[https://github.com/fastify/fastify/pull/4898](https://togithub.com/fastify/fastify/pull/4898)
- Revert "docs(client-aborted): remove deprecated function
([#&#8203;4898](https://togithub.com/fastify/fastify/issues/4898))" by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[https://github.com/fastify/fastify/pull/4901](https://togithub.com/fastify/fastify/pull/4901)
- docs(logging): fix typo by
[@&#8203;yamanidev](https://togithub.com/yamanidev) in
[https://github.com/fastify/fastify/pull/4905](https://togithub.com/fastify/fastify/pull/4905)
- Support IPv6 ::1 in listeningOrigin by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/4902](https://togithub.com/fastify/fastify/pull/4902)
- fix: extend isCustomValidatorCompiler from parent controller by
[@&#8203;tinchoz49](https://togithub.com/tinchoz49) in
[https://github.com/fastify/fastify/pull/4903](https://togithub.com/fastify/fastify/pull/4903)
- fix: allow uppercase requestdHeader by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4906](https://togithub.com/fastify/fastify/pull/4906)

#### New Contributors

- [@&#8203;ed-henrique](https://togithub.com/ed-henrique) made their
first contribution in
[https://github.com/fastify/fastify/pull/4879](https://togithub.com/fastify/fastify/pull/4879)
- [@&#8203;svrnwnsch](https://togithub.com/svrnwnsch) made their first
contribution in
[https://github.com/fastify/fastify/pull/4824](https://togithub.com/fastify/fastify/pull/4824)
- [@&#8203;xijdk](https://togithub.com/xijdk) made their first
contribution in
[https://github.com/fastify/fastify/pull/4792](https://togithub.com/fastify/fastify/pull/4792)
- [@&#8203;hateablestream](https://togithub.com/hateablestream) made
their first contribution in
[https://github.com/fastify/fastify/pull/4846](https://togithub.com/fastify/fastify/pull/4846)
- [@&#8203;graphiteisaac](https://togithub.com/graphiteisaac) made their
first contribution in
[https://github.com/fastify/fastify/pull/4893](https://togithub.com/fastify/fastify/pull/4893)
- [@&#8203;shayff](https://togithub.com/shayff) made their first
contribution in
[https://github.com/fastify/fastify/pull/4886](https://togithub.com/fastify/fastify/pull/4886)
- [@&#8203;JekRock](https://togithub.com/JekRock) made their first
contribution in
[https://github.com/fastify/fastify/pull/4898](https://togithub.com/fastify/fastify/pull/4898)
- [@&#8203;yamanidev](https://togithub.com/yamanidev) made their first
contribution in
[https://github.com/fastify/fastify/pull/4905](https://togithub.com/fastify/fastify/pull/4905)
- [@&#8203;tinchoz49](https://togithub.com/tinchoz49) made their first
contribution in
[https://github.com/fastify/fastify/pull/4903](https://togithub.com/fastify/fastify/pull/4903)

**Full Changelog**:
fastify/fastify@v4.19.2...v4.20.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/redwoodjs/redwood).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi44LjExIiwidXBkYXRlZEluVmVyIjoiMzYuOC4xMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
jtoar referenced this pull request in redwoodjs/graphql Jul 19, 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.io/)
([source](https://togithub.com/fastify/fastify)) | [`4.19.2` ->
`4.20.0`](https://renovatebot.com/diffs/npm/fastify/4.19.2/4.20.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastify/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastify/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastify/4.19.2/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastify/4.19.2/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.19.2...v4.20.0)

#### What's Changed

- build(deps-dev): Bump
[@&#8203;sinclair/typebox](https://togithub.com/sinclair/typebox) from
0.28.20 to 0.29.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/fastify/fastify/pull/4877](https://togithub.com/fastify/fastify/pull/4877)
- Update Prototype-Poisoning.md by
[@&#8203;ed-henrique](https://togithub.com/ed-henrique) in
[https://github.com/fastify/fastify/pull/4879](https://togithub.com/fastify/fastify/pull/4879)
- docs: adjust line for linter by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[https://github.com/fastify/fastify/pull/4882](https://togithub.com/fastify/fastify/pull/4882)
- Fixed type inference on .code().send() by
[@&#8203;aadito123](https://togithub.com/aadito123) in
[https://github.com/fastify/fastify/pull/4880](https://togithub.com/fastify/fastify/pull/4880)
- chore: refactor Error-typings and tests by
[@&#8203;svrnwnsch](https://togithub.com/svrnwnsch) in
[https://github.com/fastify/fastify/pull/4824](https://togithub.com/fastify/fastify/pull/4824)
- test: add missing assertion for a test by
[@&#8203;kibertoad](https://togithub.com/kibertoad) in
[https://github.com/fastify/fastify/pull/4701](https://togithub.com/fastify/fastify/pull/4701)
- chore: tests for genReqIdFactory and minor changes by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4783](https://togithub.com/fastify/fastify/pull/4783)
- Added type definition for allowUnsafeRegex by
[@&#8203;xijdk](https://togithub.com/xijdk) in
[https://github.com/fastify/fastify/pull/4792](https://togithub.com/fastify/fastify/pull/4792)
- docs(security): update policy on ci/cd reports by
[@&#8203;jsumners](https://togithub.com/jsumners) in
[https://github.com/fastify/fastify/pull/4890](https://togithub.com/fastify/fastify/pull/4890)
- improve hooks.validate by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4804](https://togithub.com/fastify/fastify/pull/4804)
- ci: enable caching; split jobs by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4889](https://togithub.com/fastify/fastify/pull/4889)
- docs(plugins): note side-effect when using `await` in
`fastify.register()` by
[@&#8203;hateablestream](https://togithub.com/hateablestream) in
[https://github.com/fastify/fastify/pull/4846](https://togithub.com/fastify/fastify/pull/4846)
- \[hooks] Refine hook runners by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4805](https://togithub.com/fastify/fastify/pull/4805)
- docs: fix wrong header size for FST_ERR_ASYNC_CONSTRAINT in Errors.md
by [@&#8203;graphiteisaac](https://togithub.com/graphiteisaac) in
[https://github.com/fastify/fastify/pull/4893](https://togithub.com/fastify/fastify/pull/4893)
- fix: rework FastifyErrors, ensure documentation completeness by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4892](https://togithub.com/fastify/fastify/pull/4892)
- feat: add childLoggerFactory config by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[https://github.com/fastify/fastify/pull/4760](https://togithub.com/fastify/fastify/pull/4760)
- Fix setNotFoundHandler handler type by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[https://github.com/fastify/fastify/pull/4897](https://togithub.com/fastify/fastify/pull/4897)
- restore code coverage by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/4841](https://togithub.com/fastify/fastify/pull/4841)
- fix: handle abort signal before server is ready by
[@&#8203;shayff](https://togithub.com/shayff) in
[https://github.com/fastify/fastify/pull/4886](https://togithub.com/fastify/fastify/pull/4886)
- docs(client-aborted): remove deprecated function by
[@&#8203;JekRock](https://togithub.com/JekRock) in
[https://github.com/fastify/fastify/pull/4898](https://togithub.com/fastify/fastify/pull/4898)
- Revert "docs(client-aborted): remove deprecated function
([#&#8203;4898](https://togithub.com/fastify/fastify/issues/4898))" by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[https://github.com/fastify/fastify/pull/4901](https://togithub.com/fastify/fastify/pull/4901)
- docs(logging): fix typo by
[@&#8203;yamanidev](https://togithub.com/yamanidev) in
[https://github.com/fastify/fastify/pull/4905](https://togithub.com/fastify/fastify/pull/4905)
- Support IPv6 ::1 in listeningOrigin by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[https://github.com/fastify/fastify/pull/4902](https://togithub.com/fastify/fastify/pull/4902)
- fix: extend isCustomValidatorCompiler from parent controller by
[@&#8203;tinchoz49](https://togithub.com/tinchoz49) in
[https://github.com/fastify/fastify/pull/4903](https://togithub.com/fastify/fastify/pull/4903)
- fix: allow uppercase requestdHeader by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[https://github.com/fastify/fastify/pull/4906](https://togithub.com/fastify/fastify/pull/4906)

#### New Contributors

- [@&#8203;ed-henrique](https://togithub.com/ed-henrique) made their
first contribution in
[https://github.com/fastify/fastify/pull/4879](https://togithub.com/fastify/fastify/pull/4879)
- [@&#8203;svrnwnsch](https://togithub.com/svrnwnsch) made their first
contribution in
[https://github.com/fastify/fastify/pull/4824](https://togithub.com/fastify/fastify/pull/4824)
- [@&#8203;xijdk](https://togithub.com/xijdk) made their first
contribution in
[https://github.com/fastify/fastify/pull/4792](https://togithub.com/fastify/fastify/pull/4792)
- [@&#8203;hateablestream](https://togithub.com/hateablestream) made
their first contribution in
[https://github.com/fastify/fastify/pull/4846](https://togithub.com/fastify/fastify/pull/4846)
- [@&#8203;graphiteisaac](https://togithub.com/graphiteisaac) made their
first contribution in
[https://github.com/fastify/fastify/pull/4893](https://togithub.com/fastify/fastify/pull/4893)
- [@&#8203;shayff](https://togithub.com/shayff) made their first
contribution in
[https://github.com/fastify/fastify/pull/4886](https://togithub.com/fastify/fastify/pull/4886)
- [@&#8203;JekRock](https://togithub.com/JekRock) made their first
contribution in
[https://github.com/fastify/fastify/pull/4898](https://togithub.com/fastify/fastify/pull/4898)
- [@&#8203;yamanidev](https://togithub.com/yamanidev) made their first
contribution in
[https://github.com/fastify/fastify/pull/4905](https://togithub.com/fastify/fastify/pull/4905)
- [@&#8203;tinchoz49](https://togithub.com/tinchoz49) made their first
contribution in
[https://github.com/fastify/fastify/pull/4903](https://togithub.com/fastify/fastify/pull/4903)

**Full Changelog**:
fastify/fastify@v4.19.2...v4.20.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/redwoodjs/redwood).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi44LjExIiwidXBkYXRlZEluVmVyIjoiMzYuOC4xMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

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

github-actions bot commented Jul 9, 2024

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 Jul 9, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

chore Small changes or internal project maintenance

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants