]>
git.ipfire.org Git - thirdparty/tornado.git/log
Jon Parise [Wed, 7 Nov 2012 00:04:36 +0000 (16:04 -0800)]
Add a helpful __repr__ implementation to URLSpec.
Ben Darnell [Thu, 1 Nov 2012 17:23:27 +0000 (10:23 -0700)]
Release notes for 302/303 change.
Ben Darnell [Thu, 1 Nov 2012 05:53:08 +0000 (22:53 -0700)]
simple_httpclient: Treat 302 like 303.
Cherry-picked from https://github.com/bergundy/tornado/commit/
e49b263de2f4aa7b9748531b2ccf6b50b28b1bd5
Closes #623.
Ben Darnell [Tue, 30 Oct 2012 05:33:54 +0000 (22:33 -0700)]
AsyncHTTPTestCase no longer closes AsyncHTTPClients on the global IOLoop.
Code that uses the global IOLoop may retain a global reference to
an AsyncHTTPClient as well, which would become inoperable after a test
had closed it.
Peter Sobot [Tue, 23 Oct 2012 21:06:08 +0000 (18:06 -0300)]
Added more sensical callback time verification.
Peter Sobot [Tue, 23 Oct 2012 18:33:17 +0000 (15:33 -0300)]
Added period check in PeriodicCallback
If a user currently passes in 0ms (hopefully by accident) as the
callback time for a periodic callback, Tornado consumes a huge amount
of CPU and never calls the function.
Ben Darnell [Fri, 19 Oct 2012 01:20:53 +0000 (21:20 -0400)]
Add a comment to runtests.sh about python 3.
Closes #612.
Ben Darnell [Mon, 8 Oct 2012 02:11:37 +0000 (19:11 -0700)]
Actually use add_callback_from_signal from the SIGCHLD handler.
Ben Darnell [Sun, 7 Oct 2012 23:59:36 +0000 (16:59 -0700)]
Fix TwistedIOLoop on epoll.
Twisted's removeAll doesn't like it if a socket is closed without being
unregistered. EPoll generates events slightly differently so be more
careful about doubled connectionLost events.
Ben Darnell [Sun, 7 Oct 2012 21:21:42 +0000 (14:21 -0700)]
Implement TwistedIOLoop, to bridge the gap with Twisted in the other direction.
This also serves as a proof of concept for the refactored IOLoop interface.
Ben Darnell [Sun, 7 Oct 2012 23:02:50 +0000 (16:02 -0700)]
Remove the method IOLoop.running.
Ben Darnell [Sun, 7 Oct 2012 18:16:41 +0000 (11:16 -0700)]
Split IOLoop into a base class and poll-based implementation.
The base class has all the methods with docstrings; nearly all the
implementation is in a new subclass PollIOLoop.
Ben Darnell [Sat, 6 Oct 2012 19:52:34 +0000 (12:52 -0700)]
Move IOLoop subclasses to their own modules under platform.
Ben Darnell [Sat, 6 Oct 2012 19:51:25 +0000 (12:51 -0700)]
Add a little more slack to this timing test.
It seems to fail a lot on VMs.
Ben Darnell [Sun, 7 Oct 2012 04:06:52 +0000 (21:06 -0700)]
Check self.closed() in the inner read loop of IOStream.
This was causing error logs in the keepalive tests (but only on epoll)
Ben Darnell [Sat, 6 Oct 2012 05:09:07 +0000 (22:09 -0700)]
Avoid creating multiple redundant autoreload callbacks.
Ben Darnell [Fri, 5 Oct 2012 04:35:02 +0000 (21:35 -0700)]
One more log spam test: connect then immediately close the connection.
Ben Darnell [Fri, 5 Oct 2012 04:14:41 +0000 (21:14 -0700)]
Add tests and release notes for {% apply %} unicode fix.
Ben Darnell [Fri, 5 Oct 2012 04:08:27 +0000 (21:08 -0700)]
Merge remote-tracking branch 'dmitric/master'
Ben Darnell [Fri, 5 Oct 2012 04:01:56 +0000 (21:01 -0700)]
Fix typo in release notes (thanks jparise!))
Dmitri Cherniak [Thu, 4 Oct 2012 18:07:29 +0000 (14:07 -0400)]
Ensure result from apply block is utf8
Ben Darnell [Thu, 4 Oct 2012 05:36:46 +0000 (22:36 -0700)]
Reduce log spam from closed client connections.
Added a bunch of tests for keepalive functionality and fixed two cases
where we'd log an exception when the client was gone. ECONNRESET
errors in IOStream reads now just close the connection instead of
logging an error (the exception information is still available on
stream.error in the close callback for apps that want it).
HTTPConnection now also checks for a closed connection and cleans up
instead of logging an error.
IOStream now raises a new exception class StreamClosedError instead of
IOError.
Ben Darnell [Mon, 1 Oct 2012 06:57:49 +0000 (23:57 -0700)]
Add time_func parameter to IOLoop, and make it possible to use time.monotonic.
This means that calls to IOLoop.add_timeout that pass a number must be
updated to use IOLoop.time instead of time.time.
There are still some places where we use time.time in the code, but they
are either places where wall time is desired, or non-critical deltas (e.g.
printing elapsed time at the end of a request).
Thanks to apenwarr and mgenti for pull requests and discussion relating to
this change. (#558 and #583)
Ben Darnell [Mon, 1 Oct 2012 05:57:32 +0000 (22:57 -0700)]
IOLoop poller implementations are now subclasses of IOLoop.
Update testing command-line flags to allow configuration of a non-default
IOLoop.
Ben Darnell [Mon, 1 Oct 2012 05:19:59 +0000 (22:19 -0700)]
Extract configure logic from AsyncHTTPClient to a base class.
IOLoop now extends this base class as well, although no other
implementations are provided yet. This does not include the
pseudo-singleton magic from AsyncHTTPClient.
Ben Darnell [Mon, 1 Oct 2012 02:10:16 +0000 (19:10 -0700)]
AsyncHTTPClient: remove legacy magic around max_clients arg.
Fix a bug in which configured kwargs would be applied to a non-configured
class.
Ben Darnell [Sun, 30 Sep 2012 23:13:49 +0000 (16:13 -0700)]
OptionParser now contains a dict rather than subclassing dict.
Ben Darnell [Sun, 30 Sep 2012 23:06:21 +0000 (16:06 -0700)]
Doc updates for the options module
Ben Darnell [Sun, 30 Sep 2012 22:44:45 +0000 (15:44 -0700)]
Rename _Options to OptionParser, and fix bugs with --help
Ben Darnell [Sun, 30 Sep 2012 22:28:33 +0000 (15:28 -0700)]
Add per-option callbacks, and implement --help with them.
Ben Darnell [Sun, 30 Sep 2012 22:05:29 +0000 (15:05 -0700)]
Introduce parse callbacks in the options module.
This is a generalization of the existing magic for logging. Logging
configuration is now moved to log.py.
Ben Darnell [Sun, 30 Sep 2012 19:00:10 +0000 (12:00 -0700)]
AsyncHTTPTestCase: bind the server port earlier so it's available
in user-overridable methods like get_app.
Ben Darnell [Sun, 30 Sep 2012 00:47:41 +0000 (17:47 -0700)]
Add futures to travis and vm tests, update assorted dependency versions.
Ben Darnell [Sun, 30 Sep 2012 00:46:50 +0000 (17:46 -0700)]
Cleanly shut down the ThreadPoolExecutor in Resolver tests.
This was somehow causing a problem on Ubuntu 10.04.
Ben Darnell [Sat, 29 Sep 2012 23:57:04 +0000 (16:57 -0700)]
Doc coverage updates
Ben Darnell [Sat, 29 Sep 2012 23:49:42 +0000 (16:49 -0700)]
Release notes for futures branch merge.
Ben Darnell [Sat, 29 Sep 2012 23:39:44 +0000 (16:39 -0700)]
Merge branch 'futures'
Ben Darnell [Sat, 29 Sep 2012 23:35:57 +0000 (16:35 -0700)]
Drop twisted tests from pypy-full configuration.
These tests seem to fail much more often on the futures branch than
master for some unknown reason. (the failures are in the
subprocess-related tests)
Ben Darnell [Sat, 29 Sep 2012 23:20:51 +0000 (16:20 -0700)]
Release notes for stack_context changes
Ben Darnell [Sat, 29 Sep 2012 22:55:47 +0000 (15:55 -0700)]
Merge branch 'master' into futures
Conflicts:
tornado/autoreload.py
tornado/ioloop.py
tornado/netutil.py
tornado/simple_httpclient.py
tornado/test/ioloop_test.py
tornado/test/runtests.py
tox.ini
Ben Darnell [Sat, 29 Sep 2012 21:29:22 +0000 (14:29 -0700)]
Simplify StackContext logic and behavior.
Previously, there was an optimization to avoid recreating contexts
that were already on the stack. This optimization rarely mattered
(especially given the movement to run all callbacks through
IOLoop.add_callback), and sometimes caused surprising behavior as
other exception handlers could be inserted between stack contexts that
expected to be adjacent to each other or to the wrapped function. Now
each wrapped function recreates its full stack of contexts, even if
some of those contexts were already on the stack.
This change allows a use of NullContext in testing.py to be
removed.
Ben Darnell [Sat, 29 Sep 2012 21:07:10 +0000 (14:07 -0700)]
Improve isolation of stack contexts.
Previously, a chain of callbacks started without any contexts could
accidentally pick up other contexts based on where the callbacks
were run. This was due to a mistaken optimization in the no-context
case; now the behavior is the same whether the initial context was empty
or not.
Ben Darnell [Sat, 29 Sep 2012 20:16:23 +0000 (13:16 -0700)]
Release note updates
Ben Darnell [Sat, 29 Sep 2012 20:08:10 +0000 (13:08 -0700)]
Add IOLoop.add_callback_from_signal, which avoids deadlocks
which can occur when calling add_callback from a signal handler.
Also fix an issue in the recent set_wakeup_fd change when running
an IOLoop on a non-main thread.
Ben Darnell [Sat, 29 Sep 2012 18:27:46 +0000 (11:27 -0700)]
Python 3.3 includes a fast time-independent comparison function, so use
it when available.
Ben Darnell [Mon, 24 Sep 2012 04:21:38 +0000 (00:21 -0400)]
Apply my own suggested changes from pull request #555.
Ben Darnell [Mon, 24 Sep 2012 04:13:25 +0000 (00:13 -0400)]
Allow non-standard HTTP codes to be passed with HTTPError.
Ben Darnell [Mon, 24 Sep 2012 03:26:24 +0000 (23:26 -0400)]
Merge branch 'master' into merge
Conflicts:
tornado/simple_httpclient.py
tornado/test/web_test.py
Ben Darnell [Mon, 24 Sep 2012 03:12:17 +0000 (23:12 -0400)]
Fix status/reason tests for py3, -curl, and -opt modes
Ben Darnell [Thu, 20 Sep 2012 06:26:01 +0000 (23:26 -0700)]
Set Date header by default on all responses.
Joachim Bauch [Tue, 18 Sep 2012 08:56:54 +0000 (10:56 +0200)]
Support sending ping frames, trigger callback on pong frames.
Ben Darnell [Thu, 20 Sep 2012 06:02:56 +0000 (23:02 -0700)]
Don't try to call set_wakeup_fd on windows, it crashes the process.
Ben Darnell [Mon, 17 Sep 2012 07:22:39 +0000 (00:22 -0700)]
Use signal.set_wakeup_fd in IOLoop to close a race with signal handlers.
Ben Darnell [Mon, 17 Sep 2012 06:39:10 +0000 (23:39 -0700)]
Subprocess.returncode should match subprocess.Popen.returncode.
Ben Darnell [Mon, 17 Sep 2012 06:35:20 +0000 (23:35 -0700)]
Skip pipe and subprocess tests on windows.
Ben Darnell [Mon, 17 Sep 2012 06:24:45 +0000 (23:24 -0700)]
Add a SIGCHILD handler to Subprocess.
Ben Darnell [Mon, 17 Sep 2012 02:53:32 +0000 (19:53 -0700)]
Release notes.
Ben Darnell [Mon, 17 Sep 2012 02:26:03 +0000 (19:26 -0700)]
Add tornado.process.Subprocess
Ben Darnell [Mon, 17 Sep 2012 00:13:53 +0000 (17:13 -0700)]
Add PipeIOStream
Ben Darnell [Sun, 16 Sep 2012 23:58:48 +0000 (16:58 -0700)]
Split IOStream into BaseIOStream and IOStream.
IOStream the socket-specific code; BaseIOStream will be the basis
for non-socket-based streams (i.e. pipes)
Ben Darnell [Sun, 16 Sep 2012 21:02:49 +0000 (14:02 -0700)]
Remove tornado.database, which is now distributed separately.
Ben Darnell [Sun, 16 Sep 2012 20:01:16 +0000 (13:01 -0700)]
Mention HTTPError explicitly in the write_error docs.
Closes #594.
Ben Darnell [Mon, 10 Sep 2012 16:53:08 +0000 (09:53 -0700)]
Replace get_unused_port with bind_unused_port, which binds to port 0
to allow the OS to select a port for us.
Closes #590.
Ben Darnell [Mon, 10 Sep 2012 04:34:58 +0000 (21:34 -0700)]
Run more of web_test in wsgi_test. Fix a bug with 304 in wsgi.
Ben Darnell [Mon, 10 Sep 2012 04:04:58 +0000 (21:04 -0700)]
Keep empty arguments in WSGI mode too.
Add another test and release notes.
Ben Darnell [Mon, 10 Sep 2012 03:52:13 +0000 (20:52 -0700)]
Merge commit '
ebf17aa '
Closes #585.
Ben Darnell [Mon, 10 Sep 2012 01:55:47 +0000 (18:55 -0700)]
Add additional command-line arguments to tornado.testing.main
Ben Darnell [Mon, 10 Sep 2012 01:43:52 +0000 (18:43 -0700)]
Document the logging changes
Ben Darnell [Sun, 9 Sep 2012 22:45:53 +0000 (15:45 -0700)]
Introduce ExpectLog as a finer-grained alternative to LogTrapTestCase,
and use it throughout the test suite.
Ben Darnell [Sun, 9 Sep 2012 22:43:24 +0000 (15:43 -0700)]
Errors while rendering templates no longer log the generated code.
Now that stack traces have source line info, the full code is hopefully
unnecessary (and if it is needed, this isn't the best way to get it).
Syntax errors in the generated code will still dump the whole thing
to the log.
Ben Darnell [Sun, 9 Sep 2012 20:23:49 +0000 (13:23 -0700)]
Suppress tornado.access logs in tests, and remove LogTrapTestCase
from tests that no longer produce any logs.
Ben Darnell [Sun, 9 Sep 2012 20:23:32 +0000 (13:23 -0700)]
autoreload also needs to guarantee that logging is configured.
Ben Darnell [Sun, 9 Sep 2012 04:35:51 +0000 (21:35 -0700)]
Move LogFormatter from options.py to log.py
Ben Darnell [Sun, 9 Sep 2012 04:06:46 +0000 (21:06 -0700)]
Compensate for move to non-root loggers by calling basicConfig in IOLoop.start.
The root logging methods call basicConfig automatically, but non-root loggers
do not.
Ben Darnell [Sun, 9 Sep 2012 03:51:31 +0000 (20:51 -0700)]
Switch from root logger to separate loggers.
Rather than using one logger per module, use three semantically-defined
loggers: tornado.access, tornado.application, and tornado.general.
Ben Darnell [Sat, 8 Sep 2012 19:49:22 +0000 (12:49 -0700)]
Start new release notes
Ben Darnell [Fri, 7 Sep 2012 04:38:20 +0000 (21:38 -0700)]
Merge branch 'master' into futures
Ben Darnell [Thu, 6 Sep 2012 00:54:47 +0000 (17:54 -0700)]
Merge branch 'tornado3'
Ben Darnell [Thu, 6 Sep 2012 00:54:21 +0000 (17:54 -0700)]
Add unittest2 to other test configurations.
bdarnell [Wed, 5 Sep 2012 05:20:03 +0000 (22:20 -0700)]
Merge pull request #593 from phihag/correct-AI_ADDRCONFIG
Do not set AI_ADDRCONFIG in netutils.bind_sockets
Ben Darnell [Wed, 5 Sep 2012 04:50:58 +0000 (21:50 -0700)]
Post-release version bump
Philipp Hagemeister [Tue, 4 Sep 2012 15:04:47 +0000 (17:04 +0200)]
Add an example for flags
Philipp Hagemeister [Tue, 4 Sep 2012 10:34:00 +0000 (12:34 +0200)]
Do not set AI_ADDRCONFIG in netutil.bind_sockets
Philipp Hagemeister [Tue, 4 Sep 2012 10:33:38 +0000 (12:33 +0200)]
Add a flags= option to netutil.bind_sockets
Ben Darnell [Tue, 4 Sep 2012 05:09:29 +0000 (22:09 -0700)]
Final 2.4 release notes
Ben Darnell [Tue, 4 Sep 2012 05:07:23 +0000 (22:07 -0700)]
Set version number to 2.4
Ben Darnell [Mon, 3 Sep 2012 19:10:57 +0000 (12:10 -0700)]
Add magic for yielding futures.
Introduce IOLoop.current() as a thread-local counterpart to IOLoop.instance().
gen.engine now recognizes Futures directly.
Ben Darnell [Mon, 3 Sep 2012 19:00:26 +0000 (12:00 -0700)]
Add gen.YieldFuture.
Ben Darnell [Sun, 2 Sep 2012 17:50:57 +0000 (10:50 -0700)]
Flesh out future-oriented client interfaces.
Make DummyFuture a more complete imitation of Future.
Add tests demonstrating various implementation styles.
Add a decorator that simplifies use of futures.
Ben Darnell [Sun, 2 Sep 2012 16:55:31 +0000 (09:55 -0700)]
Improve autoreload for import-time errors.
We already had a special case for SyntaxErrors, but NameErrors and other
import-time errors could leave a file unwatched.
bdarnell [Sat, 1 Sep 2012 21:30:55 +0000 (14:30 -0700)]
Merge pull request #591 from taylorhughes/master
Change example to not include legit-random-looking cookie secrets
Taylor Hughes [Sat, 1 Sep 2012 06:47:11 +0000 (23:47 -0700)]
Make it obvious to anyone reading copy-pasted example code that the cookie secret is not suitable for production use.
Taylor Hughes [Sat, 1 Sep 2012 06:46:56 +0000 (23:46 -0700)]
Make it obvious to anyone reading copy-pasted example code that the cookie secret is not suitable for production use.
Ben Darnell [Fri, 31 Aug 2012 20:44:06 +0000 (16:44 -0400)]
Use new async resolver interface in simple_httpclient.
Ben Darnell [Fri, 31 Aug 2012 20:13:40 +0000 (16:13 -0400)]
Capture stack_context in IOLoop.add_future
Ben Darnell [Fri, 31 Aug 2012 03:10:45 +0000 (23:10 -0400)]
Add futures-based Resolver interface, and test with both sync and thread pool.
Ben Darnell [Fri, 31 Aug 2012 01:58:40 +0000 (21:58 -0400)]
Add IOLoop.add_future to return to the IOLoop after a future has completed.
Ben Darnell [Fri, 31 Aug 2012 01:55:34 +0000 (21:55 -0400)]
Add concurrent.futures as an optional dependency for -full builds
Ben Darnell [Thu, 30 Aug 2012 23:44:42 +0000 (19:44 -0400)]
Replace our hacky homegrown test skipping with unittest.skip.
Add a test runner that makes the output for skipped tests more informative.
Ben Darnell [Thu, 30 Aug 2012 21:43:54 +0000 (17:43 -0400)]
Start using new unittest features from py27/unittest2.
Tornado's test suite now requires unittest2 on py25 and py26.
tornado.testing will use unittest2 if available but does not require
it.
This means we can no longer run the test suite under app engine 2.5,
although it still works for app engine 2.7.