Pyyaml: pip install appears to fail on macos (v10.13.4) with python 3.7.0b3

Created on 3 Apr 2018  路  9Comments  路  Source: yaml/pyyaml

I note that there is a request to add Python 3.7 in #144. I'd additionally like to request that the travis build run with both clang and gcc.

Collecting pyyaml
  Using cached PyYAML-3.12.tar.gz
Installing collected packages: pyyaml
  Running setup.py install for pyyaml: started
    Running setup.py install for pyyaml: finished with status 'error'
    Complete output from command <Redacted>/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/r9/kv1j05355r34570x2f5wpxpr0000gn/T/pip-build-4l5ge40z/pyyaml/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/r9/kv1j05355r34570x2f5wpxpr0000gn/T/pip-eg3w59z4-record/install-record.txt --single-version-externally-managed --compile --install-headers <Redacted>/include/site/python3.7/pyyaml:
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.13-x86_64-3.7
    creating build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/scanner.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/error.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/constructor.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/composer.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/events.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/__init__.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/representer.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/tokens.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/dumper.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/cyaml.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/parser.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/reader.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/loader.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/resolver.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/serializer.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/nodes.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    copying lib3/yaml/emitter.py -> build/lib.macosx-10.13-x86_64-3.7/yaml
    warning: build_py: byte-compiling is disabled, skipping.

    running build_ext
    creating build/temp.macosx-10.13-x86_64-3.7
    checking if libyaml is compilable
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/opt/tcl-tk/include -I<Redacted>/include -I/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m -c build/temp.macosx-10.13-x86_64-3.7/check_libyaml.c -o build/temp.macosx-10.13-x86_64-3.7/check_libyaml.o
    checking if libyaml is linkable
    clang build/temp.macosx-10.13-x86_64-3.7/check_libyaml.o -L/usr/local/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib -L/usr/local/opt/tcl-tk/lib -lyaml -o build/temp.macosx-10.13-x86_64-3.7/check_libyaml
    building '_yaml' extension
    creating build/temp.macosx-10.13-x86_64-3.7/ext
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/opt/tcl-tk/include -I<Redacted>/include -I/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m -c ext/_yaml.c -o build/temp.macosx-10.13-x86_64-3.7/ext/_yaml.o
    In file included from ext/_yaml.c:271:
    ext/_yaml.h:10:9: warning: 'PyString_CheckExact' macro redefined [-Wmacro-redefined]
    #define PyString_CheckExact PyBytes_CheckExact
            ^
    ext/_yaml.c:139:11: note: previous definition is here
      #define PyString_CheckExact          PyUnicode_CheckExact
              ^
    ext/_yaml.c:1410:17: warning: assigning to 'char *' from 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
      __pyx_v_value = yaml_get_version_string();
                    ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.c:2577:52: warning: incompatible pointer types passing 'int (void *, char *, size_t, size_t *)' (aka 'int (void *, char *, unsigned long, unsigned long *)') to parameter of type 'yaml_read_handler_t *' (aka 'int (*)(void *, unsigned char *, unsigned long, unsigned long *)') [-Wincompatible-pointer-types]
        yaml_parser_set_input((&__pyx_v_self->parser), __pyx_f_5_yaml_input_handler, ((void *)__pyx_v_self));
                                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/include/yaml.h:1368:30: note: passing argument to parameter 'handler' here
            yaml_read_handler_t *handler, void *data);
                                 ^
    ext/_yaml.c:2818:59: warning: passing 'char *' to parameter of type 'const unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        yaml_parser_set_input_string((&__pyx_v_self->parser), PyString_AS_STRING(__pyx_v_stream), PyString_GET_SIZE(__pyx_v_stream));
                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:11:29: note: expanded from macro 'PyString_AS_STRING'
    #define PyString_AS_STRING  PyBytes_AS_STRING
                                ^
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/bytesobject.h:87:31: note: expanded from macro 'PyBytes_AS_STRING'
    #define PyBytes_AS_STRING(op) (assert(PyBytes_Check(op)), \
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/include/yaml.h:1342:30: note: passing argument to parameter 'input' here
            const unsigned char *input, size_t size);
                                 ^
    ext/_yaml.c:4572:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag_directive.handle); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 417, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4584:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag_directive.prefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 418, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:5444:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.alias.value); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 448, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:5518:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.anchor.value); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 451, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:5592:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag.handle); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 454, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:5604:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_token->data.tag.suffix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 455, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:5716:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __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, 460, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:1299:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7424:42: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            __pyx_t_4 = PyUnicode_FromString(__pyx_v_tag_directive->handle); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 574, __pyx_L1_error)
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7436:42: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            __pyx_t_4 = PyUnicode_FromString(__pyx_v_tag_directive->prefix); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 575, __pyx_L1_error)
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7655:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.alias.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 586, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7749:40: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.scalar.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 591, __pyx_L1_error)
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7790:40: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.scalar.tag); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 594, __pyx_L1_error)
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7811:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __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, 595, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:1299:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8179:40: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.sequence_start.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 620, __pyx_L1_error)
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8220:40: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.sequence_start.tag); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 623, __pyx_L1_error)
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8449:40: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.mapping_start.anchor); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 637, __pyx_L1_error)
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8490:40: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_t_4 = PyUnicode_FromString(__pyx_v_event->data.mapping_start.tag); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 640, __pyx_L1_error)
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:10094:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_3 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.alias.anchor); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 734, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:10378:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_6 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.scalar.anchor); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 750, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:10434:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_6 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.sequence_start.anchor); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 753, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:10490:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_6 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.mapping_start.anchor); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 756, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:11109:36: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      __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, 791, __pyx_L1_error)
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:1299:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:11310:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.scalar.tag); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 804, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:11841:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_3 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.sequence_start.tag); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 837, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:12435:38: warning: passing 'yaml_char_t *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_3 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.mapping_start.tag); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 876, __pyx_L1_error)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/unicodeobject.h:703:17: note: passing argument to parameter 'u' here
        const char *u              /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:13141:87: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
      __pyx_t_3 = (((__pyx_v_parser->stream_cache_len - __pyx_v_parser->stream_cache_pos) < __pyx_v_size) != 0);
                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ^ ~~~~~~~~~~~~
    ext/_yaml.c:13630:53: warning: incompatible pointer types passing 'int (void *, char *, size_t)' (aka 'int (void *, char *, unsigned long)') to parameter of type 'yaml_write_handler_t *' (aka 'int (*)(void *, unsigned char *, unsigned long)') [-Wincompatible-pointer-types]
      yaml_emitter_set_output((&__pyx_v_self->emitter), __pyx_f_5_yaml_output_handler, ((void *)__pyx_v_self));
                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/include/yaml.h:1830:31: note: passing argument to parameter 'handler' here
            yaml_write_handler_t *handler, void *data);
                                  ^
    ext/_yaml.c:15002:44: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            __pyx_v_tag_directives_end->handle = PyString_AS_STRING(__pyx_v_handle);
                                               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.c:15117:44: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            __pyx_v_tag_directives_end->prefix = PyString_AS_STRING(__pyx_v_prefix);
                                               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.c:15454:62: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = ((yaml_alias_event_initialize(__pyx_v_event, __pyx_v_anchor) == 0) != 0);
                                                                 ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:553:63: note: passing argument to parameter 'anchor' here
    yaml_alias_event_initialize(yaml_event_t *event, yaml_char_t *anchor);
                                                                  ^
    ext/_yaml.c:16169:63: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __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) != 0);
                                                                  ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:579:22: note: passing argument to parameter 'anchor' here
            yaml_char_t *anchor, yaml_char_t *tag,
                         ^
    ext/_yaml.c:16169:79: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __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) != 0);
                                                                                  ^~~~~~~~~~~
    /usr/local/include/yaml.h:579:43: note: passing argument to parameter 'tag' here
            yaml_char_t *anchor, yaml_char_t *tag,
                                              ^
    ext/_yaml.c:16169:92: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __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) != 0);
                                                                                               ^~~~~~~~~~~~~
    /usr/local/include/yaml.h:580:22: note: passing argument to parameter 'value' here
            yaml_char_t *value, int length,
                         ^
    ext/_yaml.c:16603:71: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_3 = ((yaml_sequence_start_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_sequence_style) == 0) != 0);
                                                                          ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:602:22: note: passing argument to parameter 'anchor' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                         ^
    ext/_yaml.c:16603:87: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_3 = ((yaml_sequence_start_event_initialize(__pyx_v_event, __pyx_v_anchor, __pyx_v_tag, __pyx_v_implicit, __pyx_v_sequence_style) == 0) != 0);
                                                                                          ^~~~~~~~~~~
    /usr/local/include/yaml.h:602:43: note: passing argument to parameter 'tag' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                                              ^
    ext/_yaml.c:17037:70: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __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) != 0);
                                                                         ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:634:22: note: passing argument to parameter 'anchor' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                         ^
    ext/_yaml.c:17037:86: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __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) != 0);
                                                                                         ^~~~~~~~~~~
    /usr/local/include/yaml.h:634:43: note: passing argument to parameter 'tag' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                                              ^
    ext/_yaml.c:18516:42: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_v_tag_directives_end->handle = PyString_AS_STRING(__pyx_v_handle);
                                             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.c:18631:42: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          __pyx_v_tag_directives_end->prefix = PyString_AS_STRING(__pyx_v_prefix);
                                             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.c:19491:65: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        __pyx_t_2 = ((yaml_alias_event_initialize((&__pyx_v_event), __pyx_v_anchor) == 0) != 0);
                                                                    ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:553:63: note: passing argument to parameter 'anchor' here
    yaml_alias_event_initialize(yaml_event_t *event, yaml_char_t *anchor);
                                                                  ^
    ext/_yaml.c:20240:68: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                       ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:579:22: note: passing argument to parameter 'anchor' here
            yaml_char_t *anchor, yaml_char_t *tag,
                         ^
    ext/_yaml.c:20240:84: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                                       ^~~~~~~~~~~
    /usr/local/include/yaml.h:579:43: note: passing argument to parameter 'tag' here
            yaml_char_t *anchor, yaml_char_t *tag,
                                              ^
    ext/_yaml.c:20240:97: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                                                    ^~~~~~~~~~~~~
    /usr/local/include/yaml.h:580:22: note: passing argument to parameter 'value' here
            yaml_char_t *value, int length,
                         ^
    ext/_yaml.c:20605:76: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                               ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:602:22: note: passing argument to parameter 'anchor' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                         ^
    ext/_yaml.c:20605:92: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                                               ^~~~~~~~~~~
    /usr/local/include/yaml.h:602:43: note: passing argument to parameter 'tag' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                                              ^
    ext/_yaml.c:21113:75: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                              ^~~~~~~~~~~~~~
    /usr/local/include/yaml.h:634:22: note: passing argument to parameter 'anchor' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                         ^
    ext/_yaml.c:21113:91: warning: passing 'char *' to parameter of type 'yaml_char_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
          __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) != 0);
                                                                                              ^~~~~~~~~~~
    /usr/local/include/yaml.h:634:43: note: passing argument to parameter 'tag' here
            yaml_char_t *anchor, yaml_char_t *tag, int implicit,
                                              ^
    ext/_yaml.c:24143:21: error: no member named 'exc_type' in 'struct _ts'
        *type = tstate->exc_type;
                ~~~~~~  ^
    ext/_yaml.c:24144:22: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        *value = tstate->exc_value;
                         ^~~~~~~~~
                         curexc_value
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    ext/_yaml.c:24145:19: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        *tb = tstate->exc_traceback;
                      ^~~~~~~~~~~~~
                      curexc_traceback
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    ext/_yaml.c:24152:24: error: no member named 'exc_type' in 'struct _ts'
        tmp_type = tstate->exc_type;
                   ~~~~~~  ^
    ext/_yaml.c:24153:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tmp_value = tstate->exc_value;
                            ^~~~~~~~~
                            curexc_value
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    ext/_yaml.c:24154:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tmp_tb = tstate->exc_traceback;
                         ^~~~~~~~~~~~~
                         curexc_traceback
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    ext/_yaml.c:24155:13: error: no member named 'exc_type' in 'struct _ts'
        tstate->exc_type = type;
        ~~~~~~  ^
    ext/_yaml.c:24156:13: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tstate->exc_value = value;
                ^~~~~~~~~
                curexc_value
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    ext/_yaml.c:24157:13: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tstate->exc_traceback = tb;
                ^~~~~~~~~~~~~
                curexc_traceback
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    ext/_yaml.c:24212:24: error: no member named 'exc_type' in 'struct _ts'
        tmp_type = tstate->exc_type;
                   ~~~~~~  ^
    ext/_yaml.c:24213:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tmp_value = tstate->exc_value;
                            ^~~~~~~~~
                            curexc_value
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    ext/_yaml.c:24214:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tmp_tb = tstate->exc_traceback;
                         ^~~~~~~~~~~~~
                         curexc_traceback
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    ext/_yaml.c:24215:13: error: no member named 'exc_type' in 'struct _ts'
        tstate->exc_type = local_type;
        ~~~~~~  ^
    ext/_yaml.c:24216:13: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tstate->exc_value = local_value;
                ^~~~~~~~~
                curexc_value
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    ext/_yaml.c:24217:13: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tstate->exc_traceback = local_tb;
                ^~~~~~~~~~~~~
                curexc_traceback
    /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    51 warnings and 15 errors generated.
    error: command 'clang' failed with exit status 1

    ----------------------------------------

