-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
v5.0.0 proposal #1723
v5.0.0 proposal #1723
Conversation
BTW this could be 4.0.0... Python3 is close, Only thing that's known to be broken is cross-compilation, but I need a better CI environment to test the fix. |
No, I just released 4.0.0 based on your 3.x proposal, that last release was semver-major so I just did the full bump |
Ok. My main concern is/was coordination with
Currently GYP3 and IMHO a better testing environment would be the Node.js build cluster. |
missing visual studio 2019 support which should be prioritized. |
#1739 is the last Node.js-ish change necessary for Electron v6 to ship with ARM64 Windows support, so I'm particularly interested in seeing it land in an official node-gyp release. (Right now they have to manually patch node-gyp to HEAD to get builds out.) |
Does this repo have any automated testing? I am reluctant to endorse a release that is not supported by at least some level of automated testing. With 225 days until the end of life of Python 2, I still count at least 17 calls to functionality that no longer exists in Python 3. Some basic linting would really help. |
Re testing: @cclauss we have a ci.nodejs.org job that can be triggered manually, not automatic yet but I think that should be doable with the github-bot setup. Re 5.0.0: folks, how about we aim to get a 5.0.0 out within the next month, we can be ambitious with what's included but at the same time recommend to npm that they not pick it up as the default version straight away. That would alleviate some of the pressure to get this perfect but we'd still get it in the hands of a large number of people that are using it directly—and we can dogfood it ourselves. Does that sound like a reasonable strategy? I'm struggling to come up with a better idea for moving forward here. |
@rvagg it's still open if 5.0 will include the move to python3, right? |
Some of the Python 3 issues that need to be addressed... |
@rvagg #1762 just landed, it would be great if you can include it (essentially, all of master). The strategy of just making the release and recommending to npm to not pick it up as default right away sounds like the best path forward to me. We just have to be prepared to release a fix quickly if any issue is actually found. I'd rather see a v5.0.0 come out quickly because of #1764. I don't see a reason to wait for Python 3 support, we can release v6.0.0 as soon as it's ready. It's even probably better to have it in its own release. Let me know if I can help with the release, thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've done a rebase and made a new CHANGELOG, it's in OP. Any blockers for pushing this out? If not, maybe we should do it tomorrow? Again, let's not recommend npm pick this one up straight away but let's also get back onto a more regular cadence of releases and not let these things back up so much. Python 3 support seems like the top priority after this. We're not constrained by major version bump cadence but we should be prepared to go back and fix older majors for folks that really need things fixed but can't afford the breakage, LTS-style. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now that Travis CI is enabled for this repo (#1752), I have no further objections to this release.
Good to go. Nice work!
Published v5.0.0. @refack or @joaocgreis do either of you have a login to the new npm bug tracker? We can't open issues on the repo anymore. We need to let them know not to pick this one up until we have a patch or minor release or two and that we can continue to patch 4.x if there are critical bugs. I thought about opening a PR to do it but that'd be a bit too obnoxious I think. |
Thanks @rvagg! I opened this in npm: https://npm.community/t/node-gyp-v5-0-0-released/8179 |
This is what a v5.0.0 would look like, can we get this right and clean up the backlog on
master
out of the door? This is a WIP, I haven't reviewed much of what's in here and can't vouch for its reliability or stability.@cclauss @refack what does Python 3 support look like at the moment? Are we there yet?
(updated with latest)
81f3a92338
] - Update list of Node.js versions to test against. (Ben Noordhuis) #16704748f6ab75
] - Remove deprecated compatibility code. (Ben Noordhuis) #167045e3221fd4
] - Remove an outdated workaround for Python 2.4 (cclauss) #1650721dc7d314
] - Add ARM64 to MSBuild /Platform logic (Jon Kunkee) #1655a5b7410497
] - Add ESLint no-unused-vars rule (Jon Moss) #14978a83972743
] - (SEMVER-MAJOR) bin: follow XDG OS conventions for storing data (Selwyn) #15709e46872ea3
] - bin,lib: remove extra comments/lines/spaces (Jon Moss) #15088098ebdeb4
] - deps: replaceosenv
dependency with nativeos
(Selwyn)f83b457e03
] - deps: bump request to 2.8.7, fixes heok/hawk issues (Rohit Hazra) #1492323cee7323
] - deps: pinrequest
version range (Refael Ackermann) #1300c515912d08
] - doc: improve issue template (Bartosz Sosnowski) #1618cca2d66727
] - doc: python info needs own header (Taylor D. Lee) #12453e64c780f5
] - doc: lint README.md (Jon Moss) #1498a20faedc91
] - (SEMVER-MAJOR) gyp: enable MARMASM items only on new VS versions (João Reis) #1762721eb691cf
] - gyp: teach MSVS generator about MARMASM Items (Jon Kunkee) #167991744bfecc
] - gyp: add support for Windows on Arm (Richard Townsend) #1739a6e0a6c7ed
] - gyp: move compile_commands_json (Paul Maréchal) #166192e8b52cee
] - gyp: fix target --> self.target (cclauss)febdfa2137
] - gyp: fix sntex error (cclauss) #1333588d333c14
] - gyp: _winreg module was renamed to winreg in Python 3. (Craig Rodrigues)98226d198c
] - gyp: replace basestring with str, but only on Python 3. (Craig Rodrigues)7535e4478e
] - gyp: replace deprecated functions (Craig Rodrigues)2040cd21cc
] - gyp: use print as a function, as specified in PEP 3105. (Craig Rodrigues)abef93ded5
] - gyp: get ready for python 3 (cclauss)43031fadcb
] - python: clean-up detection (João Reis) #158249ab79d221
] - python: more informative error (Refael Ackermann) #1269997bc3c748
] - readme: add ARM64 info to MSVC setup instructions (Jon Kunkee) #1655788e767179
] - test: remove unused variable (João Reis)6f5a408934
] - tools: fix usage of inherited -fPIC and -fPIE (Jens) #13400efb8fb34b
] - (SEMVER-MAJOR) win: support running in VS Command Prompt (João Reis) #1762360ddbdf3a
] - (SEMVER-MAJOR) win: add support for Visual Studio 2019 (João Reis) #17628f43f68275
] - (SEMVER-MAJOR) win: detect all VS versions in node-gyp (João Reis) #17627fe4095974
] - (SEMVER-MAJOR) win: generic Visual Studio 2017 detection (João Reis) #17627a71d68bce
] - win: use msbuild from the configure stage (Bartosz Sosnowski) #1654d3b21220a0
] - win: fix delay-load hook for electron 4 (Andy Dill)