diff --git a/CHANGELOG.md b/CHANGELOG.md index 39e862247..016fb931a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +## [v2.8.6](https://github.com/traefik/traefik/tree/v2.8.6) (2022-09-23) +[All Commits](https://github.com/traefik/traefik/compare/v2.8.5...v2.8.6) + +**Bug fixes:** +- **[consulcatalog]** Fix UDP loadbalancer tags not being used with Consul Catalog ([#9357](https://github.com/traefik/traefik/pull/9357) by [t3hchipmunk](https://github.com/t3hchipmunk)) +- **[docker,rancher,ecs,provider]** Simplify AddServer algorithm ([#9358](https://github.com/traefik/traefik/pull/9358) by [ldez](https://github.com/ldez)) +- **[plugins]** Allow empty plugin configuration ([#9338](https://github.com/traefik/traefik/pull/9338) by [ldez](https://github.com/ldez)) +- **[rules]** Fix query parameter matching with equal ([#9369](https://github.com/traefik/traefik/pull/9369) by [ldez](https://github.com/ldez)) +- **[server]** Optimize websocket headers handling ([#9360](https://github.com/traefik/traefik/pull/9360) by [juliens](https://github.com/juliens)) + +**Documentation:** +- **[ecs]** Add documentation for ECS constraints option ([#9354](https://github.com/traefik/traefik/pull/9354) by [rtribotte](https://github.com/rtribotte)) +- **[k8s/gatewayapi]** Fix link to RouteNamespaces ([#9349](https://github.com/traefik/traefik/pull/9349) by [ldez](https://github.com/ldez)) +- Add documentation for json schema usage to validate config in the FAQ ([#9340](https://github.com/traefik/traefik/pull/9340) by [rtribotte](https://github.com/rtribotte)) +- Add a note on case insensitive regex matching ([#9322](https://github.com/traefik/traefik/pull/9322) by [NEwa-05](https://github.com/NEwa-05)) + ## [v2.9.0-rc3](https://github.com/traefik/traefik/tree/v2.9.0-rc3) (2022-09-16) [All Commits](https://github.com/traefik/traefik/compare/v2.9.0-rc2...v2.9.0-rc3) diff --git a/pkg/muxer/http/mux.go b/pkg/muxer/http/mux.go index 6c57d8db8..fefab67a9 100644 --- a/pkg/muxer/http/mux.go +++ b/pkg/muxer/http/mux.go @@ -237,7 +237,7 @@ func headersRegexp(route *mux.Route, headers ...string) error { func query(route *mux.Route, query ...string) error { var queries []string for _, elem := range query { - queries = append(queries, strings.Split(elem, "=")...) + queries = append(queries, strings.SplitN(elem, "=", 2)...) } route.Queries(queries...) diff --git a/pkg/muxer/http/mux_test.go b/pkg/muxer/http/mux_test.go index 2f2d64c9a..cacc639b2 100644 --- a/pkg/muxer/http/mux_test.go +++ b/pkg/muxer/http/mux_test.go @@ -252,6 +252,14 @@ func Test_addRoute(t *testing.T) { "http://localhost/foo?bar=baz": http.StatusNotFound, }, }, + { + desc: "Query with multiple equals", + rule: "Query(`foo=b=ar`)", + expected: map[string]int{ + "http://localhost/foo?foo=b=ar": http.StatusOK, + "http://localhost/foo?foo=bar": http.StatusNotFound, + }, + }, { desc: "Rule with simple path", rule: `Path("/a")`, diff --git a/script/gcg/traefik-bugfix.toml b/script/gcg/traefik-bugfix.toml index f7f0f72f4..f0548583e 100644 --- a/script/gcg/traefik-bugfix.toml +++ b/script/gcg/traefik-bugfix.toml @@ -4,11 +4,11 @@ RepositoryName = "traefik" OutputType = "file" FileName = "traefik_changelog.md" -# example new bugfix v2.8.5 +# example new bugfix v2.8.6 CurrentRef = "v2.8" -PreviousRef = "v2.8.4" +PreviousRef = "v2.8.5" BaseBranch = "v2.8" -FutureCurrentRefName = "v2.8.5" +FutureCurrentRefName = "v2.8.6" ThresholdPreviousRef = 10 ThresholdCurrentRef = 10