<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<div>
<table cellspacing="0" cellpadding="0" border="0" style="background:#EFF6FC; width:100%; border-radius:10px; border-collapse:separate; border:1px; border-radius:6px; margin-bottom:12px">
<tbody style="font-family:-apple-system,Segoe UI,HelveticaNeue-Bold,Helvetica Neue Bold,Helvetica Neue,Helvetica,Arial,sans-serif; font-size:20px">
<tr>
<td style="padding:5px 15px">
<table style="width:100%">
<tbody style="font-family:-apple-system,Segoe UI,HelveticaNeue-Bold,Helvetica Neue Bold,Helvetica Neue,Helvetica,Arial,sans-serif">
<tr>
<td>
<table style="border-spacing:0">
<tbody style="font-family:-apple-system,Segoe UI,HelveticaNeue-Bold,Helvetica Neue Bold,Helvetica Neue,Helvetica,Arial,sans-serif">
<tr>
<td><img alt="heart" src="https://outlook-1.cdn.office.net/assets/reaction/heart.png" style="height:25px; width:25px">
</td>
<td><span style="font-weight:bold; padding-left:3px">Liam Crilly</span> <span>reacted to your message:</span>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> unit <unit-bounces@nginx.org> on behalf of Andrew Clayton <andrew@digital-domain.net><br>
<b>Sent:</b> Wednesday, September 18, 2024 2:36:17 PM<br>
<b>To:</b> NGINX Unit Mailing List <unit@nginx.org><br>
<b>Cc:</b> Andrew Clayton <a.clayton@nginx.com><br>
<b>Subject:</b> Unit 1.33.0 released</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:11pt;">
<div class="PlainText">CAUTION: This email has been sent from an external source. Do not click links, open attachments, or provide sensitive business information unless you can verify the sender’s legitimacy.<br>
<br>
<br>
Hi, NGINX Unit community,<br>
<br>
We are pleased to announce the release of NGINX Unit 1.33.0<br>
<br>
This release is comprised of 240 non-merge commits from 20 people of<br>
which 6 are external contributors.<br>
<br>
A shout out to our external contributors<br>
<br>
) Alejandro Colomar<br>
) Arjun<br>
) Costas Drongos<br>
) Gourav<br>
) Remi Collet<br>
) Robbie McKinstry<br>
<br>
With a special mention to Arjun for his fuzzing work.<br>
<br>
This release can be found at<br>
<br>
<<a href="https://github.com/nginx/unit/releases/tag/1.33.0">https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnginx%2Funit%2Freleases%2Ftag%2F1.33.0&data=05%7C02%7Cl.crilly%40f5.com%7C2f51874763244f69fad308dcd7ef5a30%7Cdd3dfd2f6a3b40d19be0bf8327d81c50%7C0%7C0%7C638622670243906258%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=PB84MB2DRz2o%2Fef6uVeewWBlOouXjSMm91kLOb7K87A%3D&reserved=0</a>><br>
<br>
Packages can be found from the Unit website<br>
<br>
<<a href="https://unit.nginx.org/installation/#official-packages">https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Funit.nginx.org%2Finstallation%2F%23official-packages&data=05%7C02%7Cl.crilly%40f5.com%7C2f51874763244f69fad308dcd7ef5a30%7Cdd3dfd2f6a3b40d19be0bf8327d81c50%7C0%7C0%7C638622670243927110%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=IK4nupl0EBMHsb%2FPzI1DIbCs3Gy%2BPcF0nV5StDhrfdM%3D&reserved=0</a>><br>
<br>
Website announcement can be found at<br>
<br>
<<a href="https://unit.nginx.org/news/2024/unit-1.33.0-released">https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Funit.nginx.org%2Fnews%2F2024%2Funit-1.33.0-released&data=05%7C02%7Cl.crilly%40f5.com%7C2f51874763244f69fad308dcd7ef5a30%7Cdd3dfd2f6a3b40d19be0bf8327d81c50%7C0%7C0%7C638622670243942089%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=KDBRO8afCQhmX9Vf1zikh7uq9a0ZUzr6jsFbzh2XxtY%3D&reserved=0</a>><br>
<br>
Unit 1.33.0 includes new configuration options (see below), experimental<br>
chunked request body support, disabled by default, a new Rust based CLI<br>
tool (unitctl, see: tools/unitctl/README.md) and much more!<br>
<br>
New configuration options<br>
=========================<br>
<br>
This release introduces three new configuration options.<br>
<br>
 1) listen_threads<br>
