-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
Python 3.12 build error "No module named 'distutils'" #28695
Comments
I can offer to submit a PR to update the text in CONTRIBUTING > Requirements accordingly. There is also a related issue that the version of
|
@MikeMcC399 Thanks, that does seem like the most reasonable PR to start. |
|
|
Comment: According to https://endoflife.date/python Python 3.11 is supported until Oct 24, 2027, so there should not be any urgent need for Cypress to support Python 3.12 and later. |
Current behavior
Executing
yarn
to build Cypress from source causes build errors when using the current version of Python3.12.1
. The following npm modules are affected:The error messages include the following line caused by a breaking change in Python
3.12
which is incompatible with the version ofnode-gyp
currently used by Cypress:Desired behavior
CONTRIBUTING > Requirements should correctly list working prerequisites. The current text says:
python
(since we usenode-gyp
. See their repo for Python version requirements.)python
is pre-installed.sudo apt install g++ make cmake
meets the additional requirements to runnode-gyp
in the context of building Cypress from source.The text should be changed to state that Python
3.11
is the highest version compatible with Cypress install / build from source.Test code to reproduce
See https://github.com/MikeMcC399/cypress/blob/prime/.github/workflows/build-test.yml
Cypress Version
13.6.2
develop branch 9e1f1e7Node version
18.15.0
Operating System
Ubuntu 22.04 and Windows 2022
Debug Logs
Other
Python version overview
According to https://endoflife.date/python Python 3.11 is supported until Oct 24, 2027, so there should not be any urgent need for Cypress to support Python 3.12 and later.
Defaults
22.04
3.10.12
3.10.12
3.9.13
Deprecations
Python
3.12
introduces a breaking change:Support for Python
3.12
was added to node-gyp@10.0.0 (see issue nodejs/node-gyp#2869) ingyp@0.16.1
taking care of the breaking change in Python. node-gyp@10.0.0 is however not (yet) used by Cypress, meaning that Python3.12
cannot yet be used cleanly either.The text was updated successfully, but these errors were encountered: