]> git.ipfire.org Git - thirdparty/tornado.git/log
thirdparty/tornado.git
7 years agohttputil: Fix rfc2231 for python2 2411/head
Ben Darnell [Sun, 3 Jun 2018 03:17:20 +0000 (23:17 -0400)] 
httputil: Fix rfc2231 for python2

Add a test that goes through parse_multipart_form_data

7 years agoMerge commit 'pull/origin/869' into multipart-filename
Ben Darnell [Sun, 3 Jun 2018 02:56:46 +0000 (22:56 -0400)] 
Merge commit 'pull/origin/869' into multipart-filename

7 years agoMerge pull request #2410 from garenchan/bugfix-demo-s3-server
Ben Darnell [Sat, 2 Jun 2018 16:41:52 +0000 (12:41 -0400)] 
Merge pull request #2410 from garenchan/bugfix-demo-s3-server

demo: update s3server to newest python

7 years agoMerge pull request #2406 from kaishuu0123/fix/demo-blog-compose
Ben Darnell [Sat, 2 Jun 2018 16:39:08 +0000 (12:39 -0400)] 
Merge pull request #2406 from kaishuu0123/fix/demo-blog-compose

fix blog demo. (GET ComposeHandler)

7 years agodemo: update s3server to newest python 2410/head
chengkang [Fri, 1 Jun 2018 14:03:00 +0000 (22:03 +0800)] 
demo: update s3server to newest python

7 years agofix blog demo. (GET ComposeHandler) 2406/head
Koki Oyatsu [Wed, 30 May 2018 15:40:25 +0000 (00:40 +0900)] 
fix blog demo. (GET ComposeHandler)

7 years agoMerge pull request #2402 from ploxiln/pycurl_py3_justbytes
Ben Darnell [Mon, 28 May 2018 00:25:52 +0000 (20:25 -0400)] 
Merge pull request #2402 from ploxiln/pycurl_py3_justbytes

CurlAsyncHTTPClient: remove ubuntu-12.10 python3 fix

7 years agoCurlAsyncHTTPClient: remove ubuntu-12.10 python3 fix 2402/head
Pierce Lopez [Thu, 24 May 2018 15:48:38 +0000 (11:48 -0400)] 
CurlAsyncHTTPClient: remove ubuntu-12.10 python3 fix

No need to utf8() what is passed to WRITEFUNCTION, it will always
be bytes on python3 for upstream pycurl on python3.
The ubuntu-12.10 variant is long gone.

7 years agoMerge pull request #2397 from bdarnell/password-encoding
Ben Darnell [Sun, 20 May 2018 21:15:17 +0000 (17:15 -0400)] 
Merge pull request #2397 from bdarnell/password-encoding

httpclient: Support non-ascii characters in usernames and passwords

7 years agohttpclient: Improve non-ascii characters in HTTP auth 2397/head
Ben Darnell [Sun, 20 May 2018 18:37:09 +0000 (14:37 -0400)] 
httpclient: Improve non-ascii characters in HTTP auth

- Use NFC as required by the spec
- Fix string-concat exceptions on py2
- Test both curl and simple http clients for basic auth
- Do the same for proxy auth in curl

7 years agoFix non-ascii characters support in curl_httpclient username and password
Piotr Tylenda [Mon, 8 May 2017 19:33:04 +0000 (21:33 +0200)] 
Fix non-ascii characters support in curl_httpclient username and password

7 years agoMerge pull request #2395 from bdarnell/deflake
Ben Darnell [Sun, 20 May 2018 15:47:23 +0000 (11:47 -0400)] 
Merge pull request #2395 from bdarnell/deflake

asyncio: Fix a race between close and initialize

7 years agoasyncio: Fix a race between close and initialize 2395/head
Ben Darnell [Sun, 20 May 2018 15:28:03 +0000 (11:28 -0400)] 
asyncio: Fix a race between close and initialize

The close method of one IOLoop could race with the initialize method
of another one, leading to KeyErrors raised in close().

Fixes #2367

7 years agotest: Fix ResolveTimeoutTestCase
Ben Darnell [Sun, 20 May 2018 15:10:45 +0000 (11:10 -0400)] 
test: Fix ResolveTimeoutTestCase

