Untranslatable: Why can't I add pyyaml as a dependency to pants?

497 views
Skip to first unread message

Eric Zundel Ayers

unread,
Dec 4, 2014, 3:52:12 PM12/4/14
to pants-devel

In my new plugin, I am trying to use the pyyaml library. I was able to successfully test, but thus far I haven’t been able to build a pex.

I thought I was having a plugin related issue, but I’m having trouble creating any dependency on the pyyaml project into a pants pex.

I created an RB here: https://rbcommons.com/s/twitter/r/1425/

Here are the steps I took:

-added pyyaml to 3rdparty/python/requirements and

  • add a dependency on 3rdparty/python:pyyaml
  • add an import into pants_exe.py

Here’s the output of trying to build a binary:

./pants goal binary ./src/python/pants/bin:pants

15:47:40 00:00 [main]
               (To run a reporting server: ./pants goal server)
15:47:41 00:01   [bootstrap]
15:47:41 00:01   [setup]
15:47:41 00:01     [parse]
               Executing tasks in goals: bootstrap -> imports -> gen -> check-exclusives -> resolve -> compile -> resources -> binary
15:47:41 00:01   [bootstrap]
15:47:41 00:01     [bootstrap-jvm-tools]
15:47:41 00:01   [imports]
15:47:41 00:01     [ivy-imports]
15:47:41 00:01   [gen]
15:47:41 00:01     [thrift]
15:47:41 00:01     [scrooge]
15:47:41 00:01     [protoc]
15:47:41 00:01     [antlr]
15:47:41 00:01     [ragel]
15:47:41 00:01     [jaxb]
15:47:41 00:01     [wire]
15:47:41 00:01     [aapt]
15:47:41 00:01   [check-exclusives]
15:47:41 00:01     [check-exclusives]
15:47:41 00:01   [resolve]
15:47:41 00:01     [ivy]
15:47:41 00:01   [compile]
15:47:41 00:01     [jvm]
15:47:41 00:01       [jvm-compilers]
15:47:41 00:01     [scalastyle]
15:47:41 00:01   [resources]
15:47:41 00:01     [prepare]
15:47:42 00:02   [binary]
15:47:42 00:02     [python-binary-create]
               FAILURE
Traceback (most recent call last):
  File "/Users/zundel/Src/Pants/pants.pex/.bootstrap/_pex/pex.py", line 225, in execute
    self.execute_entry(entry_point, args)
  File "/Users/zundel/Src/Pants/pants.pex/.bootstrap/_pex/pex.py", line 273, in execute_entry
    runner(entry_point)
  File "/Users/zundel/Src/Pants/pants.pex/.bootstrap/_pex/pex.py", line 296, in execute_pkg_resources
    runner()
  File "/Users/zundel/Src/Pants/pants.pex/pants/bin/pants_exe.py", line 179, in main
  File "/Users/zundel/Src/Pants/pants.pex/pants/bin/pants_exe.py", line 156, in _run
  File "/Users/zundel/Src/Pants/pants.pex/pants/commands/goal_runner.py", line 268, in run
  File "/Users/zundel/Src/Pants/pants.pex/pants/engine/engine.py", line 48, in execute
  File "/Users/zundel/Src/Pants/pants.pex/pants/engine/round_engine.py", line 185, in attempt
  File "/Users/zundel/Src/Pants/pants.pex/pants/engine/round_engine.py", line 42, in attempt
  File "/Users/zundel/Src/Pants/pants.pex/pants/backend/python/tasks/python_binary_create.py", line 39, in execute
  File "/Users/zundel/Src/Pants/pants.pex/pants/backend/python/tasks/python_binary_create.py", line 61, in create_binary
  File "/Users/zundel/Src/Pants/pants.pex/pants/backend/python/python_chroot.py", line 209, in dump
  File "/Users/zundel/Src/Pants/pants.pex/pants/backend/python/resolver.py", line 100, in resolve_multi
  File "/usr/local/lib/python2.7/site-packages/pex/resolver.py", line 110, in resolve
    new_requirements.update(requires(highest_package, requirement))
  File "/usr/local/lib/python2.7/site-packages/pex/resolver.py", line 84, in requires
    raise Untranslateable('Package %s is not translateable.' % package)
Untranslateable: Package SourcePackage(u'https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz#md5=f50e08ef0fe55178479d3a618efe21db') is not translateable.

Any ideas?

