Skip to content

Releases: haproxytech/haproxy-unified-gateway

HAProxy Unified Gateway v1.0.7

Choose a tag to compare

@github-actions github-actions released this 10 Aug 08:39

Release Notes

HAProxy Unified Gateway v1.0.7 4af11d1

Build date: 2026-08-10T08:21:01Z

Changelog

  • 0eed26d BUG/MEDIUM: write PlainValues map entries as a single comma-separated line
  • e61097d BUG/MINOR: HTTP Rule: avoid unnecessary reload when only maps are changed.
  • e77aa31 BUG/MINOR: prioritize exact host over wildcard in route selection
  • 4af11d1 BUILD/MINOR: bump gopherd version in Dockerfiles
  • 8346b3c BUILD/MINOR: bump k8s and development tools versions
  • 1c394dc BUILD/MINOR: go.mod: update golang.org/x packages
  • 8b878c5 BUILD/MINOR: go.mod: update k8s.io packages
  • 3b2269a BUILD/MINOR: go.mod: update k8s.io packages
  • e3c0371 CLEANUP/MINOR: add Apache 2.0 license header to route.lua
  • a883241 CLEANUP/MINOR: ci: refine pipeline cancel logs
  • 3520307 CLEANUP: fix typo on update status log
  • cc0f016 CLEANUP: use the same log level for all map operations
  • d83a5cf MAJOR: new configuration for matching across routes
  • 4469586 MAJOR: use in-memory patref for map lookups in Lua
  • a008948 MINOR: Update log format to include listener-route wildcard match and base listener route
  • 6313c6d MINOR: read CapBnd instead of CapEff for NET_BIND_SERVICE
  • 81dc0b6 MINOR: split HAProxy health checks into liveness and readiness
  • ffa980e REORG/MAJOR: replace pebble process manager with gopherd
  • 5319473 TEST/MEDIUM: collect HUG debug artifacts on conformance MR failures
  • c6a5536 TEST/MEDIUM: fix integration tests with the new configuration for match across routes
  • cec0f6b TEST/MEDIUM: lua: add tests for lua script
  • 9811d29 TEST: add end to end lua tests

HAProxy Unified Gateway v1.0.6

Choose a tag to compare

@github-actions github-actions released this 21 Jul 14:44

Release Notes

HAProxy Unified Gateway v1.0.6 a18f226

Build date: 2026-07-21T14:26:51Z

Changelog

  • b96d09d BUILD/MINOR: go.mod: update golang.org/x packages
  • a18f226 BUILD/MINOR: go.mod: update k8s.io packages
  • 90be97f DOC/MINOR: document attaching a Backend CR to a backend
  • 6115c14 DOC/MINOR: document the renamed Service Backend CR annotation
  • 0a1e05a MEDIUM: allow a cross-namespace Service Backend CR via ReferenceGrant
  • 74b4e06 MEDIUM: gate: rename the Service Backend CR annotation to cr-backend
  • 589502d MEDIUM: merge a Service-level Backend CR by override
  • 664ad38 MEDIUM: merge a Service-level Backend CR into TLSRoute backends
  • d45716b MEDIUM: re-reconcile HTTPRoutes on Service Backend CR grant changes
  • 160c4de MEDIUM: re-reconcile TLSRoutes on Service Backend CR changes
  • e2be736 MEDIUM: re-reconcile routes on Service-bound Backend CR changes
  • a5425ee TEST/MINOR: cover Service Backend CR grant re-reconciliation
  • c222178 TEST/MINOR: cover Service-bound Backend CR re-reconciliation
  • 10d38f1 TEST/MINOR: cover Service-level Backend CR merge
  • 371cbc4 TEST/MINOR: cover TLSRoute Service Backend CR re-reconciliation
  • b65b12f TEST/MINOR: cover cross-namespace Service Backend CR grants

HAProxy Unified Gateway v1.0.5

Choose a tag to compare

@github-actions github-actions released this 03 Jul 14:18

Release Notes

HAProxy Unified Gateway v1.0.5 f62122b

Build date: 2026-07-03T14:00:45Z

