Repository navigation
Express 5.0 - last push! #233
Copy link
Copy link
Closed
Labels
tc agendatop priorityIssues which the TC deem our current highest priorities for the projectIssues which the TC deem our current highest priorities for the project
Description
This issue includes a reference to all the PRs/issues or pending tasks for Express and dependencies needed to finally ship Express@5.
Rules (WIP):
- If something is completed, just marked
- If there is a PR/Issue/Discussion please add it (try to use one item)
- If there is someone taking ownership on it, please add it. Ownership means to be the focal point for it not necessarily the person who makes the final change.
- If there is no leader, feel free to claim it.
- If you can no longer lead something, just let others claim it back
- As this issue can have many comments, feel free to address them and then mark the original comment as "outdated" (details) so it is easier to follow.
If you think that any reference is missing, please edit this comment (@expressjs/express-tc) or reply with a comment if you don't have the permissions.
Pending things (Express):
- add support Node.js@22 in the CI express#5627 (@mertcanaltin)
- Adopt Node@18 as the minimum supported version express#5595 (@UlisesGascon )
- Use object with null prototype for various app properties express#4861
- Ignore
expiresandmaxAgeinres.clearCookie()express#5792 (@jonchurch) - Use object with null prototype for settings express#4835
- Throw on invalid status codes express#4212 (@jonchurch)
- Call callback once on listen error express#3216 (@wesleytodd)
- Update 5.0 version in Migration Guide expressjs.com#1464 (@crandmck)
- express 5 router wildcard does not work as documented expressjs.com#1408 (@blakeembrey )
- Use Array.flat instead of array-flatten express#5677 (@UlisesGascon )
- List of dependencies to upgrade #256 (@UlisesGascon / @IamLizu)
Pending things (Dependencies):
- router@^2.0.0 express#5885 (@wesleytodd)
- Release 2.0 body-parser#66 (@wesleytodd)
- Added support for brotli ('br') content-encoding body-parser#406 (@wesleytodd or @UlisesGascon or TBD)
- Also use the qs module for the simple parser body-parser#387 (@wesleytodd)
- urlencoded: Support iso-8859-1, utf8 sentinel, and numeric entities body-parser#326 (@wesleytodd)
- Release 1.0 pillarjs/send#208 (
@blakeembrey or@wesleytoddits a race) - Release 2.0 serve-static#165 (@wesleytodd)
- Release: 3.0 jshttp/mime-types#129 (@wesleytodd)
- fix(deps): finalhandler@^2.0.0 express#5899
- Fix: Expect return true immediately if If-None-Match matches the ETag header (#35) jshttp/fresh#38 (@jonchurch)
- Look through the direct deps to see if they have things which need to land,, or releases to cut, untracked WORK! (@wesleytodd)
- Ensure each of the dependencies updates their transitives
Pending things (Documentation):
- Add blog expressjs.com#1483 It will great to do an announcement in the blog about the release and celebrate this big milestone for the project 🥳 (@UlisesGascon )
- Update security and performance best practices expressjs.com#1466 Should be offer a fresh version when v5 is ready? (@UlisesGascon )
- Review and Update v5.x Documentation against v4.x expressjs.com#1479 (@UlisesGascon )
Discussions pending:
New
- Express Generator? Context
Under Investigation
- Cleaner way for redirecting back to the Referrer express#2692 (@blakeembrey )
- Resolve paths for views asynchronously express#2653 (@blakeembrey )
Decisions made:
Not in 5.x
- Support http/2. express#3730
- Moves req/res out of the repo express#3214
- Settings functionality moved out of core express#3218
- Remove direct http dependency express#3213
- separate locals from config values express#2648
- rebase: Generic Body Parser implemented body-parser#524
- response is only finished if socket is detached jshttp/on-finished#31 (@UlisesGascon)
Future Minors
Reacted by Jean-Christophe Amiel, Matt, Kaiwen Dai, kalmigs, Ahmad, S.Y. Lee, Kenrick, Karolis Šarapnickis, Guillaume, Robert Soriano and 5 more
Reacted by Wes Todd, Jon Church, sepehr mohseni, Mert Can Altin, Daniel Derevjanik, Domagoj Vukovic, Youssef Meskini, Kunalan Kevin Subagaran, Frank de Jonge, Matt and 18 more
Reacted by Jon Church, sepehr mohseni, Mert Can Altin, Daniel Derevjanik, Domagoj Vukovic, Youssef Meskini, Hilman Ramadhan, Frank de Jonge, Matt, Volodymyr Bartmanskyi and 14 more
Reacted by Wojciech Maj, sepehr mohseni, Mert Can Altin, Domagoj Vukovic, Youssef Meskini, Alberto Leal, Matt, Guillaume, Vasyl Zuziak, ǰƕ£€€ and 6 more
Metadata
Metadata
Assignees
Labels
tc agendatop priorityIssues which the TC deem our current highest priorities for the projectIssues which the TC deem our current highest priorities for the project
Activity
wesleytodd commentedon Apr 25, 2024
UlisesGascon commentedon Apr 26, 2024
CBID2 commentedon Apr 26, 2024
wesleytodd commentedon Apr 26, 2024
Yeah this is great! Absolutely agree with getting folks involved in taking ownership of them. Go team!
Ok yeah this was my main concern. I knew for sure there is router stuff which is why I started there with the labels, but I think there is more in the other few. So if anyone wants to take point on reviewing the deps we own which are "direct deps" of
expressthat would be awesome. Specifically I think each repo needs to address if there are any pending breaking changes which look like they were ready to land (if they are too contentious or too incomplete then we should not land them now) or if there is a pre-existing major version branch with work left to do on it (which is the case in a few for sure). For that we need to catalog that work here so we make sure we don't miss anything.jonchurch commentedon Apr 28, 2024
mertcanaltin commentedon Apr 28, 2024
mertcanaltin commentedon Apr 28, 2024
UlisesGascon commentedon Apr 28, 2024
I think that @chrisdel101 is actively working on it, maybe we can provide them more support.
Aside of active development for sure you (@CBID2 @mertcanaltin) can work on:
I think that maybe @rxmarbles is working on it, based on slack comment
wesleytodd commentedon Apr 29, 2024
Yeah exactly. That said I have gotten confused a few times and I think this is one case where we would benefit from automation and some really clear and simple docs.
Yaminyam commentedon May 9, 2024
wesleytodd commentedon May 9, 2024
wesleytodd commentedon May 15, 2024
@jonchurch do you think this needs to be added to the list above? expressjs/express#4851
EDIT: just to keep the records, this one is related as well I think expressjs/express#4852
1 remaining item
jdhiro commentedon Jun 29, 2024
RobinTail commentedon Jul 3, 2024
@wesleytodd , would it be possible to detach features from the breaking changes needed for those features in order to speed up the release of
5.0?The
brotlisupport could be a feature of5.1, isn't it? While dropping Node versions below 18 must be prioritised to enable and ease implementing new features of5.x.It's been 10 years.
ctcpip commentedon Jul 3, 2024
A number of things have been punted from the initial
5.0release, and more may yet be punted, where possible.wesleytodd commentedon Jul 30, 2024
Ok, I just checked off an important one: "Look through the direct deps to see if they have things which need to land"
I have gone through and commented on or resolved as many of the PR's/issues/discussions in the direct and transitives which seem to have some pending (breaking) changes to land. I added a few things on the list, but they are relatively small and should be simple enough to resolve.
Which means, this is pretty much a complete final picture finally of what needs to be wrapped up to release.
IamLizu commentedon Aug 15, 2024
kibertoad commentedon Aug 15, 2024
wesleytodd commentedon Aug 15, 2024
5.0.0
RobinTail commentedon Sep 10, 2024
Thank you @wesleytodd , @UlisesGascon , @ctcpip and others!
This is an epic achievement on the planetary scale.
❤️
wesleytodd commentedon Sep 10, 2024
We put a closes line in the commit, but looks like it didnt actually close this. So I can happily say this is closed as completed!
UlisesGascon commentedon Sep 10, 2024
I will relocate the pending things to 2 new issues (backlog for 5.x and Backlog for 6.0) :)
Epic: Supporting Express 5 (#1530)
ctcpip commentedon Sep 10, 2024
resolved via expressjs/express#2237