Until 0.3.3 Mako was compatible with appengine.
Then 0.3.4 came, and Mako is not compatible any more.
The solution: Don't assume markupsafe is installed. It markupsafe is not installed, just fall backwards to the original html escape code.
+try: + import markupsafe + def html_escape(string): + return markupsafe.escape(string) +except: + html_escape = legacy_html_escape