OpenResty 1.21.4.2 released

After months of hard work, we are proud to announce the new official release of OpenResty, the open-source web platform.
This version 1.21.4.2, of our OpenResty includes many new features and improvements, which you can find in the full release announcement: https://openresty.org/en/ann-1021004002.html
You can download this version from our official website: https://openresty.org/en/download.html or install it using our official binary package repository: https://openresty.org/en/linux-packages.html
The highlights of this release include:
-LuaJIT
Avoid negation of signed integers in C that may hold INT*_MIN, since recent C compilers ‘take advantage’ of the undefined behavior, this completely changes the meaning of expressions like (k == -k).
Correct fix for stack check when recording BC_VARG.
Fix trace join to BC_JLOOP originating from BC_ITERN.
Fix math.floor() and math.ceil().
Many fixes were imported from Mike Pall’s upstream https://github.com/luajit/luajit repository.
-Fixed a bug that uses memory after free when encountering an invalid IF-Match request header.
-Implements monotonic_msec() and monotonic_time() in resty.core.time.
- Includes Apple Silicon FFI ABI limitation workaround.
- Reimplemented tcpsock:sslhandshake, coroutine wrapper, and ngx.req.is_internal with FFI.
- SSL/TLS supports passphrase-protected private keys.
- Fixes a segmentation fault when getting headers via ngx.req.raw_header with malformed requests.
- Fixed potential null pointer dereference.
-lua-cjson module
- empty_array can not work on Apple because cjson did not compare light user data address with the masked address. Since we used json_lightudata_mask when creating lightuserdata, the same mask should be applied when comparing the return of touserdata.
-headers-more-nginx-module module
- Fixes crashes while accessing uninitialized pointers.
-lua-resty-websocket module
- Adds mtls client cert support.
-lua-resty-memcached module
- Implements init_pipeline(), commit_pipeline(), and cancel_pipeline().
For a comprehensive list of changes, please refer to the provided webpage.
Enjoy!




