docs: 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