Skip to content

Python 3.12: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’ #7229

@hugovk

Description

@hugovk

Describe the bug

We're using aiohttp in https://github.com/python/blurb_it and are testing against 3.12-dev on GitHub Actions to help find problems early so they can be fixed before the full release.

With Python 3.12.0a4, yarl-1.8.2.tar.gz installed fine.

With the newest Python 3.12.0a5, yarl-1.8.2.tar.gz fails to install. Reproducible on Ubuntu and macOS. For example:

      aiohttp/_websocket.c:3744:47: error: no member named 'ob_digit' in 'struct _longobject'
          const digit* digits = ((PyLongObject*)b)->ob_digit;
                                ~~~~~~~~~~~~~~~~~~  ^

Looks like this is the cause: python/cpython#101292 / python/cpython#101291

The log also shows similar errors in aiohttp's dependencies yarl (reported at aio-libs/yarl#829) and frozenlist (aio-libs/frozenlist#433).

Here's a similar report for Cython: cython/cython#5238

To Reproduce

  1. With Ubuntu 22.04 or macOS Ventura 13.2.1 and Python 3.12.0a5
  2. python3.12 -m pip install aiohttp

Expected behavior

aiohttp installs.

Logs/tracebacks

$ python3.12 -m pip install aiohttp
Collecting aiohttp
  Downloading aiohttp-3.8.4.tar.gz (7.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.3/7.3 MB 4.6 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: attrs>=17.3.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from aiohttp) (22.1.0)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from aiohttp) (2.1.1)
Collecting multidict<7.0,>=4.5
  Using cached multidict-6.0.4-cp312-cp312-macosx_10_9_universal2.whl
Collecting async-timeout<5.0,>=4.0.0a3
  Downloading async_timeout-4.0.2-py3-none-any.whl (5.8 kB)
