feature: added new API ngx.config.debug to indicate whether this is a debug build of nginx.
optimize: fixed the initial table sizes for "ngx", "ngx.config", and "ngx.re".
documented the new ngx.config.debug API and also updated docs to reflect other recent changes.
one minor optimization in ngx.req.socket().
bugfix: ngx.flush(true) might hang when there was a buggy output body filter. now we only test the condition "r->connection->buffered & NGX_LOWLEVEL_BUFFERED".
Revert "bugfix: ngx.flush(true) might hang when there was a buggy output body filter. now we only test the condition "r->connection->buffered & NGX_LOWLEVEL_BUFFERED"."

This reverts commit 4ed6e7a54bf960f9993c30bfe0176c2ebda664e9.
minor code refactoring to make the ngx_http_lua_wev_handler function shorter.
refactor: made the "processing flushing coroutines" process a separate C function.
feature: added new option "always_forward_body" to ngx.location.capture(), which controls whether to always forward the parent request's request body to the subrequest.
added a (passing) test for recalling the connect() method on the same tcp cosocket object right after a connecting timed out error happens.
added a (passing) test for recalling the send() method on the same tcp cosocket object right after a send timeout error happens.
now we allow application of the mockeagain reading mode to the test files that require the mockegain writing mode.
feature: now timeout errors in tcpsock:receive() and the reader returned by tcpsock:receiveuntil() no longer close the current cosocket object automatically. thanks Aviram Cohen for the original patch.
bugfix: Lua backtrace dumps upon uncaught Lua exceptions did not work with the standard Lua 5.1 interpreter when the backtrace was deeper than 22 levels. now we just dump the top 22 levels in the backtrace for simplicity. also optimized the Lua string concatenation operations when constructing the backtrace string.
change: we now limit the number of nested coroutines in the backtrace dump for uncaught Lua exceptions by 5.
bugfix: the null character ('\0') was not escaped in ngx.quote_sql_str() according to the MySQL quoting rules. thanks Siddon Tang for the report.
bugfix: we did not escape \z, \t, and \b properly in ngx.quote_sql_str().
fixed those recently-added test cases that could fail in slow testing modes on slow machines.
tests: use larger timeout settings to account for slow DNS servers.
updated docs to reflect recent changes.