-
Notifications
You must be signed in to change notification settings - Fork 42
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
cffi relies on deprecated (now removed) distutils.msvc9compiler module #117
Comments
Given this issue is breaking my CI builds and the delays getting one or other of the PRs to fix it landed and released, I am looking to workaround the issue temporarily for my project. I did not write our Python interface and I lack Python expertise so I am seeking help here to find a workaround. My project's
I would have thought the latter line would get me an older version of setuptools that still has The
It seems that cffi is unaware of my project's How can I make it use my project's selected To the maintainers of cffi, please release a fix a.s.a.p. |
Hi, I temporarily fixed my issues by using an environmentvariable |
@nitzmahone see comments above. |
Pyclarity package depends on cffi and 2024 challenges of clarity is ongoing right now. |
Thank you @Flow86. This worked for me too. I recommend anyone who is running their build from 'CMake' in GitHub Actions to use a full path for |
Same worked for me, Thanks. I'm curious why? |
you can specify constraint files for the "simple" install (with |
In setuptools v74, the `distutils.msvc9compiler` module has been removed. However, `cffi` still relies on it. Ensure to install `setuptools` v72 to ensure this still works. See: python-cffi/cffi#117
In setuptools v74, the `distutils.msvc9compiler` module has been removed. However, `cffi` still relies on it. Therefore, the generation of the windows package fails. By adding a `pyproject.toml` file and declaring the build backend, it is possible to define the setuptools version used by the command `python3 - build` which generates the windows wheel. See: python-cffi/cffi#117 See: https://packaging.python.org/en/latest/guides/writing-pyproject-toml/
In setuptools v74, the `distutils.msvc9compiler` module has been removed. However, `cffi` still relies on it. Therefore, the generation of the windows package fails. By adding a `pyproject.toml` file and declaring the build backend, it is possible to define the setuptools version used by the command `python3 - build` which generates the windows wheel. See: python-cffi/cffi#117 See: https://packaging.python.org/en/latest/guides/writing-pyproject-toml/
An Emscripten Docker image update to Clang 20 and an update to the GitHub Actions Windows runner image broke our CI builds. This PR provides fixes or workarounds. While working on the Clang 20 issue it was noticed that the FP options for `libktx` were not being set as intended, except for the ASTC encoder. This PR also fixes that problem so the same FP options are used throughout `libktx`. Lastly it contains improvements to `build_wasm_docker.sh` made while debugging and fixing the FP settings issue. clang 20 has a new "overriding option" warning which is raised if one float-point option modifies a setting made by another. We are setting `-ffp-model=precise`, which leaves contraction on, and `-ffp-contract=off` thus we get the warning. This usage is normal for cross-platform invariance thus the fix is to disable the spam warning. The Windows runner image update broke the python build due to removal of a long deprecated package from the Python/PIP `setuptools` package and our use of the `cffi` package which has a dependency on `setuptools` including the deleted package. See python-cffi/cffi#117. This PR works around the problem by creating a `constraint.txt` file which is passed to PIP and tells it to limit the `setuptools` package to a version that still contains the deleted package.
In pypa/distutils#287 this module was removed and in pypa/setuptools#4606 that was incorporated into setuptools 74.
As a result, building cffi now fails with:
The text was updated successfully, but these errors were encountered: