#1140621 python-gunicorn-h1c: autopkgtest failure

#1140621#5
Date:
2026-06-23 16:52:51 UTC
From:
To:
https://tracker.debian.org/pkg/python-gunicorn-h1c

Issues preventing migration:
∙ ∙ Autopkgtest for python-gunicorn-h1c/0.6.5-2: amd64: Failed ♻, arm64: Failed ♻, i386: Failed ♻, loong64: Failed ♻, ppc64el: Failed ♻, s390x: Failed ♻


...
 40s ============================= test session starts ==============================
 40s platform linux -- Python 3.14.6, pytest-9.0.3, pluggy-1.6.0
 40s rootdir: /tmp/autopkgtest-lxc.ha2gr8xg/downtmp/autopkgtest_tmp/build
 40s configfile: pyproject.toml
 40s plugins: typeguard-4.4.4
 40s collected 199 items
 40s
 40s tests/test_header_validation.py ..............................           [ 15%]
 40s tests/test_parser.py ..............F.................................... [ 40%]
 40s .....................................                                    [ 59%]
 40s tests/test_protocol.py .....................Fatal Python error: Segmentation fault
 40s
 40s Current thread 0x00007ff3b634e200 [python3.14] (most recent call first):
 40s   File "/tmp/autopkgtest-lxc.ha2gr8xg/downtmp/autopkgtest_tmp/build/tests/test_protocol.py", line 395 in test_get_header
 40s   File "/usr/lib/python3/dist-packages/_pytest/python.py", line 166 in pytest_pyfunc_call
 40s   File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121 in _multicall
 40s   File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120 in _hookexec
 40s   File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512 in __call__
 40s   File "/usr/lib/python3/dist-packages/_pytest/python.py", line 1720 in runtest
 40s   File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 179 in pytest_runtest_call
 40s   File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121 in _multicall
 40s   File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120 in _hookexec
 40s   File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512 in __call__
 40s   File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 245 in <lambda>
 40s   File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 353 in from_call
 40s   File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 244 in call_and_report
 40s   File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 137 in runtestprotocol
 40s   File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 118 in pytest_runtest_protocol
 40s   File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121 in _multicall
 40s   File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120 in _hookexec
 40s   File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512 in __call__
 40s   File "/usr/lib/python3/dist-packages/_pytest/main.py", line 396 in pytest_runtestloop
 40s   File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121 in _multicall
 40s   File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120 in _hookexec
 40s   File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512 in __call__
 40s   File "/usr/lib/python3/dist-packages/_pytest/main.py", line 372 in _main
 40s   File "/usr/lib/python3/dist-packages/_pytest/main.py", line 318 in wrap_session
 40s   File "/usr/lib/python3/dist-packages/_pytest/main.py", line 365 in pytest_cmdline_main
 40s   File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 121 in _multicall
 40s   File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120 in _hookexec
 40s   File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 512 in __call__
 40s   File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 199 in main
 40s   File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 223 in console_main
 40s   File "/usr/lib/python3/dist-packages/pytest/__main__.py", line 9 in <module>
 40s   File "<frozen runpy>", line 88 in _run_code
 40s   File "<frozen runpy>", line 203 in _run_module_as_main
 40s
 40s Current thread's C stack trace (most recent call first):
 40s   Binary file "python3.14", at _Py_DumpStack+0x4a [0x473a7e]
 40s   Binary file "python3.14" [0x4fdf7c]
 40s   Binary file "/usr/lib/x86_64-linux-gnu/libc.so.6", at +0x40e30 [0x7ff3b638fe30]
 40s   Binary file "/usr/lib/python3/dist-packages/gunicorn_h1c/_protocol.abi3-x86_64-linux-gnu.so", at +0x2c96 [0x7ff3b57cfc96]
 40s   Binary file "python3.14" [0x576079]
 40s   Binary file "python3.14", at _PyObject_MakeTpCall+0x33c [0x5285fc]
 40s   Binary file "python3.14", at _PyEval_EvalFrameDefault+0x3826 [0x548e56]
 40s   Binary file "python3.14" [0x586f24]
 40s   Binary file "python3.14" [0x5e4f3c]
 40s   Binary file "python3.14", at _PyEval_EvalFrameDefault+0x454c [0x549b7c]
 40s   Binary file "python3.14" [0x586f24]
 40s   Binary file "python3.14" [0x52f99e]
 40s   Binary file "python3.14" [0x626ecb]
 40s   Binary file "python3.14", at _PyObject_MakeTpCall+0x33c [0x5285fc]
 40s   Binary file "python3.14", at _PyEval_EvalFrameDefault+0x6558 [0x54bb88]
 40s   Binary file "python3.14" [0x586f24]
 40s   Binary file "python3.14" [0x52f99e]
 40s   Binary file "python3.14" [0x626ecb]
 40s   Binary file "python3.14" [0x5a452d]
 40s   Binary file "python3.14", at _PyEval_EvalFrameDefault+0x454c [0x549b7c]
 40s   Binary file "python3.14" [0x586f24]
 40s   Binary file "python3.14" [0x52f99e]
 40s   Binary file "python3.14" [0x626ecb]
 40s   Binary file "python3.14", at _PyObject_MakeTpCall+0x33c [0x5285fc]
 40s   Binary file "python3.14", at _PyEval_EvalFrameDefault+0x6558 [0x54bb88]
 40s   Binary file "python3.14" [0x586f24]
 40s   Binary file "python3.14" [0x52f99e]
 40s   Binary file "python3.14" [0x626ecb]
 40s   Binary file "python3.14", at _PyObject_MakeTpCall+0x33c [0x5285fc]
 40s   Binary file "python3.14", at _PyEval_EvalFrameDefault+0xfc62 [0x555292]
 40s   Binary file "python3.14" [0x586f24]
 40s   Binary file "python3.14" [0x52f99e]
 40s   <truncated rest of calls>
 40s
 40s Extension modules: gunicorn_h1c._parser, gunicorn_h1c._parser_fast, gunicorn_h1c._protocol (total: 3)
 40s Segmentation fault
 40s E: pybuild pybuild:485: test: plugin pyproject failed with: exit code=139: cd /tmp/autopkgtest-lxc.ha2gr8xg/downtmp/autopkgtest_tmp/build; python3.14 -m pytest tests
 40s I: pybuild base:385: cd /tmp/autopkgtest-lxc.ha2gr8xg/downtmp/autopkgtest_tmp/build; python3.13 -m pytest tests
 40s ============================= test session starts ==============================
 40s platform linux -- Python 3.13.14, pytest-9.0.3, pluggy-1.6.0
 40s rootdir: /tmp/autopkgtest-lxc.ha2gr8xg/downtmp/autopkgtest_tmp/build
 40s configfile: pyproject.toml
 40s plugins: typeguard-4.4.4
 40s collected 199 items
 40s
 40s tests/test_header_validation.py ..............................           [ 15%]
 40s tests/test_parser.py ................................................... [ 40%]
 40s .....................................                                    [ 59%]
 40s tests/test_protocol.py ...............................................   [ 82%]
 40s tests/test_rfc9110_compliance.py ..................................      [100%]
 40s
 40s ============================= 199 passed in 0.20s ==============================
 40s pybuild-autopkgtest: error: pybuild --autopkgtest --test-pytest -i python{version} -p "3.14 3.13" --parallel= returned exit code 13
 40s make: *** [/tmp/pwrRALRlyJ/run:4: pybuild-autopkgtest] Error 25