Larry Hosken

unread,
Dec 4, 2014, 3:53:45 PM12/4/14
to Eric Zundel Ayers, pants-devel
PyYAML has some platform-specific parts, so I guess you need to make
some eggs for it.

Patrick Lawson

unread,
Dec 4, 2014, 3:54:43 PM12/4/14
to Larry Hosken, Eric Zundel Ayers, pants-devel
More specifically, it's probably failing to compile behind the scenes.  If you're using the new version of PEX, I think it now has better PEX_VERBOSE output for yelling about exactly what happened under `Untranslatable`.

Eric Zundel Ayers

unread,
Dec 4, 2014, 5:15:55 PM12/4/14
to Patrick Lawson, Larry Hosken, pants-devel

Thanks for those responses!

After build-support/python/clean.sh I bootstrap pants and get a lot of output[1] from the PyYAML build, but it seems to work
Then, I try to compile the binary and I get an error about not being compatible for linux-x86_64.

pex: Validated PyYAML-3.11.tar.gz (md5=f50e08ef0fe55178479d3a618efe21db)
pex: Fetching https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz#md5=f50e08ef0fe55178479d3a618efe21db: 221.4ms
pex:   Fetching https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz#md5=f50e08ef0fe55178479d3a618efe21db: 221.0ms
pex: Translating /Users/zundel/Src/pants/.pants.d/python/eggs/PyYAML-3.11.tar.gz into distribution :: Packaging PyYAML :: Installing /var/folders/42/8krm7t_50x98_6rxp7p0tv1w0002pex: Target package WheelPackage('file:///private/var/folders/42/8krm7t_50x98_6rxp7p0tv1w000205/T/tmp58rhu9/PyYAML-3.11-cp27-none-macosx_10_9_intel.whl') is not compatible with CPython-2.7.5 / linux-x86_64
pex: Translating /Users/zundel/Src/pants/.pants.d/python/eggs/PyYAML-3.11.tar.gz into distribution: 4490.2ms
pex:   Packaging PyYAML: 4282.4ms
pex:     Installing /var/folders/42/8krm7t_50x98_6rxp7p0tv1w000205/T/tmpTQXdfJ: 4281.5ms

               FAILURE

Exception message: Package SourcePackage(u'https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz#md5=f50e08ef0fe55178479d3a618efe21db') is not translateable.

