Thriftpy / thriftpy

Thriftpy has been deprecated, please migrate to https://github.com/Thriftpy/thriftpy2
MIT License
1.15k stars 286 forks source link

Cannot install on Python3.7 #333

Open truebit opened 6 years ago

truebit commented 6 years ago

... thriftpy/transport/cybase.c:3127:24: error: no member named 'exc_type' in 'struct _ts' tmp_type = tstate->exc_type;


  thriftpy/transport/cybase.c:3128:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
      tmp_value = tstate->exc_value;
                          ^~~~~~~~~
                          curexc_value
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
      PyObject *curexc_value;
                ^
  thriftpy/transport/cybase.c:3129:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
      tmp_tb = tstate->exc_traceback;
                       ^~~~~~~~~~~~~
                       curexc_traceback
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
      PyObject *curexc_traceback;
                ^
  thriftpy/transport/cybase.c:3130:13: error: no member named 'exc_type' in 'struct _ts'
      tstate->exc_type = local_type;
      ~~~~~~  ^
  thriftpy/transport/cybase.c:3131:13: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
      tstate->exc_value = local_value;
              ^~~~~~~~~
              curexc_value
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
      PyObject *curexc_value;
                ^
  thriftpy/transport/cybase.c:3132:13: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
      tstate->exc_traceback = local_tb;
              ^~~~~~~~~~~~~
              curexc_traceback
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
      PyObject *curexc_traceback;
                ^
  thriftpy/transport/cybase.c:3154:24: error: no member named 'exc_type' in 'struct _ts'
      tmp_type = tstate->exc_type;
                 ~~~~~~  ^
  thriftpy/transport/cybase.c:3155:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
      tmp_value = tstate->exc_value;
                          ^~~~~~~~~
                          curexc_value
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
      PyObject *curexc_value;
                ^
  thriftpy/transport/cybase.c:3156:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
      tmp_tb = tstate->exc_traceback;
                       ^~~~~~~~~~~~~
                       curexc_traceback
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
      PyObject *curexc_traceback;
                ^
  thriftpy/transport/cybase.c:3157:13: error: no member named 'exc_type' in 'struct _ts'
      tstate->exc_type = *type;
      ~~~~~~  ^
  thriftpy/transport/cybase.c:3158:13: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
      tstate->exc_value = *value;
              ^~~~~~~~~
              curexc_value
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
      PyObject *curexc_value;
                ^
  thriftpy/transport/cybase.c:3159:13: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
      tstate->exc_traceback = *tb;
              ^~~~~~~~~~~~~
              curexc_traceback
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
      PyObject *curexc_traceback;
                ^
  thriftpy/transport/cybase.c:3178:21: error: no member named 'exc_type' in 'struct _ts'
      *type = tstate->exc_type;
              ~~~~~~  ^
  thriftpy/transport/cybase.c:3179:22: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
      *value = tstate->exc_value;
                       ^~~~~~~~~
                       curexc_value
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
      PyObject *curexc_value;
                ^
  thriftpy/transport/cybase.c:3180:19: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
      *tb = tstate->exc_traceback;
                    ^~~~~~~~~~~~~
                    curexc_traceback
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
      PyObject *curexc_traceback;
                ^
  thriftpy/transport/cybase.c:3187:24: error: no member named 'exc_type' in 'struct _ts'
      tmp_type = tstate->exc_type;
                 ~~~~~~  ^
  thriftpy/transport/cybase.c:3188:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
      tmp_value = tstate->exc_value;
                          ^~~~~~~~~
                          curexc_value
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
      PyObject *curexc_value;
                ^
  thriftpy/transport/cybase.c:3189:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
      tmp_tb = tstate->exc_traceback;
                       ^~~~~~~~~~~~~
                       curexc_traceback
  /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
      PyObject *curexc_traceback;
                ^
  thriftpy/transport/cybase.c:3190:13: error: no member named 'exc_type' in 'struct _ts'
      tstate->exc_type = type;
      ~~~~~~  ^
  fatal error: too many errors emitted, stopping now [-ferror-limit=]
  20 errors generated.
  error: command 'clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for thriftpy
  Running setup.py clean for thriftpy
