-
Notifications
You must be signed in to change notification settings - Fork 90
Allow building/installing without Cython #21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Removes compiler error on package build/install if Cython is not installed (tries to fall back to creedsolo.c, which is not present.) Add creedsolo.c to ignore list as this file is build output from Cython.
|
Hmm, I'm not sure why |
|
@projectgus Nice catch! Thanks a lot for your PR! I indeed forgot that there is no pure python install, although there should be one. Currently the behavior is that the module can be installed without Cython as long as there is a C compiler (using the pretranspiled creedsolo.c), but indeed even that is unnecessary if a C compiler is not installed. I'll update the PR to combine your changes while still keeping creedsolo.c, as I think it can be useful to maintain an already pretranspiled C file. |
|
PS: Don't worry about coveralls, he's including files it shouldn't in the coverage analysis (temporary files created by travis). I don't know why but I can fix that afterward, that's a separate issue. |
…t Cython but maintain pure python install if Cython is not installed + add 2 setup.py flags: --nocython and --compile + bump v1.5.3 Signed-off-by: Stephen L. <lrq3000@gmail.com>
Signed-off-by: Stephen L. <lrq3000@gmail.com>
|
Ok it's merged in, thanks a lot! 👍 |
|
Ah and thanks for the tip about v3.8, this was an issue with Travis, I'll see if maybe now it's fixed. /EDIT: you're right, Cython works fine now on Python 3.8 and on Travis, support for this version is now declared on pypi and is unit tested on Travis :-) |
|
Thanks for the super fast response and merge, @lrq3000! v1.5.3 is working great for our use case now (which is being able to install from pip on installations that don't have a native compiler.) 🙌 |
|
Ah ok great ! Thank you for letting me know this also affected pip install, sorry about that! |
@tomerfiliba No problems. FWIW, the way this works is that if there isn't a wheel matching the platform in the files on pypi, |
Hi,
Thanks for maintaining this project, it's very useful to have!
Noticed that in v1.5.1 building or installing the package will fail if Cython is not installed -
setup.pyfalls back to trying to compilecreedsolo.cwhich doesn't exist in the repo (it's generated by Cython). Even ifcreedsolo.cwas added to the repo, this means the package can't be built on platforms without a C compiler installed.This PR changes the behaviour so if Cython is not installed, only the reedsolo module is built. This allows just this module to be installed as "pure Python".
PS I saw the note in
setup.pyabout not supporting Python 3.8 - do you have any info about the exact problem? FWIW, on Ubuntu 20.04 amd64 with Python 3.8.2 & Cython 0.29.14 I found thecreedsolomodule built OK andtest_creedsolo.pycan pass. I haven't tested it beyond this.