Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork33.7k
Closed
Description
Crash report
What happened?
After upgrading to CPython 3.13.0rc1, thegpgme test suite started failing. The tests fail with errors resembling:
Traceback (most recent call last): File"/tmp/gpgme-1.23.2/lang/python/tests/./final.py", line24, in<module>import support File"/tmp/gpgme-1.23.2/lang/python/tests/support.py", line60, in<module> assert_gpg_version((2,1,12))~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File"/tmp/gpgme-1.23.2/lang/python/tests/support.py", line35, inassert_gpg_version c.engine_info.version).group(0)^^^^^^^^^^^^^ File"/tmp/gpgme-1.23.2/lang/python/python3.13-gpg/lib.linux-x86_64-cpython-313/gpg/core.py", line1352, inengine_info infos= [ifor iinself.get_engine_info()if i.protocol== p]~~~~~~~~~~~~~~~~~~~~^^ File"/tmp/gpgme-1.23.2/lang/python/python3.13-gpg/lib.linux-x86_64-cpython-313/gpg/core.py", line1366, inget_engine_inforeturn gpgme.gpgme_ctx_get_engine_info(self.wrapped)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^ File"/tmp/gpgme-1.23.2/lang/python/python3.13-gpg/lib.linux-x86_64-cpython-313/gpg/gpgme.py", line880, ingpgme_ctx_get_engine_inforeturn _gpgme.gpgme_ctx_get_engine_info(ctx)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^ File"<frozen importlib._bootstrap>", line649, inparentSystemError:Objects/dictobject.c:3774: bad argument to internal functionFAIL:final.py
I've been able to bisect it to233ed46 (#121869). However, on this commit I'm getting also a bunch ofpython3.13: Objects/typeobject.c:5257: _PyType_LookupRef: Assertion '!PyErr_Occurred()' failed. — they are fixed in some subsequent commit. But thefinal.py failure occurs from that commit to tip of 3.13 (fe65a8b).
Now, gpgme's build system is horrible. To reproduce, I've done the following:
- Built CPython with
--with-assertions. - Created
ln -s python python3.13symlink in the build directory. - Installed the gpgme C library 1.23.2 using the system package manager.
- Then:
wget https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-1.23.2.tar.bz2tar -xf gpgme-1.23.2.tar.bz2cd gpgme-1.23.2export PATH=${CPYTHON_BUILD_DIRECTORY}:$PATH./configure # will probably need some -dev packagescd lang/pythonmake PYTHONS=python3.13 checkNote that in order to rebuild, you need torm -rf python3.13-gpg.
CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux
Output from running 'python -VV' on the command line:
Python 3.13.0rc1 (main, Aug 2 2024, 18:56:30) [GCC 14.2.0]