Failed to build thriftpy
Installing collected packages: thriftpy
  Running setup.py install for thriftpy ... error
    Complete output from command /usr/local/opt/python/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/6v/gbsf5_qd3djgq_m5lrs87wdw0000gn/T/pip-install-lz8sl9s3/thriftpy/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/var/folders/6v/gbsf5_qd3djgq_m5lrs87wdw0000gn/T/pip-record-gvi6cyld/install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.12-x86_64-3.7
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/_compat.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/hook.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/rpc.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/server.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/thrift.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/tornado.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    copying thriftpy/utils.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/contrib
    copying thriftpy/contrib/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/contrib
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/parser
    copying thriftpy/parser/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/parser
    copying thriftpy/parser/exc.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/parser
    copying thriftpy/parser/lexer.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/parser
    copying thriftpy/parser/parser.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/parser
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    copying thriftpy/protocol/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    copying thriftpy/protocol/binary.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    copying thriftpy/protocol/compact.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    copying thriftpy/protocol/exc.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    copying thriftpy/protocol/json.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    copying thriftpy/protocol/multiplex.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/protocol
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport
    copying thriftpy/transport/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport
    copying thriftpy/transport/_ssl.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport
    copying thriftpy/transport/socket.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport
    copying thriftpy/transport/sslsocket.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/contrib/tracking
    copying thriftpy/contrib/tracking/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/contrib/tracking
    copying thriftpy/contrib/tracking/tracker.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/contrib/tracking
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport/buffered
    copying thriftpy/transport/buffered/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport/buffered
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport/framed
    copying thriftpy/transport/framed/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport/framed
    creating build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport/memory
    copying thriftpy/transport/memory/__init__.py -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/transport/memory
    copying thriftpy/contrib/tracking/tracking.thrift -> build/lib.macosx-10.12-x86_64-3.7/thriftpy/contrib/tracking
    running build_ext
    building 'thriftpy.transport.cybase' extension
    creating build/temp.macosx-10.12-x86_64-3.7
    creating build/temp.macosx-10.12-x86_64-3.7/thriftpy
    creating build/temp.macosx-10.12-x86_64-3.7/thriftpy/transport
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m -c thriftpy/transport/cybase.c -o build/temp.macosx-10.12-x86_64-3.7/thriftpy/transport/cybase.o
    thriftpy/transport/cybase.c:3127:24: error: no member named 'exc_type' in 'struct _ts'
        tmp_type = tstate->exc_type;
                   ~~~~~~  ^
    thriftpy/transport/cybase.c:3128:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tmp_value = tstate->exc_value;
                            ^~~~~~~~~
                            curexc_value
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    thriftpy/transport/cybase.c:3129:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tmp_tb = tstate->exc_traceback;
                         ^~~~~~~~~~~~~
                         curexc_traceback
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    thriftpy/transport/cybase.c:3130:13: error: no member named 'exc_type' in 'struct _ts'
        tstate->exc_type = local_type;
        ~~~~~~  ^
    thriftpy/transport/cybase.c:3131:13: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tstate->exc_value = local_value;
                ^~~~~~~~~
                curexc_value
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    thriftpy/transport/cybase.c:3132:13: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tstate->exc_traceback = local_tb;
                ^~~~~~~~~~~~~
                curexc_traceback
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    thriftpy/transport/cybase.c:3154:24: error: no member named 'exc_type' in 'struct _ts'
        tmp_type = tstate->exc_type;
                   ~~~~~~  ^
    thriftpy/transport/cybase.c:3155:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tmp_value = tstate->exc_value;
                            ^~~~~~~~~
                            curexc_value
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    thriftpy/transport/cybase.c:3156:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tmp_tb = tstate->exc_traceback;
                         ^~~~~~~~~~~~~
                         curexc_traceback
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    thriftpy/transport/cybase.c:3157:13: error: no member named 'exc_type' in 'struct _ts'
        tstate->exc_type = *type;
        ~~~~~~  ^
    thriftpy/transport/cybase.c:3158:13: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tstate->exc_value = *value;
                ^~~~~~~~~
                curexc_value
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    thriftpy/transport/cybase.c:3159:13: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tstate->exc_traceback = *tb;
                ^~~~~~~~~~~~~
                curexc_traceback
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    thriftpy/transport/cybase.c:3178:21: error: no member named 'exc_type' in 'struct _ts'
        *type = tstate->exc_type;
                ~~~~~~  ^
    thriftpy/transport/cybase.c:3179:22: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        *value = tstate->exc_value;
                         ^~~~~~~~~
                         curexc_value
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    thriftpy/transport/cybase.c:3180:19: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        *tb = tstate->exc_traceback;
                      ^~~~~~~~~~~~~
                      curexc_traceback
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    thriftpy/transport/cybase.c:3187:24: error: no member named 'exc_type' in 'struct _ts'
        tmp_type = tstate->exc_type;
                   ~~~~~~  ^
    thriftpy/transport/cybase.c:3188:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
        tmp_value = tstate->exc_value;
                            ^~~~~~~~~
                            curexc_value
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:237:15: note: 'curexc_value' declared here
        PyObject *curexc_value;
                  ^
    thriftpy/transport/cybase.c:3189:22: error: no member named 'exc_traceback' in 'struct _ts'; did you mean 'curexc_traceback'?
        tmp_tb = tstate->exc_traceback;
                         ^~~~~~~~~~~~~
                         curexc_traceback
    /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/include/python3.7m/pystate.h:238:15: note: 'curexc_traceback' declared here
        PyObject *curexc_traceback;
                  ^
    thriftpy/transport/cybase.c:3190:13: error: no member named 'exc_type' in 'struct _ts'
        tstate->exc_type = type;
        ~~~~~~  ^
    fatal error: too many errors emitted, stopping now [-ferror-limit=]
    20 errors generated.
    error: command 'clang' failed with exit status 1

    ----------------------------------------
Shoule be related to https://github.com/cython/cython/issues/1955 ; building wheels with Cython >= 0.27.3 should fix this problem.
towry commented 6 years ago

have the same issue.

pranasziaukas commented 6 years ago

same here

truebit commented 6 years ago

I found a workaround: install latest cython and then install thriftpy would fix this bug


pip3 install cython thriftpy
rahulkp220 commented 6 years ago

@truebit Yup your solution works!

ethe commented 6 years ago

Thriftpy was not supported any more, please use thriftpy2 instead.