diff --git a/reviewboard/attachments/__init__.py b/reviewboard/attachments/__init__.py
index 0037c97d3e924b06d60fac44d4dd948ecaf5a30b..ffc7a17d03b004ed863e744ade63927472fb1c51 100644
--- a/reviewboard/attachments/__init__.py
+++ b/reviewboard/attachments/__init__.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from reviewboard.signals import initializing
 
 
diff --git a/reviewboard/attachments/admin.py b/reviewboard/attachments/admin.py
index 56ca552e9c0b10c0a553fd7697ee4652d76d7818..b89b83438e882af988430e95c22e499099e726d7 100644
--- a/reviewboard/attachments/admin.py
+++ b/reviewboard/attachments/admin.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django.contrib import admin
 from django.utils.translation import ugettext_lazy as _
 
diff --git a/reviewboard/attachments/evolutions/__init__.py b/reviewboard/attachments/evolutions/__init__.py
index 732520a573fa5a926258f7542be5018973ebecff..da74cb218dd29b3f2aec936194936a2ea3d96a8f 100644
--- a/reviewboard/attachments/evolutions/__init__.py
+++ b/reviewboard/attachments/evolutions/__init__.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 SEQUENCE = [
     'file_attachment_orig_filename',
     'file_attachment_file_max_length_512',
diff --git a/reviewboard/attachments/evolutions/file_attachment_file_max_length_512.py b/reviewboard/attachments/evolutions/file_attachment_file_max_length_512.py
index 7db86453a7455192b2b045673c86d77c4fbb1c35..ab6d3d131631cc3f7c3490173f73f34ebdbcfdbd 100644
--- a/reviewboard/attachments/evolutions/file_attachment_file_max_length_512.py
+++ b/reviewboard/attachments/evolutions/file_attachment_file_max_length_512.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django_evolution.mutations import ChangeField
 
 
diff --git a/reviewboard/attachments/evolutions/file_attachment_orig_filename.py b/reviewboard/attachments/evolutions/file_attachment_orig_filename.py
index f64090bbc63740dea32d66bf76d7cd483e0caddc..b072e4c7a0b07ff9549c8459b19c78fdef553d36 100644
--- a/reviewboard/attachments/evolutions/file_attachment_orig_filename.py
+++ b/reviewboard/attachments/evolutions/file_attachment_orig_filename.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django_evolution.mutations import AddField
 from django.db import models
 
diff --git a/reviewboard/attachments/evolutions/file_attachment_repo_info.py b/reviewboard/attachments/evolutions/file_attachment_repo_info.py
index b462f360b57205ac479be93f4f7b8983cdd40df8..f1138b846db7f8e24d03d78a8bf46e2a2c19b8cd 100644
--- a/reviewboard/attachments/evolutions/file_attachment_repo_info.py
+++ b/reviewboard/attachments/evolutions/file_attachment_repo_info.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django_evolution.mutations import AddField
 from django.db import models
 
diff --git a/reviewboard/attachments/evolutions/file_attachment_repo_path_no_index.py b/reviewboard/attachments/evolutions/file_attachment_repo_path_no_index.py
index 9d44b5de9a33269f2ef5995c0adcdbb4f22af225..40161e5521f3bd631f2f15750da4f02e2474bd5e 100644
--- a/reviewboard/attachments/evolutions/file_attachment_repo_path_no_index.py
+++ b/reviewboard/attachments/evolutions/file_attachment_repo_path_no_index.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django_evolution.mutations import ChangeField
 
 
diff --git a/reviewboard/attachments/forms.py b/reviewboard/attachments/forms.py
index afc13df418e56851b5e449537ee64f8e27fc6be7..0cc318788fb684e31cb7955c1521567deff56387 100644
--- a/reviewboard/attachments/forms.py
+++ b/reviewboard/attachments/forms.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from uuid import uuid4
 import os
 import subprocess
diff --git a/reviewboard/attachments/managers.py b/reviewboard/attachments/managers.py
index cb0590c93629d1a1e0cd87d9eb6a9d93a86b858c..bc6d0a2de40e3b79acfcc81aeb07795ce30e6913 100644
--- a/reviewboard/attachments/managers.py
+++ b/reviewboard/attachments/managers.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 from django.db.models import Manager, Q
 
 
diff --git a/reviewboard/attachments/mimetypes.py b/reviewboard/attachments/mimetypes.py
index 8c3219ae7746c756531f0355e117aa516482be1b..bad36febe8f10f6e57927c7a157801e59bb3107e 100644
--- a/reviewboard/attachments/mimetypes.py
+++ b/reviewboard/attachments/mimetypes.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 import logging
 import os
 
@@ -400,6 +402,6 @@ MIMETYPE_ICON_ALIASES = {
 # such as 'text/x-rst' or 'text/x-markdown', so we just go by the
 # extension name.
 MIMETYPE_EXTENSIONS = {
-    '.rst': (u'text', u'x-rst', {}),
-    '.md': (u'text', u'x-markdown', {}),
+    '.rst': ('text', 'x-rst', {}),
+    '.md': ('text', 'x-markdown', {}),
 }
diff --git a/reviewboard/attachments/models.py b/reviewboard/attachments/models.py
index 14ced64b72ff83ba93a52b6c140a34821e1fe4c9..527d2ceb141db2e9e8020ac7ae04b52e43b4ce77 100644
--- a/reviewboard/attachments/models.py
+++ b/reviewboard/attachments/models.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 import os
 
 from django.core.exceptions import ObjectDoesNotExist
diff --git a/reviewboard/attachments/tests.py b/reviewboard/attachments/tests.py
index 6e5a9ec36d86127a2299e0450b307263561e5718..b4a940d1595f5f1c8196a02a66cb4fc28b6df1d9 100644
--- a/reviewboard/attachments/tests.py
+++ b/reviewboard/attachments/tests.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
 import mimeparse
 import os
 
