evhub/cpyparsing

Python 3.7 support

Closed this issue · 2 comments

Getting errors on build (the package isn't rejected out of hand, so it doesn't seem to require <3.7 in its deps).

Example (all look extremely similar and all are related to the _ts type:

cPyparsing.c(149318): error C2039: 'exc_type': is not a member of '_ts'
    c:\programdata\anaconda3\include\pystate.h(212): note: see declaration of '_ts'

Might be a stale cython files issue, but I'm not sure how to get about solving that.

evhub commented

I think this is coming from the Python version your Cython is running on being different from the Python version your cPyparsing is running on. That is, when you install cPyparsing it calls cythonize to compile the Cython files, but the way cythonize works it will call the first Cython on your PATH--if that Cython isn't Python 3.7 Cython, that's when you'll get this problem. I've tried uploading a new cPyparsing version with better pre-compiled binaries, so that might help, though really the fix should be to make the Cython on your PATH match up with your Python 3.7 Cython.

I had the base Anaconda setup, so if Cython is not included with that (or not included properly), whatever fetched it was automatic.

It does work now though. I'm not sure if it's the additional binaries you included or the Cython update I did before attempting to install cpyparsing again. If there's info you need to sort this out please let me know.

For the issue of it 'not working' from pip right now, though, I guess this one could be closed.