diff --git a/buildout.cfg b/buildout.cfg index e00aa9f..8b91acf 100644 --- a/buildout.cfg +++ b/buildout.cfg @@ -13,7 +13,7 @@ develop = [django] recipe = djangorecipe -version = 1.2.1 +version = 1.2.5 settings = settings eggs = ${buildout:eggs} test = djangopypi diff --git a/chishop/templates/registration/login.html b/chishop/templates/registration/login.html index 6c7f799..a8ab11b 100644 --- a/chishop/templates/registration/login.html +++ b/chishop/templates/registration/login.html @@ -1,8 +1,8 @@ {% extends "base_site.html" %} {% block content %} -
+{% csrf_token %} {{form.as_p}} - +
{% endblock %} diff --git a/chishop/templates/registration/registration_form.html b/chishop/templates/registration/registration_form.html index 719a875..bccf8d1 100644 --- a/chishop/templates/registration/registration_form.html +++ b/chishop/templates/registration/registration_form.html @@ -2,7 +2,8 @@ {% block content %}

Register

-
+{% csrf_token %} {{form.as_p}} - + +
{% endblock %} diff --git a/src/djangopypi/Changelog b/src/djangopypi/Changelog index d93dcca..fb30d19 100644 --- a/src/djangopypi/Changelog +++ b/src/djangopypi/Changelog @@ -1,10 +1,11 @@ History ======= -0.4.2 (2011-02-08) +0.4.2 (2011-02-21) ------------------ * Added CSRF support for Django>=1.2 +* Added conditional support to proxy packages not indexed 0.4.1 (2010-06-17) ------------------ diff --git a/src/djangopypi/djangopypi/settings.py b/src/djangopypi/djangopypi/settings.py index 5fe595e..83a8493 100644 --- a/src/djangopypi/djangopypi/settings.py +++ b/src/djangopypi/djangopypi/settings.py @@ -97,3 +97,13 @@ if not hasattr(settings,'DJANGOPYPI_ACTION_VIEWS'): "submit": distutils.register_or_upload, #``register`` command "list_classifiers": distutils.list_classifiers, #``list_classifiers`` command } + +""" These settings enable proxying of packages that are not in the local index +to another index, http://pypi.python.org/ by default. This feature is disabled +by default and can be enabled by setting DJANGOPYPI_PROXY_MISSING to True in +your settings file. """ +if not hasattr(settings, 'DJANGOPYPI_PROXY_BASE_URL'): + settings.DJANGOPYPI_PROXY_BASE_URL = 'http://pypi.python.org/simple' + +if not hasattr(settings, 'DJANGOPYPI_PROXY_MISSING'): + settings.DJANGOPYPI_PROXY_MISSING = False diff --git a/src/djangopypi/djangopypi/urls.py b/src/djangopypi/djangopypi/urls.py index 90abe81..f7001f2 100644 --- a/src/djangopypi/djangopypi/urls.py +++ b/src/djangopypi/djangopypi/urls.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -from django.conf.urls.defaults import patterns, url, include +from django.conf.urls.defaults import patterns, url from djangopypi.feeds import ReleaseFeed urlpatterns = patterns("djangopypi.views", diff --git a/src/djangopypi/djangopypi/views/packages.py b/src/djangopypi/djangopypi/views/packages.py index 77a3ea3..70b2ba8 100644 --- a/src/djangopypi/djangopypi/views/packages.py +++ b/src/djangopypi/djangopypi/views/packages.py @@ -1,5 +1,6 @@ from django.conf import settings from django.db.models.query import Q +from django.http import Http404, HttpResponseRedirect from django.forms.models import inlineformset_factory from django.shortcuts import get_object_or_404, render_to_response from django.template import RequestContext @@ -27,7 +28,14 @@ def details(request, package, **kwargs): def simple_details(request, package, **kwargs): kwargs.setdefault('template_name', 'djangopypi/package_detail_simple.html') - return details(request, package, **kwargs) + try: + return details(request, package, **kwargs) + except Http404, e: + if settings.DJANGOPYPI_PROXY_MISSING: + return HttpResponseRedirect('%s/%s/' % + (settings.DJANGOPYPI_PROXY_BASE_URL.rstrip('/'), + package)) + raise e def doap(request, package, **kwargs): kwargs.setdefault('template_name', 'djangopypi/package_doap.xml') diff --git a/src/djangopypi/setup.cfg b/src/djangopypi/setup.cfg index 5786d4d..bd36a8d 100644 --- a/src/djangopypi/setup.cfg +++ b/src/djangopypi/setup.cfg @@ -1,2 +1,2 @@ [bdist_rpm] -doc_files = AUTHORS CHANGELOG LICENSE README TODO \ No newline at end of file +doc_files = AUTHORS Changelog LICENSE README TODO \ No newline at end of file