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

Should we drop Node.js v18 for v5? #5460

Closed
mcollina opened this issue May 11, 2024 · 11 comments
Closed

Should we drop Node.js v18 for v5? #5460

mcollina opened this issue May 11, 2024 · 11 comments
Labels
v5.x Issue or pr related to Fastify v5

Comments

@mcollina
Copy link
Member

mcollina commented May 11, 2024

Given that the gap between v18 and v20 is growing quickly, I think we could just drop v18 in v5.
This will save us so many flaky CI runs in the future, given the problems v18 has with FinalizationRegistry (I still hope a fix will be backported at some point).

@mcollina mcollina changed the title Should we drop Node.js v18 for v5 Should we drop Node.js v18 for v5? May 11, 2024
@gurgunday
Copy link
Member

+1

Additional information on usage: https://nodedownloads.nodeland.dev/

@jsumners
Copy link
Member

Let's do it.

@Uzlopak
Copy link
Contributor

Uzlopak commented May 11, 2024

Independent from fastify, my use cases at work only use node 20.

@mcollina
Copy link
Member Author

@Eomm @simoneb any opinions here?

@Eomm
Copy link
Member

Eomm commented May 12, 2024

TLDR: Drop it 👍🏼

image

It seems the Node.js 18 version is still in use, but Node.js 20 is gaining traction month by month, while v18 is being phased out. Therefore, I believe that by the Fastify v5 release, most users will have already upgraded to v20.

@simoneb
Copy link
Contributor

simoneb commented May 12, 2024

I don't know folks, there doesn't seem to be a right or wrong.

  • first of all it depends on when v5 comes out. If it comes out at a time that v18 is still the Active LTS (this October), it's a long shot to decide to stop supporting it
  • secondly it depends how much effort it is to keep supporting it. If it doesn't make any difference in terms of maintenance, I don't see a compelling reason to drop it
  • even if the two points above suggest that dropping it is a sensible choice, let's still consider all the cloud vendors which are quite slow in migrating to newer versions of Node.js. If users are in production with any cloud providers which don't support 20, do we really want to prevent them from being able to upgrade to v5 for that reason?

I don't have full visibility around any of the points above: I don't know when v5 is due to be released, I don't know how much effort it is to support v18, and I don't know which cloud providers support which Node.js version, but they're the things I would consider when making a decision.

@mcollina
Copy link
Member Author

Node.js v18 is not Active LTS. It's maintenance LTS and will be out of support in April 2025.
The target for Fastify v5 is in mid-July. Node.js v20 is Active LTS.

secondly it depends how much effort it is to keep supporting it. If it doesn't make any difference in terms of maintenance, I don't see a compelling reason to drop it

There are many differences between Node.js v18 and v20, and I expect this to grow.

My main concern is the flakyness of Node.js v18 in CI. We could wait and make a last-minute decision based on the fact that the FinalizationRegistry bug is backported and released on v18.

(this causes flakyness both to Pino and Undici).

@simoneb
Copy link
Contributor

simoneb commented May 13, 2024

You're right about Node 18 being maintenance, my bad. Although the other two considerations still hold, 18 being maintenance is a fairly compelling reason to drop it, I agree.

@jsumners
Copy link
Member

Also, we will be committed to supporting v4 for quite some time. It will cover those on the old releases.

@climba03003
Copy link
Member

I do not oppose to support less version at the beginning of new major.
We often need about 2 - 3 years for new major release.
That's means v18 is not a good option to be part of next major because it will be un-maintained in most of the life-time (1/2 - 2/3) for v5.

@gurgunday
Copy link
Member

gurgunday commented May 25, 2024

Node 18 is now dropped from all CIs that correspond to the next release

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
v5.x Issue or pr related to Fastify v5
Projects
None yet
Development

No branches or pull requests

7 participants