Added comment to why __unicode__ goes after __str__.
--HG--
branch : trunk
diff --git a/jinja2/exceptions.py b/jinja2/exceptions.py
index 4df8324..69a877b 100644
--- a/jinja2/exceptions.py
+++ b/jinja2/exceptions.py
@@ -44,6 +44,10 @@
def __str__(self):
return self.message.encode('utf-8')
+ # unicode goes after __str__ because we configured 2to3 to rename
+ # __unicode__ to __str__. because the 2to3 tree is not designed to
+ # remove nodes from it, we leave the above __str__ around and let
+ # it override at runtime.
def __unicode__(self):
return self.message
@@ -81,6 +85,10 @@
def __str__(self):
return unicode(self).encode('utf-8')
+ # unicode goes after __str__ because we configured 2to3 to rename
+ # __unicode__ to __str__. because the 2to3 tree is not designed to
+ # remove nodes from it, we leave the above __str__ around and let
+ # it override at runtime.
def __unicode__(self):
# for translated errors we only return the message
if self.translated: