Index: django/test/client.py
===================================================================
--- django/test/client.py	(revision 7297)
+++ django/test/client.py	(working copy)
@@ -61,7 +61,7 @@
     as an application/octet-stream; otherwise, str(value) will be sent.
     """
     lines = []
-    to_str = lambda s: smart_str(s, settings.DEFAULT_CHARSET)
+    to_str = lambda s: smart_str(s, settings.OUTPUT_CHARSET)
     for (key, value) in data.items():
         if isinstance(value, file):
             lines.extend([
Index: django/http/__init__.py
===================================================================
--- django/http/__init__.py	(revision 7297)
+++ django/http/__init__.py	(working copy)
@@ -139,7 +139,7 @@
     This is immutable unless you create a copy of it.
 
     Values retrieved from this class are converted from the given encoding
-    (DEFAULT_CHARSET by default) to unicode.
+    (OUTPUT_CHARSET by default) to unicode.
     """
     def __init__(self, query_string, mutable=False, encoding=None):
         MultiValueDict.__init__(self)
@@ -147,7 +147,7 @@
             # *Important*: do not import settings any earlier because of note
             # in core.handlers.modpython.
             from django.conf import settings
-            encoding = settings.DEFAULT_CHARSET
+            encoding = settings.OUTPUT_CHARSET
         self.encoding = encoding
         self._mutable = True
         for key, value in parse_qsl((query_string or ''), True): # keep_blank_values=True
@@ -259,12 +259,12 @@
     def __init__(self, content='', mimetype=None, status=None,
             content_type=None):
         from django.conf import settings
-        self._charset = settings.DEFAULT_CHARSET
+        self._charset = settings.OUTPUT_CHARSET
         if mimetype:
             content_type = mimetype     # For backwards compatibility
         if not content_type:
             content_type = "%s; charset=%s" % (settings.DEFAULT_CONTENT_TYPE,
-                    settings.DEFAULT_CHARSET)
+                    settings.OUTPUT_CHARSET)
         if not isinstance(content, basestring) and hasattr(content, '__iter__'):
             self._container = content
             self._is_string = False
Index: django/conf/__init__.py
===================================================================
--- django/conf/__init__.py	(revision 7297)
+++ django/conf/__init__.py	(working copy)
@@ -9,6 +9,7 @@
 import os
 import time     # Needed for Windows
 from django.conf import global_settings
+from warnings import warn
 
 ENVIRONMENT_VARIABLE = "DJANGO_SETTINGS_MODULE"
 
@@ -29,6 +30,9 @@
         if name == '__members__':
             # Used to implement dir(obj), for example.
             return self._target.get_all_members()
+        if name == 'DEFAULT_CHARSET':
+            warn("DEFAULT_CHARSET is deprecated. Use OUTPUT_CHARSET instead.",
+                PendingDeprecationWarning, stacklevel=3)
         return getattr(self._target, name)
 
     def __setattr__(self, name, value):
@@ -37,7 +41,10 @@
             # __setattr__(), which would be an infinite loop.
             self.__dict__['_target'] = value
         else:
-            if self._target is None:
+            if name == 'DEFAULT_CHARSET':
+                warn("DEFAULT_CHARSET is deprecated. Use OUTPUT_CHARSET instead.",
+                    PendingDeprecationWarning, stacklevel=3)
+            elif self._target is None:
                 self._import_settings()
             setattr(self._target, name, value)
 
Index: django/conf/global_settings.py
===================================================================
--- django/conf/global_settings.py	(revision 7297)
+++ django/conf/global_settings.py	(working copy)
@@ -98,11 +98,11 @@
 # notifications and other various e-mails.
 MANAGERS = ADMINS
 
-# Default content type and charset to use for all HttpResponse objects, if a
-# MIME type isn't manually specified. These are used to construct the
+# Default content type and output charset to use for all HttpResponse objects, 
+# if a MIME type isn't manually specified. These are used to construct the
 # Content-Type header.
 DEFAULT_CONTENT_TYPE = 'text/html'
-DEFAULT_CHARSET = 'utf-8'
+OUTPUT_CHARSET = DEFAULT_CHARSET = 'utf-8'
 
 # Encoding of files read from disk (template and initial SQL files).
 FILE_CHARSET = 'utf-8'
