cubicweb/web/request.py
changeset 12567 26744ad37953
parent 12542 85194bd49119
--- a/cubicweb/web/request.py	Fri Apr 05 17:21:14 2019 +0200
+++ b/cubicweb/web/request.py	Fri Apr 05 17:58:19 2019 +0200
@@ -23,12 +23,10 @@
 from hashlib import sha1  # pylint: disable=E0611
 from calendar import timegm
 from datetime import date, datetime
+import http.client
 from io import BytesIO
-
-from six import PY2, text_type, string_types
-from six.moves import http_client
-from six.moves.urllib.parse import urlsplit, quote as urlquote
-from six.moves.http_cookies import SimpleCookie
+from urllib.parse import urlsplit, quote as urlquote
+from http.cookies import SimpleCookie
 
 from rql.utils import rqlvar_maker
 
@@ -208,12 +206,8 @@
         encoding = self.encoding
         for param, val in params.items():
             if isinstance(val, (tuple, list)):
-                if PY2:
-                    val = [unicode(x, encoding) for x in val]
                 if len(val) == 1:
                     val = val[0]
-            elif PY2 and isinstance(val, str):
-                val = unicode(val, encoding)
             if param in self.no_script_form_params and val:
                 val = self.no_script_form_param(param, val)
             if param == '_cwmsgid':
@@ -274,7 +268,7 @@
                 return None
 
     def set_message(self, msg):
-        assert isinstance(msg, text_type)
+        assert isinstance(msg, str)
         self.reset_message()
         self._msg = msg
 
@@ -287,7 +281,7 @@
 
     def set_redirect_message(self, msg):
         # TODO - this should probably be merged with append_to_redirect_message
-        assert isinstance(msg, text_type)
+        assert isinstance(msg, str)
         msgid = self.redirect_message_id()
         self.session.data[msgid] = msg
         return msgid
@@ -374,7 +368,7 @@
             eids = form['eid']
         except KeyError:
             raise NothingToEdit(self._('no selected entities'))
-        if isinstance(eids, string_types):
+        if isinstance(eids, str):
             eids = (eids,)
         for peid in eids:
             if withtype:
@@ -523,7 +517,7 @@
         :param localfile: if True, the default data dir prefix is added to the
                           JS filename
         """
-        if isinstance(jsfiles, string_types):
+        if isinstance(jsfiles, str):
             jsfiles = (jsfiles,)
         for jsfile in jsfiles:
             if localfile:
@@ -543,7 +537,7 @@
                        the css inclusion. cf:
                        http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx
         """
-        if isinstance(cssfiles, string_types):
+        if isinstance(cssfiles, str):
             cssfiles = (cssfiles,)
         if ieonly:
             if self.ie_browser():
@@ -613,7 +607,7 @@
         lang_prefix = ''
         if self.lang is not None and self.vreg.config.get('language-mode') == 'url-prefix':
             lang_prefix = '%s/' % self.lang
-        return lang_prefix + path
+        return lang_prefix + str(path)
 
     def url(self, includeparams=True):
         """return currently accessed url"""
@@ -666,9 +660,9 @@
             # overwrite headers_out to forge a brand new not-modified response
             self.headers_out = self._forge_cached_headers()
             if self.http_method() in ('HEAD', 'GET'):
-                self.status_out = http_client.NOT_MODIFIED
+                self.status_out = http.client.NOT_MODIFIED
             else:
-                self.status_out = http_client.PRECONDITION_FAILED
+                self.status_out = http.client.PRECONDITION_FAILED
             # XXX replace by True once validate_cache bw compat method is dropped
             return self.status_out
         # XXX replace by False once validate_cache bw compat method is dropped