-
Notifications
You must be signed in to change notification settings - Fork 8.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
Update setup.py
to accommodate Python3.13.0
#2409
Conversation
*Changes made* - Update `setup.py` to pass in a local dictionary to `exec` to capture the `locals()` in `_version.py` for package version reporting. *Motivation* - `Python3.13.0` enforces stricter safety standards on `locals()` with PEP 667 (see [here](python/cpython#118888 (comment))) - This causes the following error upon attempting to install with `python3.13 -m pip install openai-whisper`: ```bash Collecting openai-whisper Using cached openai-whisper-20240930.tar.gz (800 kB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error × Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [25 lines of output] <string>:5: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html Traceback (most recent call last): File "/Users/jasonshipp/.pyenv/versions/3.13.0/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module> main() ~~~~^^ File "/Users/jasonshipp/.pyenv/versions/3.13.0/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main json_out['return_val'] = hook(**hook_input['kwargs']) ~~~~^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jasonshipp/.pyenv/versions/3.13.0/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel return hook(config_settings) File "/private/var/folders/hk/8xz63_l16zb9snz57jx9hqgr0000gn/T/pip-build-env-l_19mrvs/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 332, in get_requires_for_build_wheel return self._get_build_requires(config_settings, requirements=[]) ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/hk/8xz63_l16zb9snz57jx9hqgr0000gn/T/pip-build-env-l_19mrvs/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 302, in _get_build_requires self.run_setup() ~~~~~~~~~~~~~~^^ File "/private/var/folders/hk/8xz63_l16zb9snz57jx9hqgr0000gn/T/pip-build-env-l_19mrvs/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 516, in run_setup super().run_setup(setup_script=setup_script) ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/private/var/folders/hk/8xz63_l16zb9snz57jx9hqgr0000gn/T/pip-build-env-l_19mrvs/overlay/lib/python3.13/site-packages/setuptools/build_meta.py", line 318, in run_setup exec(code, locals()) ~~~~^^^^^^^^^^^^^^^^ File "<string>", line 21, in <module> File "<string>", line 11, in read_version KeyError: '__version__' [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. error: subprocess-exited-with-error × Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> See above for output. note: This error originates from a subprocess, and is likely not a problem with pip ``` *EXTRA NOTES* - This does not enable `openai-whisper` to be pip installed with `Python3.13`, due to a dependency on the `numba` library. This issue and missing dependency can be tracked [here](numba/numba#9413)
Would it be a more intuitive and durable solution to replace the deprecated The error message contained
|
Any luck with this? |
Yes, #2435 merge would be great! But there's an issue with numba <-> llvmlite |
Problem is on Python version 3.13.1
|
@yakovlevway Does this merely repeat what is in the commit message above or is it different? |
This is a different error, it looks it is missing
|
#2435 (comment) might still be a problem although their release candidates now seem to support Python 3.13... https://pypi.org/project/numba/0.60.0/#history |
thanks all for reporting compatibility issues with 3.13. this PR was closed automatically by #2435. Hoping their upcoming release can fix the remaining compat issue! |
Nice progress… It would be great to have some pull requests that contain tests that fail because of the remaining compatibility issues. When they pass we would have confidence to make the next release. These tests would also help to avoid future regressions. |
Python 3.13 is blocked by both |
Changes made
setup.py
to pass in a local dictionary toexec
to capture thelocals()
in_version.py
for package version reporting.Motivation
Python3.13.0
enforces stricter safety standards onlocals()
with PEP 667 (see here)This causes the following error upon attempting to install with
python3.13 -m pip install openai-whisper
:EXTRA NOTES
openai-whisper
to be pip installed withPython3.13
, due to a dependency on thenumba
library. This issue and missing dependency can be tracked here