diff -Nur dummyserver/handlers.py dummyserver/handlers.py --- dummyserver/handlers.py 2014-08-06 20:02:49.000000000 +0200 +++ dummyserver/handlers.py 2014-09-26 00:31:08.077758800 +0200 @@ -211,7 +211,7 @@ """ import tornado.httputil import email.utils - from urllib3.packages import six + import six if not six.PY3: line = line.encode('utf-8') parts = tornado.httputil._parseparam(';' + line) diff -Nur setup.py setup.py --- setup.py 2014-08-06 20:38:12.000000000 +0200 +++ setup.py 2014-09-26 00:35:06.139782615 +0200 @@ -42,7 +42,6 @@ url='http://urllib3.readthedocs.org/', license='MIT', packages=['urllib3', - 'urllib3.packages', 'urllib3.packages.ssl_match_hostname', 'urllib3.contrib', 'urllib3.util', ], requires=[], diff -Nur test/__init__.py test/__init__.py --- test/__init__.py 2014-08-06 20:02:49.000000000 +0200 +++ test/__init__.py 2014-09-26 00:33:32.762949986 +0200 @@ -7,7 +7,7 @@ from nose.plugins.skip import SkipTest from urllib3.exceptions import MaxRetryError, HTTPWarning -from urllib3.packages import six +import six # We need a host that will not immediately close the connection with a TCP # Reset. SO suggests this hostname diff -Nur test/contrib/test_pyopenssl.py test/contrib/test_pyopenssl.py --- test/contrib/test_pyopenssl.py 2014-09-13 20:18:29.000000000 +0200 +++ test/contrib/test_pyopenssl.py 2014-09-26 00:33:50.301730721 +0200 @@ -1,5 +1,5 @@ from nose.plugins.skip import SkipTest -from urllib3.packages import six +import six if six.PY3: raise SkipTest('Testing of PyOpenSSL disabled on PY3') diff -Nur test/test_collections.py test/test_collections.py --- test/test_collections.py 2014-08-06 20:38:12.000000000 +0200 +++ test/test_collections.py 2014-09-26 00:28:36.830649649 +0200 @@ -4,7 +4,7 @@ HTTPHeaderDict, RecentlyUsedContainer as Container ) -from urllib3.packages import six +import six xrange = six.moves.xrange diff -Nur test/test_connectionpool.py test/test_connectionpool.py --- test/test_connectionpool.py 2014-08-06 20:38:12.000000000 +0200 +++ test/test_connectionpool.py 2014-09-26 00:36:12.962947210 +0200 @@ -6,7 +6,10 @@ HTTPConnectionPool, ) from urllib3.util.timeout import Timeout -from urllib3.packages.ssl_match_hostname import CertificateError +try: + from ssl import CertificateError +except ImportError: + from backports.ssl_match_hostname import CertificateError from urllib3.exceptions import ( ClosedPoolError, EmptyPoolError, diff -Nur test/test_fields.py test/test_fields.py --- test/test_fields.py 2014-08-06 20:38:12.000000000 +0200 +++ test/test_fields.py 2014-09-26 00:31:39.324368163 +0200 @@ -1,7 +1,7 @@ import unittest from urllib3.fields import guess_content_type, RequestField -from urllib3.packages.six import u +from six import u class TestRequestField(unittest.TestCase): diff -Nur test/test_filepost.py test/test_filepost.py --- test/test_filepost.py 2014-08-06 20:38:12.000000000 +0200 +++ test/test_filepost.py 2014-09-26 00:30:35.582165050 +0200 @@ -2,7 +2,7 @@ from urllib3.filepost import encode_multipart_formdata, iter_fields from urllib3.fields import RequestField -from urllib3.packages.six import b, u +from six import b, u BOUNDARY = '!! test boundary !!' diff -Nur test/test_retry.py test/test_retry.py --- test/test_retry.py 2014-08-06 20:38:12.000000000 +0200 +++ test/test_retry.py 2014-09-26 00:33:15.642164025 +0200 @@ -1,6 +1,6 @@ import unittest -from urllib3.packages.six.moves import xrange +from six.moves import xrange from urllib3.util.retry import Retry from urllib3.exceptions import ( ConnectTimeoutError, diff -Nur urllib3/_collections.py urllib3/_collections.py --- urllib3/_collections.py 2014-08-06 20:38:12.000000000 +0200 +++ urllib3/_collections.py 2014-09-26 00:36:59.802361637 +0200 @@ -10,11 +10,8 @@ pass -try: # Python 2.7+ - from collections import OrderedDict -except ImportError: - from .packages.ordered_dict import OrderedDict -from .packages.six import itervalues +from collections import OrderedDict +from six import itervalues __all__ = ['RecentlyUsedContainer', 'HTTPHeaderDict'] diff -Nur urllib3/connection.py urllib3/connection.py --- urllib3/connection.py 2014-09-13 20:18:29.000000000 +0200 +++ urllib3/connection.py 2014-09-26 00:39:41.684337834 +0200 @@ -3,7 +3,7 @@ import socket from socket import timeout as SocketTimeout import warnings -from .packages import six +import six try: # Python 3 from http.client import HTTPConnection as _HTTPConnection, HTTPException @@ -39,7 +39,10 @@ ConnectTimeoutError, SystemTimeWarning, ) -from .packages.ssl_match_hostname import match_hostname +try: + from ssl import match_hostname +except ImportError: + from backports.ssl_match_hostname import match_hostname from .util.ssl_ import ( resolve_cert_reqs, diff -Nur urllib3/connectionpool.py urllib3/connectionpool.py --- urllib3/connectionpool.py 2014-09-13 20:18:29.000000000 +0200 +++ urllib3/connectionpool.py 2014-09-26 00:37:59.884610505 +0200 @@ -26,8 +26,11 @@ TimeoutError, InsecureRequestWarning, ) -from .packages.ssl_match_hostname import CertificateError -from .packages import six +try: + from ssl import CertificateError +except ImportError: + from backports.ssl_match_hostname import CertificateError +import six from .connection import ( port_by_scheme, DummyConnection, diff -Nur urllib3/fields.py urllib3/fields.py --- urllib3/fields.py 2014-08-06 20:38:12.000000000 +0200 +++ urllib3/fields.py 2014-09-26 00:46:37.117144209 +0200 @@ -1,7 +1,7 @@ import email.utils import mimetypes -from .packages import six +import six def guess_content_type(filename, default='application/octet-stream'): diff -Nur urllib3/filepost.py urllib3/filepost.py --- urllib3/filepost.py 2014-08-06 20:38:12.000000000 +0200 +++ urllib3/filepost.py 2014-09-26 00:29:56.885648823 +0200 @@ -3,8 +3,8 @@ from uuid import uuid4 from io import BytesIO -from .packages import six -from .packages.six import b +import six +from six import b from .fields import RequestField writer = codecs.lookup('utf-8')[3] diff -Nur urllib3/response.py urllib3/response.py --- urllib3/response.py 2014-09-13 20:18:29.000000000 +0200 +++ urllib3/response.py 2014-09-26 00:30:18.828374502 +0200 @@ -4,7 +4,7 @@ from ._collections import HTTPHeaderDict from .exceptions import ProtocolError, DecodeError, ReadTimeoutError -from .packages.six import string_types as basestring, binary_type +from six import string_types as basestring, binary_type from .connection import HTTPException, BaseSSLError from .util.response import is_fp_closed diff -Nur urllib3/util/request.py urllib3/util/request.py --- urllib3/util/request.py 2014-08-06 20:38:12.000000000 +0200 +++ urllib3/util/request.py 2014-09-26 00:32:27.729763013 +0200 @@ -1,6 +1,6 @@ from base64 import b64encode -from ..packages.six import b +from six import b ACCEPT_ENCODING = 'gzip,deflate' diff -Nur urllib3/util/retry.py urllib3/util/retry.py --- urllib3/util/retry.py 2014-09-13 20:18:29.000000000 +0200 +++ urllib3/util/retry.py 2014-09-26 00:32:56.069408718 +0200 @@ -7,7 +7,7 @@ ReadTimeoutError, MaxRetryError, ) -from ..packages import six +import six log = logging.getLogger(__name__)