Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to install AWS CLI version 2 (2.23.2) with Python 3.13.1 #9234

Open
1 task
aureq opened this issue Jan 19, 2025 · 2 comments
Open
1 task

Unable to install AWS CLI version 2 (2.23.2) with Python 3.13.1 #9234

aureq opened this issue Jan 19, 2025 · 2 comments
Assignees
Labels
bug This issue is a bug. investigating This issue is being investigated and/or work is in progress to resolve the issue. p2 This is a standard priority issue

Comments

@aureq
Copy link

aureq commented Jan 19, 2025

Describe the bug

Hi,

I'm unable to install the AWS CLI version 2 using Python 3.13.1 by running /usr/local/bin/pip install https://github.com/aws/aws-cli/archive/refs/tags/2.23.2.tar.gz (this work fine on Python 3.12.x, and this works fine with AWS CLI 1.37.2 too).

Regression Issue

  • Select this option if this issue appears to be a regression.

Expected Behavior

The AWS CLI v2 should install as expected on Python 3.13.x.

Current Behavior

The build fails with the following errors and warnings

Collecting https://github.com/aws/aws-cli/archive/refs/tags/2.23.2.tar.gz
  Using cached https://github.com/aws/aws-cli/archive/refs/tags/2.23.2.tar.gz
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... error
  error: subprocess-exited-with-error
  
  × pip subprocess to install backend dependencies did not run successfully.
  │ exit code: 1
  ╰─> [518 lines of output]
      Collecting distro<1.9.0,>=1.5.0
        Using cached distro-1.8.0-py3-none-any.whl.metadata (6.9 kB)
      Collecting docutils<0.20,>=0.10
        Using cached docutils-0.19-py3-none-any.whl.metadata (2.7 kB)
      Collecting awscrt==0.23.4
        Using cached awscrt-0.23.4-cp313-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.1 kB)
      Collecting urllib3<1.27,>=1.25.4
        Using cached urllib3-1.26.20-py2.py3-none-any.whl.metadata (50 kB)
      Collecting colorama<0.4.7,>=0.2.5
        Using cached colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)
      Collecting zipp<3.21.0
        Using cached zipp-3.20.2-py3-none-any.whl.metadata (3.7 kB)
      Collecting ruamel.yaml.clib<=0.2.8,>=0.2.0
        Using cached ruamel.yaml.clib-0.2.8.tar.gz (213 kB)
        Installing build dependencies: started
        Installing build dependencies: finished with status 'done'
        Getting requirements to build wheel: started
        Getting requirements to build wheel: finished with status 'done'
        Preparing metadata (pyproject.toml): started
        Preparing metadata (pyproject.toml): finished with status 'done'
      Collecting cryptography<43.0.2,>=40.0.0
        Using cached cryptography-43.0.1-cp39-abi3-manylinux_2_28_x86_64.whl.metadata (5.4 kB)
      Collecting jmespath<1.1.0,>=0.7.1
        Using cached jmespath-1.0.1-py3-none-any.whl.metadata (7.6 kB)
      Collecting ruamel.yaml<=0.17.21,>=0.15.0
        Using cached ruamel.yaml-0.17.21-py3-none-any.whl.metadata (13 kB)
      Collecting prompt-toolkit<3.0.39,>=3.0.24
        Using cached prompt_toolkit-3.0.38-py3-none-any.whl.metadata (7.0 kB)
      Collecting python-dateutil<=2.9.0,>=2.1
        Using cached python_dateutil-2.9.0-py2.py3-none-any.whl.metadata (8.3 kB)
      Collecting cffi>=1.12 (from cryptography<43.0.2,>=40.0.0)
        Using cached cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.5 kB)
      Collecting wcwidth (from prompt-toolkit<3.0.39,>=3.0.24)
        Using cached wcwidth-0.2.13-py2.py3-none-any.whl.metadata (14 kB)
      Collecting six>=1.5 (from python-dateutil<=2.9.0,>=2.1)
        Using cached six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)
      Collecting pycparser (from cffi>=1.12->cryptography<43.0.2,>=40.0.0)
        Using cached pycparser-2.22-py3-none-any.whl.metadata (943 bytes)
      Using cached awscrt-0.23.4-cp313-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.6 MB)
      Using cached distro-1.8.0-py3-none-any.whl (20 kB)
      Using cached docutils-0.19-py3-none-any.whl (570 kB)
      Using cached urllib3-1.26.20-py2.py3-none-any.whl (144 kB)
      Using cached colorama-0.4.6-py2.py3-none-any.whl (25 kB)
      Using cached zipp-3.20.2-py3-none-any.whl (9.2 kB)
      Using cached cryptography-43.0.1-cp39-abi3-manylinux_2_28_x86_64.whl (4.0 MB)
      Using cached jmespath-1.0.1-py3-none-any.whl (20 kB)
      Using cached ruamel.yaml-0.17.21-py3-none-any.whl (109 kB)
      Using cached prompt_toolkit-3.0.38-py3-none-any.whl (385 kB)
      Using cached python_dateutil-2.9.0-py2.py3-none-any.whl (230 kB)
      Using cached cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (479 kB)
      Using cached six-1.17.0-py2.py3-none-any.whl (11 kB)
      Using cached wcwidth-0.2.13-py2.py3-none-any.whl (34 kB)
      Using cached pycparser-2.22-py3-none-any.whl (117 kB)
      Building wheels for collected packages: ruamel.yaml.clib
        Building wheel for ruamel.yaml.clib (pyproject.toml): started
        Building wheel for ruamel.yaml.clib (pyproject.toml): finished with status 'error'
        error: subprocess-exited-with-error
      
        × Building wheel for ruamel.yaml.clib (pyproject.toml) did not run successfully.
        │ exit code: 1
        ╰─> [451 lines of output]
            <string>:79: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:79: DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:79: DeprecationWarning: ast.Bytes is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:79: DeprecationWarning: ast.NameConstant is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:101: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:105: DeprecationWarning: ast.Bytes is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:107: DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:117: DeprecationWarning: ast.NameConstant is deprecated and will be removed in Python 3.14; use ast.Constant instead
            <string>:104: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead
            <string>:108: DeprecationWarning: Attribute n is deprecated and will be removed in Python 3.14; use value instead
            /tmp/pip-build-env-pa9nletn/overlay/lib/python3.13/site-packages/setuptools/_distutils/dist.py:270: UserWarning: Unknown distribution option: 'test_suite'
              warnings.warn(msg)
            running bdist_wheel
            running build
            running build_py
            creating build/lib.linux-x86_64-cpython-313/ruamel/yaml/clib
            copying ./setup.py -> build/lib.linux-x86_64-cpython-313/ruamel/yaml/clib
            copying ./__init__.py -> build/lib.linux-x86_64-cpython-313/ruamel/yaml/clib
            copying ./LICENSE -> build/lib.linux-x86_64-cpython-313/ruamel/yaml/clib
            running build_ext
            building '_ruamel_yaml' extension
            creating build/temp.linux-x86_64-cpython-313
            gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -fPIC -I/usr/local/include/python3.13 -c _ruamel_yaml.c -o build/temp.linux-x86_64-cpython-313/_ruamel_yaml.o
            In file included from _ruamel_yaml.c:1149:
            _ruamel_yaml.h:10: warning: "PyString_CheckExact" redefined
               10 | #define PyString_CheckExact PyBytes_CheckExact
                  |
            _ruamel_yaml.c:998: note: this is the location of the previous definition
              998 |   #define PyString_CheckExact          PyUnicode_CheckExact
                  |
            _ruamel_yaml.c:1236:1: warning: ‘Py_UNICODE’ is deprecated [-Wdeprecated-declarations]
             1236 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
                  | ^~~~~~
            _ruamel_yaml.c: In function ‘__Pyx_Py_UNICODE_strlen’:
            _ruamel_yaml.c:1238:5: warning: ‘Py_UNICODE’ is deprecated [-Wdeprecated-declarations]
             1238 |     const Py_UNICODE *u_end = u;
                  |     ^~~~~
            _ruamel_yaml.c: In function ‘__pyx_pf_6ruamel_4yaml_4clib_12_ruamel_yaml_get_version_string’:
            _ruamel_yaml.c:4156:17: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
             4156 |   __pyx_v_value = yaml_get_version_string();
                  |                 ^
            _ruamel_yaml.c: In function ‘__pyx_pf_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser___init__’:
            _ruamel_yaml.c:5929:52: warning: passing argument 2 of ‘yaml_parser_set_input’ from incompatible pointer type [-Wincompatible-pointer-types]
             5929 |     yaml_parser_set_input((&__pyx_v_self->parser), __pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_input_handler, ((void *)__pyx_v_self));
                  |                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  |                                                    |
                  |                                                    int (*)(void *, char *, int,  int *)
            In file included from _ruamel_yaml.h:2:
            yaml.h:1370:30: note: expected ‘int (*)(void *, unsigned char *, size_t,  size_t *)’ {aka ‘int (*)(void *, unsigned char *, long unsigned int,  long unsigned int *)’} but argument is of type ‘int (*)(void *, char *, int,  int *)’
             1370 |         yaml_read_handler_t *handler, void *data);
                  |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~
            In file included from /usr/local/include/python3.13/bytesobject.h:59,
                             from /usr/local/include/python3.13/Python.h:78,
                             from _ruamel_yaml.c:16:
            /usr/local/include/python3.13/cpython/bytesobject.h:27:31: warning: pointer targets in passing argument 2 of ‘yaml_parser_set_input_string’ differ in signedness [-Wpointer-sign]
               27 | #define PyBytes_AS_STRING(op) PyBytes_AS_STRING(_PyObject_CAST(op))
                  |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  |                               |
                  |                               char *
            _ruamel_yaml.h:11:29: note: in expansion of macro ‘PyBytes_AS_STRING’
               11 | #define PyString_AS_STRING  PyBytes_AS_STRING
                  |                             ^~~~~~~~~~~~~~~~~
            _ruamel_yaml.c:6170:59: note: in expansion of macro ‘PyString_AS_STRING’
             6170 |     yaml_parser_set_input_string((&__pyx_v_self->parser), PyString_AS_STRING(__pyx_v_stream), PyString_GET_SIZE(__pyx_v_stream));
                  |                                                           ^~~~~~~~~~~~~~~~~~
            yaml.h:1344:30: note: expected ‘const unsigned char *’ but argument is of type ‘char *’
             1344 |         const unsigned char *input, size_t size);
                  |         ~~~~~~~~~~~~~~~~~~~~~^~~~~
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser__token_to_object’:
            _ruamel_yaml.c:7887:71: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
             7887 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag_directive.handle); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 416, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                       |
                  |                                                                       yaml_char_t * {aka unsigned char *}
            In file included from /usr/local/include/python3.13/Python.h:79:
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:7899:71: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
             7899 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag_directive.prefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 417, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                       |
                  |                                                                       yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:8572:63: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
             8572 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.alias.value); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 447, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
                  |                                                               |
                  |                                                               yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:8630:64: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
             8630 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.anchor.value); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 450, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
                  |                                                                |
                  |                                                                yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:8688:61: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
             8688 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag.handle); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 453, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                             |
                  |                                                             yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:8700:61: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
             8700 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag.suffix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 454, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                             |
                  |                                                             yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:8797:64: warning: pointer targets in passing argument 1 of ‘PyUnicode_DecodeUTF8’ differ in signedness [-Wpointer-sign]
             8797 |     __pyx_t_2 = PyUnicode_DecodeUTF8(__pyx_v_token->data.scalar.value, __pyx_v_token->data.scalar.length, ((char *)"strict")); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 459, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
                  |                                                                |
                  |                                                                yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:430:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              430 |     const char *string,         /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser__event_to_object’:
            _ruamel_yaml.c:10545:63: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            10545 |         __pyx_t_4 = PyUnicode_FromString(__pyx_v_tag_directive->handle); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 573, __pyx_L1_error)
                  |                                          ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
                  |                                                               |
                  |                                                               yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:10557:63: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            10557 |         __pyx_t_4 = PyUnicode_FromString(__pyx_v_tag_directive->prefix); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 574, __pyx_L1_error)
                  |                                          ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
                  |                                                               |
                  |                                                               yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:10740:63: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            10740 |     __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.alias.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 585, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                               |
                  |                                                               yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:10818:66: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            10818 |       __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.scalar.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 590, __pyx_L1_error)
                  |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                  |
                  |                                                                  yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:10859:66: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            10859 |       __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.scalar.tag); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 593, __pyx_L1_error)
                  |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
                  |                                                                  |
                  |                                                                  yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:10880:64: warning: pointer targets in passing argument 1 of ‘PyUnicode_DecodeUTF8’ differ in signedness [-Wpointer-sign]
            10880 |     __pyx_t_4 = PyUnicode_DecodeUTF8(__pyx_v_event->data.scalar.value, __pyx_v_event->data.scalar.length, ((char *)"strict")); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 594, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
                  |                                                                |
                  |                                                                yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:430:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              430 |     const char *string,         /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:11182:74: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            11182 |       __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.sequence_start.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 619, __pyx_L1_error)
                  |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                          |
                  |                                                                          yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:11223:74: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            11223 |       __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.sequence_start.tag); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 622, __pyx_L1_error)
                  |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
                  |                                                                          |
                  |                                                                          yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:11419:73: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            11419 |       __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.mapping_start.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 636, __pyx_L1_error)
                  |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                         |
                  |                                                                         yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:11460:73: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            11460 |       __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.mapping_start.tag); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 639, __pyx_L1_error)
                  |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
                  |                                                                         |
                  |                                                                         yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser__compose_node’:
            _ruamel_yaml.c:13221:75: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            13221 |     __pyx_t_3 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.alias.anchor); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 733, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                           |
                  |                                                                           yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:13482:76: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            13482 |     __pyx_t_5 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.scalar.anchor); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 749, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                            |
                  |                                                                            yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:13538:84: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            13538 |     __pyx_t_5 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.sequence_start.anchor); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 752, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                                    |
                  |                                                                                    yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c:13594:83: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            13594 |     __pyx_t_5 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.mapping_start.anchor); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 755, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                  |                                                                                   |
                  |                                                                                   yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser__compose_scalar_node’:
            _ruamel_yaml.c:14176:74: warning: pointer targets in passing argument 1 of ‘PyUnicode_DecodeUTF8’ differ in signedness [-Wpointer-sign]
            14176 |   __pyx_t_2 = PyUnicode_DecodeUTF8(__pyx_v_self->parsed_event.data.scalar.value, __pyx_v_self->parsed_event.data.scalar.length, ((char *)"strict")); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 790, __pyx_L1_error)
                  |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
                  |                                                                          |
                  |                                                                          yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:430:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              430 |     const char *string,         /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:14371:76: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            14371 |     __pyx_t_2 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.scalar.tag); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 803, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
                  |                                                                            |
                  |                                                                            yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser__compose_sequence_node’:
            _ruamel_yaml.c:14850:84: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            14850 |     __pyx_t_3 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.sequence_start.tag); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 836, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
                  |                                                                                    |
                  |                                                                                    yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_7CParser__compose_mapping_node’:
            _ruamel_yaml.c:15415:83: warning: pointer targets in passing argument 1 of ‘PyUnicode_FromString’ differ in signedness [-Wpointer-sign]
            15415 |     __pyx_t_3 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.mapping_start.tag); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 875, __pyx_L1_error)
                  |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
                  |                                                                                   |
                  |                                                                                   yaml_char_t * {aka unsigned char *}
            /usr/local/include/python3.13/unicodeobject.h:130:17: note: expected ‘const char *’ but argument is of type ‘yaml_char_t *’ {aka ‘unsigned char *’}
              130 |     const char *u              /* UTF-8 encoded string */
                  |     ~~~~~~~~~~~~^
            _ruamel_yaml.c: In function ‘__pyx_pf_6ruamel_4yaml_4clib_12_ruamel_yaml_8CEmitter___init__’:
            _ruamel_yaml.c:16882:53: warning: passing argument 2 of ‘yaml_emitter_set_output’ from incompatible pointer type [-Wincompatible-pointer-types]
            16882 |   yaml_emitter_set_output((&__pyx_v_self->emitter), __pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_output_handler, ((void *)__pyx_v_self));
                  |                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  |                                                     |
                  |                                                     int (*)(void *, char *, int)
            yaml.h:1837:31: note: expected ‘int (*)(void *, unsigned char *, size_t)’ {aka ‘int (*)(void *, unsigned char *, long unsigned int)’} but argument is of type ‘int (*)(void *, char *, int)’
             1837 |         yaml_write_handler_t *handler, void *data);
                  |         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_8CEmitter__object_to_event’:
            _ruamel_yaml.c:18282:44: warning: pointer targets in assignment from ‘char *’ to ‘yaml_char_t *’ {aka ‘unsigned char *’} differ in signedness [-Wpointer-sign]
            18282 |         __pyx_v_tag_directives_end->handle = PyString_AS_STRING(__pyx_v_handle);
                  |                                            ^
            _ruamel_yaml.c:18397:44: warning: pointer targets in assignment from ‘char *’ to ‘yaml_char_t *’ {aka ‘unsigned char *’} differ in signedness [-Wpointer-sign]
            18397 |         __pyx_v_tag_directives_end->prefix = PyString_AS_STRING(__pyx_v_prefix);
                  |                                            ^
            _ruamel_yaml.c:18732:61: warning: pointer targets in passing argument 2 of ‘yaml_alias_event_initialize’ differ in signedness [-Wpointer-sign]
            18732 |     __pyx_t_2 = (yaml_alias_event_initialize(__pyx_v_event, __pyx_v_anchor) == 0);
                  |                                                             ^~~~~~~~~~~~~~
                  |                                                             |
                  |                                                             char *
            yaml.h:555:63: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              555 | yaml_alias_event_initialize(yaml_event_t *event, yaml_char_t *anchor);
                  |                                                  ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:19443:62: warning: pointer targets in passing argument 2 of ‘yaml_scalar_event_initialize’ differ in signedness [-Wpointer-sign]
            19443 |     __pyx_t_2 = (yaml_scalar_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_value, __pyx_v_length, __pyx_v_plain_implicit, __pyx_v_quoted_implicit, __pyx_v_scalar_style) == 0);
                  |                                                              ^~~~~~~~~~~~~~
                  |                                                              |
                  |                                                              char *
            yaml.h:581:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              581 |         yaml_char_t *anchor, yaml_char_t *tag,
                  |         ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:19443:78: warning: pointer targets in passing argument 3 of ‘yaml_scalar_event_initialize’ differ in signedness [-Wpointer-sign]
            19443 |     __pyx_t_2 = (yaml_scalar_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_value, __pyx_v_length, __pyx_v_plain_implicit, __pyx_v_quoted_implicit, __pyx_v_scalar_style) == 0);
                  |                                                                              ^~~~~~~~~~~
                  |                                                                              |
                  |                                                                              char *
            yaml.h:581:43: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              581 |         yaml_char_t *anchor, yaml_char_t *tag,
                  |                              ~~~~~~~~~~~~~^~~
            _ruamel_yaml.c:19443:91: warning: pointer targets in passing argument 4 of ‘yaml_scalar_event_initialize’ differ in signedness [-Wpointer-sign]
            19443 |     __pyx_t_2 = (yaml_scalar_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_value, __pyx_v_length, __pyx_v_plain_implicit, __pyx_v_quoted_implicit, __pyx_v_scalar_style) == 0);
                  |                                                                                           ^~~~~~~~~~~~~
                  |                                                                                           |
                  |                                                                                           char *
            yaml.h:582:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              582 |         yaml_char_t *value, int length,
                  |         ~~~~~~~~~~~~~^~~~~
            _ruamel_yaml.c:19874:70: warning: pointer targets in passing argument 2 of ‘yaml_sequence_start_event_initialize’ differ in signedness [-Wpointer-sign]
            19874 |     __pyx_t_2 = (yaml_sequence_start_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_sequence_style) == 0);
                  |                                                                      ^~~~~~~~~~~~~~
                  |                                                                      |
                  |                                                                      char *
            yaml.h:604:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              604 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |         ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:19874:86: warning: pointer targets in passing argument 3 of ‘yaml_sequence_start_event_initialize’ differ in signedness [-Wpointer-sign]
            19874 |     __pyx_t_2 = (yaml_sequence_start_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_sequence_style) == 0);
                  |                                                                                      ^~~~~~~~~~~
                  |                                                                                      |
                  |                                                                                      char *
            yaml.h:604:43: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              604 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |                              ~~~~~~~~~~~~~^~~
            _ruamel_yaml.c:20305:69: warning: pointer targets in passing argument 2 of ‘yaml_mapping_start_event_initialize’ differ in signedness [-Wpointer-sign]
            20305 |     __pyx_t_2 = (yaml_mapping_start_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_mapping_style) == 0);
                  |                                                                     ^~~~~~~~~~~~~~
                  |                                                                     |
                  |                                                                     char *
            yaml.h:636:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              636 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |         ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:20305:85: warning: pointer targets in passing argument 3 of ‘yaml_mapping_start_event_initialize’ differ in signedness [-Wpointer-sign]
            20305 |     __pyx_t_2 = (yaml_mapping_start_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_mapping_style) == 0);
                  |                                                                                     ^~~~~~~~~~~
                  |                                                                                     |
                  |                                                                                     char *
            yaml.h:636:43: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              636 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |                              ~~~~~~~~~~~~~^~~
            _ruamel_yaml.c: In function ‘__pyx_pf_6ruamel_4yaml_4clib_12_ruamel_yaml_8CEmitter_12serialize’:
            _ruamel_yaml.c:22198:42: warning: pointer targets in assignment from ‘char *’ to ‘yaml_char_t *’ {aka ‘unsigned char *’} differ in signedness [-Wpointer-sign]
            22198 |       __pyx_v_tag_directives_end->handle = PyString_AS_STRING(__pyx_v_handle);
                  |                                          ^
            _ruamel_yaml.c:22313:42: warning: pointer targets in assignment from ‘char *’ to ‘yaml_char_t *’ {aka ‘unsigned char *’} differ in signedness [-Wpointer-sign]
            22313 |       __pyx_v_tag_directives_end->prefix = PyString_AS_STRING(__pyx_v_prefix);
                  |                                          ^
            _ruamel_yaml.c: In function ‘__pyx_f_6ruamel_4yaml_4clib_12_ruamel_yaml_8CEmitter__serialize_node’:
            _ruamel_yaml.c:23168:64: warning: pointer targets in passing argument 2 of ‘yaml_alias_event_initialize’ differ in signedness [-Wpointer-sign]
            23168 |     __pyx_t_2 = (yaml_alias_event_initialize((&__pyx_v_event), __pyx_v_anchor) == 0);
                  |                                                                ^~~~~~~~~~~~~~
                  |                                                                |
                  |                                                                char *
            yaml.h:555:63: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              555 | yaml_alias_event_initialize(yaml_event_t *event, yaml_char_t *anchor);
                  |                                                  ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:23898:67: warning: pointer targets in passing argument 2 of ‘yaml_scalar_event_initialize’ differ in signedness [-Wpointer-sign]
            23898 |       __pyx_t_2 = (yaml_scalar_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_value, __pyx_v_length, __pyx_v_plain_implicit, __pyx_v_quoted_implicit, __pyx_v_scalar_style) == 0);
                  |                                                                   ^~~~~~~~~~~~~~
                  |                                                                   |
                  |                                                                   char *
            yaml.h:581:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              581 |         yaml_char_t *anchor, yaml_char_t *tag,
                  |         ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:23898:83: warning: pointer targets in passing argument 3 of ‘yaml_scalar_event_initialize’ differ in signedness [-Wpointer-sign]
            23898 |       __pyx_t_2 = (yaml_scalar_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_value, __pyx_v_length, __pyx_v_plain_implicit, __pyx_v_quoted_implicit, __pyx_v_scalar_style) == 0);
                  |                                                                                   ^~~~~~~~~~~
                  |                                                                                   |
                  |                                                                                   char *
            yaml.h:581:43: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              581 |         yaml_char_t *anchor, yaml_char_t *tag,
                  |                              ~~~~~~~~~~~~~^~~
            _ruamel_yaml.c:23898:96: warning: pointer targets in passing argument 4 of ‘yaml_scalar_event_initialize’ differ in signedness [-Wpointer-sign]
            23898 |       __pyx_t_2 = (yaml_scalar_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_value, __pyx_v_length, __pyx_v_plain_implicit, __pyx_v_quoted_implicit, __pyx_v_scalar_style) == 0);
                  |                                                                                                ^~~~~~~~~~~~~
                  |                                                                                                |
                  |                                                                                                char *
            yaml.h:582:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              582 |         yaml_char_t *value, int length,
                  |         ~~~~~~~~~~~~~^~~~~
            _ruamel_yaml.c:24255:75: warning: pointer targets in passing argument 2 of ‘yaml_sequence_start_event_initialize’ differ in signedness [-Wpointer-sign]
            24255 |       __pyx_t_2 = (yaml_sequence_start_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_sequence_style) == 0);
                  |                                                                           ^~~~~~~~~~~~~~
                  |                                                                           |
                  |                                                                           char *
            yaml.h:604:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              604 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |         ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:24255:91: warning: pointer targets in passing argument 3 of ‘yaml_sequence_start_event_initialize’ differ in signedness [-Wpointer-sign]
            24255 |       __pyx_t_2 = (yaml_sequence_start_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_sequence_style) == 0);
                  |                                                                                           ^~~~~~~~~~~
                  |                                                                                           |
                  |                                                                                           char *
            yaml.h:604:43: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              604 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |                              ~~~~~~~~~~~~~^~~
            _ruamel_yaml.c:24755:74: warning: pointer targets in passing argument 2 of ‘yaml_mapping_start_event_initialize’ differ in signedness [-Wpointer-sign]
            24755 |       __pyx_t_2 = (yaml_mapping_start_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_mapping_style) == 0);
                  |                                                                          ^~~~~~~~~~~~~~
                  |                                                                          |
                  |                                                                          char *
            yaml.h:636:22: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              636 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |         ~~~~~~~~~~~~~^~~~~~
            _ruamel_yaml.c:24755:90: warning: pointer targets in passing argument 3 of ‘yaml_mapping_start_event_initialize’ differ in signedness [-Wpointer-sign]
            24755 |       __pyx_t_2 = (yaml_mapping_start_event_initialize((&__pyx_v_event), __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_mapping_style) == 0);
                  |                                                                                          ^~~~~~~~~~~
                  |                                                                                          |
                  |                                                                                          char *
            yaml.h:636:43: note: expected ‘yaml_char_t *’ {aka ‘unsigned char *’} but argument is of type ‘char *’
              636 |         yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                  |                              ~~~~~~~~~~~~~^~~
            _ruamel_yaml.c: In function ‘__Pyx_PyInt_As_size_t’:
            _ruamel_yaml.c:33208:23: error: too few arguments to function ‘_PyLong_AsByteArray’
            33208 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
                  |                       ^~~~~~~~~~~~~~~~~~~
            In file included from /usr/local/include/python3.13/longobject.h:107,
                             from /usr/local/include/python3.13/Python.h:81:
            /usr/local/include/python3.13/cpython/longobject.h:111:17: note: declared here
              111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
                  |                 ^~~~~~~~~~~~~~~~~~~
            _ruamel_yaml.c: In function ‘__Pyx_PyInt_As_long’:
            _ruamel_yaml.c:33481:23: error: too few arguments to function ‘_PyLong_AsByteArray’
            33481 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
                  |                       ^~~~~~~~~~~~~~~~~~~
            /usr/local/include/python3.13/cpython/longobject.h:111:17: note: declared here
              111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
                  |                 ^~~~~~~~~~~~~~~~~~~
            _ruamel_yaml.c: In function ‘__Pyx_PyInt_As_int’:
            _ruamel_yaml.c:33816:23: error: too few arguments to function ‘_PyLong_AsByteArray’
            33816 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
                  |                       ^~~~~~~~~~~~~~~~~~~
            /usr/local/include/python3.13/cpython/longobject.h:111:17: note: declared here
              111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
                  |                 ^~~~~~~~~~~~~~~~~~~
            error: command '/usr/bin/gcc' failed with exit code 1
            [end of output]
      
        note: This error originates from a subprocess, and is likely not a problem with pip.
        ERROR: Failed building wheel for ruamel.yaml.clib
      Failed to build ruamel.yaml.clib
      ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (ruamel.yaml.clib)
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× pip subprocess to install backend dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

