Skip to content

Commit a339163

Browse files
committed
Add 2.0 release notes
1 parent 3e2ed8c commit a339163

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

website/sphinx/releases.rst

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Release notes
44
.. toctree::
55
:maxdepth: 2
66

7+
releases/v2.0.0
78
releases/v1.2.1
89
releases/v1.2.0
910
releases/v1.1.1

website/sphinx/releases/v2.0.0.rst

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
What's new in Tornado 2.0
2+
=========================
3+
4+
Jun 21, 2011
5+
------------
6+
7+
::
8+
9+
Major changes:
10+
* Template output is automatically escaped by default; see backwards
11+
compatibility note below.
12+
* The default AsyncHTTPClient implementation is now simple_httpclient.
13+
* Python 3.2 is now supported.
14+
15+
Backwards compatibility:
16+
* Template autoescaping is enabled by default. Applications upgrading from
17+
a previous release of Tornado must either disable autoescaping or adapt
18+
their templates to work with it. For most applications, the simplest
19+
way to do this is to pass autoescape=None to the Application constructor.
20+
* Applications that wish to continue using curl_httpclient instead of
21+
simple_httpclient may do so by calling
22+
AsyncHTTPClient.configure("tornado.curl_httpclient.CurlAsyncHTTPClient")
23+
at the beginning of the process. Users of Python 2.5 will probably want
24+
to use curl_httpclient as simple_httpclient only supports ssl on Python 2.6+.
25+
* Python 3 compatibility involved many changes throughout the codebase,
26+
so users are encouraged to test their applications more thoroughly than
27+
usual when upgrading to this release.
28+
29+
Other changes in this release:
30+
* Templates support several new directives:
31+
- {% autoescape ...%} to control escaping behavior
32+
- {% raw ... %} for unescaped output
33+
- {% module ... %} for calling UIModules
34+
* {% module Template(path, **kwargs) %} may now be used to call another
35+
template with an independent namespace
36+
* All IOStream callbacks are now run directly on the IOLoop via add_callback.
37+
* HTTPServer now supports IPv6 where available. To disable, pass
38+
family=socket.AF_INET to HTTPServer.bind().
39+
* HTTPClient now supports IPv6, configurable via allow_ipv6=bool on the
40+
HTTPRequest. allow_ipv6 defaults to false on simple_httpclient and true
41+
on curl_httpclient.
42+
* RequestHandlers can use an encoding other than utf-8 for query parameters
43+
by overriding decode_argument()
44+
* Performance improvements, especially for applications that use a lot of
45+
IOLoop timeouts
46+
* HTTP OPTIONS method no longer requires an XSRF token.
47+
* JSON output (RequestHandler.write(dict)) now sets Content-Type to
48+
application/json
49+
* Etag computation can now be customized or disabled by overriding
50+
RequestHandler.compute_etag
51+
* USE_SIMPLE_HTTPCLIENT environment variable is no longer supported.
52+
Use AsyncHTTPClient.configure instead.

0 commit comments

Comments
 (0)