<br>
This can be set under '/settings/listen_threads' and controls the<br>
number of threads the router process creates to handle client<br>
connections. The default is to create the same number of threads as<br>
there are available runnable CPUs.<br>
<br>
 2) backlog<br>
<br>
This can be set under '/listeners/<address:port>/backlog'<br>
<br>
This setting is per-listener and sets the backlog parameter as passed to<br>
the listen(2) system-call, which essentially defines the maximum length<br>
of the queue of pending connections for the socket in question.<br>
<br>
This is analogous to the 'backlog' parameter of the 'listen' directive<br>
in nginx.<br>
<br>
 3) factory<br>
<br>
This can be set under '/applications/<app>/factory'<br>
<br>
This setting is specific to Python applications and allows the<br>
enablement of Python 'application factories'.<br>
<br>
This is a boolean value and if set to 'true', Unit treats 'callable' as<br>
a factory.<br>
<br>
The default is 'false'.<br>
<br>
NOTE: Unit does *not* support passing arguments to factories.<br>
<br>
Changes<br>
=======<br>
<br>
* On Linux we now default to a listen(2) backlog of -1, which means we<br>
  use the OS's default, which is 4096 from Linux 5.4 on-wards and 128<br>
  prior. The previous default was 511.<br>
<br>
  As noted above, you are now able to set this in the configuration, but<br>
  keep in mind that any value you set there will be limited to the OS's<br>
  sysctl setting, net.core.somaxconn (which you can increase if<br>
  required).<br>
<br>
* Under systemd Unit once again runs in 'forking' mode. This allows the<br>
  per-application logging feature to work out the box.<br>
<br>
* Unit can now accept chunked requests rather than returning '411<br>
  Length Required' as previously. This feature is experimental and can<br>
  be enabled via the '/settings/chunked_transform' configuration option<br>
  by setting it to true.<br>
<br>
* The Python language module now supports 'Application Factories'<br>
  (thanks to Gourav).<br>
<br>
Developers<br>
==========<br>
<br>
Some simple changes have been made to the build system.<br>
<br>
* Prettified make output by default with GNU make.<br>
<br>
  Instead of getting the normal compiler command for each target being<br>
  built you now get a much simpler line like<br>
<br>
    CC     build/src/nxt_cgroup.o<br>
<br>
  You can get the old *verbose* output by passing V=1 to make, e.g.<br>
<br>
    $ make V=1<br>
<br>
* Make variables<br>
<br>
  You can now control some aspects of the build process by passing<br>
  variables to make (like the above), currently supported variables are:<br>
<br>
  ) D=1                 Enables debug builds (-O0)      (default: 0)<br>
  ) E=0                 Disables -Werror                (default: 1)<br>
  ) V=1                 Enables verbose output          (default: 0)<br>
<br>
  ) EXTRA_CFLAGS=       Add extra compiler options<br>
<br>
* GCC & Clang<br>
<br>
  We removed support for a bunch of esoteric compilers, including for<br>
  some systems which Unit has likely never ever run on!.<br>
<br>
  That leaves GCC and Clang as the currently supported compilers for<br>
  building Unit.<br>
<br>
* -std=gnu11<br>
<br>
  Last but not least, Unit has come forth into the 21st century and we<br>
  now build with -std=gnu11 (C11 + GNU extensions). While previously we<br>
  didn't explicitly set the -std= option, due to supporting CentOS 7<br>
  (which is now EOL) we were effectively limited to -std=gnu89/90.<br>
<br>
  This brings us one step closer to modernising Unit's code base.<br>
<br>
========================================================================<br>
<br>
Changes with Unit 1.33.0                                     17 Sep 2024<br>
<br>
    *) Feature: make the number of router threads configurable.<br>
<br>
    *) Feature: make the listen(2) backlog configurable.<br>
<br>
    *) Feature: add Python application factory support.<br>
<br>
    *) Feature: add experimental chunked request body support. (Disabled<br>
                by default).<br>
<br>
    *) Feature: add fuzzing via oss-fuzz.<br>
<br>
    *) Feature: add "if" option to the "match" object.<br>