The dummy resolver used here was not correctly adapted for changes in
netutil, and as a result the test was incorrect (it checked for
TypeError instead of a timeout) and flaky (occasionally it would get a
timeout error anyway).

7 years agoMerge pull request #2393 from bdarnell/autoreload-wrapper
Ben Darnell [Sun, 20 May 2018 14:51:28 +0000 (10:51 -0400)] 
Merge pull request #2393 from bdarnell/autoreload-wrapper

autoreload: Preserve wrapper with internal reload

7 years agoautoreload: Improve autoreload wrapper on windows 2393/head
Ben Darnell [Sun, 20 May 2018 03:28:45 +0000 (23:28 -0400)] 
autoreload: Improve autoreload wrapper on windows

On platforms without execv(), we must spawn a separate subprocess.
This breaks down when an internal autoreload is firing in a wrapped
process, since the internal reload raises an exception with the
wrapper catches (triggering a second reload and another copy of the
process).

7 years agoautoreload: Fix wrapper preservation for Python 3
Ben Darnell [Sat, 19 May 2018 14:24:13 +0000 (10:24 -0400)] 
autoreload: Fix wrapper preservation for Python 3

The `spec` branch needs special handling too. Update the test to
correctly test the desired situation (and simplify by removing the
separate toucher process).

7 years agoMerge pull request #2394 from bdarnell/finish-return-future
Ben Darnell [Sun, 20 May 2018 02:53:44 +0000 (22:53 -0400)] 
Merge pull request #2394 from bdarnell/finish-return-future

web: finish() and render() now return Futures

7 years agoMerge pull request #2392 from bdarnell/enoprotoopt
Ben Darnell [Sun, 20 May 2018 00:46:23 +0000 (20:46 -0400)] 
Merge pull request #2392 from bdarnell/enoprotoopt

iostream,netutil: Ignore ENOPROTOOPT errors from SO_REUSEADDR or SO_ERROR

7 years agoweb: Also return a Future from render() 2394/head
Ben Darnell [Sun, 20 May 2018 00:44:56 +0000 (20:44 -0400)] 
web: Also return a Future from render()

Improve tests.

7 years agoAdd testcase for finish method of RequestHandler
luojiebin [Fri, 15 Dec 2017 17:11:19 +0000 (01:11 +0800)] 
Add testcase for finish method of RequestHandler

7 years agoReturn a Future from finish method of RequestHandler
luojiebin [Fri, 15 Dec 2017 17:10:32 +0000 (01:10 +0800)] 
Return a Future from finish method of RequestHandler

7 years agoremove redundant code
Steve [Mon, 22 Jan 2018 01:22:37 +0000 (18:22 -0700)] 
remove redundant code

7 years agofix autoreload argv perservation
Steve [Tue, 19 Dec 2017 14:27:57 +0000 (22:27 +0800)] 
fix autoreload argv perservation

7 years agoiostream,netutil: PR feedback from #2353 2392/head
Ben Darnell [Fri, 18 May 2018 18:45:42 +0000 (14:45 -0400)] 
iostream,netutil: PR feedback from #2353

- Don't swallow errors from SO_REUSEPORT since it's opt-in.
- Use errno_from_exception.
- Add comments

7 years agoIgnore ENOPROTOOPT errors from SO_REUSEADDR or SO_ERROR
Ondřej Nový [Wed, 11 Apr 2018 14:17:04 +0000 (16:17 +0200)] 
Ignore ENOPROTOOPT errors from SO_REUSEADDR or SO_ERROR

Some systems, for example Hurd doesn't support SO_REUSEADDR.

7 years agoMerge pull request #2391 from bdarnell/websocket-decompress-limit
Ben Darnell [Sat, 19 May 2018 23:10:22 +0000 (19:10 -0400)] 
Merge pull request #2391 from bdarnell/websocket-decompress-limit

websocket: Limit post-decompression size of received messages

7 years agowebsocket: Limit post-decompression size of received messages 2391/head
Ben Darnell [Sat, 19 May 2018 15:11:21 +0000 (11:11 -0400)] 
websocket: Limit post-decompression size of received messages

