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

v7 #3386

Closed
5 of 6 tasks
ronag opened this issue Jul 3, 2024 · 27 comments
Closed
5 of 6 tasks

v7 #3386

ronag opened this issue Jul 3, 2024 · 27 comments
Assignees
Labels
semver-major Features or fixes that will be included in the next semver major release

Comments

@ronag
Copy link
Member

ronag commented Jul 3, 2024

We start with merging the next branch into main (@metcoder95) and then start working actively on v7 with a deadline relative to Node v23.

@ronag ronag added the semver-major Features or fixes that will be included in the next semver major release label Jul 3, 2024
@metcoder95
Copy link
Member

Shall we consider the exposure of the lenient flags from lhttp as part of this?

@mcollina
Copy link
Member

mcollina commented Jul 3, 2024

Shall we consider the exposure of the lenient flags from lhttp as part of this?

Yes, I think so.

@Uzlopak
Copy link
Contributor

Uzlopak commented Jul 3, 2024

How can i support?

@KhafraDev
Copy link
Member

  • diagnostics channels

is this something we're absolutely landing?

Also hopefully #2727 is included in the fetch stuff, it's slightly older so I'm hoping it won't get missed.

@metcoder95
Copy link
Member

How can i support?

Would you like to support adding the lenient flags for llhttp @Uzlopak?

@metcoder95
Copy link
Member

I was kicking off the work for the lenient flags, but I just noticed that most of them as marked as opening a security vector if enabled; do we want to enable that within undici?

By default they are disabled sure, but do we want to expose the users to that possibility?
I'd consider to not do so, cannot imagine under which circumstances (beyond legacy servers) you might want to enable this

@b2whats
Copy link

b2whats commented Jul 21, 2024

Why was dropped interceptors ? What should i use instead ?

@metcoder95
Copy link
Member

Interceptors hasn't been dropped, but rather refactored into a new API.
Check: https://undici.nodejs.org/#/docs/api/Dispatcher?id=dispatchercomposeinterceptors-interceptor

@Uzlopak
Copy link
Contributor

Uzlopak commented Aug 24, 2024

can the npm package next point to v7?

@Uzlopak
Copy link
Contributor

Uzlopak commented Aug 24, 2024

image

@mcollina
Copy link
Member

mcollina commented Sep 3, 2024

That's done.


On a different topic, I think we might want to release v7 before Node.js v23, to be included there.

@metcoder95
Copy link
Member

Backported some of the work done for interceptors and smaller fixes at core.

@mcollina
Copy link
Member

Do we want to make v7 before v23 is cut? nodejs/Release#1034

@Uzlopak
Copy link
Contributor

Uzlopak commented Sep 19, 2024

Yes.

@trivikr
Copy link
Member

trivikr commented Oct 4, 2024

Is undici@v7 going to drop support for Node.js 18.x?

@mcollina
Copy link
Member

mcollina commented Oct 4, 2024

Not right now. However, if we miss the deadline for Node.js v23 (seems likely), we will definitely be dropping it, as Node.js v18 goes EOL April 2025.

@mcollina
Copy link
Member

@trivikr are you arguing we should drop support for Node.js v18 or not? So far it's in and it's not causing many issues.

@mcollina
Copy link
Member

I've discussed with @ronag in person how we can handle multiple dispatcher versions (even in minor releases). So those are actually not hard requirements.

@mcollina
Copy link
Member

I plan to ship this on the 27th of November.

@trivikr
Copy link
Member

trivikr commented Nov 20, 2024

are you arguing we should drop support for Node.js v18 or not?

Looking at the history of major version releases of undici and end-of-life of Node.js runtimes, it looks like undici@v7 should drop support for Node.js 18.x

undici version, and release date Min Node.js version, and end-of-life support for EoL Node.js version
v4, 2021-06-21 >=12.18, 2022-04-30 N/A. Next version released before EoL
v5, 2022-03-29 >=12.18, 2022-04-30 1.5+ years
v6, 2023-12-05 >=18.0, 2025-04-30 N/A. Next version released before EoL
v7, 2024-11-27

Assuming v8 of undici is released in December 2025, we can think of two options for min Node.js version support.

undici version, and release date Min Node.js version, and end-of-life support for EoL Node.js version
v7, 2024-11-27 >=18.0, 2025-04-30 6+ months.
v7, 2024-11-27 >=20.0, 2026-04-30 N/A. Next version released before EoL

Undici can use this data to drop support for Node.js 18.x, and push undici users to upgrade.
If undici plans to come up with a major release schedule in future - it can be aligned with Node.js LTS EoL (say Q2/Q3 of each year?)

@trivikr
Copy link
Member

trivikr commented Nov 25, 2024

Bumping for decision on supported version of Node.js.

The https://github.com/nodejs/undici/releases/tag/v7.0.0-alpha.7 was released today, and stable version is expected to be released in two days.

@KhafraDev
Copy link
Member

I have yet to see justification for dropping v18. What benefit is there in dropping it?

@mcollina
Copy link
Member

As time will pass, it would be harder for us to maintain it. Right now, this means using tspl instead of t.plan() for our tests, but the list can grown.

@trivikr trivikr mentioned this issue Nov 25, 2024
@KhafraDev
Copy link
Member

I'll trust you on that, I guess I would be a -0 on dropping it.

@trivikr
Copy link
Member

trivikr commented Nov 26, 2024

If undici plans to come up with a major release schedule in future - it can be aligned with Node.js LTS EoL (say Q2/Q3 of each year?)

Should I create a new feature request for this, if maintainers are interested in coming up with a schedule?
It can start with April 2026.

Looking at the past releases, it does not look like undici needs a release schedule.
But it might need in future, if undici.request is made available in Node.js just like undici.fetch

@metcoder95
Copy link
Member

But it might need in future, if undici.request is made available in Node.js just like undici.fetch

Overall, the dispatcher versions can vary and maybe bring some troubles; not 100% sure if we need a release schedule for that, but good to keep in mind

@metcoder95
Copy link
Member

Shall we close it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver-major Features or fixes that will be included in the next semver major release
Projects
None yet
Development

No branches or pull requests

7 participants