-
-
Notifications
You must be signed in to change notification settings - Fork 81
Description
Currently, pip install/python setup.py attempts to cythonize. This may bring performance improvements (e.g. when creating many parameterized objects), although we have no performance tests running to back that up (#165). However, there are a number of potential downsides of cythonizing:
(1) source code is obscured/people might think it's not purely python e.g. if they try to open the file they've imported;
(2) possible errors/incompatibilities introduced by cython we're not aware of (although you could also argue cythonizing helps catch a class of problems, and also cythonizing by default means we're all testing cython's effects all the time);
(3) possible installation failures (e.g. #129) or confusion (e.g. #161);
(4) just more stuff to think about overall.
Incidentally, conda packages have never included cythonized param. People would only have the cythonized version by pip install/python setup.py from pypi/github on a machine with cython and a working compiler.