Skip to content

asyncpg fails to build with Python 3.14.0 #1300

@badlydrawnrob

Description

@badlydrawnrob

Hopefully there'll be a patch, but I think some things in the Python API have changed causing it to fail. Full error message below (I'm assuming it affects any Python version after this) ... cpython-3.13.9 works as expected. Still think it would be nice to have an piccolo-api[sqlite], piccolo-admin[sqlite], (etc), option to remove as many redundant dependencies as possible (I can split that into a separate issue request if it suits)!

Failed to build `asyncpg==0.30.0`
  ├─▶ The build backend returned an error
  ╰─▶ Call to `setuptools.build_meta.build_wheel` failed (exit status: 1)

      [stdout]
      running bdist_wheel
      running build
      running build_py
      copying asyncpg/compat.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/_version.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/transaction.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/types.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/serverversion.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/prepared_stmt.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/connection.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/utils.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/cluster.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/connect_utils.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/introspection.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/connresource.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/pool.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/_asyncio_compat.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/cursor.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg
      copying asyncpg/_testbase/__init__.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/_testbase
      copying asyncpg/_testbase/fuzzer.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/_testbase
      copying asyncpg/protocol/__init__.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/exceptions/_base.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/exceptions
      copying asyncpg/exceptions/__init__.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/exceptions
      copying asyncpg/pgproto/__init__.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/types.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/protocol/codecs/__init__.py ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      running egg_info
      writing asyncpg.egg-info/PKG-INFO
      writing dependency_links to asyncpg.egg-info/dependency_links.txt
      writing requirements to asyncpg.egg-info/requires.txt
      writing top-level names to asyncpg.egg-info/top_level.txt
      reading manifest file 'asyncpg.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE'
      adding license file 'AUTHORS'
      writing manifest file 'asyncpg.egg-info/SOURCES.txt'
      copying asyncpg/protocol/consts.pxi ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/coreproto.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/coreproto.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/cpythonx.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/encodings.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/pgtypes.pxi ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/prepared_stmt.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/prepared_stmt.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/protocol.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/protocol.pyi ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/protocol.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/scram.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/scram.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/settings.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/protocol/settings.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol
      copying asyncpg/pgproto/__init__.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/buffer.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/buffer.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/consts.pxi ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/cpythonx.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/debug.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/frb.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/frb.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/hton.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/pgproto.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/pgproto.pyi ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/pgproto.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/tohex.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/pgproto/uuid.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto
      copying asyncpg/protocol/codecs/array.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/codecs/base.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/codecs/base.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/codecs/pgproto.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/codecs/range.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/codecs/record.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/codecs/textutils.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/codecs
      copying asyncpg/protocol/record/__init__.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/record
      copying asyncpg/pgproto/codecs/__init__.pxd ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/bits.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/bytea.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/context.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/datetime.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/float.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/geometry.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/hstore.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/int.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/json.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/jsonpath.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/misc.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/network.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/numeric.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/pg_snapshot.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/text.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/tid.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      copying asyncpg/pgproto/codecs/uuid.pyx ->
      build/lib.macosx-10.15-x86_64-cpython-314/asyncpg/pgproto/codecs
      running build_ext
      building 'asyncpg.protocol.protocol' extension
      cc -pthread -fno-strict-overflow -Wsign-compare
      -Wunreachable-code -DNDEBUG -g -O3 -Wall -arch x86_64
      -mmacosx-version-min=10.15 -Wno-nullability-completeness
      -Wno-expansion-to-defined -Wno-undef-prefix -fPIC -Iasyncpg/pgproto/
      -I/Users/name/.cache/uv/builds-v0/.tmpnDLuCu/include
      -I/Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14
      -c asyncpg/protocol/protocol.c -o
      build/temp.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/protocol.o
      -O2 -fsigned-char -Wall -Wsign-compare -Wconversion
      cc -pthread -fno-strict-overflow -Wsign-compare
      -Wunreachable-code -DNDEBUG -g -O3 -Wall -arch x86_64
      -mmacosx-version-min=10.15 -Wno-nullability-completeness
      -Wno-expansion-to-defined -Wno-undef-prefix -fPIC -Iasyncpg/pgproto/
      -I/Users/name/.cache/uv/builds-v0/.tmpnDLuCu/include
      -I/Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14
      -c asyncpg/protocol/record/recordobj.c -o
      build/temp.macosx-10.15-x86_64-cpython-314/asyncpg/protocol/record/recordobj.o
      -O2 -fsigned-char -Wall -Wsign-compare -Wconversion

      [stderr]
      /Users/name/.cache/uv/builds-v0/.tmpnDLuCu/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:82:
      SetuptoolsDeprecationWarning: `project.license` as a TOML table is
      deprecated
      !!

      
      ********************************************************************************
              Please use a simple string containing a SPDX expression for
      `project.license`. You can also use `project.license-files`. (Both
      options available on setuptools>=77.0.0).

              By 2026-Feb-18, you need to update your project and remove
      deprecated calls
              or your builds will no longer be supported.

              See
      https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license
      for details.
      
      ********************************************************************************

      !!
        corresp(dist, value, root_dir)
      /Users/name/.cache/uv/builds-v0/.tmpnDLuCu/lib/python3.14/site-packages/setuptools/config/_apply_pyprojecttoml.py:61:
      SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!

      
      ********************************************************************************
              Please consider removing the following classifiers in favor of a
      SPDX license expression:

              License :: OSI Approved :: Apache Software License

              See
      https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license
      for details.
      
      ********************************************************************************

      !!
        dist._finalize_license_expression()
      /Users/name/.cache/uv/builds-v0/.tmpnDLuCu/lib/python3.14/site-packages/setuptools/dist.py:759:
      SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!

      
      ********************************************************************************
              Please consider removing the following classifiers in favor of a
      SPDX license expression:

              License :: OSI Approved :: Apache Software License

              See
      https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license
      for details.
      
      ********************************************************************************

      !!
        self._finalize_license_expression()
      warning: no files found matching '*.py' under directory 'examples'
      asyncpg/protocol/protocol.c:4256:53: warning: implicit conversion
      changes signedness: 'long' to 'unsigned long' [-Wsign-conversion]
              char *number = (char*) PyMem_Malloc((length + 1) *
      sizeof(char));
                                                   ~~~~~~~^~~  ~
      asyncpg/protocol/protocol.c:105252:21: warning: fallthrough annotation
      in unreachable code [-Wunreachable-code-fallthrough]
                          CYTHON_FALLTHROUGH;
                          ^
      asyncpg/protocol/protocol.c:588:34: note: expanded from macro
      'CYTHON_FALLTHROUGH'
            #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
                                       ^
      asyncpg/protocol/protocol.c:105263:21: warning: fallthrough annotation
      in unreachable code [-Wunreachable-code-fallthrough]
                          CYTHON_FALLTHROUGH;
                          ^
      asyncpg/protocol/protocol.c:588:34: note: expanded from macro
      'CYTHON_FALLTHROUGH'
            #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
                                       ^
      asyncpg/protocol/protocol.c:105384:13: warning: code will never be
      executed [-Wunreachable-code]
                  goto bad;
                  ^~~~~~~~
      asyncpg/protocol/protocol.c:105602:21: warning: fallthrough annotation
      in unreachable code [-Wunreachable-code-fallthrough]
                          CYTHON_FALLTHROUGH;
                          ^
      asyncpg/protocol/protocol.c:588:34: note: expanded from macro
      'CYTHON_FALLTHROUGH'
            #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
                                       ^
      asyncpg/protocol/protocol.c:105613:21: warning: fallthrough annotation
      in unreachable code [-Wunreachable-code-fallthrough]
                          CYTHON_FALLTHROUGH;
                          ^
      asyncpg/protocol/protocol.c:588:34: note: expanded from macro
      'CYTHON_FALLTHROUGH'
            #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
                                       ^
      asyncpg/protocol/protocol.c:105740:21: warning: fallthrough annotation
      in unreachable code [-Wunreachable-code-fallthrough]
                          CYTHON_FALLTHROUGH;
                          ^
      asyncpg/protocol/protocol.c:588:34: note: expanded from macro
      'CYTHON_FALLTHROUGH'
            #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
                                       ^
      asyncpg/protocol/protocol.c:105751:21: warning: fallthrough annotation
      in unreachable code [-Wunreachable-code-fallthrough]
                          CYTHON_FALLTHROUGH;
                          ^
      asyncpg/protocol/protocol.c:588:34: note: expanded from macro
      'CYTHON_FALLTHROUGH'
            #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
                                       ^
      asyncpg/protocol/protocol.c:109766:76: warning: implicit conversion
      changes signedness: 'size_t' (aka 'unsigned long') to 'Py_ssize_t' (aka
      'long') [-Wsign-conversion]
          return ((__Pyx_PyCMethod)(void(*)(void))def->ml_meth)(self, cls,
      args, (size_t)nargs, kwnames);
                 ~
      ^~~~~~~~~~~~~
      asyncpg/protocol/protocol.c:110197:53: warning: implicit conversion
      changes signedness: 'long' to 'unsigned long' [-Wsign-conversion]
              char *number = (char*) PyMem_Malloc((digits + 1) *
      sizeof(char));
                                                   ~~~~~~~^~~  ~
      10 warnings generated.
      asyncpg/protocol/record/recordobj.c:121:1: error: expected statement
      }
      ^
      asyncpg/protocol/record/recordobj.c:495:5: warning:
      '_PyUnicodeWriter_Init' is deprecated [-Wdeprecated-declarations]
          _PyUnicodeWriter_Init(&writer);
          ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:546:1:
      note: '_PyUnicodeWriter_Init' has been explicitly marked deprecated here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(void) _PyUnicodeWriter_Init(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:500:9: warning:
      '_PyUnicodeWriter_WriteStr' is deprecated [-Wdeprecated-declarations]
          if (_PyUnicodeWriter_WriteStr(&writer, type_prefix) < 0) {
              ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:592:1:
      note: '_PyUnicodeWriter_WriteStr' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(int)
      _PyUnicodeWriter_WriteStr(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:512:17: warning:
      '_PyUnicodeWriter_WriteChar' is deprecated [-Wdeprecated-declarations]
                  if (_PyUnicodeWriter_WriteChar(&writer, ' ') < 0) {
                      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:586:1:
      note: '_PyUnicodeWriter_WriteChar' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(int)
      _PyUnicodeWriter_WriteChar(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:540:13: warning:
      '_PyUnicodeWriter_WriteStr' is deprecated [-Wdeprecated-declarations]
              if (_PyUnicodeWriter_WriteStr(&writer, key_repr) < 0) {
                  ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:592:1:
      note: '_PyUnicodeWriter_WriteStr' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(int)
      _PyUnicodeWriter_WriteStr(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:547:13: warning:
      '_PyUnicodeWriter_WriteChar' is deprecated [-Wdeprecated-declarations]
              if (_PyUnicodeWriter_WriteChar(&writer, '=') < 0) {
                  ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:586:1:
      note: '_PyUnicodeWriter_WriteChar' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(int)
      _PyUnicodeWriter_WriteChar(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:552:13: warning:
      '_PyUnicodeWriter_WriteStr' is deprecated [-Wdeprecated-declarations]
              if (_PyUnicodeWriter_WriteStr(&writer, val_repr) < 0) {
                  ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:592:1:
      note: '_PyUnicodeWriter_WriteStr' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(int)
      _PyUnicodeWriter_WriteStr(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:560:9: warning:
      '_PyUnicodeWriter_WriteChar' is deprecated [-Wdeprecated-declarations]
          if (_PyUnicodeWriter_WriteChar(&writer, '>') < 0) {
              ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:586:1:
      note: '_PyUnicodeWriter_WriteChar' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(int)
      _PyUnicodeWriter_WriteChar(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:566:12: warning:
      '_PyUnicodeWriter_Finish' is deprecated [-Wdeprecated-declarations]
          return _PyUnicodeWriter_Finish(&writer);
                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:621:1:
      note: '_PyUnicodeWriter_Finish' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(PyObject *)
      _PyUnicodeWriter_Finish(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      asyncpg/protocol/record/recordobj.c:570:5: warning:
      '_PyUnicodeWriter_Dealloc' is deprecated [-Wdeprecated-declarations]
          _PyUnicodeWriter_Dealloc(&writer);
          ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/cpython/unicodeobject.h:625:1:
      note: '_PyUnicodeWriter_Dealloc' has been explicitly marked deprecated
      here
      _Py_DEPRECATED_EXTERNALLY(3.14) PyAPI_FUNC(void)
      _PyUnicodeWriter_Dealloc(
      ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:293:44:
      note: expanded from macro '_Py_DEPRECATED_EXTERNALLY'
      #define _Py_DEPRECATED_EXTERNALLY(version) Py_DEPRECATED(version)
                                                 ^
      /Users/name/.local/share/uv/python/cpython-3.14.0-macos-x86_64-none/include/python3.14/pyport.h:280:54:
      note: expanded from macro 'Py_DEPRECATED'
      #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))
                                                           ^
      9 warnings and 1 error generated.
      error: command '/usr/bin/cc' failed with exit code 1

      hint: This usually indicates a problem with the package or the build
      environment.
  help: `asyncpg` (v0.30.0) was included because `fruits` (v0.1.0) depends on
        `piccolo[postgres]` (v1.30.0) which depends on `asyncpg`

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions