-
Notifications
You must be signed in to change notification settings - Fork 11
Bug: Node 8 support is broken since version v1.3.0 #97
Comments
This seems to be impacting a bunch of packages (see oclif/config#131 too) |
Hi @erezrokah! Really sorry that this has caused issues. oclif aims to track Node's LTS schedule with additional details in this blog post on migrating Node on CLIs. With the current Node LTS schedule, Node 8 is no longer supported. Does the migration blog post help move the netlify CLI forward? A round of major version bumps on oclif could have prevented this issue but I think the hope was to provide the migration path with continued support with Node 10 (or a later LTS). cc @RasPhilCo |
Hi @chadian, thank you for the quick reply on this. What led me to file this issue as a bug was:
We "fixed" this on our end by pinning related packages version to latest known versions that are guaranteed to work on Node 8, but that it not something we want to keep for a long time. I hope that clarifies the issues we were having. Dropping Node 8 is definitely the way to go forward and we're pushing for that internally too. |
Oh! That is definitely an issue, we need to change that. We do have some tooling that attempts to make assertions around consistent state of packages (including There needs to be a clearer declaration of how versioning is handled. Under semver, you're right, dropping Node is a breaking change and a major version bump. I will try and get some answers/resolutions. If not using semver at least changing the |
If you don't follow semver, I highly recommend adding a banner in README of all OCLIF's repositories. I am 100% sure that nobody will be happy to get a breaking change problem with any package while he is thinking that that package is using semver. In fact, it's not possible to hack this problem by I prepared a small PR to get Node.js 8 support back, #101 |
💯 agreed regarding semver and it being a surprise. There should be better notice if oclif isn't going to follow semver strictly. Thanks @ovr for your pr, I've merged it and released @ovr, @erezrokah what do you think about an .npmrc file with |
This is great! Before we can verify it (for Netlify CLI) this fix should be ported to https://github.com/oclif/cli-ux/blob/515570bbeb40bcd28698b6b7af53cc9bfdf86279/package.json#L19 and https://github.com/oclif/plugin-plugins/blob/fa800ed279ade4be04d1479297e8c6c8ccd57eed/package.json#L14
Any solution that makes the installation fail if the Node.js version doesn't match works for me. |
I've prepared two PRs because it's required too from my usages. |
@ovr, @erezrokah can you tell me if those fix things or if I have to bump versions for these releases in other oclif packages. I'm going to work on applying the npmrc and engine updates. |
I am still getting
|
To maintain oclif compat with node 8 oclif/errors#97
To maintain oclif compat with node 8 oclif/errors#97
@ovr Thanks, |
Thanks @chadian closing this as resolved. I appreciate the quick response! |
Glad it's working out. I've relayed our discussion here about documenting our intention to follow semantic versioning and to include a major version bump for our packages soon with an updated node engine. There are other things being figured out to go along with the major version bumps, too. Thanks again for everyone's patience, the PRs and feedback. |
In #27
fs-extra
was updated tov9
which no longer supports node 8.See error due to missing optional catch binding in node 8 (https://node.green/#ES2019-misc-optional-catch-binding):
Coming from https://github.com/jprichardson/node-fs-extra/blob/6bffcd81881ae474d3d1765be7dd389b5edfd0e0/lib/mkdirs/make-dir.js#L85
The text was updated successfully, but these errors were encountered: