def mustbe_deferred(f, *args, **kw):
    try:
        result = f(*args, **kw)
    # FIXME: Hack to avoid introspecting tracebacks. This to speed up
    # processing of IgnoreRequest errors which are, by far, the most common
    # exception in Scrapy - see #125
    except IgnoreRequest as e:
        return defer_fail(failure.Failure(e))
    except:
        return defer_fail(failure.Failure())
    else:
        return defer_result(result)
Same as twisted.internet.defer.maybeDeferred, but delay calling
dataset/ETHPy150Open wcong/ants/ants/utils/defer.py/mustbe_deferred