Skip to content

Releases: fastify/fastify

v5.4.0

12 Jun 13:29
0111d0a
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.3.3...v5.4.0

v5.3.3

13 May 16:12
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v5.3.2...v5.3.3

v4.29.1

28 Apr 17:30
Compare
Choose a tag to compare

v5.3.2

18 Apr 20:31
32f7e1e
Compare
Choose a tag to compare

⚠️ Security Release ⚠️

Unfortunately, v5.3.1 did not include a complete fix for "Invalid content-type parsing could lead to validation bypass" and CVE-2025-32442. This is a follow-up patch to cover an edge case.

What's Changed

  • docs: fix archived concurrently link to point to active repo by @TimTeylor in #6063
  • fix: treat space as a delimiter in content-type parsing by @mcollina in #6064

New Contributors

Full Changelog: v5.3.1...v5.3.2

v5.3.1

18 Apr 07:39
Compare
Choose a tag to compare

⚠️ Security Release ⚠️

What's Changed

New Contributors

Full Changelog: v5.3.0...v5.3.1

v5.3.0

13 Apr 10:35
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v5.2.2...v5.3.0

v5.2.2

25 Mar 20:21
Compare
Choose a tag to compare

What's Changed

  • build: use static path instead of __filename by @climba03003 in #5922
  • fix(linting): fix linting error in error-handler.js by @Uzlopak in #5926
  • chore: Bump the dev-dependencies group across 1 directory with 6 updates by @dependabot in #5930
  • fix: don't check for payload type in default json parser by @gurgunday in #5933
  • docs: Include req.hostname change in upgrade guide by @tmcw in #5935
  • build(dependabot): regroup dev dependencies by @Fdawgs in #5931
  • chore: Bump borp from 0.18.0 to 0.19.0 by @dependabot in #5936
  • chore: don't return the done function by @gurgunday in #5937
  • ci(workflows): unpin node 22 version by @Fdawgs in #5941
  • perf: don't use optional chaining for typeof .then checks by @gurgunday in #5942
  • docs: the no floating promise guide is not needed anymore by @mcollina in #5946
  • docs: grammar and spelling fixes by @Fdawgs in #5944
  • perf(lib/pluginutils): cache rc version regex by @Fdawgs in #5940
  • build(dependabot): reduce npm updates to monthly by @Fdawgs in #5939
  • docs(guides): grammar and spelling fixes by @Fdawgs in #5947
  • test: migrated genReqId.test.js from tap to node:test by @Tony133 in #5943
  • chore: Bump lycheeverse/lychee-action from 2.1.0 to 2.2.0 by @dependabot in #5948
  • docs(reference/contenttypeparser): make more concise by @Fdawgs in #5950
  • docs(getting-started): clarify fastify-cli is separate by @Fdawgs in #5949
  • docs(validation-and-serialization): fix typo by @matthyk in #5952
  • test: migrated route-shorthand.test.js from tap to node:test by @Tony133 in #5923
  • test: migrated register.test.js from tap to node:test by @Tony133 in #5918
  • Update broken link to N|Solid by @xuhdev in #5954
  • docs(reference): even more conciseness by @Fdawgs in #5951
  • test: migrate from tap to node test for close & custom-parser-async by @coluzziandrea in #5915
  • docs(reference/type-providers): conciseness improvements by @Fdawgs in #5962
  • docs(reference/errors): conciseness improvements by @Fdawgs in #5963
  • docs(reference/logging): conciseness improvements by @Fdawgs in #5958
  • docs(reference/request): conciseness improvements by @Fdawgs in #5965
  • docs(ecosystem): add @fastify/otel to core list by @Fdawgs in #5967
  • docs(reference/validation): conciseness improvements by @Fdawgs in #5964
  • docs(reference/plugins): conciseness improvements by @Fdawgs in #5956
  • docs(reference/decorators): conciseness improvements by @Fdawgs in #5966
  • chore(sponsor): Add Lokalise sponsorship reference by @kibertoad in #5968
  • test: migrated listen.2.test.js from tap to node:test by @Tony133 in #5960
  • docs(ecosystem): add fastify-enforce-routes-pattern by @Jerome1337 in #5961
  • chore(sponsor): add Jspreadsheet by @Eomm in #5971
  • docs(reference/routes): conciseness improvements by @Fdawgs in #5969
  • fix(types): missing supportedMethods by @johaven in #5970
  • chore: Bump the dev-dependencies-eslint group with 2 updates by @dependabot in #5975
  • ci: remove master branch support by @Fdawgs in #5974
  • docs(reference): mimic github notes and warning style by @Fdawgs in #5973
  • docs: Drop platformatic cloud reference in serverless.md by @mcollina in #5982
  • docs: add a Genezio step by step guide by @cristim67 in #5980
  • docs(lts): fix anchor tag format by @kadoshita in #5986
  • docs: Update documentation for listening to 0.0.0.0 by @jonasongg in #5988
  • docs(serverless): cut down genezio example by @Fdawgs in #5990
  • docs: add link to official demo by @jean-michelet in #5994
  • chore(license): update licensing year by @Tony133 in #5992
  • docs: wrong query string parser information by @smith558 in #5993
  • docs: typo in v5 migration docs by @salmanm in #5995
  • docs: update example to use correct parser by @smith558 in #5996
  • test: migrated request-error.test.js from tap to node:test by @Tony133 in #5987
  • chore: Bump the dev-dependencies-eslint group with 2 updates by @dependabot in #5999
  • chore: Bump lycheeverse/lychee-action from 2.2.0 to 2.3.0 by @dependabot in #6001
  • docs: fix docorators example by @logan272 in #5997
  • chore: fix docs by @Eomm in #6007
  • test: migrated stream.5.test.js from tap to node:test by @Tony133 in #5955
  • build(test/bundler/esbuild): bump esbuild by @Fdawgs in #6010
  • test: migrated throw.test.js from tap to node:test by @Tony133 in #6002
  • docs(guides/ecosystem): update broken link to scalar by @inyourtime in #6015
  • feat: add listen async callback warning by @Eomm in #6011
  • docs(readme): fix broken ci badges by @Fdawgs in #6016
  • docs: remove --node-arg prefix by @piotr-cz in #6018
  • test: migrated listen.1.test.js from tap to node:test by @Tony133 in #6014
  • chore: Bump typescript from 5.7.3 to 5.8.2 in the dev-dependencies-typescript group by @dependabot in #6000
  • test: migrated upgrade.test.js from tap to node:test and update inde… by @Tony133 in #5917
  • test: fix flaky by @Eomm in #6021
  • test: migrated listen.3.test.js from tap to node:test by @Tony133 in #6022
  • test: migrated listen.4.test.js from tap to node:test by @Tony133 in #6024
  • fix: double hook execution by @Eomm in #6013
  • test(content-type-parser): replace tiny-lru proxy with toad-cache by @Fdawgs in #6025

