]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
Add 2.0 release notes
authorBen Darnell <ben@bendarnell.com>
Wed, 22 Jun 2011 05:28:20 +0000 (22:28 -0700)
committerBen Darnell <ben@bendarnell.com>
Wed, 22 Jun 2011 05:28:20 +0000 (22:28 -0700)
website/sphinx/releases.rst
website/sphinx/releases/v2.0.0.rst [new file with mode: 0644]

index 9baaab88874a52a78f0bb2956dc7a393983b83f5..69606afc4cef0f1bd939d920bf8ca91e32270c57 100644 (file)
@@ -4,6 +4,7 @@ Release notes
 .. toctree::
    :maxdepth: 2
 
+   releases/v2.0.0
    releases/v1.2.1
    releases/v1.2.0
    releases/v1.1.1
diff --git a/website/sphinx/releases/v2.0.0.rst b/website/sphinx/releases/v2.0.0.rst
new file mode 100644 (file)
index 0000000..f53432b
--- /dev/null
@@ -0,0 +1,52 @@
+What's new in Tornado 2.0
+=========================
+
+Jun 21, 2011
+------------
+
+::
+
+    Major changes:
+    * Template output is automatically escaped by default; see backwards
+      compatibility note below.
+    * The default AsyncHTTPClient implementation is now simple_httpclient.
+    * Python 3.2 is now supported.
+
+    Backwards compatibility:
+    * Template autoescaping is enabled by default.  Applications upgrading from
+      a previous release of Tornado must either disable autoescaping or adapt
+      their templates to work with it.  For most applications, the simplest
+      way to do this is to pass autoescape=None to the Application constructor.
+    * Applications that wish to continue using curl_httpclient instead of
+      simple_httpclient may do so by calling
+        AsyncHTTPClient.configure("tornado.curl_httpclient.CurlAsyncHTTPClient")
+      at the beginning of the process.  Users of Python 2.5 will probably want
+      to use curl_httpclient as simple_httpclient only supports ssl on Python 2.6+.
+    * Python 3 compatibility involved many changes throughout the codebase,
+      so users are encouraged to test their applications more thoroughly than
+      usual when upgrading to this release.
+
+    Other changes in this release:
+    * Templates support several new directives:
+      - {% autoescape ...%} to control escaping behavior
+      - {% raw ... %} for unescaped output
+      - {% module ... %} for calling UIModules
+    * {% module Template(path, **kwargs) %} may now be used to call another
+      template with an independent namespace
+    * All IOStream callbacks are now run directly on the IOLoop via add_callback.
+    * HTTPServer now supports IPv6 where available.  To disable, pass
+      family=socket.AF_INET to HTTPServer.bind().
+    * HTTPClient now supports IPv6, configurable via allow_ipv6=bool on the
+      HTTPRequest.  allow_ipv6 defaults to false on simple_httpclient and true
+      on curl_httpclient.
+    * RequestHandlers can use an encoding other than utf-8 for query parameters
+      by overriding decode_argument()
+    * Performance improvements, especially for applications that use a lot of
+      IOLoop timeouts
+    * HTTP OPTIONS method no longer requires an XSRF token.
+    * JSON output (RequestHandler.write(dict)) now sets Content-Type to
+      application/json
+    * Etag computation can now be customized or disabled by overriding
+      RequestHandler.compute_etag
+    * USE_SIMPLE_HTTPCLIENT environment variable is no longer supported.
+      Use AsyncHTTPClient.configure instead.