summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell Keith-Magee <russell@keith-magee.com>2011-04-02 08:36:40 +0000
committerRussell Keith-Magee <russell@keith-magee.com>2011-04-02 08:36:40 +0000
commit24b7d9017dc4a155c4cdbaa4823b3cc46f7f57ec (patch)
treeaaee6b2f03c630c7b6c0e3ee1092cdaada7093f5
parent5d5149cd18aa846be88ebcfae5997268359f67bb (diff)
Advanced deprecations in contrib.syndication.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@15976 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/contrib/syndication/feeds.py38
-rw-r--r--django/contrib/syndication/views.py44
2 files changed, 0 insertions, 82 deletions
diff --git a/django/contrib/syndication/feeds.py b/django/contrib/syndication/feeds.py
deleted file mode 100644
index f61b30a740..0000000000
--- a/django/contrib/syndication/feeds.py
+++ /dev/null
@@ -1,38 +0,0 @@
-from django.contrib.syndication import views
-from django.core.exceptions import ObjectDoesNotExist
-import warnings
-
-# This is part of the deprecated API
-from django.contrib.syndication.views import FeedDoesNotExist, add_domain
-
-class Feed(views.Feed):
- """Provided for backwards compatibility."""
- def __init__(self, slug, request):
- warnings.warn('The syndication feeds.Feed class is deprecated. Please '
- 'use the new class based view API.',
- category=DeprecationWarning)
-
- self.slug = slug
- self.request = request
- self.feed_url = getattr(self, 'feed_url', None) or request.path
- self.title_template = self.title_template or ('feeds/%s_title.html' % slug)
- self.description_template = self.description_template or ('feeds/%s_description.html' % slug)
-
- def get_object(self, bits):
- return None
-
- def get_feed(self, url=None):
- """
- Returns a feedgenerator.DefaultFeed object, fully populated, for
- this feed. Raises FeedDoesNotExist for invalid parameters.
- """
- if url:
- bits = url.split('/')
- else:
- bits = []
- try:
- obj = self.get_object(bits)
- except ObjectDoesNotExist:
- raise FeedDoesNotExist
- return super(Feed, self).get_feed(obj, self.request)
-
diff --git a/django/contrib/syndication/views.py b/django/contrib/syndication/views.py
index dbb9eee4ab..8e7c1d125c 100644
--- a/django/contrib/syndication/views.py
+++ b/django/contrib/syndication/views.py
@@ -183,47 +183,3 @@ class Feed(object):
**self.item_extra_kwargs(item)
)
return feed
-
-
-def feed(request, url, feed_dict=None):
- """Provided for backwards compatibility."""
- from django.contrib.syndication.feeds import Feed as LegacyFeed
- import warnings
- warnings.warn('The syndication feed() view is deprecated. Please use the '
- 'new class based view API.',
- category=DeprecationWarning)
-
- if not feed_dict:
- raise Http404("No feeds are registered.")
-
- try:
- slug, param = url.split('/', 1)
- except ValueError:
- slug, param = url, ''
-
- try:
- f = feed_dict[slug]
- except KeyError:
- raise Http404("Slug %r isn't registered." % slug)
-
- # Backwards compatibility within the backwards compatibility;
- # Feeds can be updated to be class-based, but still be deployed
- # using the legacy feed view. This only works if the feed takes
- # no arguments (i.e., get_object returns None). Refs #14176.
- if not issubclass(f, LegacyFeed):
- instance = f()
- instance.feed_url = getattr(f, 'feed_url', None) or request.path
- instance.title_template = f.title_template or ('feeds/%s_title.html' % slug)
- instance.description_template = f.description_template or ('feeds/%s_description.html' % slug)
-
- return instance(request)
-
- try:
- feedgen = f(slug, request).get_feed(param)
- except FeedDoesNotExist:
- raise Http404("Invalid feed parameters. Slug %r is valid, but other parameters, or lack thereof, are not." % slug)
-
- response = HttpResponse(mimetype=feedgen.mime_type)
- feedgen.write(response, 'utf-8')
- return response
-