Skip to content

Conversation

@mikeshardmind
Copy link
Collaborator

@mikeshardmind mikeshardmind commented May 8, 2024

I need to double-check a few things later, but conceptually, this should be all that's needed since this already wasn't manually manipulating the GIL or relying on it implicitly.

Should be ready to go, wheel built fine and imported fine on beta 1 on linux, and there shouldn't be anything platform specific about this.

@mikeshardmind mikeshardmind marked this pull request as ready for review May 9, 2024 09:34
@AbstractUmbra
Copy link
Owner

Is the action failing here because it is currently unsupported or is there something else going on?

@Sachaa-Thanasius
Copy link
Contributor

Sachaa-Thanasius commented May 10, 2024

My guess is that those symbols are only available in the beta version of 3.13 onwards, while CI is still using an alpha version. I can at least verify that it doesn't work on 3.13.0a6 on my machine, providing a similar message.

@mikeshardmind
Copy link
Collaborator Author

Was added after alpha1, but before beta1: python/cpython#116882 CI needs to be updated I guess, idk if that should be part of the same pull or not, I can do that one way or another.

@AbstractUmbra
Copy link
Owner

Happy to discuss a bit more, but if you could rebase from main with the updated CI we can ensure these checks run a-ok before a merge.

@mikeshardmind
Copy link
Collaborator Author

rebased over main, but this likely shouldn't be merged until it can be confirmed that this will build properly under the free-threaded builds, which CIBW won't support until beta2

Free-threading mode is not available yet, waiting on official binaries (planned for beta 2) and pip support.
While CPython is in beta, the ABI can change, so your wheels might not be compatible with the final release. For this reason, we don't recommend distributing wheels until RC1, at which point 3.13 will be available in cibuildwheel without the flag.

@AbstractUmbra
Copy link
Owner

Looks like pypa/cibuildwheel#1854 was merged and I updated to include that. This should be good to merge now if you're happy with it?

@mikeshardmind
Copy link
Collaborator Author

should be fine from everything I'm aware of for this.

@AbstractUmbra AbstractUmbra merged commit d4fbeaa into AbstractUmbra:main Jun 17, 2024
AbstractUmbra pushed a commit that referenced this pull request Jun 17, 2024
@mikeshardmind mikeshardmind deleted the nogil branch June 17, 2024 13:20
@C0sm0cats
Copy link

I'm stuck in Pamac on Manjaro trying to update python-speechrecognition (from version 3.12.0-1 to 3.12.0-2). The build process fails with an error in the file _audioop.c at line 1984.

Here’s the full error message:

building 'audioop._audioop' extension creating build/temp.linux-x86_64-cpython-312/audioop gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/build/python/src=/usr/src/debug/python -flto=auto -ffat-lto-objects -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/build/python/src=/usr/src/debug/python -flto=auto -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/build/python/src=/usr/src/debug/python -flto=auto -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -flto=auto -fPIC -DPy_LIMITED_API=0x030D0000 -I/usr/include/python3.12 -c audioop/_audioop.c -o build/temp.linux-x86_64-cpython-312/audioop/_audioop.o audioop/_audioop.c:1984:6: erreur: « Py_mod_gil » non déclaré ici (hors de toute fonction) 1984 | {Py_mod_gil, Py_MOD_GIL_NOT_USED}, | ^~ audioop/_audioop.c:1984:18: erreur: « Py_MOD_GIL_NOT_USED » non déclaré ici (hors de toute fonction) 1984 | {Py_mod_gil, Py_MOD_GIL_NOT_USED}, | ^~~ error: command '/usr/bin/gcc' failed with exit code 1

ERROR Backend subprocess exited when trying to invoke build_wheel ==> ERREUR : Une erreur s’est produite dans build(). Abandon…

@AbstractUmbra
Copy link
Owner

AbstractUmbra commented Dec 27, 2024 via email

@C0sm0cats
Copy link

So, I guess it will be necessary in 3.13 then. Should I wait to update Python to 3.13 to build audioop without errors in Pamac?

@AbstractUmbra
Copy link
Owner

So, I guess it will be necessary in 3.13 then. Should I wait to update Python to 3.13 to build audioop without errors in Pamac?

Yes.
If you're on a python version lower than 3.13 then this module is entirely irrelevant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants