def info():
try:<EOL><INDENT>platform_info = {<EOL>'<STR_LIT>': platform.system(),<EOL>'<STR_LIT>': platform.release(),<EOL>}<EOL><DEDENT>except IOError:<EOL><INDENT>platform_info = {<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>}<EOL><DEDENT>implementation_info = _implementation()<EOL>urllib3_info = {'<STR_LIT:version>': urllib3.__version__}<EOL>chardet_info = {'<STR_LIT:version>': chardet.__version__}<EOL>pyopenssl_info = {<EOL>'<STR_LIT:version>': None,<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>}<EOL>if OpenSSL:<EOL><INDENT>pyopenssl_info = {<EOL>'<STR_LIT:version>': OpenSSL.__version__,<EOL>'<STR_LIT>': '<STR_LIT>' % OpenSSL.SSL.OPENSSL_VERSION_NUMBER,<EOL>}<EOL><DEDENT>cryptography_info = {<EOL>'<STR_LIT:version>': getattr(cryptography, '<STR_LIT>', '<STR_LIT>'),<EOL>}<EOL>idna_info = {<EOL>'<STR_LIT:version>': getattr(idna, '<STR_LIT>', '<STR_LIT>'),<EOL>}<EOL>system_ssl = ssl.OPENSSL_VERSION_NUMBER<EOL>system_ssl_info = {<EOL>'<STR_LIT:version>': '<STR_LIT>' % system_ssl if system_ssl is not None else '<STR_LIT>'<EOL>}<EOL>return {<EOL>'<STR_LIT>': platform_info,<EOL>'<STR_LIT>': implementation_info,<EOL>'<STR_LIT>': system_ssl_info,<EOL>'<STR_LIT>': pyopenssl is not None,<EOL>'<STR_LIT>': pyopenssl_info,<EOL>'<STR_LIT>': urllib3_info,<EOL>'<STR_LIT>': chardet_info,<EOL>'<STR_LIT>': cryptography_info,<EOL>'<STR_LIT>': idna_info,<EOL>'<STR_LIT>': {<EOL>'<STR_LIT:version>': requests_version,<EOL>},<EOL>}<EOL>
Generate information for a bug report.