Changelog

  • 23414c6 BUG/MEDIUM: block_secrets stability regression
  • c0fc7c6 BUG/MEDIUM: fix previousMapPort2Listeners never populated in resetListenerConflicts
  • be6278c BUILD/MINOR: go.mod: update golang.org/x packages
  • f62122b BUILD/MINOR: go.mod: update k8s.io packages
  • 2a87ab4 CLEANUP/MINOR: doc: fix volume mount path in usage comment
  • d8cb855 MAJOR: feature and security improvements for block secrets protection
  • 52762dd MAJOR: feature and security improvements for haproxy wrapper

HAProxy Unified Gateway v1.0.4

Choose a tag to compare

@github-actions github-actions released this 05 Jun 15:01

Release Notes

HAProxy Unified Gateway v1.0.4 8cffc77

Build date: 2026-06-05T14:42:41Z

Changelog

  • 2d4d02f BUG/MEDIUM: fix ReferenceGrant enqueue function to filter by DedicatedGateway
  • c681e8a BUG/MINOR: skip listeners with no virtual listener for invalid ReferenceGrant
  • a6671c0 BUILD/MINOR: ci: automate backport questions on merge requests
  • 0a541af BUILD/MINOR: remove ReferenceGrant tests from conformance skip list
  • 8cffc77 BUILD/MINOR: update tolling used to check code
  • 0c27167 MINOR: add port binding capability detection
  • 444ff1e TEST/MEDIUM: add conformance test HTTPRouteRequestHeaderModifier
  • c1548ce TEST/MEDIUM: add conformance test HTTPRouteSimpleSameNamespace
  • f28eec6 TEST/MEDIUM: add conformance tests HTTPRouteInvalidCrossNamespaceParentRef

HAProxy Unified Gateway v1.0.3

Choose a tag to compare

@github-actions github-actions released this 22 May 15:17

Release Notes

HAProxy Unified Gateway v1.0.3 6579c0a

Build date: 2026-05-22T14:58:04Z