<br>
    *) Feature: show list of loaded language modules in the /status<br>
                endpoint.<br>
<br>
    *) Feature: Unit ships with a new Rust based CLI application<br>
                "unitctl".<br>
<br>
    *) Feature: the wasm-wasi-component language module now inherits the<br>
                processes environment.<br>
<br>
    *) Change: under systemd unit runs in forking mode (once again).<br>
<br>
    *) Change: if building with njs, version 0.8.3 or later is now<br>
               required.<br>
<br>
    *) Change: Unit now builds with -std=gnu11 (C11 with GNU<br>
               extensions).<br>
<br>
    *) Change: Unit now creates the full directory path for the PID file<br>
               and control socket.<br>
<br>
    *) Change: build system improvements, including pretty printing the<br>
               make output and enabling various make variables to<br>
               influence the build process (see: make help).<br>
<br>
    *) Change: better detection of available runnable CPUs on Linux.<br>
<br>
    *) Change: default listen(2) backlog on Linux now defaults to Kernel<br>
               default.<br>
<br>
    *) Bugfix: don't modify REQUEST_URI.<br>
<br>
    *) Bugfix: fix a crash when interrupting a download via a proxy.<br>
<br>
    *) Bugfix: wasm-wasi-component application process hangs after<br>
               receiving restart signal from the control endpoint.<br>
<br>
    *) Bugfix: njs variables accessed with a JS template literal should<br>
               not be cacheable.<br>
<br>
    *) Bugfix: properly handle deleting arrays of certificates.<br>
<br>
    *) Bugfix: don't create the $runstatedir directory which triggered<br>
               an Alpine packaging error.<br>
<br>
------------------------------------------------------------------------<br>
<br>
Changes since 1.32.0 are as follows:<br>
<br>
Alejandro Colomar (12):<br>
      Build with -std=gnu11 (C11 with GNU extensions)<br>
      fs: Rename nxt_fs_mkdir_parent() => nxt_fs_mkdir_dirname()<br>
      fs: Rename nxt_fs_mkdir_all() => nxt_fs_mkdir_p()<br>
      fs: Use branchless code in nxt_fs_mkdir_p()<br>
      fs: Use a temporary variable in nxt_fs_mkdir_p()<br>
      fs: Accept relative paths in nxt_fs_mkdir_p()<br>
      fs: Accept path names of length 1 in nxt_fs_mkdir_p()<br>
      fs: Invert logic to reduce indentation in nxt_fs_mkdir_dirname()<br>
      fs: Correctly handle "/" in nxt_fs_mkdir_dirname()<br>
      fs: Make the full directory path for the pid file and the control socket<br>
      auto: Don't install $runstatedir<br>
      Use octal instead of mode macros<br>