Larry says I need to make eggs. Larry uses short sentences. Larry also has a strange sense of humor. I’m not sure what to think. Is there a doc for making eggs for pexes? I looked at the pex docs Or, can someone feed me a few more crumbs on what I need to do? I gather that I may need to build a Linux egg for PyYAML, but I’m not sure where I would put that so that I can build a single pex for both Linux and Mac.


  1. Bootstrap output:
 Running setup.py install for pyyaml

    installing library code to build/bdist.macosx-10.9-x86_64/egg
    checking if libyaml is compilable
    clang -fno-strict-aliasing -fno-common -dynamic -I/usr/local/include -I/usr/local/opt/sqlite/include -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c build/temp.macosx-10.9-x86_64-2.7/check_libyaml.c -o build/temp.macosx-10.9-x86_64-2.7/check_libyaml.o
    checking if libyaml is linkable
    clang build/temp.macosx-10.9-x86_64-2.7/check_libyaml.o -lyaml -o build/temp.macosx-10.9-x86_64-2.7/check_libyaml
    building '_yaml' extension
    clang -fno-strict-aliasing -fno-common -dynamic -I/usr/local/include -I/usr/local/opt/sqlite/include -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c ext/_yaml.c -o build/temp.macosx-10.9-x86_64-2.7/ext/_yaml.o
    In file included from ext/_yaml.c:343:
    ext/_yaml.h:6:9: warning: 'PyUnicode_FromString' macro redefined
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
            ^
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:194:10: note: previous definition is here
    # define PyUnicode_FromString PyUnicodeUCS2_FromString
             ^
    ext/_yaml.c:1346: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:2471:52: warning: incompatible pointer types passing 'int (void *, char *, int, int *)' to parameter of type 'yaml_read_handler_t *' (aka 'int (*)(void *, unsigned char *, size_t, size_t *)') [-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:2664:59: warning: passing 'char [1]' 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));
                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/stringobject.h:91:32: note: expanded from macro 'PyString_AS_STRING'
    #define PyString_AS_STRING(op) (((PyStringObject *)(op))->ob_sval)
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/include/yaml.h:1342:30: note: passing argument to parameter 'input' here
            const unsigned char *input, size_t size);
                                 ^
    ext/_yaml.c:4183: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_token->data.tag_directive.handle); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:4183:17: 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_token->data.tag_directive.handle); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4195: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_token->data.tag_directive.prefix); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:4195:17: 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_token->data.tag_directive.prefix); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4741: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_token->data.alias.value); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:4741:17: 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_token->data.alias.value); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4792: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_token->data.anchor.value); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:4792:17: 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_token->data.anchor.value); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4843: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_token->data.tag.handle); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:4843:17: 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_token->data.tag.handle); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4855: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_token->data.tag.suffix); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 455; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:4855:17: 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_token->data.tag.suffix); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 455; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:4938: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, __pyx_k_strict); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:6435: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_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:6435:21: 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_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:6447: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_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:6447:21: 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_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:6616: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_event->data.alias.anchor); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:6616:17: 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_event->data.alias.anchor); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:6687: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_1 = PyUnicode_FromString(__pyx_v_event->data.scalar.anchor); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:6687:19: 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_1 = PyUnicode_FromString(__pyx_v_event->data.scalar.anchor); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:6722: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_1 = PyUnicode_FromString(__pyx_v_event->data.scalar.tag); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:6722:19: 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_1 = PyUnicode_FromString(__pyx_v_event->data.scalar.tag); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:6737: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_1 = PyUnicode_DecodeUTF8(__pyx_v_event->data.scalar.value, __pyx_v_event->data.scalar.length, __pyx_k_strict); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7031: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_3 = PyUnicode_FromString(__pyx_v_event->data.sequence_start.anchor); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:7031:19: 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_event->data.sequence_start.anchor); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7066: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_3 = PyUnicode_FromString(__pyx_v_event->data.sequence_start.tag); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:7066:19: 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_event->data.sequence_start.tag); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7253: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_2 = PyUnicode_FromString(__pyx_v_event->data.mapping_start.anchor); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:7253:19: 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_event->data.mapping_start.anchor); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:7288: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_2 = PyUnicode_FromString(__pyx_v_event->data.mapping_start.tag); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:7288:19: 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_event->data.mapping_start.tag); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8704: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_filename = __pyx_f[0]; __pyx_lineno = 734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:8704:17: 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_filename = __pyx_f[0]; __pyx_lineno = 734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8924: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_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:8924:17: 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_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:8962: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_filename = __pyx_f[0]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:8962:17: 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_filename = __pyx_f[0]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:9000: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_filename = __pyx_f[0]; __pyx_lineno = 756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:9000:17: 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_filename = __pyx_f[0]; __pyx_lineno = 756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:9532: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, __pyx_k_strict); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:9688: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_9 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.scalar.tag); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:9688:17: 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_9 = PyUnicode_FromString(__pyx_v_self->parsed_event.data.scalar.tag); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:10128: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.sequence_start.tag); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:10128:17: 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.sequence_start.tag); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:10654: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.mapping_start.tag); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:66: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                                     ^
    /usr/include/string.h:82:28: note: passing argument to parameter here
    size_t   strlen(const char *);
                                ^
    ext/_yaml.c:10654:17: 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.mapping_start.tag); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ext/_yaml.h:6:54: note: expanded from macro 'PyUnicode_FromString'
    #define PyUnicode_FromString(s) PyUnicode_DecodeUTF8((s), strlen(s), "strict")
                                                         ^~~
    /usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/include/python2.7/unicodeobject.h:751:17: note: passing argument to parameter 'string' here
        const char *string,         /* UTF-8 encoded string */
                    ^
    ext/_yaml.c:11721:53: warning: incompatible pointer types passing 'int (void *, char *, int)' to parameter of type 'yaml_write_handler_t *' (aka 'int (*)(void *, unsigned char *, size_t)') [-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:12898:44: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char [1]' 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:12991:44: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char [1]' 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:13248: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_4 = ((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:13824: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_3 = ((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:13824: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_3 = ((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:13824: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_3 = ((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:14166: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_4 = ((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:14166: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_4 = ((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:14508: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_3 = ((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:14508: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_3 = ((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:15784:42: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char [1]' 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:15877:42: warning: assigning to 'yaml_char_t *' (aka 'unsigned char *') from 'char [1]' 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:16616: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:17195: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_8 = ((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:17195: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_8 = ((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:17195: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_8 = ((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:17473: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_8 = ((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:17473: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_8 = ((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:17874: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_8 = ((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:17874: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_8 = ((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:22027:28: warning: unused function '__Pyx_PyObject_AsString' [-Wunused-function]
    static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {
                               ^
    ext/_yaml.c:22024:32: warning: unused function '__Pyx_PyUnicode_FromString' [-Wunused-function]
    static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(char* c_str) {
                                   ^
    ext/_yaml.c:405:29: warning: unused function '__Pyx_Py_UNICODE_strlen' [-Wunused-function]
    static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
                                ^
    ext/_yaml.c:22146:33: warning: unused function '__Pyx_PyIndex_AsSsize_t' [-Wunused-function]
    static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
                                    ^
    ext/_yaml.c:22175:33: warning: unused function '__Pyx_PyInt_FromSize_t' [-Wunused-function]
    static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
                                    ^
    ext/_yaml.c:20925:27: warning: unused function '__Pyx_ErrFetch' [-Wunused-function]
    static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) {
                              ^
    ext/_yaml.c:21319:32: warning: unused function '__Pyx_GetItemInt_List_Fast' [-Wunused-function]
    static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                   ^
    ext/_yaml.c:21333:32: warning: unused function '__Pyx_GetItemInt_Tuple_Fast' [-Wunused-function]
    static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                   ^
    ext/_yaml.c:21718:27: warning: function '__Pyx_PyInt_As_long' is not needed and will not be emitted [-Wunneeded-internal-declaration]
    static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
                              ^
    81 warnings generated.
    clang -bundle -undefined dynamic_lookup -L/usr/local/lib -L/usr/local/opt/sqlite/lib build/temp.macosx-10.9-x86_64-2.7/ext/_yaml.o -lyaml -o build/lib.macosx-10.9-x86_64-2.7/_yaml.so
    zip_safe flag not set; analyzing archive contents...
    removing 'build/bdist.macosx-10.9-x86_64/egg' (and everything under it)
    Processing PyYAML-3.11-py2.7-macosx-10.9-x86_64.egg
    Adding PyYAML 3.11 to easy-install.pth file

``

$ PEX_VERBOSE=1 ./pants goal binary src/python/pants/bin:pants

pex: Packaging PyYAML: 4253.7ms

pex: Installing /var/folders/42/8krm7t_50x98_6rxp7p0tv1w000205/T/tmptPByhX: 4253.0ms
```

Brian Wickman

unread,
Dec 4, 2014, 5:19:00 PM12/4/14
to Eric Zundel Ayers, Patrick Lawson, Larry Hosken, pants-devel
This is happening because the pants target is asking for linux-x86_64 artifacts:

python_binary(
  name = 'pants',
  entry_point = 'pants.bin.pants_exe:main',
  # TODO(John Sirois): Nuke this - we don't publish pexes so we need not build cross-platform pexes.
  platforms=[
    'current',
    'linux-x86_64',
    'macosx-10.4-x86_64',
  ],
  compatibility='CPython>=2.7,<3',
  dependencies = [
    ':pants_binary_deps',
  ],
)

If you get rid of the platforms line, you should be fine.  Not sure why it's there at all.

Eric Zundel Ayers

unread,
Dec 4, 2014, 5:28:39 PM12/4/14
to Brian Wickman, Patrick Lawson, Larry Hosken, pants-devel
Thanks, that does get past it.  Eventually I do need to build a pex that includes linux support.  I guess I need to build it on a Linux box and upload it to a repo somehow. 

Brian Wickman

unread,
Dec 4, 2014, 5:32:23 PM12/4/14
to Eric Zundel Ayers, Patrick Lawson, Larry Hosken, pants-devel
Yes.  Alternately, you can build a PyYAML egg that is pure python:

 pip install -d . pyyaml==3.11
 tar -zxf PyYAML-3.11.tar.gz
 cd PyYAML-3.11
 cat <(echo "import setuptools") setup.py > setup.py.new
 python2.7 setup.py.new --without-libyaml bdist_egg

This will drop PyYAML-3.11-py2.7.egg into 'dist' that is platform inspecific.  If you don't specify --without-libyaml, it will produce an egg that only works on whatever platform it was built with.  You can then drop this egg into an artifactory path and add that path to your pants.ini [python-repos] section.

~brian

Reply all
Reply to author
Forward
0 new messages