Fix broken MacOS build and publish workflow #143
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why
The MacOS Intel (x64) build in CI has been failing for a few months now (see logs). After tons of back and forth I finally figured out why. Turns out, Python 3.12 got released in October which removed
distutils
, a deprecated Python package that node-gyp (used by Electron forge) relied on. It seems the default GitHub runners started defaulting to Python 3.12 shortly after hence why our builds suddenly started failing in Oct.See relevant issue for more detail: nodejs/node-gyp#2869
What changed
Pin Python version to 3.11 in CI for the build / publish steps. Also fixed one place we were still using Node 18 instead of Node 20 as we do elsewhere for consistency.
Test Plan
CI (in particular, the MacOS build tests) finally passes yay!