<br>
Andrei Zeliankou (22):<br>
      Version bump<br>
      Router: match when pattern and tested string are both zero length<br>
      NJS: avoiding arithmetic ops with NULL pointer in r->args<br>
      Fixed undefined behaviour in left shift of int value<br>
      Avoiding arithmetic ops with NULL pointer in nxt_http_arguments_parse<br>
      Avoiding arithmetic ops with NULL pointer in nxt_port_mmap_get<br>
      Initialize port_impl only when it is needed<br>
      Avoiding arithmetic ops with NULL pointer in nxt_unit_mmap_get<br>
      NJS: loader should be registered using njs_vm_set_module_loader()<br>
      Tests: NJS cacheable variables with access log<br>
      njs (lowercase) is more preferred way to mention<br>
      Docs: njs (lowercase) is more preferred way to mention<br>
      Tests: added $request_uri tests with proxy<br>
      Tests: compatibility with OpenSSL 3.2.0<br>
      Tests: error report corrected for unknown variables in "response_headers"<br>
      tests: REQUEST_URI variable test with rewrite<br>
      Tests: explicitly specify 'f' prefix to format string before printing<br>
      Tests: print unit.log on unsuccessful unmount<br>
      Tests: chunked request body<br>
      contrib: updated njs to 0.8.5<br>
      tests: Fix `/status' endpoint tests for new 'modules' section<br>
      Tests: initial "wasm-wasi-component" test<br>
<br>
Andrew Clayton (86):<br>
      Configuration: Fix check in nxt_conf_json_parse_value()<br>
      Remove unused nxt_vector_t API<br>
      Var: Remove a dead assignment in nxt_var_interpreter()<br>
      Avoid potential NULL pointer dereference in nxt_router_temp_conf()<br>
      Add GitHub workflow for wasm-wasi-component<br>
      Remove support for Microsoft's Visual C++ compiler<br>
      Remove support for Intel's icc compiler<br>
      Remove support for IBM's XL C compiler<br>
      Remove support for Sun's Sun Studio/SunPro C compiler<br>
      Remove -W from compiler flags<br>
      Expand the comment about -Wstrict-overflow on GCC<br>
      Disable strict-aliasing in clang by default<br>
      Compile with -fno-strict-overflow<br>
      Add initial infrastructure for pretty printing make output<br>
      Hook up make pretty printing to the Unit core and tests<br>
      Pretty print the Java language module compiler output<br>
      Pretty print the Perl language module compiler output<br>
      Pretty print the PHP language module compiler output<br>
      Pretty print the Python language module compiler output<br>
      Pretty print the Ruby language module compiler output<br>
      Pretty print the wasm language module compiler output<br>
      Enable optional 'debuggable' builds<br>
      Allow to disable -Werror at 'make' time<br>
      Add a help target to the root Makefile<br>
      Add an EXTRA_CFLAGS make variable<br>
      Fix the security-alert email link in the README<br>
      Add a repostatus badge to the README<br>
      Add a GitHub workflow status badge for our CI to the README<br>
      Rebuild wasm-wasi-component when any of its dependencies change<br>
      Wasm-wc: Fix application restarts<br>
      Fix some trailing whitespace and long lines in the README<br>
      configuration: Constify numerous pointers<br>
      Constify a bunch of static local variables<br>
      php: Constify some local static variables<br>
      configuration: Constify more pointers<br>
      Tighten up some string arrays<br>
      Add a GitHub workflow to check for whitespace issues<br>
      auto/wasm: No need to explicitly set -fno-strict-aliasing now<br>
      Convert 0-sized arrays to true flexible array members<br>
      auto, perl: Fix building the Perl language module with clang<br>
      .mailmap: Add an entry for Ava's GitHub address<br>
      Add GitHub workflows for extra coverage<br>
      tstr: Constify the 'str' parameter to nxt_tstr_compile()<br>
      wasm: Add a missing 'const' qualifier in nxt_wasm_setup()<br>
      ci: Be more specific when to run the main Unit checks<br>
      ci: Limit when to run checks on pull-requests<br>
      fuzzing: Add a .gitattributes file<br>
      perl: Constify some local static variables<br>
      test/clone: Constify some local static variables<br>
      python: Constify some local static variables<br>
      auto: Fix some indentation in auto/modules/wasm-wasi-component<br>
      auto, wasm-wc: Copy the .so into build/lib/unit/modules/<br>
      status: Constify a bunch of local variables<br>
      status: Use a variable to represent the status member index<br>
      Flow the language module name into nxt_app_lang_module_t<br>
      status: Show list of loaded language modules<br>
      Fix a comment typo for 'Memory-only buffers' in src/nxt_buf.h<br>
      status: Add a missing check for potential NULL<br>
      Add a basic .editorconfig file<br>
      CONTRIBUTING.md: Re-flow text<br>
      CONTRIBUTING.md: Update the 'Git Style Guide' section<br>
      README: Update number of supported languages<br>
      auto: Add a check for Linux's sched_getaffinity(2)<br>
      lib: Better available cpu count determination on Linux<br>
      router: Make the number of router threads configurable<br>
      socket: Use a default listen backlog of -1 on Linux<br>
      conf, router: Make the listen(2) backlog configurable<br>
      ci/unitctl: Update paths<br>
      docs/openapi: Fix brokenness<br>
      docs/openapi: Add new config options<br>
      Remove .hgtags<br>
      Remove .hgignore files<br>
      tests: Fix `/status' endpoint to cater for lists<br>
      test/wasm-wc: Target wasm32-wasip1<br>
      test/wasm-wc: Rename test_wasm_component.py<br>
      ci: Enable the wasm-wasi-component tests<br>
      ci: Fix wasmtime paths in ci.yml<br>
      ci: Trigger ci.yml for changes under pkg/contrib<br>
      tests: Fix routing tests in the no njs case<br>
      tests: Suppress cargo-component output<br>
      python: Don't decrement a reference to a borrowed object<br>
      unitctl: Don't track unit-openapi/.openapi-generator/<br>
      pkg/docker: Update dockerfiles for 1.33.0<br>
      tools/unitctl: Update for version 1.33.0<br>
      docs/changes.xml: Add 1.33.0 changelog entries<br>
      Add 1.33.0 CHANGES<br>
