| import os | |
| import platform | |
| from rich import inspect | |
| from rich.console import Console, get_windows_console_features | |
| from rich.panel import Panel | |
| from rich.pretty import Pretty | |
| def report() -> None: # pragma: no cover | |
| """Print a report to the terminal with debugging information""" | |
| console = Console() | |
| inspect(console) | |
| features = get_windows_console_features() | |
| inspect(features) | |
| env_names = ( | |
| "CLICOLOR", | |
| "COLORTERM", | |
| "COLUMNS", | |
| "JPY_PARENT_PID", | |
| "JUPYTER_COLUMNS", | |
| "JUPYTER_LINES", | |
| "LINES", | |
| "NO_COLOR", | |
| "TERM_PROGRAM", | |
| "TERM", | |
| "TTY_COMPATIBLE", | |
| "TTY_INTERACTIVE", | |
| "VSCODE_VERBOSE_LOGGING", | |
| ) | |
| env = {name: os.getenv(name) for name in env_names} | |
| console.print(Panel.fit((Pretty(env)), title="[b]Environment Variables")) | |
| console.print(f'platform="{platform.system()}"') | |
| if __name__ == "__main__": # pragma: no cover | |
| report() | |