Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maintain custom response schema #4718

Merged
merged 3 commits into from
May 1, 2023

Conversation

jaschaephraim
Copy link
Contributor

@jaschaephraim jaschaephraim commented Apr 29, 2023

If a schema has a custom prototype (like when using a Zod schema), normalization will be skipped. Currently this does not work in the case where there are only response schemas.

This PR accounts for that case and adds a test.

Checklist

lib/schemas.js Outdated Show resolved Hide resolved
lib/schemas.js Outdated
}

function hasCustomSchemaPrototype (routeSchemas) {
for (const key in routeSchemas) {
Copy link
Member

Choose a reason for hiding this comment

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

we can't use in as it loops the prototype too.
We must list all the keys we are looking for

lib/schemas.js Outdated
function hasCustomSchemaPrototype (routeSchemas) {
for (const key in routeSchemas) {
if (key === 'response') {
for (const statusCode in routeSchemas.response) {
Copy link
Member

Choose a reason for hiding this comment

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

as above: no in

Suggested change
for (const statusCode in routeSchemas.response) {
for (const statusCode of Object.keys(routeSchemas.response)) {

lib/schemas.js Outdated

function hasCustomSchemaPrototype (routeSchemas) {
for (const key in routeSchemas) {
if (key === 'response') {
Copy link
Member

Choose a reason for hiding this comment

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

We can't check the response like this.

This won't work if the user sets a json schema as header and a custom response schema: in this case the header schema will not be processed because the response check will be true and it will bypass all the following logic.

It is necessary to run this check with another implementation

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hey @Eomm thanks for the feedback. This seems to be how it currently works: if any one schema is a custom class then the whole normalization is skipped. I can address that and add additional test cases if that's not the intended behavior.

Copy link
Member

Choose a reason for hiding this comment

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

Yeah, for sure, it needs some refactoring.

We can sum up these cases:

input output
json schema or empty checked json schema checked
custom class checked json schema checked
json schema or empty checked custom class processed 🐛
custom class checked custom class skipped 🐛

We need to fix only the two 🐛 cases without introducing other breaking 👍🏼

@Eomm Eomm added the bugfix Issue or PR that should land as semver patch label Apr 29, 2023
@jaschaephraim
Copy link
Contributor Author

Per the suggestion from @Eomm I've updated the PR to handle an underlying issue and added test cases.

Previously if any individual schema was an instance of a custom class then normalization would be skipped for all the route's schemas. Now they're checked and handled individually.

@jaschaephraim jaschaephraim requested a review from Eomm May 1, 2023 04:28
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

@Eomm Eomm merged commit af1e042 into fastify:main May 1, 2023
22 checks passed
renovate bot added a commit to specfy/specfy that referenced this pull request Jul 9, 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.15.0` ->
`4.19.2`](https://renovatebot.com/diffs/npm/fastify/4.15.0/4.19.2) |
[![age](https://badges.renovateapi.com/packages/npm/fastify/4.19.2/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/fastify/4.19.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/fastify/4.19.2/compatibility-slim/4.15.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/fastify/4.19.2/confidence-slim/4.15.0)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

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

#### What's Changed

- fix(typescript): route config should not pass url and method by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[fastify/fastify#4872
- Overload `DecorationMethod` to fix
[#&#8203;4870](https://togithub.com/fastify/fastify/issues/4870) by
[@&#8203;voxpelli](https://togithub.com/voxpelli) in
[fastify/fastify#4874
- fix: Type inference breaking when Reply generic is not passed by
[@&#8203;aadito123](https://togithub.com/aadito123) in
[fastify/fastify#4875
- fix: regression with close and serverFactory by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4876

**Full Changelog**:
fastify/fastify@v4.19.1...v4.19.2

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.19.0...v4.19.1)

#### What's Changed

- docs(typescript): fix typo by
[@&#8203;jon-codes](https://togithub.com/jon-codes) in
[fastify/fastify#4861
- docs(testing): add plugin testing guide by
[@&#8203;Ekott2006](https://togithub.com/Ekott2006) in
[fastify/fastify#4849
- docs: fix platformatic-cloud anchor id by
[@&#8203;sher](https://togithub.com/sher) in
[fastify/fastify#4863
- fix: Type narrow fix issue from PR
[#&#8203;4823](https://togithub.com/fastify/fastify/issues/4823) by
[@&#8203;aadito123](https://togithub.com/aadito123) in
[fastify/fastify#4869

#### New Contributors

- [@&#8203;jon-codes](https://togithub.com/jon-codes) made their first
contribution in
[fastify/fastify#4861
- [@&#8203;sher](https://togithub.com/sher) made their first
contribution in
[fastify/fastify#4863

**Full Changelog**:
fastify/fastify@v4.19.0...v4.19.1

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.18.0...v4.19.0)

#### What's Changed

- fix: added a check to prevent creation of secondary server when
external server is supplied by
[@&#8203;aarontravass](https://togithub.com/aarontravass) in
[fastify/fastify#4741
- feat: added originalUrl in request object
[#&#8203;4704](https://togithub.com/fastify/fastify/issues/4704) by
[@&#8203;aarontravass](https://togithub.com/aarontravass) in
[fastify/fastify#4758
- build(deps-dev): Bump markdownlint-cli2 from 0.7.1 to 0.8.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4819
- Add Platformatic to deploy strategies by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4822
- Fixed an error that occurred when sending an empty body as a buffer by
[@&#8203;strelov1](https://togithub.com/strelov1) in
[fastify/fastify#4797
- docs(ecosystem): add fastify-better-sqlite3 by
[@&#8203;punkish](https://togithub.com/punkish) in
[fastify/fastify#4812
- fix: correct type definition for genReqId argument by
[@&#8203;sergburn](https://togithub.com/sergburn) in
[fastify/fastify#4784
- fix typo by [@&#8203;is2ei](https://togithub.com/is2ei) in
[fastify/fastify#4828
- fix: handle undefined req.routeConfig in frameworkErrors by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[fastify/fastify#4826
- build(deps-dev): Bump
[@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers)
from 10.2.0 to 11.0.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4818
- docs(Routes.md): added short description for constraints option by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[fastify/fastify#4838
- \[fix] Tests are failing in Windows due to command line env syntax by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[fastify/fastify#4845
- fix([#&#8203;4774](https://togithub.com/fastify/fastify/issues/4774)):
close bindings through the hook system by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[fastify/fastify#4776
- Fix/add missing types fastifycontextconfig by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[fastify/fastify#4850
- Added "Principles" to explain the key technical principles behind
Fastify by [@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4852
- pluginName will be exposed in FastifyInstance by
[@&#8203;md-adil](https://togithub.com/md-adil) in
[fastify/fastify#4848
- fix: pass Fastify request to frameworkErrors and omit logging if
disabled by [@&#8203;sergburn](https://togithub.com/sergburn) in
[fastify/fastify#4825
- docs: Add documentation for zod type provider by
[@&#8203;kibertoad](https://togithub.com/kibertoad) in
[fastify/fastify#4456
- docs(ecosystem): add fastify cacheman by
[@&#8203;aalfiann](https://togithub.com/aalfiann) in
[fastify/fastify#4851
- build(deps-dev): Bump eslint-plugin-n from 15.7.0 to 16.0.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4857
- fix: return 431 status code on HTTP header overflow error by
[@&#8203;nflaig](https://togithub.com/nflaig) in
[fastify/fastify#4856
- ci: trigger the new website build by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4839
- Do not leak memory if .listen()\` is not called by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4860
- Extend `decorate()` etc to enforce defined values by
[@&#8203;voxpelli](https://togithub.com/voxpelli) in
[fastify/fastify#4858
- minor jsdoc fixes by [@&#8203;Uzlopak](https://togithub.com/Uzlopak)
in
[fastify/fastify#4855
- feat: Type narrow on status().send() chains with Reply generics by
[@&#8203;aadito123](https://togithub.com/aadito123) in
[fastify/fastify#4823

#### New Contributors

- [@&#8203;aarontravass](https://togithub.com/aarontravass) made their
first contribution in
[fastify/fastify#4741
- [@&#8203;strelov1](https://togithub.com/strelov1) made their first
contribution in
[fastify/fastify#4797
- [@&#8203;punkish](https://togithub.com/punkish) made their first
contribution in
[fastify/fastify#4812
- [@&#8203;md-adil](https://togithub.com/md-adil) made their first
contribution in
[fastify/fastify#4848
- [@&#8203;aalfiann](https://togithub.com/aalfiann) made their first
contribution in
[fastify/fastify#4851
- [@&#8203;nflaig](https://togithub.com/nflaig) made their first
contribution in
[fastify/fastify#4856
- [@&#8203;aadito123](https://togithub.com/aadito123) made their first
contribution in
[fastify/fastify#4823

**Full Changelog**:
fastify/fastify@v4.18.0...v4.19.0

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/4.17.0...v4.18.0)

#### What's Changed

- Update GOVERNANCE.md by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4709
- docs: add fastify-opaque-apake to Ecosystem.md by
[@&#8203;cyyynthia](https://togithub.com/cyyynthia) in
[fastify/fastify#4712
- ci: only trigger on pushes to main branches by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[fastify/fastify#4714
- ci: test using pnpm 8 by [@&#8203;Fdawgs](https://togithub.com/Fdawgs)
in
[fastify/fastify#4720
- ci(integration): only trigger on pushes to main branches by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[fastify/fastify#4721
- Maintain custom response schema by
[@&#8203;jaschaephraim](https://togithub.com/jaschaephraim) in
[fastify/fastify#4718
- build(deps): Bump lycheeverse/lychee-action from 1.6.1 to 1.7.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4723
- docs(readme): move table of contents by
[@&#8203;ileighAube](https://togithub.com/ileighAube) in
[fastify/fastify#4722
- Updates to docs and types regarding the `res` serializer by
[@&#8203;bienzaaron](https://togithub.com/bienzaaron) in
[fastify/fastify#4716
- chore(deps): bump process-warning to ^2.2.0 by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[fastify/fastify#4726
- build(deps): bump dependencies by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[fastify/fastify#4727
- Add mention to default error handler on reply send by
[@&#8203;paul-jolimoi](https://togithub.com/paul-jolimoi) in
[fastify/fastify#4713
- chore: fix Reply.md internal link by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[fastify/fastify#4731
- Chore(Workflow): Update website.yml by
[@&#8203;luisorbaiceta](https://togithub.com/luisorbaiceta) in
[fastify/fastify#4736
- feat: add listeningOrigin fastify immutable instance property
([#&#8203;4586](https://togithub.com/fastify/fastify/issues/4586)) by
[@&#8203;zsimo](https://togithub.com/zsimo) in
[fastify/fastify#4674
- build(deps-dev): Bump
[@&#8203;types/node](https://togithub.com/types/node) from 18.16.5 to
20.1.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4738
- chore: add test-compare action by
[@&#8203;RafaelGSS](https://togithub.com/RafaelGSS) in
[fastify/fastify#4737
- support send typedarray objects
([#&#8203;4715](https://togithub.com/fastify/fastify/issues/4715)) by
[@&#8203;Ceereals](https://togithub.com/Ceereals) in
[fastify/fastify#4735
- doc: remove RafaelGSS from plugins team by
[@&#8203;RafaelGSS](https://togithub.com/RafaelGSS) in
[fastify/fastify#4746
- Typo correction from extendible to extensible by
[@&#8203;devhabib429](https://togithub.com/devhabib429) in
[fastify/fastify#4745
- Allow lowercase methods when registering routes by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[fastify/fastify#4750
- Fix lowercase HTTP methods type by
[@&#8203;matthyk](https://togithub.com/matthyk) in
[fastify/fastify#4757
- Add missing trailer method definitions by
[@&#8203;atesgoral](https://togithub.com/atesgoral) in
[fastify/fastify#4759
- fix: benchmark:parser script by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4765
- Remove debug logging for URL rewrite by
[@&#8203;brettwillis](https://togithub.com/brettwillis) in
[fastify/fastify#4754
- chore: pin json-schema-to-ts by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4770
- feat: async validation support by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4752
- docs(ecosystem): add fastify-evervault plugin by
[@&#8203;Briscoooe](https://togithub.com/Briscoooe) in
[fastify/fastify#4771
- revert: hotfix dev dep by [@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4775
- docs(request): fix typo in compileValidationSchema function name by
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
in
[fastify/fastify#4780
- Rename types/tsconfig.json to types/tsconfig.eslint.json to avoid
hoisting by vscode by [@&#8203;nopeless](https://togithub.com/nopeless)
in
[fastify/fastify#4773
- build(deps): Bump lycheeverse/lychee-action from 1.7.0 to 1.8.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4779
- fix: update removeHeader type to be FastifyReply by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[fastify/fastify#4781
- Making Vercel Serverless docs easier to use by
[@&#8203;Ekott2006](https://togithub.com/Ekott2006) in
[fastify/fastify#4793
- ci: ignore node-14 on windows by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4800
- body reader to use statusCode from stream error, if available
([#&#8203;4785](https://togithub.com/fastify/fastify/issues/4785)) by
[@&#8203;sergburn](https://togithub.com/sergburn) in
[fastify/fastify#4787
- workflow(benchmark): update node version by
[@&#8203;RafaelGSS](https://togithub.com/RafaelGSS) in
[fastify/fastify#4786
- add sync-next workflow by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[fastify/fastify#4801
- remove double validation of onReady-hook by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[fastify/fastify#4799
- ci(ci): replace node 19 with node 20 in test matrices by
[@&#8203;Fdawgs](https://togithub.com/Fdawgs) in
[fastify/fastify#4691
- Fix broken CI by [@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4809
- reset listening state for each secondary server by
[@&#8203;cjihrig](https://togithub.com/cjihrig) in
[fastify/fastify#4810

#### New Contributors

- [@&#8203;jaschaephraim](https://togithub.com/jaschaephraim) made their
first contribution in
[fastify/fastify#4718
- [@&#8203;ileighAube](https://togithub.com/ileighAube) made their first
contribution in
[fastify/fastify#4722
- [@&#8203;bienzaaron](https://togithub.com/bienzaaron) made their first
contribution in
[fastify/fastify#4716
- [@&#8203;paul-jolimoi](https://togithub.com/paul-jolimoi) made their
first contribution in
[fastify/fastify#4713
- [@&#8203;zsimo](https://togithub.com/zsimo) made their first
contribution in
[fastify/fastify#4674
- [@&#8203;Ceereals](https://togithub.com/Ceereals) made their first
contribution in
[fastify/fastify#4735
- [@&#8203;devhabib429](https://togithub.com/devhabib429) made their
first contribution in
[fastify/fastify#4745
- [@&#8203;atesgoral](https://togithub.com/atesgoral) made their first
contribution in
[fastify/fastify#4759
- [@&#8203;brettwillis](https://togithub.com/brettwillis) made their
first contribution in
[fastify/fastify#4754
- [@&#8203;Briscoooe](https://togithub.com/Briscoooe) made their first
contribution in
[fastify/fastify#4771
-
[@&#8203;giuliowaitforitdavide](https://togithub.com/giuliowaitforitdavide)
made their first contribution in
[fastify/fastify#4780
- [@&#8203;nopeless](https://togithub.com/nopeless) made their first
contribution in
[fastify/fastify#4773
- [@&#8203;Ekott2006](https://togithub.com/Ekott2006) made their first
contribution in
[fastify/fastify#4793
- [@&#8203;sergburn](https://togithub.com/sergburn) made their first
contribution in
[fastify/fastify#4787
- [@&#8203;cjihrig](https://togithub.com/cjihrig) made their first
contribution in
[fastify/fastify#4810

**Full Changelog**:
fastify/fastify@v4.17.0...v4.18.0

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/4.16.3...4.17.0)

#### What's Changed

- Add codes to framework errors that lack one by
[@&#8203;lilsweetcaligula](https://togithub.com/lilsweetcaligula) in
[fastify/fastify#4632
- fix: revert changes made to route hook types by
[@&#8203;vidarc](https://togithub.com/vidarc) in
[fastify/fastify#4708

#### New Contributors

- [@&#8203;lilsweetcaligula](https://togithub.com/lilsweetcaligula) made
their first contribution in
[fastify/fastify#4632
- [@&#8203;vidarc](https://togithub.com/vidarc) made their first
contribution in
[fastify/fastify#4708

**Full Changelog**:
fastify/fastify@4.16.3...4.17.0

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/4.16.2...4.16.3)

**Full Changelog**:
fastify/fastify@4.16.2...4.16.3

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/4.16.1...4.16.2)

**Full Changelog**:
fastify/fastify@4.16.1...4.16.2

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/4.16.0...4.16.1)

**Full Changelog**:
fastify/fastify@4.16.0...4.16.1

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

[Compare
Source](https://togithub.com/fastify/fastify/compare/v4.15.0...4.16.0)

#### What's Changed

- docs: spelling, punctuation & grammar minor nits by
[@&#8203;shusak](https://togithub.com/shusak) in
[fastify/fastify#4642
- docs(mongodb): update to mongodb 5 by
[@&#8203;pip77](https://togithub.com/pip77) in
[fastify/fastify#4646
- Install pnpm version 7 to support Node.js 14 in CI by
[@&#8203;Yvad60](https://togithub.com/Yvad60) in
[fastify/fastify#4645
- build(deps-dev): Bump typescript from 4.9.5 to 5.0.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4658
- build(deps-dev): Bump
[@&#8203;sinclair/typebox](https://togithub.com/sinclair/typebox) from
0.25.24 to 0.26.8 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4660
- Add `fastify-koa` plugin by
[@&#8203;rozzilla](https://togithub.com/rozzilla) in
[fastify/fastify#4654
- Prevent labeler from removing existing labels by
[@&#8203;luisorbaiceta](https://togithub.com/luisorbaiceta) in
[fastify/fastify#4662
- Emit a warning when validating undefined schemas by
[@&#8203;franher](https://togithub.com/franher) in
[fastify/fastify#4647
- chore(ecosystem): rename to fastify-orama plugin by
[@&#8203;mateonunez](https://togithub.com/mateonunez) in
[fastify/fastify#4667
- Add workflow for benchmarking POST with custom parsers by
[@&#8203;kibertoad](https://togithub.com/kibertoad) in
[fastify/fastify#4669
- chore: add `github actions` label automatically by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4664
- Adds async hooks signature on route level by
[@&#8203;JbIPS](https://togithub.com/JbIPS) in
[fastify/fastify#4655
- chore(docs): update from cobraz to simenandre by
[@&#8203;simenandre](https://togithub.com/simenandre) in
[fastify/fastify#4671
- Documentation: link from Hooks onRoute to routeOptions definition by
[@&#8203;cvuorinen](https://togithub.com/cvuorinen) in
[fastify/fastify#4678
- docs: incorrect example for 'onRequestAbort' hook by
[@&#8203;TimShilov](https://togithub.com/TimShilov) in
[fastify/fastify#4679
- doc: add fastify-type-provider-effect-schema by
[@&#8203;NexZhu](https://togithub.com/NexZhu) in
[fastify/fastify#4683
- doc: update prototype poisoning by
[@&#8203;AliakbarETH](https://togithub.com/AliakbarETH) in
[fastify/fastify#4651
- docs: add optional URL param to upgrade guide and route docs
([#&#8203;4637](https://togithub.com/fastify/fastify/issues/4637)) by
[@&#8203;mateus4k](https://togithub.com/mateus4k) in
[fastify/fastify#4680
- build(deps-dev): Bump markdownlint-cli2 from 0.6.0 to 0.7.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4695
- Add fastify-redis-session plugin by
[@&#8203;mohammadraufzahed](https://togithub.com/mohammadraufzahed) in
[fastify/fastify#4656
- test: refactor logger test by
[@&#8203;climba03003](https://togithub.com/climba03003) in
[fastify/fastify#4648
- chore: fix badge link by [@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4699
- docs: add fastify-log-controller to ecosystem by
[@&#8203;Eomm](https://togithub.com/Eomm) in
[fastify/fastify#4696
- build(deps-dev): Bump tsd from 0.26.1 to 0.28.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4659
- build(deps-dev): Bump
[@&#8203;sinclair/typebox](https://togithub.com/sinclair/typebox) from
0.26.8 to 0.28.6 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4700
- use Object.prototype.hasOwnProperty in compileSchemasForValidation by
[@&#8203;Uzlopak](https://togithub.com/Uzlopak) in
[fastify/fastify#4692
- Implement support for passing custom text resolution for starting log…
by [@&#8203;kibertoad](https://togithub.com/kibertoad) in
[fastify/fastify#4698
- refactor: export FastifyBaseLogger as interface instead of type alias
by [@&#8203;tzafrirben](https://togithub.com/tzafrirben) in
[fastify/fastify#4681
- build(deps): Bump tiny-lru from 10.4.1 to 11.0.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[fastify/fastify#4694
- Added preClose hook by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[fastify/fastify#4697

#### New Contributors

- [@&#8203;shusak](https://togithub.com/shusak) made their first
contribution in
[fastify/fastify#4642
- [@&#8203;pip77](https://togithub.com/pip77) made their first
contribution in
[fastify/fastify#4646
- [@&#8203;Yvad60](https://togithub.com/Yvad60) made their first
contribution in
[fastify/fastify#4645
- [@&#8203;rozzilla](https://togithub.com/rozzilla) made their first
contribution in
[fastify/fastify#4654
- [@&#8203;franher](https://togithub.com/franher) made their first
contribution in
[fastify/fastify#4647
- [@&#8203;JbIPS](https://togithub.com/JbIPS) made their first
contribution in
[fastify/fastify#4655
- [@&#8203;cvuorinen](https://togithub.com/cvuorinen) made their first
contribution in
[fastify/fastify#4678
- [@&#8203;TimShilov](https://togithub.com/TimShilov) made their first
contribution in
[fastify/fastify#4679
- [@&#8203;NexZhu](https://togithub.com/NexZhu) made their first
contribution in
[fastify/fastify#4683
- [@&#8203;AliakbarETH](https://togithub.com/AliakbarETH) made their
first contribution in
[fastify/fastify#4651
- [@&#8203;mateus4k](https://togithub.com/mateus4k) made their first
contribution in
[fastify/fastify#4680
- [@&#8203;mohammadraufzahed](https://togithub.com/mohammadraufzahed)
made their first contribution in
[fastify/fastify#4656
- [@&#8203;tzafrirben](https://togithub.com/tzafrirben) made their first
contribution in
[fastify/fastify#4681

**Full Changelog**:
fastify/fastify@v4.15.0...4.16.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on friday,before 9am on
monday,every weekend" in timezone Europe/Paris, 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/specfy/specfy).

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

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

github-actions bot commented May 1, 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 May 1, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bugfix Issue or PR that should land as semver patch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants