File: //usr/local/lib/python3.10/dist-packages/pip/_vendor/requests/__pycache__/help.cpython-310.pyc
o
��h� � @ s� d Z ddlZddlZddlZddlZddlmZ ddlmZ ddlm Z
dZdZzddl
mZ W n ey? dZdZdZY n w ddlZddlZdd � Zd
d� Zdd
� Zedkr]e� dS dS )z'Module containing bug report helper(s).� N)�idna)�urllib3� )�__version__)� pyopensslc C s� t �� } | dkr
t �� }n5| dkr.d�tjjtjjtjj�}tjj dkr-d�
|tjj g�}n| dkr7t �� }n| dkr@t �� }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.
�CPython�PyPyz{}.{}.{}�final� �Jython�
IronPython�Unknown)�name�version)�platform�python_implementation�python_version�format�sys�pypy_version_info�major�minor�micro�releaselevel�join)�implementation�implementation_version� r �D/usr/local/lib/python3.10/dist-packages/pip/_vendor/requests/help.py�_implementation s(
�
��
r c
C s� zt �� t �� d�} W n ty ddd�} Y nw t� }dtji}ddi}ddi}tr1dtji}tr8dtji}ddd�}t rIt jt j
jd�d�}dtt
dd�i}dttdd�i}tj}d|dure|d�ndi} | || tdutdu ||||||dtid �S )
z&Generate information for a bug report.)�system�releaser
r Nr
)r �openssl_version�xr )r r �
system_ssl�using_pyopenssl�using_charset_normalizer� pyOpenSSLr �chardet�charset_normalizer�cryptographyr �requests)r r r! �OSErrorr r r r) r( �OpenSSL�SSL�OPENSSL_VERSION_NUMBER�getattrr* r �sslr �requests_version)
�
platform_info�implementation_info�urllib3_info�charset_normalizer_info�chardet_info�pyopenssl_info�cryptography_info� idna_infor$ �system_ssl_infor r r �info>