Index: django/core/serializers/xml_serializer.py
===================================================================
--- django/core/serializers/xml_serializer.py	(revision 7297)
+++ django/core/serializers/xml_serializer.py	(working copy)
@@ -22,7 +22,7 @@
         """
         Start serialization -- open the XML document and the root element.
         """
-        self.xml = SimplerXMLGenerator(self.stream, self.options.get("encoding", settings.DEFAULT_CHARSET))
+        self.xml = SimplerXMLGenerator(self.stream, self.options.get("encoding", settings.OUTPUT_CHARSET))
         self.xml.startDocument()
         self.xml.startElement("django-objects", {"version" : "1.0"})
 
Index: django/core/serializers/python.py
===================================================================
--- django/core/serializers/python.py	(revision 7297)
+++ django/core/serializers/python.py	(working copy)
@@ -72,7 +72,7 @@
         # Handle each field
         for (field_name, field_value) in d["fields"].iteritems():
             if isinstance(field_value, str):
-                field_value = smart_unicode(field_value, options.get("encoding", settings.DEFAULT_CHARSET), strings_only=True)
+                field_value = smart_unicode(field_value, options.get("encoding", settings.OUTPUT_CHARSET), strings_only=True)
 
             field = Model._meta.get_field(field_name)
 
Index: django/core/mail.py
===================================================================
--- django/core/mail.py	(revision 7297)
+++ django/core/mail.py	(working copy)
@@ -78,11 +78,11 @@
             result = []
             for item in val.split(', '):
                 nm, addr = parseaddr(item)
-                nm = str(Header(nm, settings.DEFAULT_CHARSET))
+                nm = str(Header(nm, settings.OUTPUT_CHARSET))
                 result.append(formataddr((nm, str(addr))))
             val = ', '.join(result)
         else:
-            val = Header(force_unicode(val), settings.DEFAULT_CHARSET)
+            val = Header(force_unicode(val), settings.OUTPUT_CHARSET)
     return name, val
 
 class SafeMIMEText(MIMEText):
@@ -220,8 +220,8 @@
         return self.connection
 
     def message(self):
-        encoding = self.encoding or settings.DEFAULT_CHARSET
-        msg = SafeMIMEText(smart_str(self.body, settings.DEFAULT_CHARSET), self.content_subtype, encoding)
+        encoding = self.encoding or settings.OUTPUT_CHARSET
+        msg = SafeMIMEText(smart_str(self.body, settings.OUTPUT_CHARSET), self.content_subtype, encoding)
         if self.attachments:
             body_msg = msg
             msg = SafeMIMEMultipart(_subtype=self.multipart_subtype)
@@ -288,7 +288,7 @@
         basetype, subtype = mimetype.split('/', 1)
         if basetype == 'text':
             attachment = SafeMIMEText(smart_str(content,
-                settings.DEFAULT_CHARSET), subtype, settings.DEFAULT_CHARSET)
+                settings.OUTPUT_CHARSET), subtype, settings.OUTPUT_CHARSET)
         else:
             # Encode non-text attachments with base64.
             attachment = MIMEBase(basetype, subtype)
Index: django/utils/translation/trans_real.py
===================================================================
--- django/utils/translation/trans_real.py	(revision 7297)
+++ django/utils/translation/trans_real.py	(working copy)
@@ -65,7 +65,7 @@
 class DjangoTranslation(gettext_module.GNUTranslations):
     """
     This class sets up the GNUTranslations context with regard to output
-    charset. Django uses a defined DEFAULT_CHARSET as the output charset on
+    charset. Django uses a defined OUTPUT_CHARSET as the output charset on
     Python 2.4. With Python 2.3, use DjangoTranslation23.
     """
     def __init__(self, *args, **kw):
Index: docs/request_response.txt
===================================================================
--- docs/request_response.txt	(revision 7297)
+++ docs/request_response.txt	(working copy)
@@ -42,11 +42,11 @@
     **New in Django development version**
 
     A string representing the current encoding used to decode form submission
-    data (or ``None``, which means the ``DEFAULT_CHARSET`` setting is used).
+    data (or ``None``, which means the ``OUTPUT_CHARSET`` setting is used).
     You can write to this attribute to change the encoding used when accessing
     the form data. Any subsequent attribute accesses (such as reading from
     ``GET`` or ``POST``) will use the new ``encoding`` value.  Useful if you
-    know the form data is not in the ``DEFAULT_CHARSET`` encoding.
+    know the form data is not in the ``OUTPUT_CHARSET`` encoding.
 
 ``GET``
     A dictionary-like object containing all given HTTP GET parameters. See the
