extensions.append(distutils.core.Extension(
"tornado.epoll", ["tornado/epoll.c"]))
-version = "2.4.post1"
+version = "2.4.post2"
if major >= 3:
import setuptools # setuptools is required for use_2to3
# is zero for an official release, positive for a development branch,
# or negative for a release candidate (after the base version number
# has been incremented)
-version = "2.4.post1"
-version_info = (2, 4, 0, 1)
+version = "2.4.post2"
+version_info = (2, 4, 0, 2)
response code the same as a 303. This is contrary to the HTTP spec
but consistent with all browsers and other major HTTP clients
(including `CurlAsyncHTTPClient`).
-* Fixed a bug with `IOStream.read_until_close` with a ``streaming_callback``,
- which would cause some data to be passed to the final callback instead
- of the streaming callback.
* The `tornado.auth` mixin classes now define a method
``get_auth_http_client``, which can be overridden to use a non-default
`AsyncHTTPClient` instance (e.g. to use a different `IOLoop`)
-* `tornado.auth.TwitterMixin` now works on Python 3.
* ``Etag``/``If-None-Match`` requests now work with `StaticFileHandler`.
* `StaticFileHandler` no longer sets ``Cache-Control: public`` unnecessarily.
* The behavior of ``header_callback`` with `SimpleAsyncHTTPClient` has