Protects against memory exhaustion DoS attacks.

7 years agoMerge pull request #2390 from bdarnell/lint
Ben Darnell [Fri, 18 May 2018 18:42:02 +0000 (14:42 -0400)] 
Merge pull request #2390 from bdarnell/lint

Fix lint checks

7 years agoFix lint checks 2390/head
Ben Darnell [Fri, 18 May 2018 18:01:03 +0000 (14:01 -0400)] 
Fix lint checks

This was being run from the wrong directory in CI so some errors had
slipped in.

7 years agoMerge pull request #2389 from peacetara/peacetara-patch-1
Ben Darnell [Fri, 18 May 2018 14:11:16 +0000 (10:11 -0400)] 
Merge pull request #2389 from peacetara/peacetara-patch-1

add expires docs to set_cookie.

7 years agoadd expires docs to set_cookie. 2389/head
peacetara [Thu, 17 May 2018 17:09:36 +0000 (10:09 -0700)] 
add expires docs to set_cookie.

update set_cookie docstring to explain what expires will accept and behave properly, without having to go track down httputil.format_timestamp, which is not exposed in the docs(that I could find).

7 years agoMerge pull request #2386 from bdarnell/demos
Ben Darnell [Sun, 13 May 2018 19:44:57 +0000 (15:44 -0400)] 
Merge pull request #2386 from bdarnell/demos

demos: Update demos to modern interfaces

7 years agodemos: Update webspider demo to python 3 2386/head
Ben Darnell [Sun, 13 May 2018 18:54:17 +0000 (14:54 -0400)] 
demos: Update webspider demo to python 3

7 years agodemos: Simplify chat demo using a Condition
Ben Darnell [Sun, 13 May 2018 17:11:08 +0000 (13:11 -0400)] 
demos: Simplify chat demo using a Condition

7 years agodemos: Move facebook demo to non-deprecated interfaces
Ben Darnell [Sun, 13 May 2018 16:29:06 +0000 (12:29 -0400)] 
demos: Move facebook demo to non-deprecated interfaces

7 years agodemos: Move benchmarks to maint directory
Ben Darnell [Sun, 13 May 2018 15:57:12 +0000 (11:57 -0400)] 
demos: Move benchmarks to maint directory

7 years agodemos: Update blog demo
Ben Darnell [Sat, 12 May 2018 22:27:28 +0000 (18:27 -0400)] 
demos: Update blog demo

- Switch from MySQL to PostgreSQL/CockroachDB.
- Use (and require) Python 3.5+.
- Use aiopg instead of torndb.

7 years agoMerge pull request #2385 from bdarnell/websocket
Ben Darnell [Sat, 12 May 2018 22:30:54 +0000 (18:30 -0400)] 
Merge pull request #2385 from bdarnell/websocket

websocket: Subprotocols and open coroutines

7 years agowebsocket: Allow open to be a coroutine 2385/head
Ben Darnell [Sat, 12 May 2018 19:13:15 +0000 (15:13 -0400)] 
websocket: Allow open to be a coroutine

Fixes #2358

7 years agowebsocket: Improve subprotocol support
Ben Darnell [Sat, 12 May 2018 18:43:58 +0000 (14:43 -0400)] 
websocket: Improve subprotocol support

- Add client-side subprotocol option
- Add selected_subprotocol attribute to client and server objects
- Call select_subprotocol exactly once instead of only on non-empty
- Fix bug in previous select_subprotocol change when multiple
  subprotocols are offered
- Add tests

Updates #2281

7 years agoMerge pull request #2378 from bdarnell/docs-510
Ben Darnell [Sun, 6 May 2018 15:28:09 +0000 (11:28 -0400)] 
Merge pull request #2378 from bdarnell/docs-510

docs: Start release notes for 5.1

7 years agoconcurrent: Fully deprecate return_future 2378/head
Ben Darnell [Sun, 6 May 2018 02:43:08 +0000 (22:43 -0400)] 
concurrent: Fully deprecate return_future

It relies on ExceptionStackContext, so it should go away completely
instead of just losing its callback argument.

7 years agodocs: Update examples to modern interfaces
Ben Darnell [Sun, 6 May 2018 01:50:05 +0000 (21:50 -0400)] 
docs: Update examples to modern interfaces