New Contributors

Full Changelog: v5.2.1...v5.2.2

v5.2.1

06 Jan 08:16
eafe0aa
Compare
Choose a tag to compare

What's Changed

  • chore: org members reorder by @Eomm in #5898
  • docs(request): clarify request host functionality by @Fdawgs in #5904
  • chore(package): add fdawgs to contributors array by @Fdawgs in #5905
  • chore: updated test reporter by @jsumners in #5907
  • test: migrated custom-parser.2.test.js from tap to node:test by @Tony133 in #5902
  • test: migrated nullable-validation.test.js from tap to node:test by @Tony133 in #5880
  • test: migrated custom-parser.3.test.js from tap to node:test by @Tony133 in #5903
  • test: migrate delete test from tap to node test runner by @Kalpana98 in #5906
  • docs: add climba03003 to team by @climba03003 in #5910
  • build(deps): replace proxy-addr with @fastify/proxy-addr by @Fdawgs in #5913
  • fix: ReadableStream.locked crashes application by @climba03003 in #5920
  • docs: fix typo by @FKPSC in #5921

New Contributors

Full Changelog: v5.2.0...v5.2.1

v5.2.0

14 Dec 07:56
9177df0
Compare
Choose a tag to compare

What's Changed

  • docs: add HeroDevs mentions to README and LTS docs by @AndreAngelantoni in #5730
  • test: migrated reply-early-hints.test.js from tap to node:test by @Tony133 in #5803
  • chore: Bump lycheeverse/lychee-action from 1.10.0 to 2.0.2 by @dependabot in #5807
  • chore: Bump thollander/actions-comment-pull-request from 2 to 3 by @dependabot in #5806
  • test: migrated request-timeout.test.js from tap to node:test by @Tony133 in #5805
  • fix: streamline migrated tests, make migrated the filenames of migrated tests kebab-case by @Uzlopak in #5800
  • ci(benchmark): fix github token input by @Fdawgs in #5809
  • test: migrated reply-code.test.js from tap to node:test by @Tony133 in #5808
  • test: migrated middleware.test.js from tap to node:test by @Tony133 in #5795
  • fix: test asserts to strict asserts by @dancastillo in #5815
  • chore: renamed test files in kebab-case by @Tony133 in #5814
  • style(.gitattributes): standardize style across fastify repos by @Fdawgs in #5816
  • style: remove trailing whitespace by @Fdawgs in #5817
  • test: migrated encapsulated-error-handler.test.js from tap to node:test by @Tony133 in #5824
  • docs: Add fastify-mongo-sanitize and remix-fastify to comm. by @ExorTek in #5822
  • test: migrated encapsulated-child-logger-factory.test.js from tap to … by @Tony133 in #5823
  • docs: add loggerInstance to Server doc by @llimllib in #5786
  • test: migrated post-empty-body.test.js from tap to node:test by @Tony133 in #5813
  • docs(CONTRIBUTING.md): read the announcements by @Eomm in #5825
  • test: migrated listen.5.test.js from tap to node:test by @Tony133 in #5827
  • test: migrated use-semicolon-delimiter.test.js from tap to node:test by @Tony133 in #5812
  • docs: smaller documentation fixes by @metcoder95 in #5834
  • fix(types): addHttpMethod type signature on fastify instance (#5810) by @kalvenschraut in #5811
  • test: migrated schema-examples.test.js from tap to node:test by @Tony133 in #5833
  • test: Migrate tests to Node test container by @KristianLentino99 in #5777
  • test: migrated max-requests-per-socket.test.js from tap to node:test by @Tony133 in #5828
  • test: migrated proto-poisoning.test.js from tap to node:test by @Tony133 in #5836
  • test: migrated content-type and context-config tests from tap to node:test by @stojkov-z in #5778
  • docs: Added fastify-passkit-webservice to community plugins by @alexandercerutti in #5819
  • test: migrate trust-proxy, type-provider, url-rewriting to node:test by @dancastillo in #5829
  • test: migrated fluent-schema.test.js from tap to node:test by @Tony133 in #5832
  • test: migrated set-error-handler.test.js and header-overflow.test.js from tap to node:test by @Tony133 in #5835
  • chore: Bump secure-json-parse from 2.7.0 to 3.0.1 in the dependencies-major group by @dependabot in #5845
  • test: migrated pretty-print.test.js from tap to node:test by @Tony133 in #5844
  • test: migrated custom-parser.4.test.js and custom-parser.5.test.js fr… by @Tony133 in #5837
  • docs: fix example for supplying own logger instance by @keithito in #5857
  • feat: Add hook name within timeout error message by @kibertoad in #5851
  • docs: make whitespace consistent by @joeytwiddle in #5863
  • test: migrated fastify-instance.test.js from tap to node:test by @Tony133 in #5859
  • test: migrated request-id.test.js from tap to node:test by @Tony133 in #5858
  • test: migrated tests from tap to node test by @Tony133 in #5839
  • test: migrated router-options.test.js from tap to node:test by @Tony133 in #5840
  • test: migrated route.8.test.js from tap to node:test by @Tony133 in #5864
  • chore: Bump lycheeverse/lychee-action from 2.0.2 to 2.1.0 by @dependabot in #5869
  • test: migrated validation-error-handling from tap to node:test by @reidn3r in #5856
  • test: migrated handler-context.test.js from tap to node:test by @Tony133 in #5868
  • test: migrated find-route.test.js from tap to node:test by @Tony133 in #5867
  • chore: sponsor link by @Eomm in #5871
  • docs(readme): point ci badge at main branch by @Fdawgs in #5873
  • test: migrate content-parser test to use node:test by @Rantoledo in #5847
  • docs(readme): revert to standard workflow badge syntax by @Fdawgs in #5877
  • chore: readme lighter install script by @giulianok in #5872
  • docs(CONTRIBUTING.md): added v4 to version branches by @giuliowaitforitdavide in #5886
  • fix(errorHandler.js): linting problems in pipeline by @giuliowaitforitdavide in #5885
  • ci: pin node version 22.11 by @climba03003 in #5889
  • docs(ecosystem): update apitally description by @itssimon in #5891
  • types: remove connection property in FastifyRequest by @giuliowaitforitdavide in #5884
  • fix: crash when host header is missing by various of reason by @climba03003 in #5892
  • chore: fix flaky test by @Eomm in #5881
  • perf: use node: prefix to bypass require.cache call for builtins by @Fdawgs in #5894
  • chore: bump dev fastify-plugin by @Eomm in #5879
  • types: use node: prefix for builtins by @Fdawgs in #5896
  • test: migrated content-length.test.js from tap to node:test by @Tony133 in #5878

New Contributors

Full Changelog: v5.1.0...v5.2.0

v4.29.0

04 Dec 11:34
3a6d4ae
Compare
Choose a tag to compare

What's Changed

  • fix(backport v4.x): config type in RouteShorthandOptions by @bastienmenis in #5527
  • feat(backport 4.x): add body parsing on copy move mkcol methods by @johaven in #5549
  • [Backport 4.x] fix: res serializer not given reply (#5556) by @github-actions in #5563
  • chore(backport 4.x): allow ! in PR title by @github-actions in #5572
  • [Backport 4.x] feat: support different body schema per content type by @github-actions in #5559
  • [Backport 4.x] chore(sponsor): add valtown by @github-actions in #5593
  • [Backport 4.x] fix: nullish host by @github-actions in #5594
  • refactor(4.x): add deprecate warning of json shorthand by @climba03003 in #5587
  • [Backport 4.x] chore(sponsor): add handsontable by @github-actions in #5595
  • [Backport 4.x] fix: throwing "FST_ERR_DUPLICATED_ROUTE" error instead of raw error by @github-actions in #5624
  • fix(backport 4.x): reorder handling of Response replies by @github-actions in #5629
  • [Backport 4.x] docs: add default value for maxParamLength by @github-actions in #5631
  • [Backport 4.x] chore: fix sponsor link by @github-actions in #5641
  • [Backport 4.x] feat: add fastify v4 codemods by @github-actions in #5654
  • [Backport 4.x] feat: bind this to instance in onclose by @github-actions in #5679
  • [Backport 4.x] docs: update v4 codemods by @github-actions in #5686

New Contributors

Full Changelog: v4.28.1...v4.29.0