U
    a                     @   s  d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl	m
Z zddlZW n ek
rp   dZY nX zddlZW n ek
r   dZY nX zddlmZ W n  ek
r   dZdZdZY nX ddlZddlZdd Zd	d
 Zdd Zedkre  dS )z'Module containing bug report helper(s).    )print_functionN   )__version__)	pyopensslc                  C   s   t  } | dkrt  }nj| dkr\dtjjtjjtjjf }tjjdkrd	|tjjg}n(| dkrnt  }n| dkrt  }nd}| |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 2.7.5 it will return
    {'name': 'CPython', 'version': '2.7.5'}.

    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%s.%s.%sfinal Jython
IronPythonUnknown)nameversion)
platformpython_implementationpython_versionsyspypy_version_infomajorminormicroreleaseleveljoin)implementationimplementation_version r   |/home/adriano.carvalho/ftp/files/BrinquedotecaVirtual/brinquedotecavirtual/venv/lib/python3.8/site-packages/requests/help.py_implementation#   s&    
 

r   c            
      C   s   zt  t  d} W n tk
r4   ddd} Y nX t }dtji}ddi}ddi}trddtji}trrdtji}ddd}t	rt	jdt	j
j d}dttddi}dttddi}tj}d|dk	rd| ndi}	| ||	tdk	tdk||||||dtid	S )
z&Generate information for a bug report.)systemreleaser   r   Nr	   )r   openssl_versionz%xr   )r   r   
system_sslZusing_pyopensslZusing_charset_normalizerZ	pyOpenSSLurllib3chardetcharset_normalizercryptographyidnarequests)r   r   r   IOErrorr   r"   r   r$   r#   OpenSSLZSSLOPENSSL_VERSION_NUMBERgetattrr%   r&   sslr   requests_version)
Zplatform_infoZimplementation_infoZurllib3_infoZcharset_normalizer_infoZchardet_infoZpyopenssl_infoZcryptography_infoZ	idna_infor!   Zsystem_ssl_infor   r   r   infoD   s`    




 
 
  r.   c                   C   s   t tjt ddd dS )z)Pretty-print the bug information as JSON.T   )	sort_keysindentN)printjsondumpsr.   r   r   r   r   main   s    r5   __main__)__doc__
__future__r   r3   r   r   r,   r&   r"   r	   r   r-   r$   ImportErrorr#   Zurllib3.contribr   r)   r%   r   r.   r5   __name__r   r   r   r   <module>   s:   


!=