Get rid of most uses of callbacks and convert most coroutines to
native form. The sphinx doctests now require python 3.

7 years agodocs: Start release notes for 5.1
Ben Darnell [Sat, 5 May 2018 18:56:47 +0000 (14:56 -0400)] 
docs: Start release notes for 5.1

7 years agoMerge pull request #2377 from bdarnell/wsgi-deprecation
Ben Darnell [Sat, 5 May 2018 18:54:12 +0000 (14:54 -0400)] 
Merge pull request #2377 from bdarnell/wsgi-deprecation

wsgi: Deprecate WSGIAdapter and WSGIApplication

7 years agowsgi: Document workaround for asyncio on multithreaded WSGI containers 2377/head
Ben Darnell [Sat, 5 May 2018 18:26:52 +0000 (14:26 -0400)] 
wsgi: Document workaround for asyncio on multithreaded WSGI containers

Fixes #2371

7 years agowsgi: Deprecate WSGIAdapter and WSGIApplication
Ben Darnell [Sat, 5 May 2018 18:10:33 +0000 (14:10 -0400)] 
wsgi: Deprecate WSGIAdapter and WSGIApplication

It's already kind of broken on Python 3 for multithreaded WSGI
containers, and it's going to be more difficult to maintain as we move
to native coroutines.

Updates #2371

7 years agoMerge pull request #2375 from bdarnell/web-deprecation
Ben Darnell [Fri, 4 May 2018 23:38:37 +0000 (19:38 -0400)] 
Merge pull request #2375 from bdarnell/web-deprecation

Deprecate web.asynchronous, stack_context, and more

7 years agoMerge pull request #2374 from a-pertsev/master
Ben Darnell [Fri, 4 May 2018 03:16:06 +0000 (23:16 -0400)] 
Merge pull request #2374 from a-pertsev/master

Use `log_exception` method in WebSocketProtocol instead of custom logging

7 years agoUse `log_exception` method in WebSocketProtocol instead of 2374/head
Alexei Pertsev [Thu, 3 May 2018 15:33:30 +0000 (18:33 +0300)] 
Use `log_exception` method in WebSocketProtocol instead of
custom logging. It is usefull if we need to add some custom
handlers for all unexpected exceptions for example.

7 years agotwisted: Deprecate TornadoReactor 2375/head
Ben Darnell [Fri, 27 Apr 2018 17:16:48 +0000 (13:16 -0400)] 
twisted: Deprecate TornadoReactor

This is unnecessary when the asyncio event loop can be used instead.

7 years agotesting: Deprecate stop/wait
Ben Darnell [Fri, 27 Apr 2018 16:45:26 +0000 (12:45 -0400)] 
testing: Deprecate stop/wait

Don't mark them for deletion in 6.0. They're used extensively in the
test suite and it's fairly harmless to keep them around.

7 years agostack_context: Deprecate ExceptionStackContext
Ben Darnell [Fri, 27 Apr 2018 16:08:23 +0000 (12:08 -0400)] 
stack_context: Deprecate ExceptionStackContext

Take extra care with the deprecation warnings since a few modules need
to continue using ExceptionStackContext for backwards compatibility
even though it is not needed in most cases and should not generate
warnings unless it is relied upon.

7 years agosimple_httpclient: Initial refactoring into coroutines
Ben Darnell [Fri, 27 Apr 2018 15:52:51 +0000 (11:52 -0400)] 
simple_httpclient: Initial refactoring into coroutines

Eliminates the use of ExceptionStackContext.

7 years agosimple_httpclient: Move _on_connect next to its caller
Ben Darnell [Fri, 27 Apr 2018 15:26:48 +0000 (11:26 -0400)] 
simple_httpclient: Move _on_connect next to its caller

Pure cut-and-paste, will make the next diff more readable

7 years agostack_context: Deprecate StackContext class
Ben Darnell [Fri, 27 Apr 2018 14:52:41 +0000 (10:52 -0400)] 
stack_context: Deprecate StackContext class

