Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Added DEBUG_PROPAGATE_EXCEPTIONS setting that helps testing under e.g…

…. twill

git-svn-id: http://code.djangoproject.com/svn/django/trunk@7537 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 8c9fceebb1c682401779956a787d73710feb5e6d 1 parent 6f76b9f
@spookylukey spookylukey authored
View
4 django/conf/global_settings.py
@@ -11,6 +11,10 @@
DEBUG = False
TEMPLATE_DEBUG = False
+# True if BaseHandler.get_response() should propagate raw exceptions
+# rather than catching them. This is useful under some testing siutations,
+# and should never be used on a live site.
+DEBUG_PROPAGATE_EXCEPTIONS = False
# Whether to use the "Etag" header. This saves bandwidth but slows down performance.
USE_ETAGS = False
View
5 django/core/handlers/base.py
@@ -115,7 +115,10 @@ def get_response(self, request):
# Get the exception info now, in case another exception is thrown later.
exc_info = sys.exc_info()
receivers = dispatcher.send(signal=signals.got_request_exception, request=request)
- if settings.DEBUG:
+
+ if settings.DEBUG_PROPAGATE_EXCEPTIONS:
+ raise
+ elif settings.DEBUG:
from django.views import debug
return debug.technical_500_response(request, *exc_info)
else:
View
10 docs/settings.txt
@@ -391,6 +391,16 @@ are inappropriate for public consumption. File paths, configuration options, and
the like all give attackers extra information about your server. Never deploy a
site with ``DEBUG`` turned on.
+DEBUG_PROPAGATE_EXCEPTIONS
+--------------------
+
+Default: ``False``
+
+If set to True, Django's normal exception handling of view functions
+will be suppressed, and exceptions will propagate upwards. This can
+be useful for some test setups, and should never be used on a live
+site.
+
DEFAULT_CHARSET
---------------
Please sign in to comment.
Something went wrong with that request. Please try again.