Show useful information about the system plus argv and environ. Omits os.environ if $PIPCL_SHOW_ENV is '0'.
()
| 2436 | |
| 2437 | |
| 2438 | def show_system(): |
| 2439 | ''' |
| 2440 | Show useful information about the system plus argv and environ. |
| 2441 | |
| 2442 | Omits os.environ if $PIPCL_SHOW_ENV is '0'. |
| 2443 | ''' |
| 2444 | def log(text): |
| 2445 | log0(text, caller=3) |
| 2446 | |
| 2447 | #log(f'{__file__=}') |
| 2448 | #log(f'{__name__=}') |
| 2449 | log(f'{os.getcwd()=}') |
| 2450 | log(f'{platform.machine()=}') |
| 2451 | log(f'{platform.platform()=}') |
| 2452 | log(f'{platform.python_implementation()=}') |
| 2453 | log(f'{platform.python_version()=}') |
| 2454 | log(f'{platform.system()=}') |
| 2455 | if sys.implementation.name != 'graalpy': |
| 2456 | log(f'{platform.uname()=}') |
| 2457 | log(f'{sys.executable=}') |
| 2458 | log(f'{sys.version=}') |
| 2459 | log(f'{sys.version_info=}') |
| 2460 | log(f'{list(sys.version_info)=}') |
| 2461 | |
| 2462 | log(f'{sysconfig.get_config_var("Py_GIL_DISABLED")=}') |
| 2463 | try: |
| 2464 | log(f'{sys._is_gil_enabled()=}') |
| 2465 | except AttributeError: |
| 2466 | log(f'sys._is_gil_enabled() => AttributeError') |
| 2467 | |
| 2468 | log(f'CPU bits: {cpu_bits()}') |
| 2469 | |
| 2470 | log(f'sys.argv ({len(sys.argv)}):') |
| 2471 | for i, arg in enumerate(sys.argv): |
| 2472 | log(f' {i}: {arg!r}') |
| 2473 | |
| 2474 | PIPCL_SHOW_ENV = os.environ.get('PIPCL_SHOW_ENV') |
| 2475 | if PIPCL_SHOW_ENV == '0': |
| 2476 | log(f'[Not showing os.environ because {PIPCL_SHOW_ENV=}.]') |
| 2477 | else: |
| 2478 | log(f'os.environ ({len(os.environ)}):') |
| 2479 | for k in sorted( os.environ.keys()): |
| 2480 | v = os.environ[ k] |
| 2481 | if 'BEGIN OPENSSH PRIVATE KEY' in v: |
| 2482 | # Don't show private keys. |
| 2483 | log(f' {k} ****') |
| 2484 | else: |
| 2485 | log( f' {k}: {v!r}') |
| 2486 | |
| 2487 | |
| 2488 | class PythonFlags: |