Part of lp.services.twistedsupport
Function | gatherResults | Returns list with result of given Deferreds. |
Function | suppress_stderr | Deferred friendly decorator that suppresses output from a function. |
Function | extract_result | Extract the result from a fired deferred. |
Function | cancel_on_timeout | Cancel a Deferred if it doesn't fire before the timeout is up. |
Function | no_traceback_failures | Decorator to return traceback-less Failures instead of raising errors. |
Function | run_reactor | Run the reactor and return with the SIGCHLD handler unchanged. |
Returns list with result of given Deferreds. This differs from Twisted's `defer.gatherResults` in two ways. 1. It fires the actual first error that occurs, rather than wrapping it in a `defer.FirstError`. 2. All errors apart from the first are consumed. (i.e. `consumeErrors` is True.) :type deferredList: list of `defer.Deferred`s. :return: `defer.Deferred`.
It can happen that you have an API that returns Deferreds for compatibility with Twisted code, but is in fact synchronous, i.e. the Deferreds it returns have always fired by the time it returns. In this case, you can use this function to convert the result back into the usual form for a synchronous API, i.e. the result itself or a raised exception.
It would be very bad form to use this as some way of checking if a Deferred has fired.
Parameters | d | The Deferred to cancel |
timeout | The timeout in seconds | |
reactor | Override the default reactor (useful for tests). | |
Returns | The same deferred, d. |