Commits

luke...@bcc190cf-cafb-0310-a4f2-bffc1f526a37  committed eada92b

Consistent imports for parse_qsl function, avoiding the `PendingDeprecationWarning` under Python 2.6 and later

  • Participants
  • Parent commits 2f14041

Comments (0)

Files changed (2)

File django/core/cache/__init__.py

 """
 
 try:
-    from urlparse import parse_qsl
+    # The mod_python version is more efficient, so try importing it first.
+    from mod_python.util import parse_qsl
 except ImportError:
-    from cgi import parse_qsl
+    try:
+        # Python 2.6 and greater
+        from urlparse import parse_qsl
+    except ImportError:
+        # Python 2.5, 2.4.  Works on Python 2.6 but raises
+        # PendingDeprecationWarning
+        from cgi import parse_qsl
 
 from django.conf import settings
 from django.core import signals

File django/http/__init__.py

     # The mod_python version is more efficient, so try importing it first.
     from mod_python.util import parse_qsl
 except ImportError:
-    from cgi import parse_qsl
+    try:
+        # Python 2.6 and greater
+        from urlparse import parse_qsl
+    except ImportError:
+        # Python 2.5, 2.4.  Works on Python 2.6 but raises
+        # PendingDeprecationWarning
+        from cgi import parse_qsl
 
 from django.utils.datastructures import MultiValueDict, ImmutableList
 from django.utils.encoding import smart_str, iri_to_uri, force_unicode