Changelog

  • c443a3e BUG/MAJOR: do not delete backends that were also upserted in the same cycle
  • 43098c8 BUG/MEDIUM: ensure that enqueueFor only enqueues objects in dedicated namespaces
  • a7f3a4a BUG/MEDIUM: preserve NodePort when reconciling Service ports
  • b343e55 BUG/MINOR: ci: pass GITHUB_TOKEN to commit-policy step
  • de39d56 BUG/MINOR: ci: strip quotes from active_version in release scripts
  • 8b993cd BUG/MINOR: enforce allowedRoutes.namespaces in route-to-gateway attachment
  • 27a6503 BUG/MINOR: extract TLS passthrough rules to a helper function
  • 9e656f5 BUG/MINOR: fix HTTP header add filter to append to existing header value
  • f081cd6 BUG/MINOR: fix ReferenceGrantsTo leak and add unit tests for ReferenceGrantManager
  • 88a0226 BUG/MINOR: fix ReplacePrefixMatch path rewrite edge cases
  • 2b24130 BUG/MINOR: fix gateway listener status's update when only the message has changed
  • 0d61669 BUG/MINOR: fix stale crt-list entry after gateway deletion
  • 95397e5 BUG/MINOR: prevent panic and avoid unnecessary file operations
  • 15b6f48 BUG/MINOR: remove unused domainWildcard bucket to fix dropped routes
  • ec5bfe5 BUG/MINOR: update Helm chart repository link in README
  • 252b2e3 BUILD/MINOR: add -failfast to conformance run to stop on first failure
  • 98eb574 BUILD/MINOR: bump client-native dependency to v6.3.3
  • 47c5cb4 BUILD/MINOR: ci: allow author to sign off their own commits
  • f0025a8 BUILD/MINOR: enforce sequential package execution and fail-fast in test task
  • 1708e54 BUILD/MINOR: go.mod: update golang.org/x packages
  • 2d08f1c BUILD/MINOR: go.mod: update golang.org/x packages
  • ea94479 BUILD/MINOR: go.mod: update k8s.io packages
  • c21e9cb BUILD/MINOR: update conformance skip list for ReferenceGrant support
  • 936b837 CLEANUP/MINOR: make linter happy. Fix some formatting
  • bd24194 CLEANUP/MINOR: remove conformance-create-local task
  • b669322 CLEANUP/MINOR: remove empty file k8s/gate/config/iowriter.go
  • 5fd91d1 CLEANUP/MINOR: remove so code duplication by implementing a common helper function listenersForParentRefs
  • 64e0672 CLEANUP/MINOR: set PlainValues only once a construction time
  • 43aac48 CLEANUP/MINOR: use distinct temp variables for route matching
  • 6579c0a CLEANUP: Remove wrong test manifests for gateway-tls-multiple
  • d68e811 CLEANUP: implement code review comments
  • a50a7a7 CLEANUP: in maps handling, use the utils Path struct instead of separate fields.
  • 20b3684 CLEANUP: remove unused maps interface
  • c6f4eef DOC/MINOR: update the conformance test documentation for both local and ci runs
  • f6021b7 MAJOR: New map and haproxy config for TLSRoute and SNI matching
  • 60f5506 MAJOR: add option to run in a single dedicated gateway mode
  • 2c0904b MAJOR: implement new map content with listener and route selection
  • 5776e1a MAJOR: move listener and listener route maps to their own directory
  • 7a29753 MEDIUM: add ReferenceGrant as a tracked resource in the data pipeline
  • 92f0b12 MEDIUM: add ReferenceGrantManager to track cross-namespace access grants
  • a1c10a7 MEDIUM: add configuration option to watch only 1 Gateway
  • f1e10f6 MEDIUM: bump client-native to v6.2.10
  • f0e3c3b MEDIUM: ensure all children of Frontend are written to haproxy.cfg file
  • 27c8a35 MEDIUM: wire ReferenceGrant controller and cross-namespace re-enqueue
  • 1f48161 MEDIUM: wire ReferenceGrantManager into the Gateway TLS certificate check
  • 878e4b1 MEDIUM: wire ReferenceGrantManager into the HTTPRoute backendRef check
  • b1c5d89 MEDIUM: wire ReferenceGrantManager into the TLSRoute backendRef check
  • 8600307 MINOR: Update default HAProxy configuration with the new log format
  • e0a6f9c MINOR: add conformance-create-local task and remove obsolete port variables
  • 9fc777e MINOR: filter startup haproxy objects by LinkID
  • fc040b8 MINOR: log dropped service ports during reconciliation
  • 36754be MINOR: make ReferenceGrantManager fields private
  • 9a8697c MINOR: make sequential package execution optional in test task
  • e917e8d MINOR: move r.Valid assignment after backendRef loop in HTTPRouteRule and TLSRouteRule
  • eaf029c MINOR: remove To/From string aliases, use GrantTo/GrantFrom as map keys
  • 21cfda0 MINOR: replace positional string params in IsAccessGranted with typed structs
  • 097b10a MINOR: use Gateway API v1beta1 for ReferenceGrant to support CRDs v1.3.0 and v1.4.0
  • a9f26b4 TEST/MAJOR: add a per-Gateway deployer for conformance testing
  • 56190f4 TEST/MAJOR: run the conformance tester inside Kind cluster for CI
  • b51b994 TEST/MAJOR: update all tests for new map content and haproxy config content
  • 2edadbb TEST/MEDIUM: Conformance test - add GatewayIsolation feature support
  • 3b1911d TEST/MEDIUM: add conformance test HTTPRouteListenerHostnameMatching
  • b344094 TEST/MEDIUM: add conformance test HTTPRouteObservedGenerationBump
  • c20c805 TEST/MEDIUM: add conformance test HTTPRouteWeight
  • 476c29e TEST/MEDIUM: add conformance tests HTTPRouteHeaderMatching
  • ad65f24 TEST/MEDIUM: add several conformance tests that are now OK
  • 27c8a0f TEST/MEDIUM: add the listener isolation test suite for HTTPRoute with hostname intersection
  • 723f572 TEST/MEDIUM: avoid controller name collision in tests
  • 96d43ab TEST/MEDIUM: in conformance tests running in CI, set the service type to be created to ClusterIP.
  • 2182834 TEST/MEDIUM: isolate integration test ports per package
  • 33883d0 TEST/MINOR: add logs to the conformance test and deployer.
  • 002fc3d TEST/MINOR: add unit tests coverage for TestResolveEntry
  • 19a7865 TEST/MINOR: ci: replace PNG charts with self-contained HTML SVGs
  • 0d61e6d TEST/MINOR: only update the controller deployment if the image or the arguments have changed
  • 9737af5 TEST: RequestMirror is not yet implemented

HAProxy Unified Gateway v1.0.2

Choose a tag to compare

@github-actions github-actions released this 23 Apr 12:23

Release Notes

HAProxy Unified Gateway v1.0.2 8de9a5c

Build date: 2026-04-23T12:09:39Z