Collecting yarl<2.0,>=1.0
  Using cached yarl-1.8.2.tar.gz (172 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting frozenlist>=1.1.1
  Using cached frozenlist-1.3.3.tar.gz (66 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting aiosignal>=1.1.2
  Downloading aiosignal-1.3.1-py3-none-any.whl (7.6 kB)
Requirement already satisfied: idna>=2.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from yarl<2.0,>=1.0->aiohttp) (3.4)
Building wheels for collected packages: aiohttp, frozenlist, yarl
  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
  ╰─> [188 lines of output]
      *********************
      * Accelerated build *
      *********************
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.macosx-10.9-universal2-cpython-312
      creating build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_ws.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/worker.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/multipart.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_response.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/client_ws.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/test_utils.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/tracing.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_exceptions.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_middlewares.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/http_exceptions.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_app.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/streams.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_protocol.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/log.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/client.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_urldispatcher.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_request.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/http_websocket.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/client_proto.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/locks.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/__init__.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_runner.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_server.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/base_protocol.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/payload.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/client_reqrep.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/http.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_log.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/resolver.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/formdata.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/payload_streamer.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_routedef.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/connector.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/client_exceptions.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/typedefs.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/hdrs.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/web_fileresponse.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/http_writer.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/tcp_helpers.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/helpers.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/http_parser.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/cookiejar.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/pytest_plugin.py -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/abc.py -> build/lib.macosx-10.9-universal2-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.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_find_header.pxd -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_headers.pxi -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_helpers.pyi -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_helpers.pyx -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_http_parser.pyx -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_http_writer.pyx -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/_websocket.pyx -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      copying aiohttp/py.typed -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp
      creating build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_cparser.pxd.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_find_header.pxd.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_helpers.pyi.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_helpers.pyx.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_http_parser.pyx.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_http_writer.pyx.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/_websocket.pyx.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      copying aiohttp/.hash/hdrs.py.hash -> build/lib.macosx-10.9-universal2-cpython-312/aiohttp/.hash
      running build_ext
      building 'aiohttp._websocket' extension
      creating build/temp.macosx-10.9-universal2-cpython-312
      creating build/temp.macosx-10.9-universal2-cpython-312/aiohttp
      clang -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.12/include/python3.12 -c aiohttp/_websocket.c -o build/temp.macosx-10.9-universal2-cpython-312/aiohttp/_websocket.o
      aiohttp/_websocket.c:1475:17: warning: 'Py_OptimizeFlag' is deprecated [-Wdeprecated-declarations]
        if (unlikely(!Py_OptimizeFlag)) {
                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/pydebug.h:13:1: note: 'Py_OptimizeFlag' has been explicitly marked deprecated here
      Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_OptimizeFlag;
      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      aiohttp/_websocket.c:2680:27: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
                                ^
      aiohttp/_websocket.c:1118:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      aiohttp/_websocket.c:2692:36: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
                                         ^
      aiohttp/_websocket.c:1118:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      aiohttp/_websocket.c:2696:56: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
                                                             ^
      aiohttp/_websocket.c:1118:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      aiohttp/_websocket.c:2741:9: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
              __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
              ^
      aiohttp/_websocket.c:1125:16: note: expanded from macro '__PYX_PY_DICT_LOOKUP_IF_MODIFIED'
          if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
                     ^
      aiohttp/_websocket.c:1118:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      aiohttp/_websocket.c:2741:9: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
              __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
              ^
      aiohttp/_websocket.c:1129:30: note: expanded from macro '__PYX_PY_DICT_LOOKUP_IF_MODIFIED'
              __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
                                   ^
      aiohttp/_websocket.c:1118:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      aiohttp/_websocket.c:3042:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      aiohttp/_websocket.c:3097:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      aiohttp/_websocket.c:3238:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      aiohttp/_websocket.c:3293:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      aiohttp/_websocket.c:3744:47: error: no member named 'ob_digit' in 'struct _longobject'
          const digit* digits = ((PyLongObject*)b)->ob_digit;
                                ~~~~~~~~~~~~~~~~~~  ^
      6 warnings and 5 errors generated.
      error: command '/usr/bin/clang' 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
  Building wheel for frozenlist (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for frozenlist (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [211 lines of output]
      *********************
      * Accelerated build *
      *********************
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.macosx-10.9-universal2-cpython-312
      creating build/lib.macosx-10.9-universal2-cpython-312/frozenlist
      copying frozenlist/__init__.py -> build/lib.macosx-10.9-universal2-cpython-312/frozenlist
      running egg_info
      writing frozenlist.egg-info/PKG-INFO
      writing dependency_links to frozenlist.egg-info/dependency_links.txt
      writing top-level names to frozenlist.egg-info/top_level.txt
      reading manifest file 'frozenlist.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      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 'frozenlist/*.html'
      no previously-included directories found matching 'docs/_build'
      adding license file 'LICENSE'
      writing manifest file 'frozenlist.egg-info/SOURCES.txt'
      copying frozenlist/__init__.pyi -> build/lib.macosx-10.9-universal2-cpython-312/frozenlist
      copying frozenlist/_frozenlist.pyx -> build/lib.macosx-10.9-universal2-cpython-312/frozenlist
      copying frozenlist/py.typed -> build/lib.macosx-10.9-universal2-cpython-312/frozenlist
      running build_ext
      building 'frozenlist._frozenlist' extension
      creating build/temp.macosx-10.9-universal2-cpython-312
      creating build/temp.macosx-10.9-universal2-cpython-312/frozenlist
      clang -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.12/include/python3.12 -c frozenlist/_frozenlist.c -o build/temp.macosx-10.9-universal2-cpython-312/frozenlist/_frozenlist.o
      frozenlist/_frozenlist.c:4136:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pyx_unpickle_FrozenList); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error)
          ^
      frozenlist/_frozenlist.c:1300:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:4182:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pyx_unpickle_FrozenList); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 15, __pyx_L1_error)
          ^
      frozenlist/_frozenlist.c:1300:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:5463:3: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
        __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_sys); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error)
        ^
      frozenlist/_frozenlist.c:1300:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:5481:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_types); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error)
          ^
      frozenlist/_frozenlist.c:1300:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:5535:3: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
        __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_MutableSequence); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 123, __pyx_L1_error)
        ^
      frozenlist/_frozenlist.c:1300:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:6338:53: error: no member named 'ob_digit' in 'struct _longobject'
              const digit* digits = ((PyLongObject*)op1)->ob_digit;
                                    ~~~~~~~~~~~~~~~~~~~~  ^
      frozenlist/_frozenlist.c:6623:27: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
                                ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:6635:36: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
                                         ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:6639:56: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
                                                             ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:6656:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
          ^
      frozenlist/_frozenlist.c:1274:21: note: expanded from macro '__PYX_UPDATE_DICT_CACHE'
          (version_var) = __PYX_GET_DICT_VERSION(dict);\
                          ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:7047:9: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
              __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
              ^
      frozenlist/_frozenlist.c:1279:16: note: expanded from macro '__PYX_PY_DICT_LOOKUP_IF_MODIFIED'
          if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
                     ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:7047:9: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
              __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
              ^
      frozenlist/_frozenlist.c:1283:30: note: expanded from macro '__PYX_PY_DICT_LOOKUP_IF_MODIFIED'
              __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
                                   ^
      frozenlist/_frozenlist.c:1272:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      frozenlist/_frozenlist.c:7348:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      frozenlist/_frozenlist.c:7403:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      frozenlist/_frozenlist.c:7582:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      frozenlist/_frozenlist.c:7637:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      frozenlist/_frozenlist.c:8088:47: error: no member named 'ob_digit' in 'struct _longobject'
          const digit* digits = ((PyLongObject*)b)->ob_digit;
                                ~~~~~~~~~~~~~~~~~~  ^
      11 warnings and 6 errors generated.
      error: command '/usr/bin/clang' 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 frozenlist
  Building wheel for yarl (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for yarl (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [366 lines of output]
      /private/var/folders/bk/lp0tks593s15x1v1l9pw07lh0000gn/T/pip-build-env-2j01kift/overlay/lib/python3.12/site-packages/setuptools/config/setupcfg.py:520: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
        warnings.warn(msg, warning_class)
      **********************
      * Accelerated build *
      **********************
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.macosx-10.9-universal2-cpython-312
      creating build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/_url.py -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/_quoting_py.py -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/__init__.py -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/_quoting.py -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      running egg_info
      writing yarl.egg-info/PKG-INFO
      writing dependency_links to yarl.egg-info/dependency_links.txt
      writing requirements to yarl.egg-info/requires.txt
      writing top-level names to yarl.egg-info/top_level.txt
      reading manifest file 'yarl.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      warning: no previously-included files matching '*.pyc' found anywhere in distribution
      warning: no previously-included files matching '*.cache' found anywhere in distribution
      warning: no previously-included files found matching 'yarl/*.html'
      warning: no previously-included files found matching 'yarl/*.so'
      warning: no previously-included files found matching 'yarl/*.pyd'
      no previously-included directories found matching 'docs/_build'
      adding license file 'LICENSE'
      writing manifest file 'yarl.egg-info/SOURCES.txt'
      copying yarl/__init__.pyi -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/_quoting_c.pyi -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/_quoting_c.pyx -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      copying yarl/py.typed -> build/lib.macosx-10.9-universal2-cpython-312/yarl
      running build_ext
      building 'yarl._quoting_c' extension
      creating build/temp.macosx-10.9-universal2-cpython-312
      creating build/temp.macosx-10.9-universal2-cpython-312/yarl
      clang -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.12/include/python3.12 -c yarl/_quoting_c.c -o build/temp.macosx-10.9-universal2-cpython-312/yarl/_quoting_c.o
      yarl/_quoting_c.c:4425:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pyx_unpickle__Quoter); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 13, __pyx_L1_error)
          ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:4471:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_pyx_unpickle__Quoter); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 15, __pyx_L1_error)
          ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:5166:23: warning: 'Py_OptimizeFlag' is deprecated [-Wdeprecated-declarations]
              if (unlikely(!Py_OptimizeFlag)) {
                            ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/pydebug.h:13:1: note: 'Py_OptimizeFlag' has been explicitly marked deprecated here
      Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_OptimizeFlag;
      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:5471:25: warning: 'Py_OptimizeFlag' is deprecated [-Wdeprecated-declarations]
                if (unlikely(!Py_OptimizeFlag)) {
                              ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/pydebug.h:13:1: note: 'Py_OptimizeFlag' has been explicitly marked deprecated here
      Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_OptimizeFlag;
      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:5505:23: warning: 'Py_OptimizeFlag' is deprecated [-Wdeprecated-declarations]
              if (unlikely(!Py_OptimizeFlag)) {
                            ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/pydebug.h:13:1: note: 'Py_OptimizeFlag' has been explicitly marked deprecated here
      Py_DEPRECATED(3.12) PyAPI_DATA(int) Py_OptimizeFlag;
      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:6220:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_pyx_unpickle__Unquoter); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 13, __pyx_L1_error)
          ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:6266:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pyx_unpickle__Unquoter); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 15, __pyx_L1_error)
          ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8425:3: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
        __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ascii_letters); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 16, __pyx_L1_error)
        ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8427:3: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
        __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_digits); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error)
        ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8506:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_i); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 71, __pyx_L1_error)
          ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8527:7: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
            __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_i); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 72, __pyx_L1_error)
            ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8540:7: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
            __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_i); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 73, __pyx_L1_error)
            ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8562:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_i); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 74, __pyx_L1_error)
          ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8583:7: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
            __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_i); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 75, __pyx_L1_error)
            ^
      yarl/_quoting_c.c:1325:43: note: expanded from macro '__Pyx_GetModuleGlobalName'
          (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
                                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:8944:18: error: implicit declaration of function '_PyUnicode_Ready' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
          if (unlikely(__Pyx_PyUnicode_READY(ustring) < 0)) return -1;
                       ^
      yarl/_quoting_c.c:557:51: note: expanded from macro '__Pyx_PyUnicode_READY'
                                                    0 : _PyUnicode_Ready((PyObject *)(op)))
                                                        ^
      yarl/_quoting_c.c:8944:18: note: did you mean '_PyUnicode_Copy'?
      yarl/_quoting_c.c:557:51: note: expanded from macro '__Pyx_PyUnicode_READY'
                                                    0 : _PyUnicode_Ready((PyObject *)(op)))
                                                        ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/unicodeobject.h:391:23: note: '_PyUnicode_Copy' declared here
      PyAPI_FUNC(PyObject*) _PyUnicode_Copy(
                            ^
      yarl/_quoting_c.c:9506:18: error: implicit declaration of function '_PyUnicode_Ready' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
          if (unlikely(__Pyx_PyUnicode_READY(ustring) < 0)) return (Py_UCS4)-1;
                       ^
      yarl/_quoting_c.c:557:51: note: expanded from macro '__Pyx_PyUnicode_READY'
                                                    0 : _PyUnicode_Ready((PyObject *)(op)))
                                                        ^
      yarl/_quoting_c.c:9614:27: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
                                ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:9626:36: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
                                         ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:9630:56: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
                                                             ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:9647:5: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
          __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
          ^
      yarl/_quoting_c.c:1299:21: note: expanded from macro '__PYX_UPDATE_DICT_CACHE'
          (version_var) = __PYX_GET_DICT_VERSION(dict);\
                          ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:9697:18: error: implicit declaration of function '_PyUnicode_Ready' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
          if (unlikely(__Pyx_PyUnicode_READY(text) == -1)) return NULL;
                       ^
      yarl/_quoting_c.c:557:51: note: expanded from macro '__Pyx_PyUnicode_READY'
                                                    0 : _PyUnicode_Ready((PyObject *)(op)))
                                                        ^
      yarl/_quoting_c.c:10311:9: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
              __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
              ^
      yarl/_quoting_c.c:1304:16: note: expanded from macro '__PYX_PY_DICT_LOOKUP_IF_MODIFIED'
          if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
                     ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:10311:9: warning: 'ma_version_tag' is deprecated [-Wdeprecated-declarations]
              __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
              ^
      yarl/_quoting_c.c:1308:30: note: expanded from macro '__PYX_PY_DICT_LOOKUP_IF_MODIFIED'
              __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
                                   ^
      yarl/_quoting_c.c:1297:65: note: expanded from macro '__PYX_GET_DICT_VERSION'
      #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
                                                                      ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/cpython/dictobject.h:22:5: note: 'ma_version_tag' has been explicitly marked deprecated here
          Py_DEPRECATED(3.12) uint64_t ma_version_tag;
          ^
      /Library/Frameworks/Python.framework/Versions/3.12/include/python3.12/pyport.h:314:54: note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      yarl/_quoting_c.c:10674:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:10729:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:10870:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:10925:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:11066:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:11121:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:11359:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:11414:55: error: no member named 'ob_digit' in 'struct _longobject'
                  const digit* digits = ((PyLongObject*)x)->ob_digit;
                                        ~~~~~~~~~~~~~~~~~~  ^
      yarl/_quoting_c.c:11865:47: error: no member named 'ob_digit' in 'struct _longobject'
          const digit* digits = ((PyLongObject*)b)->ob_digit;
                                ~~~~~~~~~~~~~~~~~~  ^
      20 warnings and 12 errors generated.
      error: command '/usr/bin/clang' 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 yarl
Failed to build aiohttp frozenlist yarl
ERROR: Could not build wheels for aiohttp, frozenlist, yarl, which is required to install pyproject.toml-based projects

Python Version

$ python3.12 --version
Python 3.12.0a5

aiohttp Version

$ python -m pip show aiohttp

Not installed.

multidict Version

$ python -m pip show multidict

Not installed.

yarl Version

$ python -m pip show yarl

Not installed.

OS

Ubuntu 22.04
macOS Ventura 13.2.1

Related component

Server, Client

Additional context

https://github.com/hugovk/blurb_it/actions/runs/4301170729 shows alpha 4 passing and alpha 5 failing.

Code of Conduct

  • I agree to follow the aio-libs Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions