# Contributions to the urllib3 project ## Creator & Maintainer * Andrey Petrov ## Contributors In chronological order: * victor.vde * HTTPS patch (which inspired HTTPSConnectionPool) * erikcederstrand * NTLM-authenticated HTTPSConnectionPool * Basic-authenticated HTTPSConnectionPool (merged into make_headers) * niphlod * Client-verified SSL certificates for HTTPSConnectionPool * Response gzip and deflate encoding support * Better unicode support for filepost using StringIO buffers * btoconnor * Non-multipart encoding for POST requests * p.dobrogost * Code review, PEP8 compliance, benchmark fix * kennethreitz * Bugfixes, suggestions, Requests integration * georgemarshall * Bugfixes, Improvements and Test coverage * Thomas Kluyver * Python 3 support * brandon-rhodes * Design review, bugfixes, test coverage. * studer * IPv6 url support and test coverage * Shivaram Lingamneni * Support for explicitly closing pooled connections * hartator * Corrected multipart behavior for params * Thomas Weißschuh * Support for TLS SNI * API unification of ssl_version/cert_reqs * SSL fingerprint and alternative hostname verification * Bugfixes in testsuite * Sune Kirkeby * Optional SNI-support for Python 2 via PyOpenSSL. * Marc Schlaich * Various bugfixes and test improvements. * Bryce Boe * Correct six.moves conflict * Fixed pickle support of some exceptions * Boris Figovsky * Allowed to skip SSL hostname verification * Cory Benfield * Stream method for Response objects. * Return native strings in header values. * Generate 'Host' header when using proxies. * Jason Robinson * Add missing WrappedSocket.fileno method in PyOpenSSL * Audrius Butkevicius * Fixed a race condition * Stanislav Vitkovskiy * Added HTTPS (CONNECT) proxy support * Stephen Holsapple * Added abstraction for granular control of request fields * Martin von Gagern * Support for non-ASCII header parameters * Kevin Burke and Pavel Kirichenko * Support for separate connect and request timeouts * Peter Waller * HTTPResponse.tell() for determining amount received over the wire * Nipunn Koorapati * Ignore default ports when comparing hosts for equality * Danilo @dbrgn * Disabled TLS compression by default on Python 3.2+ * Disabled TLS compression in pyopenssl contrib module * Configurable cipher suites in pyopenssl contrib module * Roman Bogorodskiy * Account retries on proxy errors * Nicolas Delaby * Use the platform-specific CA certificate locations * Josh Schneier * HTTPHeaderDict and associated tests and docs * Bugfixes, docs, test coverage * Tahia Khan * Added Timeout examples in docs * Arthur Grunseid * source_address support and tests (with https://github.com/bui) * Ian Cordasco * PEP8 Compliance and Linting * Add ability to pass socket options to an HTTP Connection * Erik Tollerud * Support for standard library io module. * Krishna Prasad * Google App Engine documentation * Aaron Meurer * Added Url.url, which unparses a Url * Evgeny Kapun * Bugfixes * Benjamen Meyer * Security Warning Documentation update for proper capture * Shivan Sornarajah * Support for using ConnectionPool and PoolManager as context managers. * Alex Gaynor * Updates to the default SSL configuration * Jeremy Cline * Added connection pool keys by scheme * [Your name or handle] <[email or website]> * [Brief summary of your changes]