bugfix: we incorrectly overrode coctx->data before calling coctx->cleanup, which could lead to memory corruptions. this regression had appeared in the previous commit, f19e27e777.
bumped version number to 0.9.9.
tests: made a test case in 124-init-worker.t less possible to fail in slow testing mode.
a minor coding style fix.
bugfix: the coroutine API table introduced by require("coroutine") was not working in the context of ngx_lua. thanks Paul K and Pierre-Yves Gérardy for the report (in #381).
removed some dead code from the stream cosocket implementation.
feature: added new API function ngx.thread.kill() for killing a user "light thread". thanks aviramc for the original patch in #288.
feature: cosockets are now full duplex: a reader "light thread" and a writer "light thread" can operate on the same cosocket simultaneously. thanks shun zhang and aviramc for the original patches in #367 and #290, respectively.
bugfix: fixed the initial size of the ngx.worker table and the misleading comment due to a copy&paste mistake. thanks Suraj Jaiswal for the report.
tests: fixed timing issues in some of the test cases for full-duplex cosockets.
Revert "refactor: we no longer call ngx_pfree() in our own pcre_free hook."

This reverts commit 5c788b8b985544d26d7c54c3295dbebc0608ffa4.
doc: bumped version to 0.9.9. also states that we work with nginx 1.7.2.
doc: documented the ngx.thread.kill() API function.
doc: documented the new full-duplex stream cosocket feature.
change: now we always iterate through all the user light threads to ensure all threads are de-anchored even when the "uthreads" counter gets out of sync. also added an assertion on the "uthreads" counter.
tests: use larger resolver_timeout settings.
bugfix: when the ngx.on_abort() user thread was created but never run *and* some other pending user thread was aborted prematurely, the latter thread might get leaked. thanks Dane Knecht for the report. this regression had appeared in the v0.9.9 release.
optimize: now we turn off our C-land assertions by default unless the user explicitly specifies the C compiler option -DNGX_LUA_USE_ASSERT.
bumped version to 0.9.10.
bugfix: the *_by_lua_file directives failed to load .lua files of exactly the size n*LUAL_BUFFERSIZE bytes with the error "'end' expected (to close 'function' at line 1) near '<eof>'". thanks kworr for the report in #385.