browson/utils.py
def debug_time(f):
    """Decorator to produce debug log messages with function run times."""

    @wraps(f)
    def wrapper(*args, **kwargs):
        global debug_indent
        verb = "returned"
        debug_indent += 1
        t = now()
        try:
            return f(*args, **kwargs)
        except BaseException:
            verb = "aborted"
            raise
        finally:
            debug_indent -= 1
            indent = " " * 4 * debug_indent
            logger.debug(f"{indent}{f.__name__} {verb} after {now() - t}s")

    return wrapper
Decorator to produce debug log messages with function run times.
Decorator to produce debug log messages with function run times.
Decorator to produce debug log messages with function run times .
def debug_time(f):
    @wraps(f)
    def wrapper(*args, **kwargs):
        global debug_indent
        verb = "returned"
        debug_indent += 1
        t = now()
        try:
            return f(*args, **kwargs)
        except BaseException:
            verb = "aborted"
            raise
        finally:
            debug_indent -= 1
            indent = " " * 4 * debug_indent
            logger.debug(f"{indent}{f.__name__} {verb} after {now() - t}s")
    return wrapper
def debug_time ( f ) : @ wraps ( f ) def wrapper ( * args , ** kwargs ) : global debug_indent verb = "returned" debug_indent += 1 t = now ( ) try : return f ( * args , ** kwargs ) except BaseException : verb = "aborted" raise finally : debug_indent -= 1 indent = " " * 4 * debug_indent logger . debug ( f"{indent}{f.__name__} {verb} after {now() - t}s" ) return wrapper
Decorator to produce debug log messages with function run times.
Decorator to produce debug log messages with function run times .
"""Decorator to produce debug log messages with function run times."""
f