7 years agoweb: Deprecate callback argument to RequestHandler.flush
Ben Darnell [Fri, 27 Apr 2018 14:44:48 +0000 (10:44 -0400)] 
web: Deprecate callback argument to RequestHandler.flush

Also deprecates callback arguments in httputil and http1connection

7 years agoweb: Deprecate asynchronous decorator
Ben Darnell [Fri, 27 Apr 2018 14:36:51 +0000 (10:36 -0400)] 
web: Deprecate asynchronous decorator

7 years agoweb: Add RequestHandler.detach
Ben Darnell [Fri, 27 Apr 2018 14:14:18 +0000 (10:14 -0400)] 
web: Add RequestHandler.detach

This method eliminates the need to use the asynchronous decorator on
handlers that may call detach.

7 years agoMerge pull request #2361 from bdarnell/ioloop-deprecation
Ben Darnell [Mon, 23 Apr 2018 23:53:42 +0000 (19:53 -0400)] 
Merge pull request #2361 from bdarnell/ioloop-deprecation

iostream: Deprecate callback-based interfaces

7 years agoiostream: Deprecate callback argument to wait_for_handshake 2361/head
Ben Darnell [Sun, 22 Apr 2018 04:14:54 +0000 (00:14 -0400)] 
iostream: Deprecate callback argument to wait_for_handshake

7 years agoiostream: Deprecate callback argument to connect()
Ben Darnell [Sun, 22 Apr 2018 04:09:26 +0000 (00:09 -0400)] 
iostream: Deprecate callback argument to connect()

7 years agoiostream: Document the non-deprecation of set_close_callback
Ben Darnell [Sun, 22 Apr 2018 03:44:50 +0000 (23:44 -0400)] 
iostream: Document the non-deprecation of set_close_callback

7 years agoiostream: Deprecated callback argument to write()
Ben Darnell [Sun, 22 Apr 2018 03:39:00 +0000 (23:39 -0400)] 
iostream: Deprecated callback argument to write()

7 years agowebsocket: Refactor implementation to use coroutines
Ben Darnell [Sun, 22 Apr 2018 03:31:49 +0000 (23:31 -0400)] 
websocket: Refactor implementation to use coroutines

This avoids the deprecated IOStream interfaces and simplifies things a
bit.

7 years agoiostream: Deprecate streaming_callback arguments
Ben Darnell [Sun, 22 Apr 2018 01:58:32 +0000 (21:58 -0400)] 
iostream: Deprecate streaming_callback arguments

Currently, mixing futures and streaming_callback does not guarantee
ordering (so the returned future could become ready before the last
streaming_callback fires). Specifically, this happens with
test_streaming_read_until_close_after_close if that test is modified
to not use the callback argument. This would cause problems when we
remove the callback argument if we left streaming_callback in place.

These problems are solvable, but probably not worth it since
partial=True is an alternative (and used internally instead of
streaming_callback).

7 years agoiostream: Deprecate callback arguments to read methods
Ben Darnell [Sun, 22 Apr 2018 01:00:54 +0000 (21:00 -0400)] 
iostream: Deprecate callback arguments to read methods

This requires a lot of mechanical changes throughout the test suite.
tornado.websocket is currently still using the deprecated interfaces
and suppressing the warning.

7 years agoioloop: Deprecate some asyncio-incompatible methods
Ben Darnell [Sun, 22 Apr 2018 00:59:55 +0000 (20:59 -0400)] 
ioloop: Deprecate some asyncio-incompatible methods

7 years agoMerge pull request #2360 from bdarnell/httpserver-deprecation
Ben Darnell [Sat, 21 Apr 2018 21:47:24 +0000 (17:47 -0400)] 
Merge pull request #2360 from bdarnell/httpserver-deprecation

httputil: Deprecate some server-side HTTP interfaces

7 years agohttputil: Deprecate old interfaces 2360/head
Ben Darnell [Sat, 21 Apr 2018 21:01:32 +0000 (17:01 -0400)] 
httputil: Deprecate old interfaces

This is mainly preparation for HTTP/2: request.write was designed to
mix headers and bodies in a way that is no longer supported.

7 years agohttp1connection: Un-deprecate set_close_callback
Ben Darnell [Sat, 21 Apr 2018 20:46:49 +0000 (16:46 -0400)] 
http1connection: Un-deprecate set_close_callback