Index: docs/unicode.txt
===================================================================
--- docs/unicode.txt	(revision 7297)
+++ docs/unicode.txt	(working copy)
@@ -60,12 +60,12 @@
 If your code only uses ASCII data, it's safe to use your normal strings,
 passing them around at will, because ASCII is a subset of UTF-8.
 
-Don't be fooled into thinking that if your ``DEFAULT_CHARSET`` setting is set
+Don't be fooled into thinking that if your ``OUTPUT_CHARSET`` setting is set
 to something other than ``'utf-8'`` you can use that other encoding in your
-bytestrings! ``DEFAULT_CHARSET`` only applies to the strings generated as
+bytestrings! ``OUTPUT_CHARSET`` only applies to the strings generated as
 the result of template rendering (and e-mail). Django will always assume UTF-8
 encoding for internal bytestrings. The reason for this is that the
-``DEFAULT_CHARSET`` setting is not actually under your control (if you are the
+``OUTPUT_CHARSET`` setting is not actually under your control (if you are the
 application developer). It's under the control of the person installing and
 using your application -- and if that person chooses a different setting, your
 code must still continue to work. Ergo, it cannot rely on that setting.
@@ -293,7 +293,7 @@
 file, it will convert the data from this encoding to Unicode. (``FILE_CHARSET``
 is set to ``'utf-8'`` by default.)
 
-The ``DEFAULT_CHARSET`` setting controls the encoding of rendered templates.
+The ``OUTPUT_CHARSET`` setting controls the encoding of rendered templates.
 This is set to UTF-8 by default.
 
 Template tags and filters
@@ -345,7 +345,7 @@
 methods of ``HttpRequest`` return data exactly as it was submitted by the
 client.
 
-By default, the ``DEFAULT_CHARSET`` setting is used as the assumed encoding
+By default, the ``OUTPUT_CHARSET`` setting is used as the assumed encoding
 for form data. If you need to change this for a particular form, you can set
 the ``encoding`` attribute on an ``HttpRequest`` instance. For example::
 
Index: docs/email.txt
===================================================================
--- docs/email.txt	(revision 7297)
+++ docs/email.txt	(working copy)
@@ -28,9 +28,9 @@
 .. note::
 
     The character set of e-mail sent with ``django.core.mail`` will be set to
-    the value of your `DEFAULT_CHARSET`_ setting.
+    the value of your `OUTPUT_CHARSET`_ setting.
 
-.. _DEFAULT_CHARSET: ../settings/#default-charset
+.. _OUTPUT_CHARSET: ../settings/#default-charset
 .. _EMAIL_HOST: ../settings/#email-host
 .. _EMAIL_PORT: ../settings/#email-port
 .. _EMAIL_HOST_USER: ../settings/#email-host-user
Index: docs/settings.txt
===================================================================
--- docs/settings.txt	(revision 7297)
+++ docs/settings.txt	(working copy)
@@ -388,7 +388,7 @@
 the like all give attackers extra information about your server. Never deploy a
 site with ``DEBUG`` turned on.
 
-DEFAULT_CHARSET
+OUTPUT_CHARSET
 ---------------
 
 Default: ``'utf-8'``
@@ -403,7 +403,7 @@
 Default: ``'text/html'``
 
 Default content type to use for all ``HttpResponse`` objects, if a MIME type
-isn't manually specified. Used with ``DEFAULT_CHARSET`` to construct the
+isn't manually specified. Used with ``OUTPUT_CHARSET`` to construct the
 ``Content-Type`` header.
 
 DEFAULT_FROM_EMAIL
Index: docs/templates_python.txt
===================================================================
--- docs/templates_python.txt	(revision 7297)
+++ docs/templates_python.txt	(working copy)
@@ -1453,7 +1453,7 @@
 templating functions, call ``django.conf.settings.configure()`` with any
 settings you wish to specify. You might want to consider setting at least
 ``TEMPLATE_DIRS`` (if you're going to use template loaders),
-``DEFAULT_CHARSET`` (although the default of ``utf-8`` is probably fine) and
+``OUTPUT_CHARSET`` (although the default of ``utf-8`` is probably fine) and
 ``TEMPLATE_DEBUG``. All available settings are described in the
 `settings documentation`_, and any setting starting with *TEMPLATE_*
 is of obvious interest.
