diff --git a/requests/packages/README.rst b/requests/packages/README.rst index 83e0c625..f37db87d 100644 --- a/requests/packages/README.rst +++ b/requests/packages/README.rst @@ -1,4 +1,4 @@ -If you are planning to submit a pull request to requests with any changes in +If you are planning to submit a pull request to requests with any changes in this library do not go any further. These are independent libraries which we vendor into requests. Any changes necessary to these libraries must be made in them and submitted as separate pull requests to those libraries. @@ -7,5 +7,7 @@ urllib3 pull requests go here: https://github.com/shazow/urllib3 chardet pull requests go here: https://github.com/chardet/chardet +idna pull requests go here: https://github.com/kjd/idna + See https://github.com/kennethreitz/requests/pull/1812#issuecomment-30854316 for the reasoning behind this. diff --git a/requests/packages/__init__.py b/requests/packages/__init__.py index 971c2ad0..4077265e 100644 --- a/requests/packages/__init__.py +++ b/requests/packages/__init__.py @@ -34,3 +34,9 @@ try: except ImportError: import chardet sys.modules['%s.chardet' % __name__] = chardet + +try: + from . import idna +except ImportError: + import idna + sys.modules['%s.idna' % __name__] = idna diff --git a/setup.py b/setup.py index bc991f3d..451e9ad4 100755 --- a/setup.py +++ b/setup.py @@ -37,6 +37,7 @@ packages = [ 'requests', 'requests.packages', 'requests.packages.chardet', + 'requests.packages.idna', 'requests.packages.urllib3', 'requests.packages.urllib3.packages', 'requests.packages.urllib3.contrib', diff --git a/tests/test_requests.py b/tests/test_requests.py index a6eeb180..b94d6663 100755 --- a/tests/test_requests.py +++ b/tests/test_requests.py @@ -1884,6 +1884,7 @@ def test_urllib3_pool_connection_closed(httpbin): def test_vendor_aliases(): from requests.packages import urllib3 from requests.packages import chardet + from requests.packages import idna with pytest.raises(ImportError): from requests.packages import webbrowser