revolt.py not working on python 3.12 because dependency aiohttp==3.8.* does not support python 3.12 #31

Closed
opened 2026-02-15 23:16:18 -05:00 by yindo · 2 comments
Owner

Originally created by @ammo414 on GitHub (Feb 28, 2024).

Describe the bug
When trying to pip install revolt.py on a machine with Python 3.12.*, we eventually see the following error:

Failed to build aiohttp
ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects

Looking around, I found aiohttp's issue #7739, which describes the same problem. However, according to this comment on that same issue, this has been fixed in aiohttp=3.9.*

Looking at revolt.py's pyproject.toml file, one of the project's dependencies is aiohttp==3.8.*, which means that revolt.py will never build in python 3.12.

To Reproduce

  1. Use Python 3.12 as your interpreter.
  2. Try to install revolt.py via pip install revolt.py

Expected behavior
Revolt.py successfully installs

Library version
n/a

Originally created by @ammo414 on GitHub (Feb 28, 2024). **Describe the bug** When trying to `pip install revolt.py` on a machine with Python 3.12.*, we eventually see the following error: > Failed to build aiohttp > ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects Looking around, I found [aiohttp's issue #7739](https://github.com/aio-libs/aiohttp/issues/7739), which describes the same problem. However, according to [this comment on that same issue](https://github.com/aio-libs/aiohttp/issues/7739#issuecomment-1773868351), this has been fixed in aiohttp=3.9.* Looking at revolt.py's [pyproject.toml file](https://github.com/revoltchat/revolt.py/blob/master/pyproject.toml), one of the project's dependencies is aiohttp==3.8.*, which means that revolt.py will never build in python 3.12. **To Reproduce** 1. Use Python 3.12 as your interpreter. 2. Try to install revolt.py via `pip install revolt.py` **Expected behavior** Revolt.py successfully installs **Library version** n/a
yindo added the unconfirmed bug label 2026-02-15 23:16:18 -05:00
yindo closed this issue 2026-02-15 23:16:18 -05:00
Author
Owner

@Zomatree commented on GitHub (Feb 28, 2024):

Could you post the entire console output?

@Zomatree commented on GitHub (Feb 28, 2024): Could you post the entire console output?
Author
Owner

@ammo414 commented on GitHub (Feb 28, 2024):

Yup, here you go. I didn't try to install it within a venv because I knew it wasn't going to work, but that was how I was trying to install it all of yesterday. I also included python --version and pip install aiohttp for good measure

[user@fedora ~]$ pip install revolt.py
Defaulting to user installation because normal site-packages is not writeable
Collecting revolt.py
  Obtaining dependency information for revolt.py from https://files.pythonhosted.org/packages/ad/00/e521212d3ce2944de143dade7e475bb1f048dfc1a15785884a9e38c38aea/revolt.py-0.2.0-py3-none-any.whl.metadata
  Using cached revolt.py-0.2.0-py3-none-any.whl.metadata (2.4 kB)
Collecting aenum==3.1.* (from revolt.py)
  Obtaining dependency information for aenum==3.1.* from https://files.pythonhosted.org/packages/d0/fa/ca0c66b388624ba9dbbf35aab3a9f326bfdf5e56a7237fe8f1b600da6864/aenum-3.1.15-py3-none-any.whl.metadata
  Using cached aenum-3.1.15-py3-none-any.whl.metadata (3.7 kB)
Collecting aiohttp==3.8.* (from revolt.py)
  Using cached aiohttp-3.8.6.tar.gz (7.4 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting typing-extensions>=4.4.0 (from revolt.py)
  Obtaining dependency information for typing-extensions>=4.4.0 from https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl.metadata
  Using cached typing_extensions-4.10.0-py3-none-any.whl.metadata (3.0 kB)
Collecting ulid-py==1.1.* (from revolt.py)
  Obtaining dependency information for ulid-py==1.1.* from https://files.pythonhosted.org/packages/42/7c/a12c879fe6c2b136a718c142115ff99397fbf62b4929d970d58ae386d55f/ulid_py-1.1.0-py2.py3-none-any.whl.metadata
  Using cached ulid_py-1.1.0-py2.py3-none-any.whl.metadata (9.8 kB)
Requirement already satisfied: attrs>=17.3.0 in /usr/lib/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (23.1.0)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/lib/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (3.2.0)
Requirement already satisfied: multidict<7.0,>=4.5 in /usr/lib64/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (6.0.4)
Collecting async-timeout<5.0,>=4.0.0a3 (from aiohttp==3.8.*->revolt.py)
  Obtaining dependency information for async-timeout<5.0,>=4.0.0a3 from https://files.pythonhosted.org/packages/a7/fa/e01228c2938de91d47b307831c62ab9e4001e747789d0b05baf779a6488c/async_timeout-4.0.3-py3-none-any.whl.metadata
  Using cached async_timeout-4.0.3-py3-none-any.whl.metadata (4.2 kB)
Requirement already satisfied: yarl<2.0,>=1.0 in /usr/lib64/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (1.9.2)
Requirement already satisfied: frozenlist>=1.1.1 in /usr/lib64/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (1.4.0)
Requirement already satisfied: aiosignal>=1.1.2 in /usr/lib/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (1.3.1)
Requirement already satisfied: idna>=2.0 in /usr/lib/python3.12/site-packages (from yarl<2.0,>=1.0->aiohttp==3.8.*->revolt.py) (3.4)
Using cached revolt.py-0.2.0-py3-none-any.whl (70 kB)
Using cached aenum-3.1.15-py3-none-any.whl (137 kB)
Using cached ulid_py-1.1.0-py2.py3-none-any.whl (25 kB)
Using cached typing_extensions-4.10.0-py3-none-any.whl (33 kB)
Using cached async_timeout-4.0.3-py3-none-any.whl (5.7 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/__init__.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/abc.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_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/client_proto.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/client_reqrep.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/client_ws.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/connector.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/cookiejar.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/formdata.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/hdrs.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/helpers.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/http.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/http_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/http_parser.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/http_websocket.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/http_writer.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/locks.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/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/payload_streamer.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/pytest_plugin.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/resolver.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/streams.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/tcp_helpers.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/test_utils.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/tracing.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/typedefs.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_app.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_exceptions.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_log.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_protocol.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_request.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_response.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_runner.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_server.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_urldispatcher.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/web_ws.py -> build/lib.linux-x86_64-cpython-312/aiohttp
      copying aiohttp/worker.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
      gcc -fno-strict-overflow -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -fexceptions -fcf-protection -fexceptions -fcf-protection -fexceptions -fcf-protection -fPIC -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:61:
      /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/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 projects

[user@fedora ~]$ python --version
Python 3.12.1
[user@fedora ~]$ pip install aiohttp
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: aiohttp in /usr/lib64/python3.12/site-packages (3.9.3)
Requirement already satisfied: aiosignal>=1.1.2 in /usr/lib/python3.12/site-packages (from aiohttp) (1.3.1)
Requirement already satisfied: attrs>=17.3.0 in /usr/lib/python3.12/site-packages (from aiohttp) (23.1.0)
Requirement already satisfied: frozenlist>=1.1.1 in /usr/lib64/python3.12/site-packages (from aiohttp) (1.4.0)
Requirement already satisfied: multidict<7.0,>=4.5 in /usr/lib64/python3.12/site-packages (from aiohttp) (6.0.4)
Requirement already satisfied: yarl<2.0,>=1.0 in /usr/lib64/python3.12/site-packages (from aiohttp) (1.9.2)
Requirement already satisfied: idna>=2.0 in /usr/lib/python3.12/site-packages (from yarl<2.0,>=1.0->aiohttp) (3.4)

@ammo414 commented on GitHub (Feb 28, 2024): Yup, here you go. I didn't try to install it within a venv because I knew it wasn't going to work, but that was how I was trying to install it all of yesterday. I also included `python --version` and `pip install aiohttp` for good measure ``` [user@fedora ~]$ pip install revolt.py Defaulting to user installation because normal site-packages is not writeable Collecting revolt.py Obtaining dependency information for revolt.py from https://files.pythonhosted.org/packages/ad/00/e521212d3ce2944de143dade7e475bb1f048dfc1a15785884a9e38c38aea/revolt.py-0.2.0-py3-none-any.whl.metadata Using cached revolt.py-0.2.0-py3-none-any.whl.metadata (2.4 kB) Collecting aenum==3.1.* (from revolt.py) Obtaining dependency information for aenum==3.1.* from https://files.pythonhosted.org/packages/d0/fa/ca0c66b388624ba9dbbf35aab3a9f326bfdf5e56a7237fe8f1b600da6864/aenum-3.1.15-py3-none-any.whl.metadata Using cached aenum-3.1.15-py3-none-any.whl.metadata (3.7 kB) Collecting aiohttp==3.8.* (from revolt.py) Using cached aiohttp-3.8.6.tar.gz (7.4 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... done Collecting typing-extensions>=4.4.0 (from revolt.py) Obtaining dependency information for typing-extensions>=4.4.0 from https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl.metadata Using cached typing_extensions-4.10.0-py3-none-any.whl.metadata (3.0 kB) Collecting ulid-py==1.1.* (from revolt.py) Obtaining dependency information for ulid-py==1.1.* from https://files.pythonhosted.org/packages/42/7c/a12c879fe6c2b136a718c142115ff99397fbf62b4929d970d58ae386d55f/ulid_py-1.1.0-py2.py3-none-any.whl.metadata Using cached ulid_py-1.1.0-py2.py3-none-any.whl.metadata (9.8 kB) Requirement already satisfied: attrs>=17.3.0 in /usr/lib/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (23.1.0) Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/lib/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (3.2.0) Requirement already satisfied: multidict<7.0,>=4.5 in /usr/lib64/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (6.0.4) Collecting async-timeout<5.0,>=4.0.0a3 (from aiohttp==3.8.*->revolt.py) Obtaining dependency information for async-timeout<5.0,>=4.0.0a3 from https://files.pythonhosted.org/packages/a7/fa/e01228c2938de91d47b307831c62ab9e4001e747789d0b05baf779a6488c/async_timeout-4.0.3-py3-none-any.whl.metadata Using cached async_timeout-4.0.3-py3-none-any.whl.metadata (4.2 kB) Requirement already satisfied: yarl<2.0,>=1.0 in /usr/lib64/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (1.9.2) Requirement already satisfied: frozenlist>=1.1.1 in /usr/lib64/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (1.4.0) Requirement already satisfied: aiosignal>=1.1.2 in /usr/lib/python3.12/site-packages (from aiohttp==3.8.*->revolt.py) (1.3.1) Requirement already satisfied: idna>=2.0 in /usr/lib/python3.12/site-packages (from yarl<2.0,>=1.0->aiohttp==3.8.*->revolt.py) (3.4) Using cached revolt.py-0.2.0-py3-none-any.whl (70 kB) Using cached aenum-3.1.15-py3-none-any.whl (137 kB) Using cached ulid_py-1.1.0-py2.py3-none-any.whl (25 kB) Using cached typing_extensions-4.10.0-py3-none-any.whl (33 kB) Using cached async_timeout-4.0.3-py3-none-any.whl (5.7 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/__init__.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/abc.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_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/client_proto.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/client_reqrep.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/client_ws.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/connector.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/cookiejar.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/formdata.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/hdrs.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/helpers.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/http.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/http_exceptions.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/http_parser.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/http_websocket.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/http_writer.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/locks.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/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/payload_streamer.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/pytest_plugin.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/resolver.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/streams.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/tcp_helpers.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/test_utils.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/tracing.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/typedefs.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_app.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_exceptions.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_log.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_protocol.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_request.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_response.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_runner.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_server.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_urldispatcher.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/web_ws.py -> build/lib.linux-x86_64-cpython-312/aiohttp copying aiohttp/worker.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 gcc -fno-strict-overflow -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -fexceptions -fcf-protection -fexceptions -fcf-protection -fexceptions -fcf-protection -fPIC -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:61: /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/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 projects [user@fedora ~]$ python --version Python 3.12.1 [user@fedora ~]$ pip install aiohttp Defaulting to user installation because normal site-packages is not writeable Requirement already satisfied: aiohttp in /usr/lib64/python3.12/site-packages (3.9.3) Requirement already satisfied: aiosignal>=1.1.2 in /usr/lib/python3.12/site-packages (from aiohttp) (1.3.1) Requirement already satisfied: attrs>=17.3.0 in /usr/lib/python3.12/site-packages (from aiohttp) (23.1.0) Requirement already satisfied: frozenlist>=1.1.1 in /usr/lib64/python3.12/site-packages (from aiohttp) (1.4.0) Requirement already satisfied: multidict<7.0,>=4.5 in /usr/lib64/python3.12/site-packages (from aiohttp) (6.0.4) Requirement already satisfied: yarl<2.0,>=1.0 in /usr/lib64/python3.12/site-packages (from aiohttp) (1.9.2) Requirement already satisfied: idna>=2.0 in /usr/lib/python3.12/site-packages (from yarl<2.0,>=1.0->aiohttp) (3.4) ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: stoatchat/python-client-sdk#31