Changelog

  • 399c852 BUG/MINOR: fix regsub backreference in RequestRedirect ReplacePrefixMatch
  • 8de9a5c BUILD/MINOR: update latest branch and doc.yaml source for docker releases
  • bc207ba TEST/MINOR: assert generated regsub expression in RequestRedirect prefix test

HAProxy Unified Gateway v1.0.1

Choose a tag to compare

@github-actions github-actions released this 15 Apr 09:26

Release Notes

HAProxy Unified Gateway v1.0.1 370e8f6

Build date: 2026-04-15T09:08:34Z

Changelog

  • bf741fd BUG/MEDIUM: use Structured Backend API when Editing Backend
  • 1fb1c97 BUG/MINOR: bump active documentation version to 1.0
  • a169db8 BUG/MINOR: ci: use two-dot range for checking differences
  • 323f240 BUG/MINOR: fix BackendCreate dropping HTTPRequestRuleList on backend creation
  • 059c246 BUG/MINOR: preserve all rule messages when entire route has invalid filters
  • 9c0992a BUG/MINOR: remove CR and CI patch types
  • 6d2ca8a BUG/MINOR: skip redirect backend creation when CheckFilters is invalid
  • 5100e9d BUILD/MEDIUM: bump Gateway API version to 1.5.0 and fix codegen
  • 370e8f6 BUILD/MINOR: ci: add job to detect new go.mod dependencies in MRs
  • 916b44c BUILD/MINOR: go.mod: update k8s.io packages
  • 56c3812 CLEANUP/MINOR: Move hostnames match type test 3 in the right place
  • 8404224 CLEANUP/MINOR: Use the base function to check the map content
  • 731e411 CLEANUP/MINOR: convert expectation files from JSON to YAML
  • 8fa1ce9 CLEANUP/MINOR: document why cross-level filter check is asymmetric
  • 450f61c CLEANUP/MINOR: extract desiredBackendsMaps to eliminate duplicated match logic
  • 00120bc CLEANUP/MINOR: in all integration test, backend expectations are named yaml files, but the content was json
  • c6dda0c CLEANUP/MINOR: pick first entry from mapImpactedBEs instead of full loop
  • eb2634b CLEANUP/MINOR: remove a file that was used temporarily
  • 850727b CLEANUP/MINOR: remove beta status disclaimer from README
  • ac24f3c CLEANUP/MINOR: remove the task kind-create-debug
  • 4eda29d CLEANUP/MINOR: remove unused HasSideEffects, extract quoteFmt helper
  • 87171a2 CLEANUP: remove unused function in conformance test helpers
  • 640d764 DOC/MEDIUM: pin image tag to v1.0
  • e7a8328 DOC/MINOR: add CEL, httpfilters, and allowlist to aspell allowlist
  • 6b24fac DOC/MINOR: add lifecycle documentation generator
  • 8887e7d DOC/MINOR: clarify cluster-scoped requirements for prometheus metrics
  • 36fa418 DOC/MINOR: fix the namespace to get the Gateway IP
  • fec5e1c DOC/MINOR: metrics: add HTTPS warning notes to metrics documentation
  • af647b0 DOC/MINOR: update helm chart availability in README
  • 85eee94 MAJOR: add a feedback to the listeners Programmed condition
  • f1faf85 MEDIUM: add HTTPRoute status conditions for filter validation
  • caa92ba MEDIUM: add RequestRedirect filter and redirect pseudo-backend
  • 86bdeee MEDIUM: add ResponseHeaderModifier filter support
  • a42ea66 MEDIUM: add URLRewrite filter support
  • cbbfa47 MEDIUM: add an option to not color the text log output
  • 14d61bb MEDIUM: add filters package and wire RequestHeaderModifier in backends
  • 5e11896 MEDIUM: implement HTTPRouteFilter CORS support
  • 4018968 MEDIUM: move the status update into a separate go routine
  • 4d4ea23 MINOR: warn about Assisted-by and Signed-off-by commit trailers
  • 38eaaf5 OPTIM/MINOR: migrate tool management to check-go-tool
  • 9687114 TEST/MEDIUM: add a html version of conformance test results
  • 8e5d010 TEST/MEDIUM: add integration test for CORS filter
  • 7095172 TEST/MEDIUM: add integration test for RequestRedirect filter
  • 38e2688 TEST/MEDIUM: add integration test for ResponseHeaderModifier filter
  • 5c9dd4b TEST/MEDIUM: add integration test for URLRewrite filter
  • d829b7c TEST/MEDIUM: add integration tests for HTTPRouteFilter status conditions
  • 1f761a8 TEST/MEDIUM: add new feature for conformance tests
  • 524b9fe TEST/MEDIUM: add tests for Listener isolation feature (without hostname intersection)
  • 3ec3e05 TEST/MINOR: add metrics comparison functionality
  • 6a7f2d8 TEST/MINOR: add unit tests for http_filters package
  • 01f35b1 TEST/MINOR: ci: add additional check for trailer in commits
  • b242fef TEST/MINOR: remove index field from backend expectation fixtures
  • 90fa709 TEST/MINOR: remove useless index in http_error_rule_list

