Changelog
Features
- 63588ef: feat(cache): support optional prefix for redis cache keys (#4034) (@markphelps)
- f8975ec: feat: Support Redis cluster (#4035) (@markphelps)
- 324b9ed: feat: add back ability to disable UI via config (#4060) (@markphelps)
- db1c3b1: feat: add contains constraint type (#4018) (@markphelps)
- 6508c5e: feat: move default boolean value to top; show in flag table view (#3983) (@markphelps)
Bug Fixes
- 01d7968: fix(audit): add rollout ID to audit payload for create/update actions (#4294) (@erka)
- b994a43: fix(audit): allow to send events with complex payload to kafka with avro (#3827) (@erka)
- 049799e: fix(audit): improve delete audit events for rollout and rule (#4346) (@erka)
- 1dceb5e: fix(audit): keep segment data for rollout and rule (#4229) (@erka)
- 5a0338c: fix(csrf): allow to set trusted origins (#4347) (@erka)
- 86906cb: fix(csrf): update middleware usage to comply with gorilla/csrf changes (#4343) (@erka)
- fd739c8: fix(storage): allow force deletion of namespace with complex cfg (#4253) (@erka)
- e4391e1: fix(storage): map protobuf enums to ints in sql updates for rule and (#4231) (@erka)
- b68b896: fix(store): disable modification of the store in read only mode (#4061) (@erka)
- 8fb32da: fix(ui): display missing shadows in dark mode with tailwind v4 (#4053) (@erka)
- 9326370: fix(ui): ui.topbar.color config setting has been broken since v1.53.0 (#3857) (@erka)
- 348b1ff: fix(ui): use correct default theme on first load (#3976) (@erka)
- 769d1a4: fix: allow percentage threshold zero value (#4290) (@o-mago)
- 5e2b732: fix: apply UI additional http headers only for requests to UI assets (#3853) (@erka)
- 5ed9c16: fix: flag metadata parsing from snapshot (#4384) (@markphelps)
- e62b01e: fix: just show segment name in segment picker (#4381) (@markphelps)
- 741a7cb: fix: otel interceptor panic/handling after switch to grpchan (#3975) (@markphelps)
- aebaecd: fix: prune remotes from cache that no longer exist (#4184) (@markphelps)
- 8dd6d60: fix: regression with setting ui to readonly (#4057) (@markphelps)
Other
- 95c24cb: Release/1.55 (#3884) (@markphelps)
- b0f9d22: Release/1.58 (#4234) (@markphelps)
- 308c79e: Release/1.58 (#4254) (@markphelps)
- d8f9458: chore(deps): bump @babel/runtime from 7.24.4 to 7.27.0 in /ui (#4038) (@dependabot[bot])
- 319d21c: chore(deps): bump @codemirror/lint from 6.8.4 to 6.8.5 in /ui (#4027) (@dependabot[bot])
- 3919b4d: chore(deps): bump @codemirror/search from 6.5.10 to 6.5.11 in /ui (#4243) (@dependabot[bot])
- cdd8ebe: chore(deps): bump @codemirror/search from 6.5.8 to 6.5.10 in /ui (#3992) (@dependabot[bot])
- b37bbff: chore(deps): bump @codemirror/state from 6.5.1 to 6.5.2 in /ui (#3896) (@dependabot[bot])
- fdc6b57: chore(deps): bump @codemirror/view from 6.36.1 to 6.36.2 in /ui (#3849) (@dependabot[bot])
- 9b73b3a: chore(deps): bump @codemirror/view from 6.36.2 to 6.36.3 in /ui (#3952) (@dependabot[bot])
- bc8e7b6: chore(deps): bump @codemirror/view from 6.36.3 to 6.36.4 in /ui (#3991) (@dependabot[bot])
- 0e155e9: chore(deps): bump @codemirror/view from 6.36.4 to 6.36.5 in /ui (#4106) (@dependabot[bot])
- 16506f7: chore(deps): bump @codemirror/view from 6.36.5 to 6.37.1 in /ui (#4278) (@dependabot[bot])
- 7fcc044: chore(deps): bump @codemirror/view from 6.37.1 to 6.37.2 in /ui (#4350) (@dependabot[bot])
- af0be69: chore(deps): bump @loadable/component from 5.16.4 to 5.16.7 in /ui (#4224) (@dependabot[bot])
- 64badaa: chore(deps): bump @radix-ui/react-dropdown-menu in /ui (#3869) (@dependabot[bot])
- 65a747e: chore(deps): bump @radix-ui/react-dropdown-menu in /ui (#3899) (@dependabot[bot])
- a548d9b: chore(deps): bump @radix-ui/react-dropdown-menu in /ui (#4072) (@dependabot[bot])
- 4a1ab6f: chore(deps): bump @radix-ui/react-dropdown-menu in /ui (#4305) (@dependabot[bot])
- 171f989: chore(deps): bump @radix-ui/react-select from 2.1.4 to 2.1.5 in /ui (#3848) (@dependabot[bot])
- 3fbb88d: chore(deps): bump @radix-ui/react-select from 2.1.5 to 2.1.6 in /ui (#3953) (@dependabot[bot])
- 9ae68af: chore(deps): bump @radix-ui/react-select from 2.1.6 to 2.1.7 in /ui (#4073) (@dependabot[bot])
- 07fc9e5: chore(deps): bump @radix-ui/react-select from 2.1.7 to 2.2.4 in /ui (#4221) (@dependabot[bot])
- cd9647e: chore(deps): bump @radix-ui/react-select from 2.2.4 to 2.2.5 in /ui (#4244) (@dependabot[bot])
- 32e777f: chore(deps): bump @radix-ui/react-slot from 1.1.2 to 1.2.0 in /ui (#4115) (@dependabot[bot])
- 38e0a13: chore(deps): bump @radix-ui/react-slot from 1.2.0 to 1.2.3 in /ui (#4306) (@dependabot[bot])
- 71a7ba9: chore(deps): bump @radix-ui/react-switch from 1.1.2 to 1.1.3 in /ui (#3901) (@dependabot[bot])
- 9a90d4c: chore(deps): bump @radix-ui/react-switch from 1.1.3 to 1.2.2 in /ui (#4105) (@dependabot[bot])
- 5c0e472: chore(deps): bump @reduxjs/toolkit from 2.5.0 to 2.5.1 in /ui (#3900) (@dependabot[bot])
- 94699a5: chore(deps): bump @reduxjs/toolkit from 2.5.1 to 2.6.1 in /ui (#4005) (@dependabot[bot])
- 752b459: chore(deps): bump @reduxjs/toolkit from 2.6.1 to 2.7.0 in /ui (#4160) (@dependabot[bot])
- 0151b3a: chore(deps): bump @reduxjs/toolkit from 2.7.0 to 2.8.2 in /ui (#4286) (@dependabot[bot])
- c109b51: chore(deps): bump @tanstack/react-table from 8.20.5 to 8.20.6 in /ui (#3815) (@dependabot[bot])
- 59e6cde: chore(deps): bump @tanstack/react-table from 8.20.6 to 8.21.2 in /ui (#4049) (@dependabot[bot])
- 9e94733: chore(deps): bump @tanstack/react-table from 8.21.2 to 8.21.3 in /ui (#4223) (@dependabot[bot])
- c36917a: chore(deps): bump @uiw/codemirror-theme-tokyo-night in /ui (#3993) (@dependabot[bot])
- 55bc08f: chore(deps): bump @uiw/codemirror-theme-tokyo-night in /ui (#4130) (@dependabot[bot])
- b3cba64: chore(deps): bump @uiw/codemirror-theme-tokyo-night in /ui (#4279) (@dependabot[bot])
- 14e2c34: chore(deps): bump @uiw/react-codemirror from 4.23.10 to 4.23.12 in /ui (#4303) (@dependabot[bot])
- 2b38b1f: chore(deps): bump @uiw/react-codemirror from 4.23.7 to 4.23.8 in /ui (#3938) (@dependabot[bot])
- a93d138: chore(deps): bump @uiw/react-codemirror from 4.23.8 to 4.23.10 in /ui (#3994) (@dependabot[bot])
- 9872710: chore(deps): bump alpine from 3.21.2 to 3.21.3 in /build (#3929) (@dependabot[bot])
- f9290c2: chore(deps): bump alpine from 3.21.3 to 3.22.0 in /build (#4275) (@dependabot[bot])
- 07d7ed0: chore(deps): bump chart.js from 4.4.7 to 4.4.8 in /ui (#3970) (@dependabot[bot])
- 3484cb6: chore(deps): bump chart.js from 4.4.8 to 4.4.9 in /ui (#4222) (@dependabot[bot])
- 4c2dd74: chore(deps): bump cloud.google.com/go/storage from 1.51.0 to 1.53.0 (#4193) (@dependabot[bot])
- 358e13b: chore(deps): bump cloud.google.com/go/storage from 1.53.0 to 1.55.0 (#4301) (@dependabot[bot])
- 525f142: chore(deps): bump codecov/codecov-action from 5.1.2 to 5.3.1 (#3844) (@dependabot[bot])
- 876d842: chore(deps): bump codecov/codecov-action from 5.3.1 to 5.4.0 (#3955) (@dependabot[bot])
- 46e9b16: chore(deps): bump codecov/codecov-action from 5.4.0 to 5.4.2 (#4112) (@dependabot[bot])
- eafbf82: chore(deps): bump codecov/codecov-action from 5.4.2 to 5.4.3 (#4214) (@dependabot[bot])
- 298592d: chore(deps): bump cuelang.org/go from 0.11.1 to 0.11.2 (#3839) (@dependabot[bot])
- 76c45fc: chore(deps): bump cuelang.org/go from 0.11.2 to 0.12.0 (#4024) (@dependabot[bot])
- 102f32a: chore(deps): bump cuelang.org/go from 0.12.0 to 0.12.1 (#4046) (@dependabot[bot])
- a0d59f3: chore(deps): bump cuelang.org/go from 0.12.1 to 0.13.1 (#4374) (@dependabot[bot])
- 37faf6a: chore(deps): bump dagger to v0.17.1 (#4002) (@erka)
- 5d6bf3d: chore(deps): bump esbuild and vite in /ui (#3984) (@dependabot[bot])
- 97344f3: chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/storage/azblob (#4013) (@dependabot[bot])
- 5031ecf: chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/storage/azblob (#4281) (@dependabot[bot])
- 5acdfb6: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#3841) (@dependabot[bot])
- b6ee5a8: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#3864) (@dependabot[bot])
- 4d0e7b0: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#3895) (@dependabot[bot])
- 90d6181: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#3932) (@dependabot[bot])
- 1f5b35b: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#3962) (@dependabot[bot])
- c3d4b07: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#4021) (@dependabot[bot])
- 9e94113: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#4109) (@dependabot[bot])
- 426a9e5: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#4284) (@dependabot[bot])
- 92f17ac: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#4357) (@dependabot[bot])
- 4ab5e36: chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 (#4372) (@dependabot[bot])
- 8c2bc6d: chore(deps): bump github.com/XSAM/otelsql from 0.36.0 to 0.37.0 (#3989) (@dependabot[bot])
- a0a0e5e: chore(deps): bump github.com/XSAM/otelsql from 0.37.0 to 0.38.0 (#4044) (@dependabot[bot])
- df33a4b: chore(deps): bump github.com/XSAM/otelsql from 0.38.0 to 0.39.0 (#4299) (@dependabot[bot])
- d5156fb: chore(deps): bump github.com/aws/aws-sdk-go-v2/config (#3893) (@dependabot[bot])
- 55cb2a2: chore(deps): bump github.com/aws/aws-sdk-go-v2/config (#4078) (@dependabot[bot])
- 8e22dee: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/ecr (#3931) (@dependabot[bot])
- d6da1e0: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/ecr (#3985) (@dependabot[bot])
- 62a9eb6: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/ecrpublic (#4137) (@dependabot[bot])
- db1be68: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/ecrpublic (#4190) (@dependabot[bot])
- 5a9eec6: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 (#4081) (@dependabot[bot])
- aff5bd4: chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 (#4219) (@dependabot[bot])
- 2959e77: chore(deps): bump github.com/containerd/containerd from 1.7.23 to 1.7.27 (#3998) (@dependabot[bot])
- b4704b4: chore(deps): bump github.com/coreos/go-oidc/v3 from 3.11.0 to 3.12.0 (#3822) (@dependabot[bot])
- 4b59341: chore(deps): bump github.com/coreos/go-oidc/v3 from 3.12.0 to 3.13.0 (#4023) (@dependabot[bot])
- 14cffcf: chore(deps): bump github.com/coreos/go-oidc/v3 from 3.13.0 to 3.14.1 (#4080) (@dependabot[bot])
- 03efe57: chore(deps): bump github.com/go-chi/chi/v5 from 5.2.0 to 5.2.1 (#3946) (@dependabot[bot])
- fc568a1: chore(deps): bump github.com/go-chi/chi/v5 from 5.2.1 to 5.2.2 (#4368) (@dependabot[bot])
- 0d4e391: chore(deps): bump github.com/go-chi/chi/v5 in /_tools (#4367) (@dependabot[bot])
- 077edda: chore(deps): bump github.com/go-git/go-billy/v5 from 5.6.1 to 5.6.2 (#3820) (@dependabot[bot])
- 1502255: chore(deps): bump github.com/go-git/go-git/v5 from 5.13.1 to 5.13.2 (#3843) (@dependabot[bot])
- a134385: chore(deps): bump github.com/go-git/go-git/v5 from 5.13.2 to 5.14.0 (#4022) (@dependabot[bot])
- a3b8113: chore(deps): bump github.com/go-git/go-git/v5 from 5.14.0 to 5.16.0 (#4191) (@dependabot[bot])
- d26e964: chore(deps): bump github.com/go-git/go-git/v5 from 5.16.0 to 5.16.2 (#4355) (@dependabot[bot])
- f91fe81: chore(deps): bump github.com/go-jose/go-jose/v3 from 3.0.3 to 3.0.4 (#3950) (@dependabot[bot])
- bb961b7: chore(deps): bump github.com/go-jose/go-jose/v4 from 4.0.4 to 4.0.5 (#3948) (@dependabot[bot])
- 37933b8: chore(deps): bump github.com/go-sql-driver/mysql from 1.8.1 to 1.9.0 (#3956) (@dependabot[bot])
- 3f59ca2: chore(deps): bump github.com/go-sql-driver/mysql from 1.9.1 to 1.9.2 (#4189) (@dependabot[bot])
- 205e373: chore(deps): bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#4001) (@dependabot[bot])
- 46606cd: chore(deps): bump github.com/golang-migrate/migrate/v4 (#3944) (@dependabot[bot])
- 9ed2ec2: chore(deps): bump github.com/golang-migrate/migrate/v4 (#4215) (@dependabot[bot])
- e23c426: chore(deps): bump github.com/golangci/golangci-lint/v2 in /_tools (#4030) (@dependabot[bot])
- 19c301e: chore(deps): bump github.com/golangci/golangci-lint/v2 in /_tools (#4071) (@dependabot[bot])
- 648aff0: chore(deps): bump github.com/golangci/golangci-lint/v2 in /_tools (#4114) (@dependabot[bot])
- 89954ae: chore(deps): bump github.com/golangci/golangci-lint/v2 in /_tools (#4132) (@dependabot[bot])
- ca242c8: chore(deps): bump github.com/golangci/golangci-lint/v2 in /_tools (#4158) (@dependabot[bot])
- 29363c6: chore(deps): bump github.com/google/go-containerregistry (#4285) (@dependabot[bot])
- 47ca38e: chore(deps): bump github.com/google/go-containerregistry (#4358) (@dependabot[bot])
- 22a7317: chore(deps): bump github.com/gorilla/csrf from 1.7.2 to 1.7.3 (#4083) (@dependabot[bot])
- d238367: chore(deps): bump github.com/grpc-ecosystem/go-grpc-middleware/v2 (#3842) (@dependabot[bot])
- 94e2093: chore(deps): bump github.com/grpc-ecosystem/go-grpc-middleware/v2 (#4297) (@dependabot[bot])
- e41a67f: chore(deps): bump github.com/grpc-ecosystem/grpc-gateway/v2 in /_tools (#3838) (@dependabot[bot])
- de0c5fb: chore(deps): bump github.com/grpc-ecosystem/grpc-gateway/v2 in /_tools (#3961) (@dependabot[bot])
- 9ab3260: chore(deps): bump github.com/hamba/avro/v2 from 2.27.0 to 2.28.0 (#3945) (@dependabot[bot])
- 6fc9e9f: chore(deps): bump github.com/hashicorp/cap from 0.7.0 to 0.9.0 (#4134) (@dependabot[bot])
- c77223a: chore(deps): bump github.com/jackc/pgx/v5 from 5.7.2 to 5.7.5 (#4247) (@dependabot[bot])
- 5066e4f: chore(deps): bump github.com/mattn/go-sqlite3 from 1.14.24 to 1.14.27 (#4077) (@dependabot[bot])
- e901d6c: chore(deps): bump github.com/mattn/go-sqlite3 from 1.14.27 to 1.14.28 (#4135) (@dependabot[bot])
- 3bdbe1b: chore(deps): bump github.com/open-policy-agent/opa from 0.70.0 to 1.4.0 (#4178) (@dependabot[bot])
- 91cf549: chore(deps): bump github.com/open-policy-agent/opa from 1.4.0 to 1.4.2 (#4216) (@dependabot[bot])
- a2aabd1: chore(deps): bump github.com/opencontainers/image-spec (#4110) (@dependabot[bot])
- 1a321a1: chore(deps): bump github.com/prometheus/client_golang (#4012) (@dependabot[bot])
- 0576391: chore(deps): bump github.com/prometheus/client_golang (#4166) (@dependabot[bot])
- ac008ce: chore(deps): bump github.com/prometheus/common from 0.61.0 to 0.62.0 (#3821) (@dependabot[bot])
- 7ee27e1: chore(deps): bump github.com/prometheus/common from 0.62.0 to 0.63.0 (#4165) (@dependabot[bot])
- ae6aa4d: chore(deps): bump github.com/prometheus/common from 0.63.0 to 0.65.0 (#4370) (@dependabot[bot])
- 2f72ae2: chore(deps): bump github.com/quic-go/quic-go in /_tools (#4288) (@dependabot[bot])
- b72ed77: chore(deps): bump github.com/redis/go-redis/extra/redisotel/v9 (#4167) (@dependabot[bot])
- fdacfa9: chore(deps): bump github.com/redis/go-redis/v9 from 9.7.0 to 9.7.3 (#3999) (@dependabot[bot])
- e740c9a: chore(deps): bump github.com/redis/go-redis/v9 from 9.8.0 to 9.10.0 (#4298) (@dependabot[bot])
- 457dac9: chore(deps): bump github.com/spf13/afero from 1.12.0 to 1.14.0 (#3988) (@dependabot[bot])
- 63f67fc: chore(deps): bump github.com/spf13/cobra from 1.8.1 to 1.9.1 (#3959) (@dependabot[bot])
- 36132af: chore(deps): bump github.com/spf13/viper from 1.19.0 to 1.20.1 (#4136) (@dependabot[bot])
- 760d359: chore(deps): bump github.com/testcontainers/testcontainers-go (#4107) (@dependabot[bot])
- 29fad4c: chore(deps): bump github.com/testcontainers/testcontainers-go (#4133) (@dependabot[bot])
- ea44790: chore(deps): bump github.com/testcontainers/testcontainers-go from 0.34.0 to 0.35.0 (#3823) (@dependabot[bot])
- 92b0e05: chore(deps): bump github.com/twmb/franz-go from 1.18.0 to 1.18.1 (#3892) (@dependabot[bot])
- 1c0211f: chore(deps): bump github.com/twmb/franz-go/pkg/kadm (#3986) (@dependabot[bot])
- fab7395: chore(deps): bump github.com/twmb/franz-go/pkg/kadm (#4168) (@dependabot[bot])
- c73baf7: chore(deps): bump github.com/twmb/franz-go/pkg/sr from 1.2.0 to 1.3.0 (#4043) (@dependabot[bot])
- 2176cc3: chore(deps): bump github.com/twmb/franz-go/pkg/sr from 1.3.0 to 1.4.0 (#4371) (@dependabot[bot])
- 465934d: chore(deps): bump github.com/xo/dburl from 0.23.2 to 0.23.3 (#3958) (@dependabot[bot])
- f38e7ee: chore(deps): bump github.com/xo/dburl from 0.23.3 to 0.23.4 (#4009) (@dependabot[bot])
- 734cc2e: chore(deps): bump github.com/xo/dburl from 0.23.4 to 0.23.7 (#4217) (@dependabot[bot])
- e0b2521: chore(deps): bump github.com/xo/dburl from 0.23.7 to 0.23.8 (#4354) (@dependabot[bot])
- a1a51d5: chore(deps): bump go to 1.24 (#3979) (@erka)
- a5ee785: chore(deps): bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#3891) (@dependabot[bot])
- 358f10d: chore(deps): bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#3987) (@dependabot[bot])
- 5a88073: chore(deps): bump go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp (#3966) (@dependabot[bot])
- e27e607: chore(deps): bump go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp (#4356) (@dependabot[bot])
- ae6eac1: chore(deps): bump go.opentelemetry.io/contrib/instrumentation/runtime (#3930) (@dependabot[bot])
- 1b6f009: chore(deps): bump go.opentelemetry.io/contrib/instrumentation/runtime (#4218) (@dependabot[bot])
- 29239ac: chore(deps): bump go.opentelemetry.io/contrib/propagators/autoprop (#3894) (@dependabot[bot])
- 49e76be: chore(deps): bump go.opentelemetry.io/contrib/propagators/autoprop (#4108) (@dependabot[bot])
- 866926d: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc (#3934) (@dependabot[bot])
- 9dcf772: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc (#4011) (@dependabot[bot])
- aecfd4c: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp (#3865) (@dependabot[bot])
- e14923b: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp (#4111) (@dependabot[bot])
- fbd2c4e: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp (#4249) (@dependabot[bot])
- 4381147: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#4047) (@dependabot[bot])
- a21b765: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#4282) (@dependabot[bot])
- f835716: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp (#3861) (@dependabot[bot])
- 6dfc35d: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp (#4300) (@dependabot[bot])
- 14b8150: chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp from 1.34.0 to 1.35.0 (#4020) (@dependabot[bot])
- 40ff1b5: chore(deps): bump go.opentelemetry.io/otel/exporters/prometheus (#4079) (@dependabot[bot])
- 4238934: chore(deps): bump go.opentelemetry.io/otel/exporters/zipkin (#4010) (@dependabot[bot])
- 4b67e96: chore(deps): bump go.opentelemetry.io/otel/metric from 1.33.0 to 1.34.0 (#3824) (@dependabot[bot])
- 1d871fa: chore(deps): bump go.opentelemetry.io/otel/sdk from 1.34.0 to 1.35.0 (#3964) (@dependabot[bot])
- 9ea9fb0: chore(deps): bump go.opentelemetry.io/otel/sdk/metric (#4251) (@dependabot[bot])
- 33b85d6: chore(deps): bump gocloud.dev from 0.40.0 to 0.41.0 (#4169) (@dependabot[bot])
- 7b822a9: chore(deps): bump golang.org/x/crypto from 0.32.0 to 0.36.0 (#3963) (@dependabot[bot])
- 2d85fb1: chore(deps): bump golang.org/x/crypto from 0.37.0 to 0.38.0 (#4192) (@dependabot[bot])
- 089d976: chore(deps): bump golang.org/x/net from 0.35.0 to 0.36.0 (#3981) (@dependabot[bot])
- 6bea0cc: chore(deps): bump golang.org/x/net from 0.36.0 to 0.38.0 in /examples/openfeature (#4087) (@dependabot[bot])
- 92caa14: chore(deps): bump golang.org/x/net from 0.37.0 to 0.38.0 (#4088) (@dependabot[bot])
- 5cabfaa: chore(deps): bump golang.org/x/net from 0.39.0 to 0.40.0 (#4250) (@dependabot[bot])
- 32a7b75: chore(deps): bump golang.org/x/net in /examples/basic (#4039) (@dependabot[bot])
- 7946d2a: chore(deps): bump golang.org/x/net in /examples/openfeature (#3980) (@dependabot[bot])
- e7d84c9: chore(deps): bump golang.org/x/oauth2 from 0.25.0 to 0.28.0 (#3965) (@dependabot[bot])
- 84d083b: chore(deps): bump golang.org/x/oauth2 from 0.28.0 to 0.29.0 (#4045) (@dependabot[bot])
- 913c5a3: chore(deps): bump golang.org/x/tools from 0.29.0 to 0.30.0 in /_tools (#3936) (@dependabot[bot])
- 4d67c39: chore(deps): bump golang.org/x/tools from 0.30.0 to 0.31.0 in /_tools (#3960) (@dependabot[bot])
- 6134fc9: chore(deps): bump golang.org/x/tools from 0.31.0 to 0.32.0 in /_tools (#4070) (@dependabot[bot])
- 573bc35: chore(deps): bump golang.org/x/tools from 0.32.0 to 0.33.0 in /_tools (#4199) (@dependabot[bot])
- 8603aa2: chore(deps): bump golang.org/x/tools from 0.33.0 to 0.34.0 in /_tools (#4302) (@dependabot[bot])
- e4ff76d: chore(deps): bump golangci/golangci-lint-action from 6.1.1 to 6.2.0 (#3819) (@dependabot[bot])
- e84d25c: chore(deps): bump golangci/golangci-lint-action from 6.2.0 to 6.3.1 (#3890) (@dependabot[bot])
- 358bc28: chore(deps): bump golangci/golangci-lint-action from 6.3.1 to 6.5.0 (#3935) (@dependabot[bot])
- 5f943ea: chore(deps): bump golangci/golangci-lint-action from 6.5.0 to 6.5.1 (#3995) (@dependabot[bot])
- 14bf228: chore(deps): bump golangci/golangci-lint-action from 6.5.1 to 7.0.0 (#4008) (@dependabot[bot])
- 1d550f0: chore(deps): bump golangci/golangci-lint-action from 7.0.0 to 8.0.0 (#4164) (@dependabot[bot])
- bf9ad43: chore(deps): bump google.golang.org/grpc from 1.72.1 to 1.72.2 (#4283) (@dependabot[bot])
- fd7674b: chore(deps): bump google.golang.org/protobuf from 1.36.2 to 1.36.4 (#3840) (@dependabot[bot])
- ba6c3e4: chore(deps): bump google.golang.org/protobuf from 1.36.4 to 1.36.5 (#3957) (@dependabot[bot])
- 8047633: chore(deps): bump google.golang.org/protobuf in /_tools (#3813) (@dependabot[bot])
- b16aaa3: chore(deps): bump google.golang.org/protobuf in /_tools (#3837) (@dependabot[bot])
- 995c426: chore(deps): bump google.golang.org/protobuf in /_tools (#3897) (@dependabot[bot])
- 51d1b39: chore(deps): bump google.golang.org/protobuf in /_tools (#4031) (@dependabot[bot])
- 19621a5: chore(deps): bump lucide-react from 0.471.0 to 0.473.0 in /ui (#3814) (@dependabot[bot])
- ef03f4f: chore(deps): bump lucide-react from 0.473.0 to 0.483.0 in /ui (#4007) (@dependabot[bot])
- 79d81ef: chore(deps): bump lucide-react from 0.483.0 to 0.485.0 in /ui (#4025) (@dependabot[bot])
- e5bfc27: chore(deps): bump lucide-react from 0.485.0 to 0.487.0 in /ui (#4048) (@dependabot[bot])
- 02e4f3e: chore(deps): bump lucide-react from 0.487.0 to 0.488.0 in /ui (#4074) (@dependabot[bot])
- 9292191: chore(deps): bump lucide-react from 0.488.0 to 0.501.0 in /ui (#4102) (@dependabot[bot])
- b27c99a: chore(deps): bump lucide-react from 0.501.0 to 0.507.0 in /ui (#4161) (@dependabot[bot])
- 4d017b5: chore(deps): bump lucide-react from 0.507.0 to 0.511.0 in /ui (#4277) (@dependabot[bot])
- 3b3d9db: chore(deps): bump lucide-react from 0.511.0 to 0.513.0 in /ui (#4304) (@dependabot[bot])
- 8c0ed67: chore(deps): bump lucide-react from 0.513.0 to 0.522.0 in /ui (#4377) (@dependabot[bot])
- 57d2872: chore(deps): bump next in /examples/nextjs/app-router (#4000) (@dependabot[bot])
- bce02b1: chore(deps): bump next in /examples/nextjs/pages-router (#4016) (@dependabot[bot])
- 0d73b66: chore(deps): bump next in /examples/nextjs/pages-router (#4036) (@dependabot[bot])
- 3ee897c: chore(deps): bump next in /examples/nextjs/pages-router (#4261) (@dependabot[bot])
- 67d007c: chore(deps): bump react-redux from 9.1.2 to 9.2.0 in /ui (#3847) (@dependabot[bot])
- 6dc496e: chore(deps): bump react-router from 7.0.1 to 7.1.5 in /ui (#3870) (@dependabot[bot])
- 9d97810: chore(deps): bump react-router from 7.1.5 to 7.3.0 in /ui (#3968) (@dependabot[bot])
- d0fcd1c: chore(deps): bump react-router from 7.3.0 to 7.4.1 in /ui (#4028) (@dependabot[bot])
- 0dc87c9: chore(deps): bump react-router from 7.4.1 to 7.5.0 in /ui (#4052) (@dependabot[bot])
- f4c96d4: chore(deps): bump react-router from 7.5.0 to 7.5.1 in /ui (#4113) (@dependabot[bot])
- 8d7f034: chore(deps): bump react-router from 7.5.1 to 7.5.2 in /ui (#4124) (@dependabot[bot])
- 0bdfb5e: chore(deps): bump react-router from 7.5.2 to 7.5.3 in /ui (#4159) (@dependabot[bot])
- 9c045f9: chore(deps): bump react-router from 7.5.3 to 7.6.0 in /ui (#4196) (@dependabot[bot])
- b7445a5: chore(deps): bump zod from 3.23.8 to 3.24.2 in /ui (#3937) (@dependabot[bot])
- 19137f6: chore(deps): bump zod from 3.24.2 to 3.24.3 in /ui (#4127) (@dependabot[bot])
- b3a7dd8: chore(deps): bump zod from 3.24.3 to 3.24.4 in /ui (#4195) (@dependabot[bot])
- ec78d4d: chore(deps-dev): bump @babel/preset-typescript in /ui (#4163) (@dependabot[bot])
- 235c702: chore(deps-dev): bump @playwright/test from 1.49.1 to 1.50.1 in /ui (#3867) (@dependabot[bot])
- a077b19: chore(deps-dev): bump @playwright/test from 1.51.0 to 1.51.1 in /ui (#4006) (@dependabot[bot])
- 8e92abb: chore(deps-dev): bump @playwright/test from 1.51.1 to 1.52.0 in /ui (#4104) (@dependabot[bot])
- 2ca231d: chore(deps-dev): bump @tailwindcss/forms from 0.5.9 to 0.5.10 in /ui (#3845) (@dependabot[bot])
- ccb940b: chore(deps-dev): bump @tailwindcss/postcss from 4.1.3 to 4.1.10 in /ui (#4353) (@dependabot[bot])
- a21cafa: chore(deps-dev): bump @types/node from 18.19.100 to 18.19.112 in /ui (#4379) (@dependabot[bot])
- 37f2666: chore(deps-dev): bump @types/node from 18.19.70 to 18.19.71 in /ui (#3818) (@dependabot[bot])
- 1965289: chore(deps-dev): bump @types/node from 18.19.71 to 18.19.78 in /ui (#3954) (@dependabot[bot])
- 3650db8: chore(deps-dev): bump @types/node from 18.19.78 to 18.19.84 in /ui (#4026) (@dependabot[bot])
- 91765e3: chore(deps-dev): bump @types/node from 18.19.84 to 18.19.86 in /ui (#4075) (@dependabot[bot])
- 41524f0: chore(deps-dev): bump @types/node from 18.19.86 to 18.19.87 in /ui (#4131) (@dependabot[bot])
- 88ee4b3: chore(deps-dev): bump @types/node from 18.19.87 to 18.19.100 in /ui (#4194) (@dependabot[bot])
- 840822d: chore(deps-dev): bump @vitejs/plugin-react from 4.3.4 to 4.4.1 in /ui (#4117) (@dependabot[bot])
- 0dae61f: chore(deps-dev): bump @vitejs/plugin-react from 4.4.1 to 4.5.0 in /ui (#4246) (@dependabot[bot])
- 8932dc0: chore(deps-dev): bump @vitejs/plugin-react from 4.5.0 to 4.5.2 in /ui (#4351) (@dependabot[bot])
- 02ff823: chore(deps-dev): bump autoprefixer from 10.4.20 to 10.4.21 in /ui (#4004) (@dependabot[bot])
- badb7fb: chore(deps-dev): bump dotenv from 16.4.7 to 16.5.0 in /ui (#4103) (@dependabot[bot])
- a0d5626: chore(deps-dev): bump eslint-import-resolver-typescript in /ui (#3969) (@dependabot[bot])
- bf5274b: chore(deps-dev): bump eslint-import-resolver-typescript in /ui (#3990) (@dependabot[bot])
- 03b0766: chore(deps-dev): bump eslint-import-resolver-typescript in /ui (#4076) (@dependabot[bot])
- 8f83897: chore(deps-dev): bump eslint-import-resolver-typescript in /ui (#4245) (@dependabot[bot])
- 99ac518: chore(deps-dev): bump eslint-plugin-no-relative-import-paths in /ui (#3816) (@dependabot[bot])
- 3664b73: chore(deps-dev): bump eslint-plugin-prettier from 5.2.1 to 5.2.3 in /ui (#3817) (@dependabot[bot])
- c041f59: chore(deps-dev): bump eslint-plugin-prettier from 5.2.3 to 5.2.4 in /ui (#4003) (@dependabot[bot])
- e122280: chore(deps-dev): bump eslint-plugin-prettier from 5.2.4 to 5.2.6 in /ui (#4050) (@dependabot[bot])
- 3d75424: chore(deps-dev): bump eslint-plugin-prettier from 5.2.6 to 5.4.0 in /ui (#4198) (@dependabot[bot])
- 72a9934: chore(deps-dev): bump eslint-plugin-prettier from 5.4.0 to 5.4.1 in /ui (#4276) (@dependabot[bot])
- a716ea2: chore(deps-dev): bump eslint-plugin-react from 7.37.3 to 7.37.4 in /ui (#3846) (@dependabot[bot])
- efc1c69: chore(deps-dev): bump eslint-plugin-react from 7.37.4 to 7.37.5 in /ui (#4128) (@dependabot[bot])
- 855652d: chore(deps-dev): bump playwright from 1.49.1 to 1.50.1 in /ui (#3866) (@dependabot[bot])
- 04e176a: chore(deps-dev): bump playwright from 1.50.1 to 1.51.0 in /ui (#3967) (@dependabot[bot])
- b17f36d: chore(deps-dev): bump playwright from 1.52.0 to 1.53.1 in /ui (#4376) (@dependabot[bot])
- 7d19460: chore(deps-dev): bump postcss from 8.5.3 to 8.5.4 in /ui (#4307) (@dependabot[bot])
- 410b76d: chore(deps-dev): bump prettier from 3.4.2 to 3.5.2 in /ui (#3947) (@dependabot[bot])
- edbf700: chore(deps-dev): bump prettier from 3.5.2 to 3.5.3 in /ui (#3951) (@dependabot[bot])
- a4bf10d: chore(deps-dev): bump prettier from 3.5.3 to 3.6.0 in /ui (#4378) (@dependabot[bot])
- 836a928: chore(deps-dev): bump prettier-plugin-tailwindcss in /ui (#3868) (@dependabot[bot])
- 95fcbf9: chore(deps-dev): bump prettier-plugin-tailwindcss in /ui (#4352) (@dependabot[bot])
- e459bb6: chore(deps-dev): bump tailwindcss from 4.1.3 to 4.1.5 in /ui (#4162) (@dependabot[bot])
- 000f1a7: chore(deps-dev): bump tailwindcss from 4.1.5 to 4.1.6 in /ui (#4197) (@dependabot[bot])
- 2876d40: chore(deps-dev): bump tailwindcss from 4.1.6 to 4.1.8 in /ui (#4280) (@dependabot[bot])
- 589ff81: chore(deps-dev): bump tailwindcss from 4.1.8 to 4.1.10 in /ui (#4349) (@dependabot[bot])
- 497888c: chore(deps-dev): bump ts-jest from 29.2.5 to 29.2.6 in /ui (#3971) (@dependabot[bot])
- b5ea7ba: chore(deps-dev): bump ts-jest from 29.2.6 to 29.3.0 in /ui (#4029) (@dependabot[bot])
- 34fccf6: chore(deps-dev): bump ts-jest from 29.3.0 to 29.3.1 in /ui (#4051) (@dependabot[bot])
- f31eba7: chore(deps-dev): bump ts-jest from 29.3.1 to 29.3.2 in /ui (#4116) (@dependabot[bot])
- dd608ed: chore(deps-dev): bump ts-jest from 29.3.2 to 29.3.4 in /ui (#4242) (@dependabot[bot])
- b39fc27: chore(deps-dev): bump ts-jest from 29.3.4 to 29.4.0 in /ui (#4375) (@dependabot[bot])
- 45e877b: chore(deps-dev): bump vite from 5.4.11 to 5.4.14 in /ui (#3830) (@dependabot[bot])
- eca452d: chore(deps-dev): bump vite from 6.2.2 to 6.2.3 in /ui (#4015) (@dependabot[bot])
- 3afa42e: chore(deps-dev): bump vite from 6.2.3 to 6.2.4 in /ui (#4032) (@dependabot[bot])
- 1604219: chore(deps-dev): bump vite from 6.2.4 to 6.2.5 in /ui (#4040) (@dependabot[bot])
- 5e424e2: chore(deps-dev): bump vite from 6.2.5 to 6.2.6 in /ui (#4067) (@dependabot[bot])
- 877ea00: chore(deps-dev): bump vite from 6.2.6 to 6.3.3 in /ui (#4129) (@dependabot[bot])
- 5888c94: chore(deps-dev): bump vite from 6.3.3 to 6.3.4 in /ui (#4140) (@dependabot[bot])
- 2f5fafe: chore(deps-dev): bump vite from 6.3.4 to 6.3.5 in /ui (#4220) (@dependabot[bot])
- d13d1f2: chore(ui): upgrade to tailwind v4 (#4041) (@erka)
- 3f35dff: chore: Add k6 Loadtest (#3860) (@markphelps)
- 7d06d5a: chore: Release/1.55.1 (#3978) (@markphelps)
- 3f44d37: chore: Release/1.58 (#4344) (@markphelps)
- 6ed2290: chore: Release/1.58.1 (#4186) (@markphelps)
- e9cf184: chore: Release/1.58.4 (#4295) (@markphelps)
- 6c91b1a: chore: Update nextjs example deps (#4019) (@markphelps)
- a07147a: chore: V2 banner (#4142) (@markphelps)
- fe2f10d: chore: add note about v2 development (#3833) (@markphelps)
- 47b5080: chore: bump app router example to use nextjs 15 (#3997) (@markphelps)
- e76eb75: chore: fix double evict; turn log down to warn (#4185) (@markphelps)
- 054860f: chore: mod tidy (@markphelps)
- 477ea55: chore: modify goreleaser release notes generation (@markphelps)
- b65cf63: chore: only run workflows on v1* tags (@markphelps)
- de75847: chore: prep for 1.58 release (#4063) (@markphelps)
- 83a1aa1: chore: prep for 1.59 release (#4382) (@markphelps)
- 28dbe11: chore: prepare 1.56 (#3996) (@markphelps)
- 97a1e25: chore: rework test that depends on deleted repo (#3977) (@markphelps)
- 747e654: chore: rm stackhawk (#3982) (@markphelps)
- b1d9da9: chore: test with prepared statements off for pg (#4233) (@markphelps)
- 6ea0ca6: chore: update changelog for 1.57 release (#4042) (@markphelps)
- 78562d5: chore: update changelog for v1.59.1; fix changelog gen script (@markphelps)
- 303c848: chore: update main readme about v2 beta (@markphelps)
- ca47763: chore: use Grpc inproc (#3856) (@markphelps)
- 1002f5b: docs: Fix typo in DEVELOPMENT.md (#3973) (@ChrisMcD1)
- e5036a9: docs: add o-mago as a contributor for code (#4292) (@allcontributors[bot])
- 202c5db: docs: update Contributing section in README to link DEVELOPMENT.md Removed broken Architecture link, updated to Development for redirection, and restructured section with subsections (What To Work On, Issues, Code) to align with CONTRIBUTING.md. Signed-off-by: Suhas A suhasamaresh@gmail.com (#4151) (@suhasamaresh)
- cf1c969: refactor(storage): use transaction for force namespace deletion (#4255) (@erka)
Installation
Homebrew 🍺
brew install flipt-io/brew/flipt
Docker Images 🐳
docker pull docker.flipt.io/flipt/flipt:v1.59.1
docker pull ghcr.io/flipt-io/flipt:v1.59.1
Thank you!
We hope you ❤️ this release! Feel free to open issues/discussions or reach out to us on Discord if you have any questions or feedback.