Reproduction Steps

  • install Python 3.13.1 as your unique python version
  • run pip install https://github.com/aws/aws-cli/archive/refs/tags/2.23.2.tar.gz
  • the build fails ❌

Running pip install https://github.com/aws/aws-cli/archive/refs/tags/1.37.2.tar.gz works as expected ✔

Possible Solution

No response

Additional Information/Context

Note 1: It seems like the issue stems from the use of the ruamel.yaml package but I'm not sure how this dependency is dragged. Maybe PyYAML?

Note 2: I'm using the method described above to globally install the AWS CLI v2 (ie, available to all users). Running pip install --upgrade awscliv2 followed by awsv2 --install result in some executable being installed in /usr/local/bin but also in /root/.awscliv2 which is not desired as it would require other users to run 1) run awsv2 --install themselves and result in extra binaries installed in $HOME/.awscliv2/.

CLI version used

2.23.2

Environment details (OS name and version, etc.)

Containerized Debian 12 (bookwork)

@aureq aureq added bug This issue is a bug. needs-triage This issue or PR still needs to be triaged. labels Jan 19, 2025
@shuklaabhi
Copy link

shuklaabhi commented Jan 20, 2025

I think its because ruamel.yaml.clib==0.2.8 breaks.
https://sourceforge.net/p/ruamel-yaml-clib/tickets/32

