@@ -25,9 +25,24 @@ Backwards-incompatible changes
25
25
of the websocket protocol by default, although this version can
26
26
be enabled by overriding `tornado.websocket.WebSocketHandler.allow_draft76 `.
27
27
28
+ ``tornado.httpclient ``
29
+ ~~~~~~~~~~~~~~~~~~~~~~
28
30
29
- ``IOLoop `` and ``IOStream ``
30
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
31
+ * `SimpleAsyncHTTPClient ` no longer hangs on ``HEAD `` requests,
32
+ responses with no content, or empty ``POST ``/``PUT `` response bodies.
33
+ * `SimpleAsyncHTTPClient ` now supports 303 and 307 redirect codes.
34
+ * `tornado.curl_httpclient ` now accepts non-integer timeouts.
35
+
36
+ ``tornado.httpserver ``
37
+ ~~~~~~~~~~~~~~~~~~~~~~
38
+
39
+ * `HTTPServer ` with ``xheaders=True `` will no longer accept
40
+ ``X-Real-IP `` headers that don't look like valid IP addresses.
41
+ * `HTTPServer ` now treats the ``Connection `` request header as
42
+ case-insensitive.
43
+
44
+ ``tornado.ioloop `` and ``tornado.iostream ``
45
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31
46
32
47
* `IOStream.write ` now works correctly when given an empty string.
33
48
* `IOStream.read_until ` (and ``read_until_regex ``) now perform better
@@ -57,44 +72,49 @@ Backwards-incompatible changes
57
72
status codes other than 301 and 302.
58
73
* New method `RequestHandler.on_finish ` may be overridden for post-request
59
74
processing (as a counterpart to `RequestHandler.prepare `)
75
+ * `StaticFileHandler ` now outputs ``Content-Length `` and ``Etag `` headers
76
+ on ``HEAD `` requests.
77
+ * `StaticFileHandler ` now has overridable ``get_version `` and
78
+ ``parse_url_path `` methods for use in subclasses.
79
+ * `RequestHandler.static_url ` now takes an ``include_host `` parameter
80
+ (in addition to the old support for the `RequestHandler.include_host `
81
+ attribute).
60
82
61
83
``tornado.websocket ``
62
84
~~~~~~~~~~~~~~~~~~~~~
63
85
64
86
* Updated to support the latest version of the protocol, as finalized
65
87
in RFC 6455.
88
+ * Many bugs were fixed in all supported protocol versions.
66
89
* `tornado.websocket ` no longer supports the older "draft 76" version
67
90
of the websocket protocol by default, although this version can
68
91
be enabled by overriding `tornado.websocket.WebSocketHandler.allow_draft76 `.
69
92
* `WebSocketHandler.write_message ` now accepts a ``binary `` argument
70
93
to send binary messages.
94
+ * Subprotocols (i.e. the ``Sec-WebSocket-Protocol `` header) are now supported;
95
+ see the `WebSocketHandler.select_subprotocol ` method for details.
96
+ * `WebSocketHandler.get_websocket_scheme ` can be used to select the
97
+ appropriate url scheme (``ws:// `` or ``wss:// ``) in cases where
98
+ `HTTPRequest.protocol ` is not set correctly.
71
99
72
100
Other modules
73
101
~~~~~~~~~~~~~
74
102
75
- * `SimpleAsyncHTTPClient ` no longer hangs on ``HEAD `` requests,
76
- responses with no content, or empty ``POST ``/``PUT `` response bodies.
77
- * `SimpleAsyncHTTPClient ` now supports 303 and 307 redirect codes.
103
+ * `tornado.auth.TwitterMixin.authenticate_redirect ` now takes a
104
+ ``callback_uri `` parameter.
105
+ * `tornado.auth.TwitterMixin.twitter_request ` now accepts both URLs and
106
+ partial paths (complete URLs are useful for the search API which follows
107
+ different patterns).
108
+ * Exception handling in `tornado.gen ` has been improved. It is now possible
109
+ to catch exceptions thrown by a ``Task ``.
110
+ * `tornado.netutil.bind_sockets ` now works when ``getaddrinfo `` returns
111
+ duplicate addresses.
78
112
* `tornado.platform.twisted ` compatibility has been significantly improved.
79
113
Twisted version 11.1.0 is now supported in addition to 11.0.0.
114
+ * `tornado.process.fork_processes ` correctly reseeds the `random ` module
115
+ even when `os.urandom ` is not implemented.
80
116
* `tornado.testing.main ` supports a new flag ``--exception_on_interrupt ``,
81
117
which can be set to false to make ``Ctrl-C `` kill the process more
82
118
reliably (at the expense of stack traces when it does so).
83
- * `tornado.process.fork_processes ` correctly reseeds the `random ` module
84
- even when `os.urandom ` is not implemented.
85
- * `HTTPServer ` with ``xheaders=True `` will no longer accept
86
- ``X-Real-IP `` headers that don't look like valid IP addresses.
87
- * `HTTPServer ` now treats the ``Connection `` request header as
88
- case-insensitive.
89
- * Exception handling in `tornado.gen ` has been improved. It is now possible
90
- to catch exceptions thrown by a ``Task ``.
91
- * `tornado.netutil.bind_sockets ` now works when ``getaddrinfo `` returns
92
- duplicate addresses.
93
119
* `tornado.version_info ` is now a four-tuple so official releases can be
94
120
distinguished from development branches.
95
- * `tornado.curl_httpclient ` now accepts non-integer timeouts.
96
- * `tornado.auth.TwitterMixin.authenticate_redirect ` now takes a
97
- ``callback_uri `` parameter.
98
- * `tornado.auth.TwitterMixin.twitter_request ` now accepts both URLs and
99
- partial paths (complete URLs are useful for the search API which follows
100
- different patterns).
0 commit comments