<br>
Arjun (15):<br>
      http: fix use-of-uninitialized-value bug<br>
      fuzzing: add fuzzing infrastructure in build system<br>
      fuzzing: add fuzzing targets<br>
      fuzzing: add a fuzzing seed corpus and dictionary<br>
      fuzzing: add a basic README<br>
      tstr, conf: Ensure error strings are nul-terminated<br>
      fuzzing: added cifuzz workflow<br>
      fuzzing: fix harness bugs<br>
      fuzzing: update directory path in README and build-fuzz.sh<br>
      fuzzing: code cleanup<br>
      fuzzing: fixed harness bug<br>
      fuzzing: updated JSON target<br>
      fuzzing: added new basic targets<br>
      fuzzing: fixed harness bug<br>
      socket: Prevent buffer under-read in nxt_inet_addr()<br>
<br>
Ava Hahn (24):<br>
      Add additional information to the README<br>
      Elaborate on docker image differences<br>
      tools: Add unitctl CLI<br>
      tools/unitctl: Initial Docker Procedures<br>
      tools/unitctl: API Plumbing for docker deployments<br>
      tools/unitctl: Add Docker deployment functionality<br>
      tools/unitctl: Add new functionality to README.md and fmt code<br>
      tools/unitctl: temporarily ignore issues with autogenerated readme<br>
      tools/unitctl: Readme fixes<br>
      tools/unitctl: Improve quality of life on osx<br>
      tools/unitctl: Update host_path() to account for OSX special behaviour<br>
      tools/unitctl: clean up control socket impls<br>
      tools/unitctl: enable passing IP addresses to the 'instances new' command<br>
      trigger unitctl CI on version tags of existing format<br>
      ci: Add unit testing to unitctl CI workflow<br>
      ci: tweak unitctl github release<br>
      tools/unitctl: implement application subcommand<br>
      tools/unitctl: unitctl export<br>
      tools/unitctl: Enable Multi Socket Support<br>
      tools/unitctl: update readme<br>
      tools/unitctl: update readme<br>
      tools/unitctl: make application directory configurable<br>
      wasm-wc: bump wasmtime to v24<br>
      tools/unitctl: change reload to restart<br>
<br>
Costas Drongos (1):<br>
      Docker: Bump containers to bookworm<br>
<br>
Dan Callahan (1):<br>
      ci: Fix tags on ad hoc unitctl releases<br>
<br>
Danielle De Leo (1):<br>
      Add unitctl quickstart to README.md<br>
<br>
Dylan Arbour (4):<br>
      Test with root access in GitHub workflows<br>
      .mailmap: Map Dylan's 2nd GitHub address<br>
      Add dependabot.yml<br>
      Add unitctl build and release CI<br>
<br>
Gabor Javorszky (13):<br>
      tests: Change request_uri tests for changed behaviour<br>
      tools/unitctl: Replace matching image name to matching command<br>
      tools/unitctl: Replace format! with .to_string()<br>
      tools/unitctl: remove (default) from option text<br>
      tools/unitctl: make json-pretty default output fmt<br>
      tools/unitctl: reword freeform message for output<br>
      tools/unitctl: whitespace fixes<br>
      tools/unitctl: rename app -> apps, fix readme<br>
      docs: remove security.txt file<br>
      docs: add SECURITY.md<br>
      tools/unitctl: rename UNIT -> Unit<br>
      tools/unitctl: add export subcommand to readme<br>
      tools/unitctl: adjust readme for socket addresses<br>
<br>
Gourav (2):<br>
      python: Support application factories<br>
      tests: Add tests for python application factories<br>
<br>
Jon Torre (2):<br>
      docs/openapi: Update the /status endpoint URL<br>
      docs/openapi: Add entries for the new /status/modules endpoint<br>
