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

Upgrade to Node ~v14~ v16 #4263

Closed
gnprice opened this issue Sep 18, 2020 · 3 comments · Fixed by #5356
Closed

Upgrade to Node ~v14~ v16 #4263

gnprice opened this issue Sep 18, 2020 · 3 comments · Fixed by #5356
Assignees
Labels

Comments

@gnprice
Copy link
Member

gnprice commented Sep 18, 2020

This is a successor to #3780. Node v14 is the "Current" release, and will replace v12 as the "Active LTS" next month, 2020-10-27. Timeline:
https://nodejs.org/en/about/releases/

There's no rush here; v12 won't be EOL until 2022. The thing an upgrade could do for us is potentially bring bugfixes or speed improvements. (Like how v12 brought major speed improvements for scripts and command-line tools.) We don't use Node in the actual app -- it's strictly for development (and the build process) -- so that would be mainly for our own benefit as developers.

The text on that release-timeline page sets an expectation that a "Current" release may not be supported yet by libraries, but they should support it by the time it's LTS. The bug in Metro (facebook/metro#453) that blocked our upgrade to v12 for a while was fixed in Metro a few days after v12 reached LTS. I haven't yet experimented with Node v14 to see if any bugs show up, or any noticeable improvements.

@gnprice
Copy link
Member Author

gnprice commented Sep 18, 2020

Copying #3780 (comment) here for concreteness on how to go about this issue:

Also, as you may well know but for concreteness here in the thread: what it means that we're currently on Node v10 is

  • we use Node 10 in CI (see .travis.yml) [now .github/workflows/ci.yml]
  • we tell people to use Node 10 in the setup instructions (docs/howto/build-run.md)
  • if people have build trouble and turn out to be using some other version of Node, we ask them to please use Node 10 instead.

So upgrading is a matter of confirming that everything works on the new version, and then updating those two places.

(But again, no rush.)

@gnprice
Copy link
Member Author

gnprice commented Mar 4, 2022

Node 12 is now approaching EOL; 14 and 16 are both LTS.

I've just upgraded to Node 16 on one machine. tools/test --all passes. I'll see if any trouble arises somewhere else.

@gnprice
Copy link
Member Author

gnprice commented Apr 22, 2022

Haven't had any trouble since the previous comment, and I've been on v16 on one machine and v17 on the other. I'll make the updates described above, to v16. (v17, being odd-numbered, won't have long-term support; it'll be EOL itself in a little over a month.)

@gnprice gnprice self-assigned this Apr 22, 2022
gnprice added a commit to gnprice/zulip-mobile that referenced this issue Apr 22, 2022
I've been using this for local development for a few weeks now,
and all seems well.  (That's longer than it needs to be; I just
hadn't come back to this to follow up.)

Node v12 is going EOL in just over a week, 2022-04-30, so it's
past time to make this upgrade official.

Also delete an old troubleshooting entry for a problem with Node v11
that was avoided by sticking to v10; and fix two other references to
Node v10 (where the problem was using an older version like v8) so
that they remain accurate now and for further upgrades in the future.

(At least until Node v1000.  On Node's current release cadence, that
will happen in a little under 500 years.  I think we can tolerate
having to tweak this check then.)

Fixes: zulip#4263
gnprice added a commit to gnprice/zulip-mobile that referenced this issue Apr 22, 2022
I've been using this for local development for a few weeks now,
and all seems well.  (That's longer than it needs to be; I just
hadn't come back to this to follow up.)

Node v12 is going EOL in just over a week, 2022-04-30, so it's
past time to make this upgrade official.

Also delete an old troubleshooting entry for a problem with Node v11
that was avoided by sticking to v10; and fix two other references to
Node v10 (where the problem was using an older version like v8) so
that they remain accurate now and for further upgrades in the future.

In particular, where we had been checking in our tests for Node v10+
(but in fact for >=10 and <20), just replace it with handy metadata
in our package.json to make Yarn (or `npm`) complain at install time.
Thanks to Anders Kaseorg for pointing out that package.json feature.

Fixes: zulip#4263
@gnprice gnprice changed the title Upgrade to Node v14 Upgrade to Node ~v14~ v16 Oct 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant