R`i' d Z ddlZddlZddlZddlZddlmZ ddlmZ ddlm Z
dZ ddlmZ ddlmZ ddlZddlZd Zd
Zd Zedk( r e yy# e
$ r dZY /w xY w# e
$ r dZdZdZY 1w xY w)
z'Module containing bug report helper(s). N)idna)urllib3 )__version__)chardet) pyopensslc & t j } | dk( rt j }n| dk( rdj t j
j t j
j t j
j }t j
j dk7 rbdj |t j
j g }n6| dk( rt j }n| dk( rt j }nd}| |d S )
a Return a dict with the Python implementation and version.
Provide both the name and the version of the Python implementation
currently running. For example, on CPython 3.10.3 it will return
{'name': 'CPython', 'version': '3.10.3'}.
This function works best on CPython and PyPy: in particular, it probably
doesn't work for Jython or IronPython. Future investigation should be done
to work out the correct shape of the code for those platforms.
CPythonPyPyz{}.{}.{}final Jython
IronPythonUnknown)nameversion)platformpython_implementationpython_versionformatsyspypy_version_infomajorminormicroreleaseleveljoin)implementationimplementation_versions /builddir/build/BUILDROOT/alt-python312-pip-23.3.1-3.el8.x86_64/opt/alt/python312/lib/python3.12/site-packages/pip/_vendor/requests/help.py_implementationr! s 335N"!)!8!8!: 6 !!+!2!2!!''!!''!!''"
--8%'WW')>)>)K)KL&"
8 #!)!8!8!: < '!)!8!8!:!*"/EFF c
X t j t j d} t }dt
j i}ddi}ddi}t rdt j i}t rdt j i}ddd}t r-t j t j j dd}dt t dd i}dt t dd i}t j }d||dndi} | || t dut du ||||||dt" id S # t $ r ddd} Y w xY w)
z&Generate information for a bug report.)systemreleaser r Nr
)r openssl_versionxr )r r
system_sslusing_pyopensslusing_charset_normalizer pyOpenSSLr r charset_normalizercryptographyr requests)r r$ r% OSErrorr! r r r, r OpenSSLSSLOPENSSL_VERSION_NUMBERgetattrr- r sslr requests_version)
platform_infoimplementation_infourllib3_infocharset_normalizer_infochardet_infopyopenssl_infocryptography_info idna_infor( system_ssl_infos
r infor? B sd
oo''')
*+w223L($/t$L#,.@.L.L"M!7#6#67 N **")++"D"DQ!G
7<; 743I ++J z7MZNSUVO "-%$D0$+tO#5)'
E
s )D D)(D)c V t t j t dd y)z)Pretty-print the bug information as JSON.T ) sort_keysindentN)printjsondumpsr? r" r mainrH } s $**TVtA
67r" __main__)__doc__rE r r4 r pip._vendorr r r
r r5 r, r ImportErrorpip._vendor.urllib3.contribr r- r0 r! r? rH __name__rG r" r