3
ãde€  ã               @   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 yddlZW n ek
rp   dZY nX yddlZW n ek
r–   dZY nX y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 jƒ } | dkrt jƒ }nj| dkr\dtjjtjjtjjf }tjjdkr„dj	|tjjgƒ}n(| dkrnt jƒ }n| dkr€t jƒ }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   úD/var/www/agendate/envp3/lib/python3.6/site-packages/requests/help.pyÚ_implementation#   s     


r   c        
      C   sü   yt jƒ t jƒ 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	r”t	jdt	j
j dœ}dttddƒi}dttddƒi}tj}d|dk	rÌd| 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   sF    


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:   


!=
