pelias / pelias

Pelias is a modular open-source geocoder using Elasticsearch.
https://pelias.io
MIT License
3.2k stars 221 forks source link

Update Node.js version support (16, 18, 20) #950

Open orangejulius opened 1 year ago

orangejulius commented 1 year ago

It's been a while since we've performed the regular chore of adding support for newer Node.js versions.

The last one we did was Node.js 12 back in early 2020, and v12 is now EOL.

I propose we go straight to the newest versions of Node.js, adding support for all currently maintained versions: 16, 18, and 20.

What needs to be done

For each of our code repositories, we need to:

The usual suspects

Generally we've found Node.js upgrades aren't too hard, with most of the work being repetitive changes to CI and Docker configs.

The things that usually cause issue are:

Please link to this issue

Please link to this tracking issue in any commits or PR that involve these Node.js upgrades, so we can find the status of everything in one place.

orangejulius commented 1 year ago

Alright, I did just a little bit of investigation into this and here's what I've found:

Based on that last one, we might want to upgrade everything (including Docker images) to Node.js 16 for now, just to get off an EOL Node.js version, then upgrade our Docker images to Ubuntu 20 (which might require a bit of work itself), and then work on Node.js 18 and 20 support. We also might want to support different versions of Node.js temporarily for the interpolation service/node-postal, so that all the other packages can use a newer version sooner.

michaelkirk commented 1 year ago

Let me know if you'd like help with this @orangejulius.