Python3.12 not supported
Closed this issue · 3 comments
def750 commented
System: Ubuntu24.04 on WSL
Python 3.12 venv
Clean folder with no other packages
When installing the package in above enviroment, well it doesnt install. Error log below.
(.venv) def750@MeowBox:/opt$ pip install pip install fastapi-discord
Requirement already satisfied: pip in ./.venv/lib/python3.12/site-packages (24.0)
Collecting install
Using cached install-1.3.5-py3-none-any.whl.metadata (925 bytes)
Collecting fastapi-discord
Using cached fastapi_discord-0.2.5-py3-none-any.whl.metadata (3.1 kB)
Collecting aiocache==0.12.2 (from fastapi-discord)
Using cached aiocache-0.12.2-py2.py3-none-any.whl.metadata (8.3 kB)
Collecting aiohttp==3.8.5 (from fastapi-discord)
Using cached aiohttp-3.8.5.tar.gz (7.4 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting fastapi==0.103.2 (from fastapi-discord)
Using cached fastapi-0.103.2-py3-none-any.whl.metadata (24 kB)
Collecting attrs>=17.3.0 (from aiohttp==3.8.5->fastapi-discord)
Using cached attrs-23.2.0-py3-none-any.whl.metadata (9.5 kB)
^CERROR: Operation cancelled by user
(.venv) def750@MeowBox:/opt$ pip install fastapi-discord
Collecting fastapi-discord
Using cached fastapi_discord-0.2.5-py3-none-any.whl.metadata (3.1 kB)
Collecting aiocache==0.12.2 (from fastapi-discord)
Using cached aiocache-0.12.2-py2.py3-none-any.whl.metadata (8.3 kB)
Collecting aiohttp==3.8.5 (from fastapi-discord)
Using cached aiohttp-3.8.5.tar.gz (7.4 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting fastapi==0.103.2 (from fastapi-discord)
Using cached fastapi-0.103.2-py3-none-any.whl.metadata (24 kB)
Collecting attrs>=17.3.0 (from aiohttp==3.8.5->fastapi-discord)
Using cached attrs-23.2.0-py3-none-any.whl.metadata (9.5 kB)
Collecting charset-normalizer<4.0,>=2.0 (from aiohttp==3.8.5->fastapi-discord)
Using cached charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (33 kB)
Collecting multidict<7.0,>=4.5 (from aiohttp==3.8.5->fastapi-discord)
Using cached multidict-6.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.2 kB)
Collecting async-timeout<5.0,>=4.0.0a3 (from aiohttp==3.8.5->fastapi-discord)
Using cached async_timeout-4.0.3-py3-none-any.whl.metadata (4.2 kB)
Collecting yarl<2.0,>=1.0 (from aiohttp==3.8.5->fastapi-discord)
Using cached yarl-1.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (31 kB)
Collecting frozenlist>=1.1.1 (from aiohttp==3.8.5->fastapi-discord)
Using cached frozenlist-1.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)
Collecting aiosignal>=1.1.2 (from aiohttp==3.8.5->fastapi-discord)
Using cached aiosignal-1.3.1-py3-none-any.whl.metadata (4.0 kB)
Collecting anyio<4.0.0,>=3.7.1 (from fastapi==0.103.2->fastapi-discord)
Using cached anyio-3.7.1-py3-none-any.whl.metadata (4.7 kB)
Collecting pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4 (from fastapi==0.103.2->fastapi-discord)
Using cached pydantic-2.7.4-py3-none-any.whl.metadata (109 kB)
Collecting starlette<0.28.0,>=0.27.0 (from fastapi==0.103.2->fastapi-discord)
Using cached starlette-0.27.0-py3-none-any.whl.metadata (5.8 kB)
Collecting typing-extensions>=4.5.0 (from fastapi==0.103.2->fastapi-discord)
Using cached typing_extensions-4.12.2-py3-none-any.whl.metadata (3.0 kB)
Collecting idna>=2.8 (from anyio<4.0.0,>=3.7.1->fastapi==0.103.2->fastapi-discord)
Using cached idna-3.7-py3-none-any.whl.metadata (9.9 kB)
Collecting sniffio>=1.1 (from anyio<4.0.0,>=3.7.1->fastapi==0.103.2->fastapi-discord)
Using cached sniffio-1.3.1-py3-none-any.whl.metadata (3.9 kB)
Collecting annotated-types>=0.4.0 (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi==0.103.2->fastapi-discord)
Using cached annotated_types-0.7.0-py3-none-any.whl.metadata (15 kB)
Collecting pydantic-core==2.18.4 (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi==0.103.2->fastapi-discord)
Using cached pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.5 kB)
Using cached fastapi_discord-0.2.5-py3-none-any.whl (7.6 kB)
Using cached aiocache-0.12.2-py2.py3-none-any.whl (28 kB)
Using cached fastapi-0.103.2-py3-none-any.whl (66 kB)
Using cached aiosignal-1.3.1-py3-none-any.whl (7.6 kB)
Using cached anyio-3.7.1-py3-none-any.whl (80 kB)
Using cached async_timeout-4.0.3-py3-none-any.whl (5.7 kB)
Using cached attrs-23.2.0-py3-none-any.whl (60 kB)
Using cached charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (141 kB)
Using cached frozenlist-1.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (281 kB)
Using cached multidict-6.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (130 kB)
Using cached pydantic-2.7.4-py3-none-any.whl (409 kB)
Using cached pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB)
Using cached starlette-0.27.0-py3-none-any.whl (66 kB)
Using cached typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Using cached yarl-1.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (322 kB)
Using cached annotated_types-0.7.0-py3-none-any.whl (13 kB)
Using cached idna-3.7-py3-none-any.whl (66 kB)
Using cached sniffio-1.3.1-py3-none-any.whl (10 kB)
Building wheels for collected packages: aiohttp
Building wheel for aiohttp (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for aiohttp (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [160 lines of output]
*********************
* Accelerated build *
*********************
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-312
creating build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/client_proto.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/test_utils.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_middlewares.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/worker.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/http_writer.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_runner.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/locks.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_protocol.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/tracing.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/cookiejar.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_fileresponse.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_server.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/log.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_request.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/typedefs.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/http_websocket.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_log.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/multipart.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/payload.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/http_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/client_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/payload_streamer.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_ws.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/http.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_urldispatcher.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/base_protocol.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/client.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/client_ws.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/hdrs.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/__init__.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/http_parser.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/client_reqrep.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_app.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/abc.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/tcp_helpers.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_routedef.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/resolver.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/helpers.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/pytest_plugin.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/connector.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/streams.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/web_response.py -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/formdata.py -> build/lib.linux-x86_64-cpython-312/aiohttp
running egg_info
writing aiohttp.egg-info/PKG-INFO
writing dependency_links to aiohttp.egg-info/dependency_links.txt
writing requirements to aiohttp.egg-info/requires.txt
writing top-level names to aiohttp.egg-info/top_level.txt
reading manifest file 'aiohttp.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'aiohttp' anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '*.lib' found anywhere in distribution
warning: no previously-included files matching '*.dll' found anywhere in distribution
warning: no previously-included files matching '*.a' found anywhere in distribution
warning: no previously-included files matching '*.obj' found anywhere in distribution
warning: no previously-included files found matching 'aiohttp/*.html'
no previously-included directories found matching 'docs/_build'
adding license file 'LICENSE.txt'
writing manifest file 'aiohttp.egg-info/SOURCES.txt'
copying aiohttp/_cparser.pxd -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_find_header.pxd -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_headers.pxi -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_helpers.pyi -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_helpers.pyx -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_http_parser.pyx -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_http_writer.pyx -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/_websocket.pyx -> build/lib.linux-x86_64-cpython-312/aiohttp
copying aiohttp/py.typed -> build/lib.linux-x86_64-cpython-312/aiohttp
creating build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_cparser.pxd.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_find_header.pxd.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_helpers.pyi.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_helpers.pyx.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_http_parser.pyx.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_http_writer.pyx.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/_websocket.pyx.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
copying aiohttp/.hash/hdrs.py.hash -> build/lib.linux-x86_64-cpython-312/aiohttp/.hash
running build_ext
building 'aiohttp._websocket' extension
creating build/temp.linux-x86_64-cpython-312
creating build/temp.linux-x86_64-cpython-312/aiohttp
x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -I/opt/.venv/include -I/usr/include/python3.12 -c aiohttp/_websocket.c -o build/temp.linux-x86_64-cpython-312/aiohttp/_websocket.o
aiohttp/_websocket.c: In function ‘__pyx_pf_7aiohttp_10_websocket__websocket_mask_cython’:
aiohttp/_websocket.c:1475:3: warning: ‘Py_OptimizeFlag’ is deprecated [-Wdeprecated-declarations]
1475 | if (unlikely(!Py_OptimizeFlag)) {
| ^~
In file included from /usr/include/python3.12/Python.h:48,
from aiohttp/_websocket.c:6:
/usr/include/python3.12/cpython/pydebug.h:13:37: note: declared here
13 | Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_OptimizeFlag;
| ^~~~~~~~~~~~~~~
aiohttp/_websocket.c: In function ‘__Pyx_get_tp_dict_version’:
aiohttp/_websocket.c:2680:5: warning: ‘ma_version_tag’ is deprecated [-Wdeprecated-declarations]
2680 | return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
| ^~~~~~
In file included from /usr/include/python3.12/dictobject.h:90,
from /usr/include/python3.12/Python.h:64:
/usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
22 | Py_DEPRECATED(3.12) uint64_t ma_version_tag;
| ^~~~~~~~~~~~~~
aiohttp/_websocket.c: In function ‘__Pyx_get_object_dict_version’:
aiohttp/_websocket.c:2692:5: warning: ‘ma_version_tag’ is deprecated [-Wdeprecated-declarations]
2692 | return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
| ^~~~~~
/usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
22 | Py_DEPRECATED(3.12) uint64_t ma_version_tag;
| ^~~~~~~~~~~~~~
aiohttp/_websocket.c: In function ‘__Pyx_object_dict_version_matches’:
aiohttp/_websocket.c:2696:5: warning: ‘ma_version_tag’ is deprecated [-Wdeprecated-declarations]
2696 | if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
| ^~
/usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
22 | Py_DEPRECATED(3.12) uint64_t ma_version_tag;
| ^~~~~~~~~~~~~~
aiohttp/_websocket.c: In function ‘__Pyx_CLineForTraceback’:
aiohttp/_websocket.c:2741:9: warning: ‘ma_version_tag’ is deprecated [-Wdeprecated-declarations]
2741 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
22 | Py_DEPRECATED(3.12) uint64_t ma_version_tag;
| ^~~~~~~~~~~~~~
aiohttp/_websocket.c:2741:9: warning: ‘ma_version_tag’ is deprecated [-Wdeprecated-declarations]
2741 | __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
22 | Py_DEPRECATED(3.12) uint64_t ma_version_tag;
| ^~~~~~~~~~~~~~
aiohttp/_websocket.c: In function ‘__Pyx_PyInt_As_long’:
aiohttp/_websocket.c:3042:53: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
3042 | const digit* digits = ((PyLongObject*)x)->ob_digit;
| ^~
aiohttp/_websocket.c:3097:53: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
3097 | const digit* digits = ((PyLongObject*)x)->ob_digit;
| ^~
aiohttp/_websocket.c: In function ‘__Pyx_PyInt_As_int’:
aiohttp/_websocket.c:3238:53: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
3238 | const digit* digits = ((PyLongObject*)x)->ob_digit;
| ^~
aiohttp/_websocket.c:3293:53: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
3293 | const digit* digits = ((PyLongObject*)x)->ob_digit;
| ^~
aiohttp/_websocket.c: In function ‘__Pyx_PyIndex_AsSsize_t’:
aiohttp/_websocket.c:3744:45: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
3744 | const digit* digits = ((PyLongObject*)b)->ob_digit;
| ^~
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 aiohttp
Failed to build aiohttp
ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based project```
def750 commented
Yeah, I installed repo using pip install git+https://github.com/Tert0/fastapi-discord.git#egg=fastapi_discord
and it worked. Though i decided to write the API wrapper myself in the end.
Anyways issue can be closed, if someone runs in the same issue, install it like above.
def750 commented
Most likely was a problem with PYPI