Hi, HAProxy 3.3-dev6 was released on 2025/08/06. It added 36 new commits after version 3.3-dev5.
The period is calm so there are less changes, but that's not a reason for not emitting another release. Very few bug fixes, and a few updates. - ACME now supports traces for debugging, and can emit the DNS-01 challenge on the dataplane API ring, allowing to delegate zone updates. - continued preparatory work for persistent stats. This time it's about sharing the clock. For now the change is minimal, it just turned the clock into a dereferenced pointer, so this must not change anything (mainly used in freq counters and inter-thread time keeping). - some preparatory work to support aligned mallocs and aligned pools. For now no pool is aligned but the new pool declaration code and the allocation uses the new API. Again it shouldn't change anything. The aligned_alloc API depends on OSes (POSIX_2001+, MINGW and others), so if you're occasionally building on OSes (or with libcs) not covered by the CI (linux, freebsd, macos, windows), a test is welcome. I've also tested OpenBSD and Solaris 10. Solaris 11 is expected to work, but a test is welcome (installation still in progress in a VM...). - continued reorganization of idle connections in preparation for a better support for QUIC on the backend. We seem to ahve ideas pretty clear now about how all of this should assemble together so I'm confident about steady progress on this front. - and a new sample fetch function, le2dec() to decode arbitrary sized little-endian inputs to decimal. I don't expect any regression on this one (really), but build issues are not totally out of scope, so as usual please test and report. Please find the usual URLs below : Site index : https://www.haproxy.org/ Documentation : https://docs.haproxy.org/ Wiki : https://github.com/haproxy/wiki/wiki Discourse : https://discourse.haproxy.org/ Slack channel : https://slack.haproxy.org/ Issue tracker : https://github.com/haproxy/haproxy/issues Q&A from devs : https://github.com/orgs/haproxy/discussions Sources : https://www.haproxy.org/download/3.3/src/ Git repository : https://git.haproxy.org/git/haproxy.git/ Git Web browsing : https://git.haproxy.org/?p=haproxy.git Changelog : https://www.haproxy.org/download/3.3/src/CHANGELOG Dataplane API : https://github.com/haproxytech/dataplaneapi/releases/latest Pending bugs : https://www.haproxy.org/l/pending-bugs Reviewed bugs : https://www.haproxy.org/l/reviewed-bugs Code reports : https://www.haproxy.org/l/code-reports Latest builds : https://www.haproxy.org/l/dev-packages Willy --- Complete changelog : Alexander Stephan (1): MINOR: sample: Add le2dec (little endian to decimal) sample fetch Amaury Denoyelle (8): MINOR: mux-quic: release conn after shutdown on BE reuse failure MINOR: session: strengthen connection attach to session MINOR: session: remove redundant target argument from session_add_conn() MINOR: session: strengthen idle conn limit check MINOR: session: do not release conn in session_check_idle_conn() MINOR: session: streamline session_check_idle_conn() usage MINOR: muxes: refactor private connection detach BUG/MEDIUM: mux-quic: ensure Early-data header is set Aurelien DARRAGON (5): BUG/MINOR: hlua: take default-path into account with lua-load-per-thread CLEANUP: counters: rename counters_be_shared_init to counters_be_shared_prepare MINOR: clock: make global_now_ms a pointer MINOR: clock: make global_now_ns a pointer as well BUG/MEDIUM: hlua_fcn: ensure systematic watcher cleanup for server list iterator William Lallemand (7): MINOR: acme: implement traces BUILD: acme: avoid declaring TRACE_SOURCE in acme-t.h MINOR: acme: emit a log for DNS-01 challenge response MINOR: acme: emit the DNS-01 challenge details on the dpapi sink MEDIUM: acme: allow to wait and restart the task for DNS-01 MINOR: acme: update the log for DNS-01 BUG/MINOR: acme: possible integer underflow in acme_txt_record() Willy Tarreau (15): BUILD: fcgi: fix the struct name of fcgi_flt_ctx BUILD: compat: provide relaxed versions of the MIN/MAX macros BUILD: quic: use _MAX() to avoid build issues in pools declarations BUILD: compat: always set _POSIX_VERSION to ease comparisons MINOR: implement ha_aligned_alloc() to return aligned memory areas MINOR: pools: support creating a pool from a pool registration MINOR: pools: add a new flag to declare static registrations MINOR: pools: force the name at creation time to be a const. MEDIUM: pools: change the static pool creation to pass a registration DEBUG: pools: store the pool registration file name and line number DEBUG: pools: also retrieve file and line for direct callers of create_pool() MEDIUM: pools: add an alignment property MINOR: pools: add macros to register aligned pools MINOR: pools: add macros to declare pools based on a struct type MEDIUM: pools: respect pool alignment in allocations ---

