AFAIK we have not published a version 4 of node-gyp even though we bumped the version in package.json in https://github.com/nodejs/node-gyp/pull/1212. For the current version (from the v3.x branch) we're still maintaining compatibility with Node.js v0.10, v0.12 and v4 which are all EOL. One of the justifications previously used to pin the version of request was compatibility with those versions (although https://github.com/nodejs/node-gyp/pull/1492 looks to be okay on that front).
I propose that we should release a v4 of node-gyp that drops support for EOL versions of Node.js. I also propose we drop support in v4 of node-gyp for Node.js v6, which is in maintenance, as it is extremely unlikely it will get a npm (and hence node-gyp) update before it goes EOL (and if one is required we can do another node-gyp@3 release).
+1, hopefully #1492 and #1518 can be part of a "final" v3.x release.
I've been going through the issue tracker lately to see if there are any large changes/feature requests lurking, but none seem to really pop out. I think a good start for a v4.0.0 checklist would probably be
<=6 as already mentioned<=6 as part of nodegyp-test-pull-request if PR is targeted at master branchrequire('os') and remove osenv dependencySwitch to using
require('os')and removeosenvdependency
Out of interest, what's the rationale behind this?
Out of interest, what's the rationale behind this?
Starting in v6, require('os') provides all of what node-gyp currently uses from osenv, so figured may as well drop a dependency and just use what's already built in :)
It would be good to have https://github.com/nodejs/node-gyp/pull/1516 in the final v3 release as well.
How is the v3.x branch being maintained? Can I just land it there as well?
How is the v3.x branch being maintained? Can I just land it there as well?
For landing in master (same guidelines for v3.x as well I guess?), I've been getting at least one signoff, making sure CI is green, and keeping open for at least 48 hours.
How is the v3.x branch being maintained? Can I just land it there as well?
The consensus in https://github.com/nodejs/node-gyp/pull/1212#issuecomment-305539119 was to land on master and backport. As much as possible.
there is also a https://github.com/nodejs/node-gyp/pull/1471 for v4
Most helpful comment
Starting in v6,
require('os')provides all of whatnode-gypcurrently uses fromosenv, so figured may as well drop a dependency and just use what's already built in :)