<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: autoescaping</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/autoescaping.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2008-07-22T06:04:29+00:00</updated><author><name>Simon Willison</name></author><entry><title>Django 1.0 alpha release notes</title><link href="https://simonwillison.net/2008/Jul/22/alpha/#atom-tag" rel="alternate"/><published>2008-07-22T06:04:29+00:00</published><updated>2008-07-22T06:04:29+00:00</updated><id>https://simonwillison.net/2008/Jul/22/alpha/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.djangoproject.com/documentation/release_notes_1.0_alpha/"&gt;Django 1.0 alpha release notes&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
The big features are newforms-admin, unicode everywhere, the queryset-refactor ORM improvements and auto-escaping in templates.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/alpha"&gt;alpha&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/autoescaping"&gt;autoescaping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django-admin"&gt;django-admin&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/newformsadmin"&gt;newformsadmin&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/orm"&gt;orm&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/querysetrefactor"&gt;querysetrefactor&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/unicode"&gt;unicode&lt;/a&gt;&lt;/p&gt;



</summary><category term="alpha"/><category term="autoescaping"/><category term="django"/><category term="django-admin"/><category term="newformsadmin"/><category term="orm"/><category term="python"/><category term="querysetrefactor"/><category term="unicode"/></entry><entry><title>Jinja2 Final aka Jinjavitus Released</title><link href="https://simonwillison.net/2008/Jul/19/jinja2/#atom-tag" rel="alternate"/><published>2008-07-19T23:52:34+00:00</published><updated>2008-07-19T23:52:34+00:00</updated><id>https://simonwillison.net/2008/Jul/19/jinja2/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://lucumr.pocoo.org/cogitations/2008/07/17/jinja2-final-aka-jinjavitus-released/"&gt;Jinja2 Final aka Jinjavitus Released&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
The Jinja template engine now has auto-escaping as an optional feature, disabled by default. Worth considering as an almost drop-in replacement for Django’s template language if features such as macros and compilation to Python code appeal to you.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/autoescaping"&gt;autoescaping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/jinja"&gt;jinja&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;&lt;/p&gt;



</summary><category term="autoescaping"/><category term="django"/><category term="jinja"/><category term="python"/></entry><entry><title>Why the h can't Rails escape HTML automatically?</title><link href="https://simonwillison.net/2007/Dec/1/rails/#atom-tag" rel="alternate"/><published>2007-12-01T20:34:08+00:00</published><updated>2007-12-01T20:34:08+00:00</updated><id>https://simonwillison.net/2007/Dec/1/rails/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://railswarts.blogspot.com/2007/12/why-h-cant-rails-escape-automatically.html"&gt;Why the h can&amp;#x27;t Rails escape HTML automatically?&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
It would be a pretty huge change, but auto-escaping in Rails 2.0 could close up a lot of accidental XSS holes.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/autoescaping"&gt;autoescaping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/rails"&gt;rails&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/security"&gt;security&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/xss"&gt;xss&lt;/a&gt;&lt;/p&gt;



</summary><category term="autoescaping"/><category term="django"/><category term="rails"/><category term="security"/><category term="xss"/></entry><entry><title>Django Changeset 6671</title><link href="https://simonwillison.net/2007/Nov/14/changeset/#atom-tag" rel="alternate"/><published>2007-11-14T17:05:55+00:00</published><updated>2007-11-14T17:05:55+00:00</updated><id>https://simonwillison.net/2007/Nov/14/changeset/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://code.djangoproject.com/changeset/6671"&gt;Django Changeset 6671&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Malcolm Tredinnick: “Implemented auto-escaping of variable output in templates”. Fantastic—Django now has protection against accidental XSS holes, turned on by default.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/autoescaping"&gt;autoescaping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/malcolm-tredinnick"&gt;malcolm-tredinnick&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/security"&gt;security&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/templating"&gt;templating&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/xss"&gt;xss&lt;/a&gt;&lt;/p&gt;



</summary><category term="autoescaping"/><category term="django"/><category term="malcolm-tredinnick"/><category term="python"/><category term="security"/><category term="templating"/><category term="xss"/></entry></feed>