#!/usr/bin/env python3 """EnvSetup logging utilities.""" import sys RED = "\033[91m" GREEN = "\033[92m" YELLOW = "\033[93m" BLUE = "\033[94m" DEF = "\033[0m" def log(text: str, error: bool = False): """Output log message to stout or stderr. :param text: Message to log :type text: str :param error: Wether it should output to stderr or not, defaults to False :type error: bool, optional """ fo = sys.stderr if error else sys.stdout print(text, file=fo) fo.flush() def info(message: str): """Print formatted info message. :param message: Message to print :type message: str """ log(" {}ℹ{} {}".format(BLUE, DEF, message)) def success(message: str): """Print formatted success message. :param message: Message to print :type message: str """ log(" {}✔{} {}".format(GREEN, DEF, message)) def warning(message: str): """Print formatted warning message. :param message: Message to print :type message: str """ log(" {}⚠{} {}".format(YELLOW, DEF, message), True) def error(message: str): """Print formatted error message. :param message: Message to print :type message: str """ log(" {}✖{} {}".format(RED, DEF, message), True)