From 731f9848228e4cffede54ed2056b606b27a35ecb Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Fri, 4 Feb 2022 13:51:58 +0000 Subject: [PATCH] Expose diagnose.report as a function add a little more info to hint at environment --- .coveragerc | 3 ++- rich/diagnose.py | 35 ++++++++++++++++++++++++++++++++--- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/.coveragerc b/.coveragerc index ff1a046c..2afac8dc 100644 --- a/.coveragerc +++ b/.coveragerc @@ -2,7 +2,8 @@ omit = rich/jupyter.py rich/_windows.py rich/_timer.py - + rich/diagnose.py + [report] exclude_lines = pragma: no cover diff --git a/rich/diagnose.py b/rich/diagnose.py index 455e11dc..7ecdff97 100644 --- a/rich/diagnose.py +++ b/rich/diagnose.py @@ -1,6 +1,35 @@ -if __name__ == "__main__": # pragma: no cover - from rich.console import Console - from rich import inspect +import os +import platform +from rich import inspect +from rich.console import Console, get_windows_console_features +from rich.panel import Panel +from rich.text import Text + + +def report(): # pragma: no cover + """Print a report to the terminal with debugging information""" + console = Console() + inspect(console) + features = get_windows_console_features() + inspect(features) + + if console.is_jupyter: + jpy_parent_pid = os.getenv("JPY_PARENT_PID") + vs_code_verbose = os.getenv("VSCODE_VERBOSE_LOGGING") + console.print( + Panel( + title="Jupyter Environment Hints", + renderable=Text( + f"JPY_PARENT_PID = {jpy_parent_pid}\n" + f"VSCODE_VERBOSE_LOGGING = {vs_code_verbose}" + ), + ), + ) + + console.print(f'platform="{platform.system()}"') + + +if __name__ == "__main__": # pragma: no cover console = Console() inspect(console)