Repository navigation
Update dependency express from 4.22.1 to 5.3.0 - #151
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
March 31, 2025 16:08
504b0d0 to
f52ee88
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
April 16, 2025 23:03
f52ee88 to
e459486
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
2 times, most recently
from
May 5, 2025 02:04
caf62aa to
ad3a526
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
10 times, most recently
from
May 23, 2025 18:54
8e24334 to
b422be3
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
11 times, most recently
from
May 30, 2025 11:09
a757c81 to
0c20644
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
3 times, most recently
from
June 6, 2025 23:26
ca6edeb to
6d09874
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
6 times, most recently
from
July 8, 2025 14:40
e2fff3d to
9ce0cae
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
August 10, 2025 13:59
9ce0cae to
be6fd29
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
August 31, 2025 10:25
be6fd29 to
5ea9e90
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
September 25, 2025 18:28
5ea9e90 to
11c9bea
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
5 times, most recently
from
October 27, 2025 22:36
92b84ca to
f621fb5
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
November 10, 2025 17:37
f621fb5 to
4f36985
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
November 18, 2025 19:54
4f36985 to
76ac1d3
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
December 1, 2025 19:09
76ac1d3 to
087e1c0
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
2 times, most recently
from
December 1, 2025 19:11
8f669fa to
31a465c
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
December 1, 2025 21:52
31a465c to
27382ad
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
2 times, most recently
from
December 3, 2025 19:55
7c2d5e0 to
8b513b2
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
December 31, 2025 13:44
8b513b2 to
10e0e0f
Compare
renovate
Bot
force-pushed
the
renovate/express-5.x
branch
from
January 8, 2026 17:08
10e0e0f to
416dd11
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
4.22.1→5.3.04.17.25→5.0.6Release Notes
expressjs/express (express)
v5.3.0Compare Source
=====
🐞 Bug fixes
Fixed HTTP header conflict between Content-Length and Transfer-Encoding in res.send - by @YuryShkoda in #4893
Fixed the behavior of
res.send()to prevent conflicts betweenContent-LengthandTransfer-EncodingHTTP headers in responses. TheContent-Lengthheader inres.send()is now only added when aTransfer-Encodingheader is not present, complying with the HTTP specification that states both headers should not coexist in the same response. ETag generation is unaffected by the presence of aTransfer-Encodingheader - by @cuishuang in #7459Upgrade
qsto^6.16.0, which fixes CVE-2026-2391 (GHSA-w7fw-mjwx-w883), CVE-2026-82417 (GHSA-4mjr-xmp4-gh2g) and CVE-2026-82562 (GHSA-x5fp-wj9c-mxmx):arrayLimitbypasses in comma parsing and a denial of service via an attacker-controlledisBuffer- by @davetashner in #7057 and #7478, and @cyphercodes in #7305Upgrade
proxy-addrto^2.0.8, which fixes CVE-2026-90711 - by @lazerg in #7474🚀 Improvements
Allow conditional revalidation for QUERY requests.
req.freshpreviously only validated freshness for GET and HEAD requests, so QUERY responses never returned 304 despite a matching validator. Since QUERY is a safe, idempotent, and cacheable method that supports conditional requests, it is now included in the freshness check - by @Cherry in #7366Improve HTML structure in
res.redirect()responses when HTML format is accepted by adding<!DOCTYPE html>,<title>, and<body>tags for better browser compatibility - by @Bernice55231 in #5167When calling
app.renderwith options set to null, the locals object is handled correctly, preventing unexpected errors and making the method behave the same as when options is omitted or an empty object is passed - by AkaHarshit in #6903Upgrade
content-typeto^2.0.0, bringing a faster parser (~1.5x quickerContent-Typeparsing/formatting inres.send()) along with a behavior change:res.send()now keeps any existing parameters when adding the charset and no longer throws on aContent-Typethat fails to parse.type-isis upgraded to^2.1.0as part of the same change - by @blakeembrey in #7234The default error handler now logs the full error object instead of only its stack trace, so nested details such as
Error.causeand library-specific properties (e.g. Sequelize'sparent/original) are no longer swallowed - by @Nitin-Mohapatra in #6464Upgrade
content-dispositionto^2.0.1, which changes theContent-Dispositionheader emitted byres.download(),res.attachment(), andres.sendFile(): file names that are valid HTTP tokens are no longer wrapped in quotes. This is equivalent per RFC 6266, but applications asserting on the exact header bytes should update their expectations - by @blakeembrey in #7233Upgrade
body-parserto^2.3.0, which fixes CVE-2026-12590 (GHSA-v422-hmwv-36x6): an invalidlimitoption value caused request body size enforcement to be silently disabled (fail-open), allowing a denial of service via arbitrarily large payloads. Invalidlimitvalues now throw at parser initialization instead of being ignored - by @Mayvis in #7390⚡ Performance
res.send()when sending string responses without an explicit Content-Type header - by @bjohansebas in #6991v5.2.1Compare Source
=======================
v5.2.0Compare Source
========================
body-parser@^2.2.1res.redirectwith undefined arguments, Express now emits a warning to help detect calls that pass undefined as the status or URL and make them easier to fix.v5.1.0Compare Source
========================
Uint8Arrayinres.send()res.sendFile()res.links()setprototypeofsafe-bufferutils-mergemethodsdepddebug@^4.4.0body-parser@^2.2.0router@^2.2.0content-type@^1.0.5finalhandler@^2.1.0qs@^6.14.0server-static@2.2.0type-is@2.0.1v5.0.1Compare Source
==========
cookiesemver lock to address CVE-2024-47764v5.0.0Compare Source
=========================
path-is-absolutedependency - usepath.isAbsoluteinsteadres.status()accepts only integers, and input must be greater than 99 and less than 1000RangeError: Invalid status code: ${code}. Status code must be greater than 99 and less than 1000.for inputs outside this rangeTypeError: Invalid status code: ${code}. Status code must be an integer.for non integer inputsres.redirect('back')andres.location('back')is no longer a supported magic string, explicitly usereq.get('Referrer') || '/'.res.clearCookiewill ignore user providedmaxAgeandexpiresoptionsapplication/javascript=>text/javascriptv4.22.3Compare Source
What's Changed
New Contributors
Full Changelog: expressjs/express@v4.22.2...v4.22.3
v4.22.2Compare Source
What's Changed
req.queryrepeated keys (8d09bfe6)a[0]=...) was historically capped at qs's defaultarrayLimitof 20 even in older qs versions; after this change it also allows up to 1000 items.New Contributors
Full Changelog: expressjs/express@v4.22.1...v4.22.2
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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.
This PR was generated by Mend Renovate. View the repository job log.