MagicStack / MagicStack/httptools

Fails when installing with pypy3

Open
#16 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.3k
Forks
107
PR merge metrics
No merged PRs in 30d

Description

I got this stack trace

Collecting sanic
  Using cached sanic-0.5.4-py3-none-any.whl
Requirement already satisfied: aiofiles>=0.3.0 in ./.pypyenv/site-packages (from sanic)
Collecting httptools>=0.0.9 (from sanic)
  Using cached httptools-0.0.9.tar.gz
Collecting ujson>=1.35 (from sanic)
  Using cached ujson-1.35.tar.gz
Collecting uvloop>=0.5.3 (from sanic)
  Using cached uvloop-0.8.0.tar.gz
Collecting websockets>=3.2 (from sanic)
  Using cached websockets-3.3.tar.gz
Installing collected packages: httptools, ujson, uvloop, websockets, sanic
  Running setup.py install for httptools ... error
    Complete output from command /Users/mrkaspa/code/py/pylangs/.pypyenv/bin/python -u -c "import setuptools, tokenize;__file__='/private/var/folders/c1/m21ng1bd1yl83fcrjcf6qpxw0000gq/T/pip-build-rw46_3s6/httptools/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/c1/m21ng1bd1yl83fcrjcf6qpxw0000gq/T/pip-g3c9_py8-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/mrkaspa/code/py/pylangs/.pypyenv/include/site/python3.5/httptools:
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.12-x86_64-3.5
    creating build/lib.macosx-10.12-x86_64-3.5/httptools
    copying httptools/__init__.py -> build/lib.macosx-10.12-x86_64-3.5/httptools
    creating build/lib.macosx-10.12-x86_64-3.5/httptools/parser
    copying httptools/parser/__init__.py -> build/lib.macosx-10.12-x86_64-3.5/httptools/parser
    copying httptools/parser/errors.py -> build/lib.macosx-10.12-x86_64-3.5/httptools/parser
    running egg_info
    writing httptools.egg-info/PKG-INFO
    writing dependency_links to httptools.egg-info/dependency_links.txt
    writing top-level names to httptools.egg-info/top_level.txt
    warning: manifest_maker: standard file '-c' not found

    reading manifest file 'httptools.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    writing manifest file 'httptools.egg-info/SOURCES.txt'
    copying httptools/parser/parser.c -> build/lib.macosx-10.12-x86_64-3.5/httptools/parser
    running build_ext
    building 'httptools.parser.parser' extension
    creating build/temp.macosx-10.12-x86_64-3.5
    creating build/temp.macosx-10.12-x86_64-3.5/httptools
    creating build/temp.macosx-10.12-x86_64-3.5/httptools/parser
    creating build/temp.macosx-10.12-x86_64-3.5/vendor
    creating build/temp.macosx-10.12-x86_64-3.5/vendor/http-parser
    gcc -pthread -DNDEBUG -O2 -I/usr/local/opt/openssl/include -fPIC -I/Users/mrkaspa/code/py/pylangs/.pypyenv/include -I/usr/local/Cellar/pypy3/5.7.1/libexec/include -c httptools/parser/parser.c -o build/temp.macosx-10.12-x86_64-3.5/httptools/parser/parser.o -O2
    gcc -pthread -DNDEBUG -O2 -I/usr/local/opt/openssl/include -fPIC -I/Users/mrkaspa/code/py/pylangs/.pypyenv/include -I/usr/local/Cellar/pypy3/5.7.1/libexec/include -c vendor/http-parser/http_parser.c -o build/temp.macosx-10.12-x86_64-3.5/vendor/http-parser/http_parser.o -O2
    gcc -pthread -shared -L/usr/local/opt/openssl/lib -I/usr/local/opt/openssl/include build/temp.macosx-10.12-x86_64-3.5/httptools/parser/parser.o build/temp.macosx-10.12-x86_64-3.5/vendor/http-parser/http_parser.o -o build/lib.macosx-10.12-x86_64-3.5/httptools/parser/parser.pypy3-57-x86_64-darwin.so
    clang: warning: argument unused during compilation: '-pthread'
    Undefined symbols for architecture x86_64:
      "_PyPyBaseObject_Type", referenced from:
          ___pyx_tp_new_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_URL in parser.o
      "_PyPyBuffer_Release", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyBytes_AS_STRING", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyBytes_FromString", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_3get_method in parser.o
      "_PyPyBytes_FromStringAndSize", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_field in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_value in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_body in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_url in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_status in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
          ...
      "_PyPyBytes_Size", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyBytes_Type", referenced from:
          ___pyx_tp_new_9httptools_6parser_6parser_URL in parser.o
      "_PyPyCFunction_NewEx", referenced from:
          _PyInit_parser in parser.o
      "_PyPyCapsule_New", referenced from:
          _PyInit_parser in parser.o
      "_PyPyCode_New", referenced from:
          _PyInit_parser in parser.o
          ___Pyx_AddTraceback in parser.o
      "_PyPyDict_GetItem", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ___pyx_pw_9httptools_6parser_6parser_18HttpResponseParser_1__init__ in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_URL in parser.o
      "_PyPyDict_GetItemString", referenced from:
          _PyInit_parser in parser.o
      "_PyPyDict_New", referenced from:
          _PyInit_parser in parser.o
      "_PyPyDict_Next", referenced from:
          ___Pyx_ParseOptionalKeywords in parser.o
      "_PyPyDict_SetItem", referenced from:
          _PyInit_parser in parser.o
      "_PyPyDict_SetItemString", referenced from:
          _PyInit_parser in parser.o
      "_PyPyDict_Size", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ___pyx_pw_9httptools_6parser_6parser_18HttpResponseParser_1__init__ in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_URL in parser.o
      "_PyPyErr_Clear", referenced from:
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__init in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ___pyx_pw_9httptools_6parser_6parser_18HttpResponseParser_1__init__ in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyErr_ExceptionMatches", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__init in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_field in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_value in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_headers_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_body in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_begin in parser.o
          ...
      "_PyPyErr_Fetch", referenced from:
          ___Pyx_GetException in parser.o
          ___pyx_tp_dealloc_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyErr_Format", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___Pyx_ImportType in parser.o
          ___Pyx_Raise in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ...
      "_PyPyErr_GetExcInfo", referenced from:
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_field in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_value in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_headers_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_body in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_begin in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_chunk_header in parser.o
          ...
      "_PyPyErr_NoMemory", referenced from:
          ___pyx_tp_new_9httptools_6parser_6parser_HttpParser in parser.o
      "_PyPyErr_NormalizeException", referenced from:
          ___Pyx_GetException in parser.o
      "_PyPyErr_Occurred", referenced from:
          _PyInit_parser in parser.o
          ___Pyx_GetException in parser.o
          ___Pyx_ParseOptionalKeywords in parser.o
      "_PyPyErr_Restore", referenced from:
          ___pyx_tp_dealloc_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyErr_SetExcInfo", referenced from:
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_field in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_header_value in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_headers_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_body in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_begin in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_chunk_header in parser.o
          ...
      "_PyPyErr_SetObject", referenced from:
          ___Pyx_Raise in parser.o
      "_PyPyErr_SetString", referenced from:
          _PyInit_parser in parser.o
          ___Pyx_Raise in parser.o
      "_PyPyErr_WarnEx", referenced from:
          _PyInit_parser in parser.o
          ___Pyx_ImportType in parser.o
      "_PyPyExc_AttributeError", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__init in parser.o
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ___pyx_pw_9httptools_6parser_6parser_18HttpResponseParser_1__init__ in parser.o
      "_PyPyExc_BaseException", referenced from:
          ___Pyx_Raise in parser.o
      "_PyPyExc_ImportError", referenced from:
          _PyInit_parser in parser.o
      "_PyPyExc_NameError", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyExc_TypeError", referenced from:
          ___Pyx_ImportType in parser.o
          ___Pyx_Raise in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ___Pyx_ParseOptionalKeywords in parser.o
          ___pyx_pw_9httptools_6parser_6parser_18HttpResponseParser_1__init__ in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_URL in parser.o
          ...
      "_PyPyExc_ValueError", referenced from:
          ___Pyx_ImportType in parser.o
      "_PyPyException_SetTraceback", referenced from:
          ___Pyx_GetException in parser.o
      "_PyPyFrame_New", referenced from:
          ___Pyx_AddTraceback in parser.o
      "_PyPyImport_AddModule", referenced from:
          _PyInit_parser in parser.o
      "_PyPyImport_GetModuleDict", referenced from:
          _PyInit_parser in parser.o
      "_PyPyImport_Import", referenced from:
          ___Pyx_ImportType in parser.o
      "_PyPyImport_ImportModuleLevelObject", referenced from:
          _PyInit_parser in parser.o
      "_PyPyList_New", referenced from:
          _PyInit_parser in parser.o
      "_PyPyList_SET_ITEM", referenced from:
          _PyInit_parser in parser.o
      "_PyPyLong_FromLong", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_5get_http_version in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_7should_keep_alive in parser.o
          ___pyx_pw_9httptools_6parser_6parser_18HttpResponseParser_3get_status_code in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyLong_FromSize_t", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyMem_Free", referenced from:
          ___pyx_tp_dealloc_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyMem_Malloc", referenced from:
          ___Pyx_AddTraceback in parser.o
          ___pyx_tp_new_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyMem_Realloc", referenced from:
          ___Pyx_AddTraceback in parser.o
      "_PyPyModule_Create2", referenced from:
          _PyInit_parser in parser.o
      "_PyPyModule_GetDict", referenced from:
          _PyInit_parser in parser.o
      "_PyPyNumber_InPlaceAdd", referenced from:
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_header_value in parser.o
      "_PyPyOS_snprintf", referenced from:
          _PyInit_parser in parser.o
          ___Pyx_ImportType in parser.o
      "_PyPyObject_Call", referenced from:
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__maybe_call_on_header in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_headers_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_body in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_begin in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_message_complete in parser.o
          ...
      "_PyPyObject_GC_UnTrack", referenced from:
          ___pyx_tp_dealloc_9httptools_6parser_6parser_HttpParser in parser.o
          ___pyx_tp_dealloc_9httptools_6parser_6parser_URL in parser.o
      "_PyPyObject_GetAttr", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__init in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___Pyx_ImportType in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_5get_http_version in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_17HttpRequestParser_1__init__ in parser.o
          ...
      "_PyPyObject_GetBuffer", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyObject_GetItem", referenced from:
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyObject_IsInstance", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyObject_IsSubclass", referenced from:
          ___Pyx_Raise in parser.o
      "_PyPyObject_IsTrue", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_7should_keep_alive in parser.o
      "_PyPyObject_SetAttr", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyObject_SetAttrString", referenced from:
          _PyInit_parser in parser.o
      "_PyPyThreadState_Get", referenced from:
          ___Pyx_AddTraceback in parser.o
      "_PyPyTraceBack_Here", referenced from:
          ___Pyx_AddTraceback in parser.o
      "_PyPyTuple_New", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__maybe_call_on_header in parser.o
          ___Pyx_Raise in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_5get_http_version in parser.o
          ___pyx_pw_9httptools_6parser_6parser_3URL_3__repr__ in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyTuple_Pack", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_body in parser.o
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_url in parser.o
          ___pyx_f_9httptools_6parser_6parser_cb_on_status in parser.o
          ___pyx_pw_9httptools_6parser_6parser_1parse_url in parser.o
      "_PyPyType_Check", referenced from:
          ___Pyx_ImportType in parser.o
          ___Pyx_Raise in parser.o
      "_PyPyType_Ready", referenced from:
          _PyInit_parser in parser.o
      "_PyPyUnicode_Check", referenced from:
          ___Pyx_ParseOptionalKeywords in parser.o
      "_PyPyUnicode_Compare", referenced from:
          ___Pyx_ParseOptionalKeywords in parser.o
      "_PyPyUnicode_Decode", referenced from:
          _PyInit_parser in parser.o
      "_PyPyUnicode_DecodeLatin1", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyUnicode_FromFormat", referenced from:
          ___Pyx_AddTraceback in parser.o
      "_PyPyUnicode_FromString", referenced from:
          ___Pyx_ImportType in parser.o
          ___Pyx_AddTraceback in parser.o
      "_PyPyUnicode_FromStringAndSize", referenced from:
          _PyInit_parser in parser.o
      "_PyPyUnicode_FromUnicode", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_9feed_data in parser.o
      "_PyPyUnicode_InternFromString", referenced from:
          _PyInit_parser in parser.o
      "_PyPy_GetVersion", referenced from:
          _PyInit_parser in parser.o
      "__PyPy_Dealloc", referenced from:
          _PyInit_parser in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__init in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__maybe_call_on_header in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_header_field in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_header_value in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_headers_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ...
      "__PyPy_NoneStruct", referenced from:
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__init in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__maybe_call_on_header in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_header_field in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_header_value in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_headers_complete in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_header in parser.o
          ___pyx_f_9httptools_6parser_6parser_10HttpParser__on_chunk_complete in parser.o
          ...
      "__PyPy_TrueStruct", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_7should_keep_alive in parser.o
      "__PyPy_ZeroStruct", referenced from:
          ___pyx_pw_9httptools_6parser_6parser_10HttpParser_7should_keep_alive in parser.o
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    error: command 'gcc' failed with exit status 1

    ----------------------------------------
Command "/Users/mrkaspa/code/py/pylangs/.pypyenv/bin/python -u -c "import setuptools, tokenize;__file__='/private/var/folders/c1/m21ng1bd1yl83fcrjcf6qpxw0000gq/T/pip-build-rw46_3s6/httptools/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/c1/m21ng1bd1yl83fcrjcf6qpxw0000gq/T/pip-g3c9_py8-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/mrkaspa/code/py/pylangs/.pypyenv/include/site/python3.5/httptools" failed with error code 1 in /private/var/folders/c1/m21ng1bd1yl83fcrjcf6qpxw0000gq/T/pip-build-rw46_3s6/httptools/

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the PyPy3 installation failure from the reported setup.py build output, then inspect the httptools/parser extension build and the generated parser.c alongside vendor/http-parser/http_parser.c. Done means httptools installs successfully with PyPy3 without the undefined PyPy symbol errors shown in the report.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.