-
-
Notifications
You must be signed in to change notification settings - Fork 43
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
fix(workflows): exclude some node versions for windows/mac, update tools as needed for test #140
fix(workflows): exclude some node versions for windows/mac, update tools as needed for test #140
Conversation
|
fd1d83c
to
5ad9588
Compare
Ping @ersachin3112 to kick off the workflows so we can see whether this change fixes them. Thanks! |
Weird, github requires payment, although actions are free for us |
Is that related specicially to the macos-latest-large image? |
I think yes... |
5ad9588
to
868b6de
Compare
Updated just to exclude node versions 10-14 in the macos test workflow. |
Let's remove |
Yea sudo is a bad idea |
Travelling now, will try again next week. |
Updated |
ae67e47
to
99c10bc
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #140 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 2 2
Lines 12 12
Branches 3 3
=========================================
Hits 12 12 ☔ View full report in Codecov by Sentry. |
99c10bc
to
155f0b1
Compare
New iteration where I force Python 3.12 for node-gyp, which has the distutils module. Alternative is to do one of the following to install distutils for newer versions of Python:
But I figured that would take more iterations to get right. |
155f0b1
to
75589cc
Compare
@alexander-akait, new iteration with installing python setuptools. Didn't realize that I didn't git add my files 2 weeks ago. |
bf31da1
to
5952787
Compare
Ah I've seen this Windows build failure before with finding the VS2022 version... but I found a workaround that I can't explain why it works. So I'd have to dive deeper for this one. |
I'm thinking this might be why the original pipelines upgraded the version of npm... |
Yeah so latest node 14 has npm 6.14.18 which has node-gyp 5.1.1, and according to this VS2022 support was added in node-gyp 8.4.0: nodejs/node-gyp#2958. Let me try something like this for Windows: https://github.com/nodejs/node-gyp/blob/main/docs/Updating-npm-bundled-node-gyp.md |
5952787
to
ff1f03e
Compare
@alexander-akait, ready for another try :D Since the windows image has VS2022, we need node-gyp >= 8.x. The node-gyp 8.x dependencies do not support Node.js 10.x, so rule that version out for Windows. For Node.js 12.x and 14.x, update node-gyp to 8.x to get tests running. |
Dang... I got the same error locally in Windows but only when I had some NPM environment variables set. I guess they are set on the Windows image as well. |
…ols as needed for test
ff1f03e
to
779f48d
Compare
@alexander-akait, I have another iteration that tries to mimic these instructions better. Hope it works! |
Yay! I'm not sure why |
@alexander-akait, I think you would need to update the branch protection rules to remove the requirement for mac node 12 and 14 checks. I see other repos owned by webpack-contrib requiring node 18, 20, and 22 for example. Thanks! |
Thanks a lot |
This PR contains a:
Motivation / Use-Case
The test workflow for mac is broken because osx-arm64 versions of Node.js don't exist before v16.1.0. Disable macos tests for node versions 10, 12, and 14.
New versions of python 3 leave out setuptools needed by node-gyp, so make sure those are installed for the test workflow.
Since the windows image has VS2022, we need node-gyp >= 8.x. The node-gyp 8.x dependencies do not support Node.js 10.x, so disable that node version for Windows. For Node.js 12.x and 14.x, update node-gyp to 8.x to get tests running.
NOTE: The macos-latest image now uses arm64, while the macos-latest-large image that uses x64 is available. When no architecture is specified for setup-node, it will use the system architecture, so by using an x64 mac image, it should successfully find Node 10.x, 12.x, 14.x, etc. However, the macos-latest-large image appears to require payment.