This method is not actually redundant with
HTTPMessageDelegate.on_connection_close (maybe there is a useful
refactoring that would make it so, but for now it's still useful)

7 years agoMerge pull request #2359 from bdarnell/multi-content-length-test
Ben Darnell [Sat, 21 Apr 2018 21:00:38 +0000 (17:00 -0400)] 
Merge pull request #2359 from bdarnell/multi-content-length-test

test: Reinstate a test that was mistakenly left disabled

7 years agoappveyor: Upgrade pip with 'python -m pip' 2359/head
Ben Darnell [Sat, 21 Apr 2018 20:34:55 +0000 (16:34 -0400)] 
appveyor: Upgrade pip with 'python -m pip'

This reportedly works around https://github.com/pypa/pip/issues/5240

7 years agotest: Reinstate a test that was mistakenly left disabled
Ben Darnell [Sat, 21 Apr 2018 20:20:30 +0000 (16:20 -0400)] 
test: Reinstate a test that was mistakenly left disabled

This test required some refactoring to construct invalid headers that
we no longer allow handlers to return directly.

7 years agoMerge pull request #2355 from sinwar/doc-patch
Ben Darnell [Fri, 20 Apr 2018 23:35:12 +0000 (19:35 -0400)] 
Merge pull request #2355 from sinwar/doc-patch

docs: Remove repeated lines.

7 years agoMerge pull request #2349 from Rookout/FallbackHandler.on_finish
Ben Darnell [Fri, 20 Apr 2018 23:34:05 +0000 (19:34 -0400)] 
Merge pull request #2349 from Rookout/FallbackHandler.on_finish

Added RequestHandler.on_finish() to FallbackHandler.preapre()

7 years agoMerge pull request #2351 from wildfoundry/flow
Ben Darnell [Fri, 20 Apr 2018 23:31:28 +0000 (19:31 -0400)] 
Merge pull request #2351 from wildfoundry/flow

Add flow control to websocket client

7 years agodocs: Remove repeated lines. 2355/head
sinwar [Fri, 13 Apr 2018 22:56:10 +0000 (04:26 +0530)] 
docs: Remove repeated lines.

It removes repeated lines in
docs for release 5.0.0

7 years agoSupport jitter in PeriodicCallback (#2330)
Min RK [Fri, 13 Apr 2018 15:36:59 +0000 (17:36 +0200)] 
Support jitter in PeriodicCallback (#2330)

reduces likelihood of alignment with many similar timers

7 years agoRemove unused import 2351/head
Will McGugan [Mon, 9 Apr 2018 12:47:37 +0000 (13:47 +0100)] 
Remove unused import

7 years agoread queue of 1 message
Will McGugan [Mon, 9 Apr 2018 10:36:06 +0000 (11:36 +0100)] 
read queue of 1 message

7 years agoMerge pull request #2350 from bdarnell/httpclient-deprecation
Ben Darnell [Sun, 8 Apr 2018 23:24:43 +0000 (19:24 -0400)] 
Merge pull request #2350 from bdarnell/httpclient-deprecation

httpclient: Deprecate fetch callback, narrow `raise_error`

7 years agotest: Fix some rot in lesser-used test configs 2350/head
Ben Darnell [Sun, 8 Apr 2018 17:57:59 +0000 (13:57 -0400)] 
test: Fix some rot in lesser-used test configs

7 years agocaresresolver: Use non-deprecated interfaces
Ben Darnell [Sun, 8 Apr 2018 16:41:15 +0000 (12:41 -0400)] 
caresresolver: Use non-deprecated interfaces

This code is currently not exercised in CI.

7 years agosimple_httpclient: Add HTTPError subclasses to bury 599 response code
Ben Darnell [Sun, 8 Apr 2018 15:55:11 +0000 (11:55 -0400)] 
simple_httpclient: Add HTTPError subclasses to bury 599 response code

7 years agohttpclient: Rename HTTPError to HTTPClientError
Ben Darnell [Sun, 8 Apr 2018 15:45:17 +0000 (11:45 -0400)] 
httpclient: Rename HTTPError to HTTPClientError

This avoids collisions in code that must deal with both
httpclient.HTTPError and web.HTTPError.

7 years agotesting: Add raise_error argument to AsyncHTTPTestCase.fetch
Ben Darnell [Sun, 8 Apr 2018 15:39:14 +0000 (11:39 -0400)] 
testing: Add raise_error argument to AsyncHTTPTestCase.fetch

Give it the same deprecation behavior as AsyncHTTPClient.fetch

7 years agohttpclient: Deprecation warning for narrowed scope of raise_error=False
Ben Darnell [Sun, 8 Apr 2018 03:39:34 +0000 (23:39 -0400)] 
httpclient: Deprecation warning for narrowed scope of raise_error=False

7 years agohttpclient: Deprecate fetch callback
Ben Darnell [Sat, 7 Apr 2018 23:31:39 +0000 (19:31 -0400)] 
httpclient: Deprecate fetch callback

7 years agoAdded RequestHandler.on_finish() to FallbackHandler.preapre() 2349/head
Liran Haimovitch [Sun, 8 Apr 2018 15:15:39 +0000 (18:15 +0300)] 
Added RequestHandler.on_finish() to FallbackHandler.preapre()

7 years agoFix typo on release notes page
Ben Darnell [Sun, 8 Apr 2018 00:45:03 +0000 (20:45 -0400)] 
Fix typo on release notes page

7 years agoRelease notes for 5.0.2
Ben Darnell [Sat, 7 Apr 2018 23:07:35 +0000 (19:07 -0400)] 
Release notes for 5.0.2

7 years agoMerge pull request #2338 from bdarnell/periodic-callback
Ben Darnell [Fri, 6 Apr 2018 17:52:53 +0000 (13:52 -0400)] 
Merge pull request #2338 from bdarnell/periodic-callback

ioloop: Fix PeriodicCallback when system clock moves backwards

7 years agoioloop: Fix PeriodicCallback when system clock moves backwards 2338/head
Ben Darnell [Sat, 31 Mar 2018 22:01:57 +0000 (18:01 -0400)] 
ioloop: Fix PeriodicCallback when system clock moves backwards

If the clock moves backwards a little bit, we could run a
PeriodicCallback twice in a row prior to this change.

Due to implementation differences between the Tornado and asyncio
event loops, this is most common when using the asyncio event loop on
windows (where in some environments differences between time.time()
and time.monotonic() can result in behavior that looks like small
backwards time jumps on every iteration), although it can in principle
occur in any environment.

Fixes #2333

7 years agoioloop: Factor out the math of PeriodicCallback for easier testing
Ben Darnell [Sat, 31 Mar 2018 21:24:07 +0000 (17:24 -0400)] 
ioloop: Factor out the math of PeriodicCallback for easier testing

This permits it to be tested separately from the (now python 2.7-only)
IOLoop configuration.

7 years agoMerge pull request #2326 from bdarnell/httpclient-leak
Ben Darnell [Sun, 25 Mar 2018 16:59:30 +0000 (12:59 -0400)] 
Merge pull request #2326 from bdarnell/httpclient-leak

asyncio: Fix a leak when event loops are created and destroyed

7 years agohttpclient: Document inability to use sync HTTPClient in async app 2326/head
Ben Darnell [Sun, 25 Mar 2018 15:17:58 +0000 (11:17 -0400)] 
httpclient: Document inability to use sync HTTPClient in async app

Eliminate a confusing error message when this occurs.

Fixes #2325

7 years agoasyncio: Fix a leak when event loops are created and destroyed
Ben Darnell [Sun, 25 Mar 2018 15:11:59 +0000 (11:11 -0400)] 
asyncio: Fix a leak when event loops are created and destroyed

The WeakKeyDictionary in IOLoop wasn't doing its job because of
reference cycles. This was easiest to see with the synchronous
HTTPClient.

Fixes #2321

7 years agoMerge pull request #2327 from bdarnell/test-dont-close
Ben Darnell [Sun, 25 Mar 2018 16:34:19 +0000 (12:34 -0400)] 
Merge pull request #2327 from bdarnell/test-dont-close

testing: Don't close the event loop if we didn't create it