Hi folks,
I've just kicked out OpenResty 1.9.7.4 RC1 for testing:
https://openresty.org/download/openresty-1.9.7.4rc1.tar.gz
PGP for this source tarball:
https://openresty.org/download/openresty-1.9.7.4rc1.tar.gz.asc
Win32 version:
https://openresty.org/download/openresty-1.9.7.4rc1-win32.zip
PGP for the Win32 zip file:
https://openresty.org/download/openresty-1.9.7.4rc1-win32.zip.asc
This version contains a lot of important bug fixes as well as quite
some small new features.
Changes since the last (formal) release, 1.9.7.3:
* bugfix: "./configure": use of relative paths like "./nginx" in
"--prefix=PATH" led to compilation errors. thanks Tao Huang for
the report.
* upgraded the ngx_lua module to 0.10.2.
* feature: the C implementation for set SSL private keys now
supports non-RSA private keys as well. thanks Alessandro
Ghedini for the patch.
* feature: ngx.log() and print() now accept Lua tables with
the "__tostring" metamethod.
* feature: added new API, ngx.config.subsystem, which always
takes the Lua string value "http" in this module.
* feature: added new API function ngx.socket.stream() which is
an alias to ngx.socket.tcp().
* feature: added HTTP 2.0 support to ngx.req.http_version().
* feature: this module can now be built as a "dynamic module"
with NGINX 1.9.11+ via the "--add-dynamic-module=PATH"
option of "./configure".
* bugfix: balancer_by_lua* did not respect "lua_code_cache
off". thanks XI WANG for the report and Dejiang Zhu for the
patch.
* bugfix: hot loop might happen when balancer_by_lua* was used
with the keepalive directive. thanks GhostZch for the
report.
* bugfix: balancer_by_lua* might crash the nginx worker when
SSL (https) is used for upstream connections. thanks
Alistair Wooldrige for the report.
* bugfix: stream-typed cosockets: we did not set the "error"
field of the "ngx_connection_t" object which MIGHT lead to
socket leaks.
* bugfix: avoided a potential memory issue when the request
handler is aborted prematurely (via ngx.exit, for example)
while a light thread is still waiting on ngx.flush(true).
* bugfix: we might not respond to client abort events when
lua_check_client_abort is on.
* bugfix: fixed the compiler warning "unused variable" when
compiling with nginx cores older than 1.7.5 (exclusive).
thanks Marc Neudert for the patch.
* bugfix: fixed compilation errors with LibreSSL by disabling
ssl_certificiate_by_lua* and some ngx.ssl API functions that
are not supported by LibreSSL. thanks George Liu and Bret
for the reports.
* bugfix: fixed compilation errors with nginx 1.9.11+. thanks
Charles R. Portwood II and Tomas Kvasnicka for the reports.
* bugfix: fixed compatibility issues with other nginx modules
loaded as "dynamic modules" in NGINX 1.9.11+.
* bugfix: SSL: set error message on "i2d_X509()" failure as
well. thanks Alessandro Ghedini for the patch.
* bugfix: SSL: remove leading white space from error messages.
thanks Alessandro Ghedini for the patch.
* optimize: use "lua_pushliteral()" for string literals.
thanks Tatsuhiko Kubo for the patch.
* change: unmatched submatch captures are now set to "false"
instead of "nil" in the captures table (named captures are
not affected). thanks Julien Desgats for the patch.
* change: ngx.req.get_post_args: returns error message instead
of raising an exception when request body is in temp file.
thanks yejingx for the patch.
* change: ngx.shared.DICT: throws a Lua error when the
"exptime" argument is invalid.
* doc: documented that ngx.req.get_body_data() is available in
the context of log_by_lua*. thanks YuanSheng Wang for the
patch.
* doc: added balancer_by_lua* and ssl_certificate_by_lua* to
the context of some Lua API functions. thanks Dejiang Zhu
for the patch.
* doc: fixed the documentation of log_by_lua* which actually
runs after nginx's access log handler.
* doc: updated the documentation for ngx.req.discard_body() to
reflect recent changes. now ignoring request bodies indeed
trigger discarding the body upon request finalization.
* doc: updated the docs of ngx.get_phase() for new Lua
execution contexts. thanks Thibault Charbonnier for the
patches.
* doc: typo fix in sample configurations from othree.
* doc: typo fix in sample configurations from Adam Malone.
* doc: typo fix from Prayag Verma.
* doc: typo fix from leemingtian.
* upgraded the lua-resty-core library to 0.1.5.
* optimize: ngx.ssl: removed unnecessary request checks from
the priv_key_pem_to_der and cert_pem_to_der functions to
allow them to be used in more contexts. thanks Tom Thorogood
for the patch.
* bugfix: resty.core.regex: non-string values passed as string
arguments might throw out Lua errors. thanks Robert Paprocki
for the patch.
* change: resty.core.shdict: throws out a Lua error when the
exptime arg is invalid.
* change: resty.core.regex: unmatched submatch captures are
set to "false" instead of "nil" in captures table. thanks
Julien Desgats for the patch.
* doc: typo fix from thefosk.
* doc: typo fix from Anton Ovchinnikov.
* upgraded the ngx_lua_upstream module to 0.05.
* feature: expose peer connection count as the "conns" Lua
table field. thanks Justin Li for the patch.
* feature: this module can now be built as a "dynamic module"
with NGINX 1.9.11+ via the "--add-dynamic-module=PATH"
option of "./configure". thanks Hiroaki Nakamura for the
original patch.
* doc: fixes from Justin Li.
* upgraded the lua-resty-upstream-healthcheck library to 0.04.
* feature: added IPv6 address support in upstream peer names.
thanks szelcsanyi for the patch.
* feature: status_page(): now we mark those upstream blocks
without any (live) health checkers so as to avoid potential
confusions when the checker light threads were aborted due
to some fatal errors.
* refactor: various coding refactoring to improve code
readability. thanks Thijs Schreijer and Dejiang Zhu for the
patches.
* optimize: minor Lua code improvements from Aapo Talvensaari.
* doc: link fixes from Thijs Schreijer.
* doc: fixed escaping issues in the configuration samples in
the Synopsis section by migrating to the "*_by_lua_block {}"
directives. thanks whatacold for the report.
* upgraded the lua-resty-dns library to 0.15.
* feature: added reverse DNS utilities: reverse_query,
arpa_str, and expand_ipv6_addr. thanks bjoe2k4 for the
patch.
* upgraded resty-cli to 0.06.
* feature: resty: added new options "--http-include=PATH" and
"--main-include=PATH" to include user files in the
auto-generated "nginx.conf" file. thanks Nils Nordman for
the patch.
* upgraded the ngx_set_misc module to 0.30.
* feature: this module can now be compiled as a dynamic module
with NGINX 1.9.11+ via the "--with-dynamic-module=PATH"
option of "./configure".
* bugfix: fixed errors and warnings with C compilers without
variadic macro support.
* upgraded the ngx_array_var module to 0.05.
* feature: this module can now be compiled as a dynamic module
with NGINX 1.9.11+ via the "--with-dynamic-module=PATH"
option of "./configure".
* bugfix: fixed errors and warnings with C compilers without
variadic macro support.
Feedback welcome!
Thanks!
Best regards,
-agentzh