architect / dynalite

An implementation of Amazon's DynamoDB built on LevelDB

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Minimum Node.js version

ryanblock opened this issue · comments

As mentioned in #166, we will be taking some time to onboard with the Dynalite codebase. As an early exercise, I've been taking a look at getting our dependencies up to date, namely because:

I haven't yet done a deeper analysis on the deprecations, but I figured we'd at least be better off getting things up to date so we aren't diffing very old versions against their eventual replacements.

Overall I haven't yet noticed any impact to the version updates to the Level dependencies, although they do deprecate support for Node.js versions <= 8 (see: leveldown changelog, memdown changelog; see also subleveldown 6.0 upgrade guide).

Because Dynalite doesn't have package.json engines property, these updates will necessitate a breaking release (e.g. Dynalite v4). That makes this a good time to introduce a minimum Node.js version, and to get feedback on what we ought to support.

Generally at Architect, we try to align our releases with Node.js Maintenance LTS + Active LTS releases, but there are numerous exceptions and plenty of reasons to allow support of certain EOL versions.

In this case, I'd propose we set Dynalite's minimum Node.js version to v14 (which went EOL in April of this year), namely so we can employ Architect's lint config and begin authoring with more modern syntax.

Anyway, please do let us know what you think!

I vote for picking a Node.js version that is not (yet) EOL (v16?) or is there a reason to pick v14 specifically?

Mostly it's just kind of being a bit generous to anyone who may be using Dynalite but that hasn't yet upgraded to >14 (which I admit is probably not many folks). Also, AWS Lambda still supports Node.js 14 for a bit longer, so while it's an obscure use case, we have indeed run Dynalite in Lambda before. (That said, 16 also sounds fine to me!)

(While I did merge that PR with 14 set as the minimum, I'd still like to keep this conversation open a bit longer, as we won't be releasing 4.0 immediately.)

AWS is telling me node 14 is deprecated on their end by November 27, 2023. No issues jumping to node 16 for my projects.

Sounds good to me!