Release notes
HAProxy Data Plane API 3.2 release notes
On this page
Key changes in the HAProxy Data Plane API 3.2 release include:
New features Jump to heading
-
ACME support
- Added support for the
acme
section. - Added
crt-store
support foracme
anddomains
attributes. - Added runtime APIs for
acme renew
andacme status
.
- Added support for the
-
Configuration enhancements
- Added support for child resources in the
defaults
section. - Added parsing and serializing of in-line comments in configuration for all API resources. They’re parsed and serialized as plain JSON and in the
metadata
field for each API resource. - Introduced
tune.quic.frontend.max-tx-mem
to the globaltune_quic_options
. - Added
compression minsize-req
andminsize-res
to thecompression
keyword. - Added the
recv-only
flag to thestick-table
andtable
resources. - Added
glitches_kill_cpu_usage
to the globaltune
options. - Added
takeover_other_tg_connections
to the globaltune
options. - Added
strict-maxconn
to theserver
parameters. - Added the
check-pool-conn-name
andcheck-reuse-pool
health check keywords for servers. - Implemented the
idle-ping
parameter forserver
andbind
. - Added support for the
tune.notsent-lowat.server
andtune.notsent-lowat.client
keywords in theglobal
section. - Added support for
tune.lua.bool-sample-conversion
. - Added support for the
hash-preserve-affinity
keyword indefaults
,backends
, andlisten
sections. - Added support for the
cpu-set
andcpu-policy
keywords in theglobal
section. - Added support for the new HAProxy 3.2 global keywords:
acme.scheduler
,stress-level
,tune.epoll.mask-events
, andtune.max-rules-at-once
. - Added support for the
dont-parse-log
andassume-rfc6587-ntf
options in thelog-forward
section. - Added support for the option
pause
forhttp-request
andhttp-response
keywords. - Added support for
http-drop-response-trailers
indefaults
andfrontend
sections. - Added support for
http-drop-request-trailers
indefaults
andbackend
sections. - Added the
dns-accept-family
option in theglobal
section.
- Added support for child resources in the
-
SSL/TLS
- Added support for the
ssl-f-use
keyword. - Added the
no-strict-sni
andtls-tickets
parameters tobind
. - Added runtime APIs for certificates, CRLs, and OCSP.
- Added support for
crt-list
files in storage. - Added an option to skip reload when creating an SSL certificate.
- Added support for the
-
API and validation
- Added
Subject
andSerial
to the certificate response model. - Now uses the same logic to check configuration when using the
/raw
API. - Now shows validation errors for
/raw
API uploads, not just the status.
- Added
Bug fixes Jump to heading
-
Runtime and server management
- Fixed an issue where all server options were not being added for
runtime_server
. - Fixed creating servers with HAProxy >= 3.0, where the
enabled
keyword is no longer accepted dynamically.
- Fixed an issue where all server options were not being added for
-
Configuration and users
- Fixed panic when
insecure
isn’t set for users. - Fixed setting of duration types in the configuration.
- Fixed
tune.bufsize
parsing issue, reverting to thestring
type. - Fixed the
reload
service name for thes6
reload strategy. - Fixed the general storage error message when no
FileUpload
is specified. - Fixed
option redispatch
serialization. - Fixed
bind
updates without requiring a restart, addressing serialization type issues forbind
parameters. - Added a nil check on global conversion to avoid panic if
TuneOptions
was nil.
- Fixed panic when
-
Authentication
- Now ensures userlist settings are respected when configured.
-
SSL
- Added support for the
skip_reload
parameter when creating SSL certificates.
- Added support for the
-
API and rules
- The API now accepts
set-var-fmt
inhttp_request_rule
.
- The API now accepts
-
Panics
- Avoids panic in runtime
Reload
if the output is empty.
- Avoids panic in runtime
Other Changes Jump to heading
-
Build and dependencies
- Upgraded the API version to 3.2.
- Upgraded Go to 1.24.
- Upgraded the
bats
version for CI. - Fixed
yaml-lint
errors.
-
Internal refinements and tests
- Refactored to not use
logrus
directly in handlers. - Fixed cache tests in E2E tests.
- Removed debug traces from E2E tests.
- Fixed program tests for the deprecated section.
- Fixed removing of added SSL certificates.
- Added 3.2 for CI and removed 2.9 in E2E tests.
- Added a proper HAProxy configuration for the
x_issue_132
test in E2E tests. - Added a runtime server unit test.
- Fixed random CI failures when removing a
defaults
section. - Attempted to fix
bug_132
failures on CI. - Aligned the specification to the latest changes in the
client-native
library. - Made
port
optional via a nil value in the service. - Fixed the
compare
test generator. - Added metadata tests.
- Fixed Go 1.24 lint errors.
- Generated the spec with the latest changes.
- Refactored to not use
Do you have any suggestions on how we can improve the content of this page?