[Cython] Some bugs found while testing cython on django

Vitja Makarov vitja.makarov at gmail.com
Sun Jun 19 21:37:55 CEST 2011


Hi!

Trying to compile django I've found some problems:

1. It seems that cython currently doesn't support tuples inside args definition:

def foo((a, b), c):

Currently this gives missing argument name and crash inside
CreateControlFlow graph

cython -X binding=True django/contrib/gis/forms/fields.py -o
django/contrib/gis/forms/fields.c

2. Concatenating unicode and str isn't supported:

I guess that this is mostly django problem

Error compiling Cython file:
------------------------------------------------------------
...
    default_error_messages = {
        'no_geom' : _(u'No geometry value provided.'),
        'invalid_geom' : _(u'Invalid geometry value.'),
        'invalid_geom_type' : _(u'Invalid geometry type.'),
        'transform_error' : _(u'An error occurred when transforming
the geometry '
                              'to the SRID of the geometry form field.'),
                             ^
------------------------------------------------------------

django/contrib/gis/forms/fields.py:21:30: Cannot mix string literals
of different types, expected u'', got ''

3.Reraise not inside except clause, here is simple example

def foo():
    print 'catched'
    raise
try:
    raise IndexError
except IndexError:
    foo()


-- 
vitja.


More information about the cython-devel mailing list