[Twisted-Python] defer.inlineCallbacks dosn't work with cython, deferredGenerator does.
dynamicgl at gmail.com
Tue Apr 10 00:41:17 EDT 2012
On Tue, Apr 10, 2012 at 4:01 AM, Glyph Lefkowitz <glyph at twistedmatrix.com>wrote:
> On Apr 9, 2012, at 3:05 AM, gelin yan wrote:
> I personally hope deferredGenerator will be always there even python 2.4
> support has been abandoned. deferredGenerator itself is not so elegant as
> inlineCallbacks, at least I don't need to struggle with a series of
> callback functions..
> We would like to get rid of deferredGenerator eventually; it's worse than
> inlineCallbacks in pretty much every way. It sounds like you have
> discovered a bug though, either in Twisted, or, more likely, in Cython.
> Please narrow down the bug so it can be fixed and you can start using
> inlineCallbacks in Cython.
> For now, just keep an eye on new deferredGenerator tickets and comment on
> any that appear to request its removal; there's an RSS feed at <
> http://twistedmatrix.com/trac/timeline> which may be useful to you for
> that. If you put a comment on any such ticket I'm sure we can wait a while
> for Cython to fix the bug.
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
When trying to run inlineCallbacks with Cython, a TypeError would come
TypeError: inlineCallbacks requires <built-in function test> to produce a
generator; instead got <cy3.__pyx_scope_struct__test object at 0x02808848)
test is the function where inlineCallbacks uses.
It looks like cython changes the name test to cy3.__pyx_scope_struct__test
internally so generator can't work properly.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Twisted-Python