Prints the exceptions raised by the decorated function
    without interfering. For debugging purpose.

def print_errors(function):
    """Prints the exceptions raised by the decorated function
    without interfering. For debugging purpose."""

    def wrapper(*args, **kwargs):
        try:
            return function(*args, **kwargs)
        except BaseException as e:
            print ("Exception raise calling %s: %s"
                   % (reflect.canonical_name(function),
                      get_exception_message(e)))
            raise

    return wrapper