HAProxy Unified Gateway v1.0.0

Choose a tag to compare

@github-actions github-actions released this 23 Mar 22:31

Release Notes

HAProxy Unified Gateway v1.0.0 ec44950

Build date: 2026-03-23T22:13:37Z

Changelog

  • 2940662 CLEANUP/MINOR: cleanup some tasks
  • c9e31d6 MEDIUM: Allow inject traffic for conformance tests in CI, Docker in Docker fun
  • a9948e6 MEDIUM: adapt logic for listener conflicts to conformance tests.
  • 53c8799 MINOR: allow conformance MR to run in fork
  • 46dece5 MINOR: run MR conformance tests also on push
  • 89ad8dd TEST/MEDIUM: add test to conformance run in CI
  • ec44950 TEST/MEDIUM: fix username for docker login with token
  • 3079453 TEST/MINOR: add Gateway conditions diff in the test fail
  • e29a5e5 TEST/MINOR: enhance the way we display Backend and Frontend diffs when a test fail

HAProxy Unified Gateway v0.9.3

Choose a tag to compare

@github-actions github-actions released this 20 Mar 15:49

Release Notes

HAProxy Unified Gateway v0.9.3 f059b2d

Build date: 2026-03-20T15:32:04Z

Changelog

  • 2aa08bc BUG/MEDIUM: fix a case for conformance test GatewayWithAttachedRoutes
  • a3c7198 BUG/MEDIUM: fix missing observed generation in HTTPRoute status
  • ac93bfd BUILD/MINOR: add nightly conformance report job
  • 1e22c36 BUILD/MINOR: ci: run conformance tests on default branch push
  • f059b2d BUILD/MINOR: go.mod: update k8s.io packages
  • 78ca8a4 CLEANUP/MINOR: fix some small typo
  • 4250ff2 MAJOR: update the Gateway status addresses and Hug Service ports.
  • b45da2d TEST/MEDIUM: add a stage with the conformance tests that currently pass

HAProxy Unified Gateway v0.9.2

Choose a tag to compare

@github-actions github-actions released this 19 Mar 16:10

Release Notes

HAProxy Unified Gateway v0.9.2 8abf861

Build date: 2026-03-19T15:52:27Z

Changelog

  • 5202ac3 BUG/MEDIUM: fix issues with Defaults that do not have haproxytech in spec name
  • c6b0e36 BUG/MINOR: correct CRD name and handle clientset error gracefully
  • ddc4a59 BUILD/MINOR: add workflow to build and push http-echo image
  • 8052bc0 BUILD/MINOR: bump check-commit to v5.5.2
  • a53ad61 BUILD/MINOR: ci: update docker actions and simplify buildx caching
  • 3885b41 CLEANUP/MINOR: remove push rule for docker-build job
  • 800b0dc CLEANUP/MINOR: replace panic with graceful exit on job errors
  • 288a8c4 MAJOR: allow identical Listeners on different Gateways
  • a1400d7 MAJOR: introduce conformance tests
  • 46b9e97 MEDIUM: fix for compliance test GatewayInvalidTLSConfiguration
  • 968a393 MINOR: change the condition message for conflicting listener
  • 8abf861 MINOR: ci: cancel pipelines if MR needs rebase
  • d45d13c MINOR: update gitignore file
  • 6389298 TEST/MINOR: TLSRoute: use v1 in tests for 1.5.0
  • a7bfcbb TEST: add conformance tests to CI
  • 891ef42 TEST: fix test exact route no match
  • 75237bc TEST: remove test todo tag and task
  • cdb5d1b TEST: remove test todo tag and task