Support for python 3.11

Aberta
#98 1 comentário 2 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
c, python
Domínio
backend

Direção de pesquisa

Comece reproduzindo o comando de instalação do pip para Python 3.11 e inspecione setup.py, http_parser/http_parser.c e http_parser/parser.c na parte relacionada ao build da extensão. Confirme se a falha é causada pela incompatibilidade do pacote ou pela ausência do header de desenvolvimento Python.h e, em seguida, verifique se a instalação é concluída com sucesso no Python 3.11.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Hi,

Looks like the pip install for python 3.11 is failing with the below error

Is it because there is no support for python3.11?

Please help me overcome this issue.

Thanks in advance.

http-parser$ python3.11 -m pip install http-parser
Defaulting to user installation because normal site-packages is not writeable
Collecting http-parser
  Using cached http-parser-0.9.0.tar.gz (167 kB)
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: http-parser
  Building wheel for http-parser (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [25 lines of output]
      /tmp/pip-install-87f67s16/http-parser_70fb4870541b4fc9ac3bfe953fb58d23/setup.py:12: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
        from imp import load_source
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.11
      creating build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/__init__.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/reader.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/util.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/_socketio.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/pyparser.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/http.py -> build/lib.linux-x86_64-3.11/http_parser
      running build_ext
      building 'http_parser.parser' extension
      creating build/temp.linux-x86_64-3.11
      creating build/temp.linux-x86_64-3.11/http_parser
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/http_parser.c -o build/temp.linux-x86_64-3.11/http_parser/http_parser.o
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/parser.c -o build/temp.linux-x86_64-3.11/http_parser/parser.o
      http_parser/parser.c:4:10: fatal error: Python.h: No such file or directory
          4 | #include "Python.h"
            |          ^~~~~~~~~~
      compilation terminated.
      error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for http-parser
  Running setup.py clean for http-parser
Failed to build http-parser
Installing collected packages: http-parser
  Running setup.py install for http-parser ... error
  error: subprocess-exited-with-error
  
  × Running setup.py install for http-parser did not run successfully.
  │ exit code: 1
  ╰─> [27 lines of output]
      /tmp/pip-install-87f67s16/http-parser_70fb4870541b4fc9ac3bfe953fb58d23/setup.py:12: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
        from imp import load_source
      running install
      /usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
        warnings.warn(
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.11
      creating build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/__init__.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/reader.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/util.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/_socketio.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/pyparser.py -> build/lib.linux-x86_64-3.11/http_parser
      copying http_parser/http.py -> build/lib.linux-x86_64-3.11/http_parser
      running build_ext
      building 'http_parser.parser' extension
      creating build/temp.linux-x86_64-3.11
      creating build/temp.linux-x86_64-3.11/http_parser
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/http_parser.c -o build/temp.linux-x86_64-3.11/http_parser/http_parser.o
      x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/parser.c -o build/temp.linux-x86_64-3.11/http_parser/parser.o
      http_parser/parser.c:4:10: fatal error: Python.h: No such file or directory
          4 | #include "Python.h"
            |          ^~~~~~~~~~
      compilation terminated.
      error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> http-parser

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
Linguagem predominante
C
Estrelas
345
Forks
93
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de benoitc/http-parser

Todas as issues de benoitc/http-parser

Issues semelhantes

Mais issues de C

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.