summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Reitz <me@kennethreitz.org>2019-08-20 00:22:32 -0400
committerGitHub <noreply@github.com>2019-08-20 00:22:32 -0400
commitbbc3d43522bcb1363050557655508d66bfebcfcf (patch)
tree6cafb254f3c9c08a3739021a2fc0f5bac8cbb604
parent8086ffdbbfc1e1f80c358ae9047c97c37b6b47bb (diff)
parent2aab9a9a39fdfdfbd37cc8494259cb0ebb36a5e9 (diff)
downloadpython-requests-bbc3d43522bcb1363050557655508d66bfebcfcf.tar.gz
Merge pull request #4922 from jdufresne/ordered
Remove unnecessary compat shim for OrderedDict
-rw-r--r--requests/compat.py2
-rw-r--r--requests/sessions.py3
-rw-r--r--requests/structures.py4
-rw-r--r--requests/utils.py3
-rw-r--r--tests/test_requests.py8
5 files changed, 13 insertions, 7 deletions
diff --git a/requests/compat.py b/requests/compat.py
index c44b35ef..5de0769f 100644
--- a/requests/compat.py
+++ b/requests/compat.py
@@ -43,6 +43,7 @@ if is_py2:
import cookielib
from Cookie import Morsel
from StringIO import StringIO
+ # Keep OrderedDict for backwards compatibility.
from collections import Callable, Mapping, MutableMapping, OrderedDict
@@ -59,6 +60,7 @@ elif is_py3:
from http import cookiejar as cookielib
from http.cookies import Morsel
from io import StringIO
+ # Keep OrderedDict for backwards compatibility.
from collections import OrderedDict
from collections.abc import Callable, Mapping, MutableMapping
diff --git a/requests/sessions.py b/requests/sessions.py
index 58af5643..83326390 100644
--- a/requests/sessions.py
+++ b/requests/sessions.py
@@ -11,9 +11,10 @@ import os
import sys
import time
from datetime import timedelta
+from collections import OrderedDict
from .auth import _basic_auth_str
-from .compat import cookielib, is_py3, OrderedDict, urljoin, urlparse, Mapping
+from .compat import cookielib, is_py3, urljoin, urlparse, Mapping
from .cookies import (
cookiejar_from_dict, extract_cookies_to_jar, RequestsCookieJar, merge_cookies)
from .models import Request, PreparedRequest, DEFAULT_REDIRECT_LIMIT
diff --git a/requests/structures.py b/requests/structures.py
index da930e28..8ee0ba7a 100644
--- a/requests/structures.py
+++ b/requests/structures.py
@@ -7,7 +7,9 @@ requests.structures
Data structures that power Requests.
"""
-from .compat import OrderedDict, Mapping, MutableMapping
+from collections import OrderedDict
+
+from .compat import Mapping, MutableMapping
class CaseInsensitiveDict(MutableMapping):
diff --git a/requests/utils.py b/requests/utils.py
index 28c9366e..5636480d 100644
--- a/requests/utils.py
+++ b/requests/utils.py
@@ -19,6 +19,7 @@ import sys
import tempfile
import warnings
import zipfile
+from collections import OrderedDict
from .__version__ import __version__
from . import certs
@@ -26,7 +27,7 @@ from . import certs
from ._internal_utils import to_native_string
from .compat import parse_http_list as _parse_list_header
from .compat import (
- quote, urlparse, bytes, str, OrderedDict, unquote, getproxies,
+ quote, urlparse, bytes, str, unquote, getproxies,
proxy_bypass, urlunparse, basestring, integer_types, is_py3,
proxy_bypass_environment, getproxies_environment, Mapping)
from .cookies import cookiejar_from_dict
diff --git a/tests/test_requests.py b/tests/test_requests.py
index 8bac4b19..7d4a4eb5 100644
--- a/tests/test_requests.py
+++ b/tests/test_requests.py
@@ -18,7 +18,7 @@ from requests.adapters import HTTPAdapter
from requests.auth import HTTPDigestAuth, _basic_auth_str
from requests.compat import (
Morsel, cookielib, getproxies, str, urlparse,
- builtin_str, OrderedDict)
+ builtin_str)
from requests.cookies import (
cookiejar_from_dict, morsel_to_cookie)
from requests.exceptions import (
@@ -130,7 +130,7 @@ class TestRequests:
assert request.url == expected
def test_params_original_order_is_preserved_by_default(self):
- param_ordered_dict = OrderedDict((('z', 1), ('a', 1), ('k', 1), ('d', 1)))
+ param_ordered_dict = collections.OrderedDict((('z', 1), ('a', 1), ('k', 1), ('d', 1)))
session = requests.Session()
request = requests.Request('GET', 'http://example.com/', params=param_ordered_dict)
prep = session.prepare_request(request)
@@ -446,11 +446,11 @@ class TestRequests:
def test_headers_preserve_order(self, httpbin):
"""Preserve order when headers provided as OrderedDict."""
ses = requests.Session()
- ses.headers = OrderedDict()
+ ses.headers = collections.OrderedDict()
ses.headers['Accept-Encoding'] = 'identity'
ses.headers['First'] = '1'
ses.headers['Second'] = '2'
- headers = OrderedDict([('Third', '3'), ('Fourth', '4')])
+ headers = collections.OrderedDict([('Third', '3'), ('Fourth', '4')])
headers['Fifth'] = '5'
headers['Second'] = '222'
req = requests.Request('GET', httpbin('get'), headers=headers)