...

#1140621#10
Date:
2026-09-03 15:05:25 UTC
From:
To:
user debian-python@lists.debian.org
usertags 1140621 + python3.15
tags 1140621 + patch, forky, sid
thanks

Hi!

While rebuilding the python related packages against the Python 3.15rc1
version we found that python-gunicorn-h1c fails its autopkg test run
with a Segmentation Fault [1]. This is the same issue that had been
reported here.

The reason for this failure is that the patch introduced in Debian to
build the ext-modules declared them as using the limited API, when they
actually use the full CPython API. Updating the patch solves the
problem.

I have applied this fix in the sandbox [2] to be able to build the
packages that depend on python-gunicorn-h1c, please consider applying
the patch to solve this.

Happy hacking,

[1]: https://debusine.debian.net/debian/r-python-python3.15/artifact/4240874/
[2]: https://debusine.debian.net/debian/r-python-python3.15/

#1140621#17
Date:
2026-09-30 08:22:47 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
python-gunicorn-h1c, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1140621@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael Fladischer <fladi@debian.org> (supplier of updated python-gunicorn-h1c package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Wed, 30 Sep 2026 07:39:45 +0000
Source: python-gunicorn-h1c
Architecture: source
Version: 0.6.9-2
Distribution: unstable
Urgency: low
Maintainer: Debian Python Team <team+python@tracker.debian.org>
Changed-By: Michael Fladischer <fladi@debian.org>
Closes: 1140621
Changes:
 python-gunicorn-h1c (0.6.9-2) unstable; urgency=low
 .
   * Update pyproject patch to allow full CPython API (Closes: #1140621).
Checksums-Sha1:
 dfadd5ef7a93cb67cf2871f76f05f1e2d1123092 1883 python-gunicorn-h1c_0.6.9-2.dsc
 67d48231108e952e8203c7b07feac3e9f6735a89 8796 python-gunicorn-h1c_0.6.9-2.debian.tar.xz
 f13578ac6518900159b48f63966e84d6df2932e1 7091 python-gunicorn-h1c_0.6.9-2_riscv64.buildinfo
Checksums-Sha256:
 240520fda5c360a86942ad2e593e466a184f6b69b8aaaf3373c9784a32d31751 1883 python-gunicorn-h1c_0.6.9-2.dsc
 47f9f3cab4bfb820ed76c72df70b408f98eb4b4e7eec85ed2fd18c8b411f853f 8796 python-gunicorn-h1c_0.6.9-2.debian.tar.xz
 991cbcec0a535924521c6940ad4b9b17e138034aee114811b06723d1989e9386 7091 python-gunicorn-h1c_0.6.9-2_riscv64.buildinfo
Files:
 4f7fe0b727cc05ed258de72f284639ad 1883 python optional python-gunicorn-h1c_0.6.9-2.dsc
 c5985faca74d384a57b436d2b7532944 8796 python optional python-gunicorn-h1c_0.6.9-2.debian.tar.xz
 536101fe4282624faae57943a491694b 7091 python optional python-gunicorn-h1c_0.6.9-2_riscv64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEqVSlRXW87UkkCnJc/9PIi5l90WoFAmq8vxIACgkQ/9PIi5l9
0WpJCwgAu3uY5nzS+Fre0G47DTWjeiHNb2u3FId2ayF1LRQXmeno7Wqs08miTrh3
eZ1kcgB9xUMNGJYSOnOea2BF0sRHgnUMDTWrg5Oh8JAVWVsOWYcl4C/RNzocl1fJ
VcO0R0GasfborCcHUVZsm1o57Qw6ru5F2kFWNJXjTJdjSUAuy3tX2NRvHS0JUNgt
bEc4Z8GDCtlGI/pwni/wES10dAtV52hmSFSsFJBmQonaKJrMlemQMrYU9VRycNmd
HtKe7mcEOS6Uo0eLTNc5cURutUQOuA3hHmsMbmaDD+/8ZgGOtTn3ozSPOXFGXUKK
N+YsIW10qyji8QGfYH72wghxc5viDw==
=FPlu
-----END PGP SIGNATURE-----