pip install failing for pypy3.11
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Stale
- Tech stack
- python
- Domain
- build-system
Research direction
Reproduce the failure with the provided Docker command and compare it with installing from commit e265ae0. Inspect how the 0.6.4 release bundles the generated C files and verify the release uses Cython 3.1. Done means pip install httptools==0.6.4 succeeds under the specified PyPy 3.11 image.
Written by the indexing model from the issue text.
Description
pip install httptools==0.6.4 fails under pypy3.11 with the log output below.
The issue is the Cython generated C files bundled with the release in pypi, similar to this one for lxml. In fact installing directly from the 0.6.4 commit works fine: pip install git+https://github.com/MagicStack/httptools@e265ae0.
The suggested fix there is to build a release with the 3.1 release of Cython which has this fix: https://github.com/cython/cython/pull/6482
how to reproduce
if you have docker, this is probably the easiest way to reproduce:
docker run -it --entrypoint=/bin/bash pypy:3.11-7.3.19 -c 'pip install httptools==0.6.4'
logs from unsuccessful install
Collecting httptools
Using cached httptools-0.6.4.tar.gz (240 kB)
Preparing metadata (setup.py) ... done
Building wheels for collected packages: httptools
Building wheel for httptools (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [39 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-pypy311
creating build/lib.linux-x86_64-pypy311/httptools
copying httptools/_version.py -> build/lib.linux-x86_64-pypy311/httptools
copying httptools/__init__.py -> build/lib.linux-x86_64-pypy311/httptools
creating build/lib.linux-x86_64-pypy311/httptools/parser
copying httptools/parser/__init__.py -> build/lib.linux-x86_64-pypy311/httptools/parser
copying httptools/parser/errors.py -> build/lib.linux-x86_64-pypy311/httptools/parser
running egg_info
writing httptools.egg-info/PKG-INFO
writing dependency_links to httptools.egg-info/dependency_links.txt
writing requirements to httptools.egg-info/requires.txt
writing top-level names to httptools.egg-info/top_level.txt
reading manifest file 'httptools.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'httptools.egg-info/SOURCES.txt'
copying httptools/parser/cparser.pxd -> build/lib.linux-x86_64-pypy311/httptools/parser
copying httptools/parser/parser.pyx -> build/lib.linux-x86_64-pypy311/httptools/parser
copying httptools/parser/python.pxd -> build/lib.linux-x86_64-pypy311/httptools/parser
copying httptools/parser/url_cparser.pxd -> build/lib.linux-x86_64-pypy311/httptools/parser
copying httptools/parser/url_parser.pyx -> build/lib.linux-x86_64-pypy311/httptools/parser
running build_ext
building 'httptools.parser.parser' extension
creating build/temp.linux-x86_64-pypy311
creating build/temp.linux-x86_64-pypy311/httptools
creating build/temp.linux-x86_64-pypy311/httptools/parser
creating build/temp.linux-x86_64-pypy311/vendor
creating build/temp.linux-x86_64-pypy311/vendor/llhttp
creating build/temp.linux-x86_64-pypy311/vendor/llhttp/src
gcc -pthread -DNDEBUG -O2 -fPIC -I/tmp/pip-install-9p4wcs3b/httptools_a1fc635d910f47dfbfa0906126b6038e/vendor/llhttp/include -I/tmp/pip-install-9p4wcs3b/httptools_a1fc635d910f47dfbfa0906126b6038e/vendor/llhttp/src -I/home/oliver/Projects/lxml/venv/include -I/usr/include/pypy3.11 -c httptools/parser/parser.c -o build/temp.linux-x86_64-pypy311/httptools/parser/parser.o -O2
httptools/parser/parser.c:15388:12: fatal error: internal/pycore_frame.h: No such file or directory
15388 | #include "internal/pycore_frame.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
error: command '/usr/bin/gcc' failed with exit code 1
[end of output]
- Dominant language
- Python
- Stars
- 1.3k
- Forks
- 107
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from MagicStack/httptools
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
MagicStack/httptools#136 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
MagicStack/httptools#140 · 1 reaction ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
MagicStack/httptools#127 · 2 comments · 1 reaction ·
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
MagicStack/httptools#126 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
MagicStack/httptools#125 ·
All issues in MagicStack/httptools
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
learningequality/ricecooker#747 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
run-llama/llama_index#23199 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
KhronosGroup/glTF-Blender-IO#2769 ·