You can verify it on your machine inside a virtualenv
pip3 install -U ruamel.yaml.clib==0.2.8

This problem is fixed in 0.2.9.

Since there is version lock on ruamel.yaml.clib it never go updated. May be someone from maintainers can comment more on the issue.

    "ruamel.yaml>=0.15.0,<=0.17.21",
    # ruamel.yaml only requires ruamel.yaml.clib for Python versions
    # less than or equal to Python 3.10. In order to ensure we have
    # a consistent dependency closure across all Python versions,
    # we explicitly include ruamel.yaml.clib as a dependency.
    "ruamel.yaml.clib>=0.2.0,<=0.2.8",

"ruamel.yaml.clib>=0.2.0,<=0.2.8",

You can try install with following flags till we get the patch.

export CFLAGS="-Wno-error=incompatible-pointer-types";
cd /tmp/awscli-2.23.2;
make && make install

@gaspo53
Copy link

gaspo53 commented Jan 21, 2025

Hi! Same happening here, can't build any version.

@khushail khushail self-assigned this Jan 29, 2025
@khushail khushail added p2 This is a standard priority issue investigating This issue is being investigated and/or work is in progress to resolve the issue. and removed needs-triage This issue or PR still needs to be triaged. labels Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug This issue is a bug. investigating This issue is being investigated and/or work is in progress to resolve the issue. p2 This is a standard priority issue
Projects
None yet
Development

No branches or pull requests

4 participants