-
Piotr Maślanka authored2d3c6002
index.rst 1.31 KiB
Welcome to snakehouse's documentation!
Mandatory reading
Take a look at example on how to multi-build your Cython extensions.
Don't place modules compiled that way in root .py file's top level imports. Wrap them in a layer of indirection instead!
This applies to unit tests as well!
When something goes wrong (eg. the application throws an unhandled exception)
the built module has a tendency to dump core.
Try to debug it first by passing dont_snakehouse=True
to your
modules in the debug mode.
Also note that if you are compiling in dont_snakehouse
mode then your modules should have at least one of the following:
- a normal Python
def
- a normal Python class (not
cdef class
) - a line of Python initialization, eg.
a = None
or
import logging
logger = logging.getLogger(__name__)
Otherwise PyInit
won't be generated by Cython
and such module will be unimportable in Python. Normal import won't suffice.
Indices and tables
- :ref:`genindex`
- :ref:`modindex`
- :ref:`search`