Migrating to HAProxy v3.4-dev13
Version v3.4-dev13 introduces 2 breaking changes. This guide details how to update your code.
Released: 5/20/2026
2
Breaking Changes
1
Migration Steps
57
Affected Symbols
⚠️ Check Your Code
If you use any of these symbols, you need to read this guide:
get_server_ph_post()dns_session_init()resolv_read_name()srv_set_fqdn()srv_settings_cpy()cli_parse_set_serverresolvers_new()dns_dgram_init()parse_new_proxy()resolv_action_do_resolve()parse_resolve_conf()cfg_parse_resolvers()resolvers_destroy()proxy.hhttpclientdnschk_report_conn_err()convert_ecdsa_sig()EVP_PKEY_get_bn_paramhaproxy startuphttp-client contexth2c valuesUpgrade headerswebsocket protocolhaterm master pipemux_proto_listmux_protoconn_select_mux_fe()conn_select_mux_be()MUX <init_xprt>QMux handshakeTCP ALPN h3h3/QMux negotiationserver IDsbalance hash calculationhash-type nonehash-key id32hash-key guidchroot()committed_extra_streamsh2_init()stream elasticitymux_quicms_bidi_relQCC memberparameter cachexprt_qmux initUSE_TRACEglobal.maxpipescompute_ideal_maxconn()HTX_XFER_HDRS_ONLYhtx_xfer APIhtx_replace_blk_value()stick-tablesulongsize_tarray_size_or_fail()Breaking Changes
●Issue #1
The experimental status has been removed from dynamic backends, meaning they are now considered stable and may be used without the 'experimental' flag.
●Issue #2
TCP ALPN h3 is now rejected without the 'experimental' flag. To use it, ensure the 'experimental' flag is set.
Migration Steps
- 1Rename the 'token' from mux_proto_list to mux_proto.
Release Summary
Version 3.4-dev13 includes numerous bug fixes across various modules like DNS, resolvers, proxy, and HTTP client. It also introduces new features such as automatic chroot, improved hash key support, and enhanced QUIC stream elasticity management.
Need More Details?
View the full release notes and all changes for HAProxy v3.4-dev13.
View Full Changelog