summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/contrib/admin/views/main.py8
-rw-r--r--django/contrib/auth/models.py10
-rw-r--r--django/core/management.py7
-rw-r--r--django/db/models/fields/related.py7
-rw-r--r--django/db/models/query.py7
-rw-r--r--django/newforms/fields.py4
-rw-r--r--django/newforms/widgets.py5
-rw-r--r--django/template/defaulttags.py6
8 files changed, 34 insertions, 20 deletions
diff --git a/django/contrib/admin/views/main.py b/django/contrib/admin/views/main.py
index 5edc1fc19d..e372b45439 100644
--- a/django/contrib/admin/views/main.py
+++ b/django/contrib/admin/views/main.py
@@ -14,6 +14,11 @@ from django.utils.html import escape
from django.utils.text import capfirst, get_text_list
import operator
+try:
+ set
+except NameError:
+ from sets import Set as set # Python 2.3 fallback
+
from django.contrib.admin.models import LogEntry, ADDITION, CHANGE, DELETION
if not LogEntry._meta.installed:
raise ImproperlyConfigured, "You'll need to put 'django.contrib.admin' in your INSTALLED_APPS setting before you can use the admin application."
@@ -489,7 +494,6 @@ def _get_deleted_objects(deleted_objects, perms_needed, user, obj, opts, current
perms_needed.add(related.opts.verbose_name)
def delete_stage(request, app_label, model_name, object_id):
- import sets
model = models.get_model(app_label, model_name)
object_id = unquote(object_id)
if model is None:
@@ -502,7 +506,7 @@ def delete_stage(request, app_label, model_name, object_id):
# Populate deleted_objects, a data structure of all related objects that
# will also be deleted.
deleted_objects = ['%s: <a href="../../%s/">%s</a>' % (capfirst(opts.verbose_name), object_id, escape(str(obj))), []]
- perms_needed = sets.Set()
+ perms_needed = set()
_get_deleted_objects(deleted_objects, perms_needed, request.user, obj, opts, 1)
if request.POST: # The user has already confirmed the deletion.
diff --git a/django/contrib/auth/models.py b/django/contrib/auth/models.py
index 9ebef0f524..1552074a2d 100644
--- a/django/contrib/auth/models.py
+++ b/django/contrib/auth/models.py
@@ -5,6 +5,11 @@ from django.contrib.contenttypes.models import ContentType
from django.utils.translation import gettext_lazy as _
import datetime
+try:
+ set
+except NameError:
+ from sets import Set as set # Python 2.3 fallback
+
def check_password(raw_password, enc_password):
"""
Returns a boolean of whether the raw_password was correct. Handles
@@ -175,7 +180,6 @@ class User(models.Model):
def get_group_permissions(self):
"Returns a list of permission strings that this user has through his/her groups."
if not hasattr(self, '_group_perm_cache'):
- import sets
cursor = connection.cursor()
# The SQL below works out to the following, after DB quoting:
# cursor.execute("""
@@ -200,13 +204,13 @@ class User(models.Model):
backend.quote_name('id'), backend.quote_name('content_type_id'),
backend.quote_name('user_id'),)
cursor.execute(sql, [self.id])
- self._group_perm_cache = sets.Set(["%s.%s" % (row[0], row[1]) for row in cursor.fetchall()])
+ self._group_perm_cache = set(["%s.%s" % (row[0], row[1]) for row in cursor.fetchall()])
return self._group_perm_cache
def get_all_permissions(self):
if not hasattr(self, '_perm_cache'):
import sets
- self._perm_cache = sets.Set(["%s.%s" % (p.content_type.app_label, p.codename) for p in self.user_permissions.select_related()])
+ self._perm_cache = set(["%s.%s" % (p.content_type.app_label, p.codename) for p in self.user_permissions.select_related()])
self._perm_cache.update(self.get_group_permissions())
return self._perm_cache
diff --git a/django/core/management.py b/django/core/management.py
index 213eb4602c..d8bf8ea00b 100644
--- a/django/core/management.py
+++ b/django/core/management.py
@@ -7,9 +7,10 @@ from optparse import OptionParser
from django.utils import termcolors
import os, re, shutil, sys, textwrap
-# For Python 2.3
-if not hasattr(__builtins__, 'set'):
- from sets import Set as set
+try:
+ set
+except NameError:
+ from sets import Set as set # Python 2.3 fallback
# For backwards compatibility: get_version() used to be in this module.
get_version = django.get_version
diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py
index 0739d0461a..e514b3f854 100644
--- a/django/db/models/fields/related.py
+++ b/django/db/models/fields/related.py
@@ -10,9 +10,10 @@ from django import oldforms
from django import newforms as forms
from django.dispatch import dispatcher
-# For Python 2.3
-if not hasattr(__builtins__, 'set'):
- from sets import Set as set
+try:
+ set
+except NameError:
+ from sets import Set as set # Python 2.3 fallback
# Values for Relation.edit_inline.
TABULAR, STACKED = 1, 2
diff --git a/django/db/models/query.py b/django/db/models/query.py
index a6e702be18..8a43b1c90f 100644
--- a/django/db/models/query.py
+++ b/django/db/models/query.py
@@ -7,9 +7,10 @@ from django.contrib.contenttypes import generic
import operator
import re
-# For Python 2.3
-if not hasattr(__builtins__, 'set'):
- from sets import Set as set
+try:
+ set
+except NameError:
+ from sets import Set as set # Python 2.3 fallback
# The string constant used to separate query parts
LOOKUP_SEPARATOR = '__'
diff --git a/django/newforms/fields.py b/django/newforms/fields.py
index b73dd181e6..471318e95f 100644
--- a/django/newforms/fields.py
+++ b/django/newforms/fields.py
@@ -27,9 +27,9 @@ __all__ = (
EMPTY_VALUES = (None, '')
try:
- set # Only available in Python 2.4+
+ set
except NameError:
- from sets import Set as set # Python 2.3 fallback
+ from sets import Set as set # Python 2.3 fallback
try:
from decimal import Decimal
diff --git a/django/newforms/widgets.py b/django/newforms/widgets.py
index 6ee3177a25..b0c9a70f57 100644
--- a/django/newforms/widgets.py
+++ b/django/newforms/widgets.py
@@ -3,9 +3,10 @@ HTML Widget classes
"""
try:
- set # Only available in Python 2.4+
+ set
except NameError:
- from sets import Set as set # Python 2.3 fallback
+ from sets import Set as set # Python 2.3 fallback
+
from itertools import chain
from django.utils.datastructures import MultiValueDict
diff --git a/django/template/defaulttags.py b/django/template/defaulttags.py
index 0e26af0cac..66443fc3b3 100644
--- a/django/template/defaulttags.py
+++ b/django/template/defaulttags.py
@@ -8,8 +8,10 @@ from django.utils.itercompat import groupby
import sys
import re
-if not hasattr(__builtins__, 'reversed'):
- # For Python 2.3.
+try:
+ reversed
+except NameError:
+ # Python 2.3 fallback.
# From http://www.python.org/doc/current/tut/node11.html
def reversed(data):
for index in xrange(len(data)-1, -1, -1):