Commit 4a2e80ff authored by Andrew Godwin's avatar Andrew Godwin
Browse files

Merge branch 'master' of github.com:django/django into schema-alteration

Conflicts:
	django/db/backends/postgresql_psycopg2/base.py
parents 959a3f97 ab6cd1c8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ The PRIMARY AUTHORS are (and/or have been):
    * Aymeric Augustin
    * Claude Paroz
    * Anssi Kääriäinen
    * Florian Apolloner

More information on the main contributors to Django can be found in
docs/internals/committers.txt.
@@ -61,7 +62,6 @@ answer newbie questions, and generally made Django that much better:
    andy@jadedplanet.net
    Fabrice Aneche <akh@nobugware.com>
    ant9000@netwise.it
    Florian Apolloner <florian@apolloner.eu>
    arien <regexbot@gmail.com>
    David Ascher <http://ascher.ca/>
    atlithorn <atlithorn@gmail.com>
+6 −2
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ from django.conf import global_settings
from django.core.exceptions import ImproperlyConfigured
from django.utils.functional import LazyObject, empty
from django.utils import importlib
from django.utils import six

ENVIRONMENT_VARIABLE = "DJANGO_SETTINGS_MODULE"

@@ -73,7 +74,7 @@ class BaseSettings(object):
        elif name == "ADMIN_MEDIA_PREFIX":
            warnings.warn("The ADMIN_MEDIA_PREFIX setting has been removed; "
                          "use STATIC_URL instead.", DeprecationWarning)
        elif name == "ALLOWED_INCLUDE_ROOTS" and isinstance(value, basestring):
        elif name == "ALLOWED_INCLUDE_ROOTS" and isinstance(value, six.string_types):
            raise ValueError("The ALLOWED_INCLUDE_ROOTS setting must be set "
                "to a tuple, not a string.")
        object.__setattr__(self, name, value)
@@ -102,7 +103,10 @@ class Settings(BaseSettings):
            if setting == setting.upper():
                setting_value = getattr(mod, setting)
                if setting in tuple_settings and \
                        isinstance(setting_value, basestring):
                        isinstance(setting_value, six.string_types):
                    warnings.warn("The %s setting must be a tuple. Please fix your "
                                  "settings, as auto-correction is now deprecated." % setting,
                        PendingDeprecationWarning)
                    setting_value = (setting_value,) # In case the user forgot the comma.
                setattr(self, setting, setting_value)

+3 −2
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ from django.core.urlresolvers import (RegexURLPattern,
    RegexURLResolver, LocaleRegexURLResolver)
from django.core.exceptions import ImproperlyConfigured
from django.utils.importlib import import_module
from django.utils import six


__all__ = ['handler403', 'handler404', 'handler500', 'include', 'patterns', 'url']
@@ -20,7 +21,7 @@ def include(arg, namespace=None, app_name=None):
        # No namespace hint - use manually provided namespace
        urlconf_module = arg

    if isinstance(urlconf_module, basestring):
    if isinstance(urlconf_module, six.string_types):
        urlconf_module = import_module(urlconf_module)
    patterns = getattr(urlconf_module, 'urlpatterns', urlconf_module)

@@ -52,7 +53,7 @@ def url(regex, view, kwargs=None, name=None, prefix=''):
        urlconf_module, app_name, namespace = view
        return RegexURLResolver(regex, urlconf_module, kwargs, app_name=app_name, namespace=namespace)
    else:
        if isinstance(view, basestring):
        if isinstance(view, six.string_types):
            if not view:
                raise ImproperlyConfigured('Empty URL pattern view name not permitted (for pattern %r)' % regex)
            if prefix:
+7 −8
Original line number Diff line number Diff line
@@ -10,8 +10,9 @@ from django.db.models.fields.related import ManyToManyRel
from django.forms.util import flatatt
from django.template.defaultfilters import capfirst
from django.utils.encoding import force_unicode, smart_unicode
from django.utils.html import escape, conditional_escape
from django.utils.html import conditional_escape, format_html
from django.utils.safestring import mark_safe
from django.utils import six
from django.utils.translation import ugettext_lazy as _
from django.conf import settings

@@ -49,7 +50,7 @@ class AdminForm(object):
        try:
            fieldset_name, fieldset_options = self.fieldsets[0]
            field_name = fieldset_options['fields'][0]
            if not isinstance(field_name, basestring):
            if not isinstance(field_name, six.string_types):
                field_name = field_name[0]
            return self.form[field_name]
        except (KeyError, IndexError):
@@ -163,11 +164,9 @@ class AdminReadonlyField(object):
        if not self.is_first:
            attrs["class"] = "inline"
        label = self.field['label']
        contents = capfirst(force_unicode(escape(label))) + ":"
        return mark_safe('<label%(attrs)s>%(contents)s</label>' % {
            "attrs": flatatt(attrs),
            "contents": contents,
        })
        return format_html('<label{0}>{1}:</label>',
                           flatatt(attrs),
                           capfirst(force_unicode(label)))

    def contents(self):
        from django.contrib.admin.templatetags.admin_list import _boolean_icon
@@ -190,7 +189,7 @@ class AdminReadonlyField(object):
                if value is None:
                    result_repr = EMPTY_CHANGELIST_VALUE
                elif isinstance(f.rel, ManyToManyRel):
                    result_repr = ", ".join(map(unicode, value.all()))
                    result_repr = ", ".join(map(six.text_type, value.all()))
                else:
                    result_repr = display_for_field(value, f)
        return conditional_escape(result_repr)
+1 −2
Original line number Diff line number Diff line
@@ -6,7 +6,6 @@ from django.contrib.auth.models import User
from django.contrib.admin.util import quote
from django.utils.translation import ugettext_lazy as _
from django.utils.encoding import smart_unicode
from django.utils.safestring import mark_safe

ADDITION = 1
CHANGE = 2
@@ -66,5 +65,5 @@ class LogEntry(models.Model):
        This is relative to the Django admin index page.
        """
        if self.content_type and self.object_id:
            return mark_safe("%s/%s/%s/" % (self.content_type.app_label, self.content_type.model, quote(self.object_id)))
            return "%s/%s/%s/" % (self.content_type.app_label, self.content_type.model, quote(self.object_id))
        return None
Loading