Important
- Fix CVE-2026-77078 (GHSA-wc9g-mqfw-jrwm)
- Fix CVE-2026-77037 (GHSA-qfvm-cv95-jqjf)
- Fix CVE-2026-77063 (GHSA-qvfw-j98x-7q72)
- Fix CVE-2026-82333 (GHSA-535w-7cp7-47q4)
What's Changed
- Update busboy link pointing to nonexistent section by @krzysdz in #1447
- Update outdated links to Express error handling guide by @krzysdz in #1405
- chore(deps): bump GitHub Actions and dev dependencies by @sheplu in #1445
- chore(ci): npm-publish via reusable workflows by @sheplu in #1364
- fix(tests): keep Git from rewriting fixture line endings on Windows by @MohammedAlkindi in #1450
- docs: correct fieldNameSize default in limits table by @UlisesGascon in #1432
- feat: normalize package.json by @UlisesGascon in #1322
- fix(test): use path.sep for cross-platform path assertions by @kilisamemarisaaa in #1452
- docs(changelog): fix typo 'comaptible' to 'compatible' by @ayushshukla1807 in #1383
- doc: adds context for link to Chinese README by @sunsheeppoplar in #1369
- docs: use crypto.randomBytes in diskStorage README example by @Hashim1999164 in #1436
- docs: clarify preservePath behavior by @vibhor-aggr in #1414
- docs: clarify parts limit behavior by @vibhor-aggr in #1430
- chore: increase test coverage by @wojtekmaj in #1355
- chore: drop deep-equal devDependency by @wojtekmaj in #1353
- docs: fix Chinese README translation by @vibhor-aggr in #1429
- Test: Enhance cross-platform test reliability and update CI workflow by @ShubhamOulkar in #1334
- fix: fallback to error code when no message mapping exists by @sahilraut191685 in #1448
- test: add coverage for preservePath by @kory-kaai in #1454
- fix: prevent process crash when fileFilter calls its callback more than once by @spokodev in #1427
- fix: preserve async hooks context in supported environments by @ajhyndman in #1124
- fix: allow files at exact fileSize limit by @raashish1601 in #1407
- fix: decode WHATWG-escaped characters in file originalname by @webdevelopersrinu in #1421
- docs: add Indonesian translation for README by @Derylfabiensyah in #1431
- test: accept files exactly at fileSize limit by @abhu85 in #1382
- docs: add Japanese translation to README by @noritaka1166 in #1354
- Update 'README-zh-cn.md' up to now by @pbstar in #1264
- feat: add an opt-in fieldArrayIndexLimit by @arpitjain099 in #1438
- docs: refresh all README translations by @UlisesGascon in #1462
- 2.3.0 by @UlisesGascon in #1455
New Contributors
- @krzysdz made their first contribution in #1447
- @sheplu made their first contribution in #1445
- @MohammedAlkindi made their first contribution in #1450
- @kilisamemarisaaa made their first contribution in #1452
- @ayushshukla1807 made their first contribution in #1383
- @sunsheeppoplar made their first contribution in #1369
- @Hashim1999164 made their first contribution in #1436
- @vibhor-aggr made their first contribution in #1414
- @sahilraut191685 made their first contribution in #1448
- @kory-kaai made their first contribution in #1454
- @spokodev made their first contribution in #1427
- @ajhyndman made their first contribution in #1124
- @raashish1601 made their first contribution in #1407
- @webdevelopersrinu made their first contribution in #1421
- @Derylfabiensyah made their first contribution in #1431
- @abhu85 made their first contribution in #1382
- @noritaka1166 made their first contribution in #1354
- @pbstar made their first contribution in #1264
- @arpitjain099 made their first contribution in #1438
Full Changelog: v2.2.0...v2.3.0