Most helpful comment

We are planning to release PyYAML 3.13 (fixes Python 3.7 usage) in about 6 hours.

All 9 comments

As homebrew upgraded now to python3.7, pyyaml is not usable on macos at the moment.

Note that if you uninstall libyaml first, then the pip3 install pyyaml succeeds.

Note that if you uninstall libyaml first, then the pip3 install pyyaml succeeds.

This doesn't seem to work on High Sierra (10.13.5) with pip 10.0.1, Python 3.7.0.

I made a small test repo to show @ilovezfs commented solution above: https://github.com/ingydotnet/pyyaml-travis-test/blob/master/.travis.yml

Travis seems to have libyaml already installed by default. The first test fails because it pyyaml fails to pip3 install with libyaml: https://travis-ci.com/ingydotnet/pyyaml-travis-test/builds/77803615#L570

When libyaml is uninstalled, pip3 install pyyaml works: https://travis-ci.com/ingydotnet/pyyaml-travis-test/builds/77803615#L594

This is a temporary workaround until PyYAML-4.2 is released. The PyYAML team is working to get that release ASAP (if the work on building wheels is successful, that should happen tomorrow).

I hope this is helpful in the meantime.

fwiw - my workaround thus far has seemed to be "okay" but this isn't great for anyone that has ephemeral environments:

pip install git+https://github.com/yaml/pyyaml.git

We were also struck by this issue. Our workaround was to pin our containers that install PyYAML to use Python 3.6 until this problem is fixed.

We are planning to release PyYAML 3.13 (fixes Python 3.7 usage) in about 6 hours.

ingydotnet commented 6 hours ago
..
We are planning to release PyYAML 3.13 (fixes Python 3.7 usage) in about 6 hours.

Anytime now! :smile:

I just came across this, debugging the PyYAML issue on MacOS.

Closing this. Reopen if still problems with 3.13.

Was this page helpful?
0 / 5 - 0 ratings