<br>
Konstantin Pavlov (22):<br>
      Wasm-wc: use more common uname switch to get operating system name<br>
      Packaging: added missing build dependencies to Makefiles<br>
      Packaging: fix build-depends detection on debian-based systems<br>
      contrib: be quiet on unpack<br>
      contrib: updated njs to 0.8.4<br>
      Packages: moved systemd service to forking on rpm-based distros<br>
      Docker: bump node and perl versions<br>
      Docker: updated Rust and rustup versions<br>
      Packages: clean up EOL debian-based distributions<br>
      Packages: added Ubuntu 24.04 "noble" support<br>
      Packages: don't redefine FORTIFY_SOURCE on Ubuntu<br>
      Packages: remove support for EOL Fedora versions (35-38)<br>
      Packages: removed CentOS 6 leftover<br>
      Packages: removed CentOS 7 due to EOL<br>
      contrib: make sha512sum check compatible with FreeBSD 14+<br>
      Packaging: fix build-depends on multiarch debian systems<br>
      Docker: bump Go versions<br>
      Docker: update Rust version<br>
      Docker: introduce "slim" python images<br>
      Docker: leave artifacts when build targets succeed<br>
      Added .gitignore for pkg/contrib/tarballs<br>
      Packages: bump wasmtime to 24.0.0 and wasi-sysroot to 24.0.<br>
<br>
Liam Crilly (2):<br>
      Tools: improved error handling for unitc<br>
      tools/unitc: Redirect stderr for curl feature test<br>
<br>
Mike Jang (1):<br>
      Add a GitHub discussions badge to the README<br>
<br>
Remi Collet (1):<br>
      pkg/rpm: Remove deprecated rpm spec file items<br>
<br>
Robbie McKinstry (1):<br>
      wasm-wc: Enable environment inheritance<br>
<br>
Sergey A. Osokin (2):<br>
      java: Update third-party components<br>
      java: Update third-party components<br>
<br>
Taryn Musgrave (1):<br>
      tools: Add unitctl section to the README<br>
<br>
Zhidao HONG (22):<br>
      Var: Fix cacheable issue for njs variable access<br>
      HTTP: Added variable validation to the response_headers option<br>
      HTTP: Introduce quoted target marker in HTTP parsing<br>
      HTTP: Rewrote url target section in nxt_h1p_peer_header_send()<br>
      Fixes: 64934e59f ("HTTP: Introduce quoted target marker in HTTP parsing") Reviewed-by: Andrew Clayton <a.clayton@nginx.com><br>
      http: Use consistent target in nxt_h1p_peer_header_send()<br>
      http: Ensure REQUEST_URI immutability<br>
      http: Move chunked buffer pos pointer while parsing<br>
      http: Refactored nxt_h1p_request_body_read()<br>
      http: Support chunked request bodies<br>
      Fix certificate deletion for array type certificates<br>
      var: Restrict nxt_tstr_query() to only support synchronous operation<br>
      http: Refactor return action<br>
      http: Refactor route pass query<br>
      http: Refactor static action<br>
      http: Refactor access log write<br>
      var: Remove unused functions and structure fields<br>
      http: Refactor out nxt_tstr_cond_t from the access log module<br>
      http: Get rid of nxt_http_request_access_log()<br>
      http: Add "if" option to the "match" object<br>
      tests: "if" option in http route match<br>
      http: Fix router process crash whilst using proxy<br>
<br>
dependabot[bot] (5):<br>
      Wasm-wc: Bump the mio crate from 0.8.10 to 0.8.11<br>
      Wasm-wc: Bump the h2 crate from 0.4.2 to 0.4.4<br>
      wasm-wc: Bump the rustls crate from 0.21.10 to 0.21.11<br>
      ci: cifuzz: Bump github/codeql-action from 2 to 3<br>
      build(deps): bump openssl from 0.10.64 to 0.10.66 in /tools/unitctl<br>
_______________________________________________<br>
unit mailing list<br>
unit@nginx.org<br>
<a href="https://mailman.nginx.org/mailman/listinfo/unit">https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmailman.nginx.org%2Fmailman%2Flistinfo%2Funit&data=05%7C02%7Cl.crilly%40f5.com%7C2f51874763244f69fad308dcd7ef5a30%7Cdd3dfd2f6a3b40d19be0bf8327d81c50%7C0%7C0%7C638622670243956921%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=ej9ODatcQdNBV6klE3NHY34MMTOsoVNxaN3QJh5SFJU%3D&reserved=0</a><br>
</div>
</span></font>
</body>
</html>