FWIW, Tornado's version of Future adds exc_info and set_exc_info methods so
we can save tracebacks on python 2:
http://www.tornadoweb.org/en/stable/concurrent.html#tornado.concurrent.Future.set_exc_info

This works pretty well for pure-tornado coroutines, although it doesn't
help if you're interacting with the backported concurrent.futures or
trollius.

-Ben

On Tue, Dec 23, 2014 at 2:49 AM, Victor Stinner <[email protected]>
wrote:

> Hi,
>
> Backporting the whole exception feature to Python 2 is not possible.
> Develop with Python 3!
>
> Since the creation of Trollius, I'm trying the enhance debugging. For
> example, the latest release of trollius (version 1.0.4) now saves the
> traceback object in Future.set_exception() to be able to raise again the
> exception with the expected traceback.
>
> I'm working on a larger project to save the chain of coroutines as a large
> trabeback (stored as text) in debug mode, but for the "source traceback"
> (where rhe object was created), not for the exception traceback. I have a
> working patch on my PC. The following issue tracks the project:
> https://code.google.com/p/tulip/issues/detail?id=212
> (The goal changed, the issue title is not correct)
>
> Victor
>

Reply via email to