diff --git a/reviewboard/site/admin.py b/reviewboard/site/admin.py
index bd3a6a809044f0744a68ec196343ea58d8098819..afce8f56cf4bc1ade9a3949efbd98da434b0308c 100644
--- a/reviewboard/site/admin.py
+++ b/reviewboard/site/admin.py
@@ -23,6 +23,8 @@
 # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 
+from __future__ import unicode_literals
+
 from django.contrib import admin
 
 from reviewboard.site.models import LocalSite
diff --git a/reviewboard/site/context_processors.py b/reviewboard/site/context_processors.py
index 7afe45f5e2da3669f237caee6f08d1a94a036bbb..e69d0dc35dfee79787548c7605172d636c1cdbd1 100644
--- a/reviewboard/site/context_processors.py
+++ b/reviewboard/site/context_processors.py
@@ -1,4 +1,7 @@
+from __future__ import unicode_literals
+
 from django.contrib.auth.context_processors import PermLookupDict, PermWrapper
+from djblets.util.compat import six
 
 from reviewboard.site.models import LocalSite
 
@@ -10,7 +13,7 @@ class AllPermsLookupDict(PermLookupDict):
         self.perms_wrapper = perms_wrapper
 
     def __repr__(self):
-        return str(self.user.get_all_permissions(
+        return six.text_type(self.user.get_all_permissions(
             self.perms_wrapper.get_local_site()))
 
     def __getitem__(self, perm_name):
diff --git a/reviewboard/site/middleware.py b/reviewboard/site/middleware.py
index 6e00b4aab6cac1839508790a00c277a06be199b2..825124ee2d192993bc8cc5ec432997c23c68cf63 100644
--- a/reviewboard/site/middleware.py
+++ b/reviewboard/site/middleware.py
@@ -1,3 +1,6 @@
+from __future__ import unicode_literals
+
+
 class LocalSiteMiddleware(object):
     """Middleware that handles storing information on the LocalSite in use."""
     def process_view(self, request, view_func, view_args, view_kwargs):
diff --git a/reviewboard/site/models.py b/reviewboard/site/models.py
index 215fee9fbbd87fa7eabb7f930e314a6bdb9b2ee0..9f60b1b3b9675ec6be0bc581866bbdb16005aebf 100644
--- a/reviewboard/site/models.py
+++ b/reviewboard/site/models.py
@@ -23,6 +23,8 @@
 # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 
+from __future__ import unicode_literals
+
 from django.contrib.auth.models import User
 from django.db import models
 from django.utils.encoding import python_2_unicode_compatible
diff --git a/reviewboard/site/templatetags/__init__.py b/reviewboard/site/templatetags/__init__.py
index 27da07ae081916aa9339e164792ebf26815602f6..88c59d9ba5206bd70d73c677e8e2a17a0b55c994 100644
--- a/reviewboard/site/templatetags/__init__.py
+++ b/reviewboard/site/templatetags/__init__.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django import template
 
 
diff --git a/reviewboard/site/templatetags/localsite.py b/reviewboard/site/templatetags/localsite.py
index f6fd1f1ca330b8a2d316e535827eb5a9558a6e98..68cfa43e4d0d8f67c8180594e712220c03840594 100644
--- a/reviewboard/site/templatetags/localsite.py
+++ b/reviewboard/site/templatetags/localsite.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django import template
 from django.core.urlresolvers import NoReverseMatch, ViewDoesNotExist
 from django.template.defaulttags import url as django_url
diff --git a/reviewboard/site/tests.py b/reviewboard/site/tests.py
index b2c29e4d8bc0596cba7b359e2b986423208d6bd5..89709dbd3deb7fb65fe853d2911c8500db7d827c 100644
--- a/reviewboard/site/tests.py
+++ b/reviewboard/site/tests.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django.contrib.auth.models import User
 from django.http import HttpRequest
 from django.template import Context, Template
diff --git a/reviewboard/site/urlresolvers.py b/reviewboard/site/urlresolvers.py
index cec0d71d0e183e8a054ca992fc64b42d280ddf46..89b109d80244f673d20d1c32f34375add98dbb31 100644
--- a/reviewboard/site/urlresolvers.py
+++ b/reviewboard/site/urlresolvers.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django.core.urlresolvers import NoReverseMatch, reverse
 
 
diff --git a/reviewboard/site/validation.py b/reviewboard/site/validation.py
index 7b0694a513a3535da3686715d20b96336d61c1dc..40343231139fc78428920a3df0d5e27e7378ebcb 100644
--- a/reviewboard/site/validation.py
+++ b/reviewboard/site/validation.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django.core.exceptions import ValidationError
 from django.utils.translation import ugettext as _
 
