-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: support relative weighting for fractional evaluation #1313
feat: support relative weighting for fractional evaluation #1313
Conversation
✅ Deploy Preview for polite-licorice-3db33c ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1313 +/- ##
==========================================
+ Coverage 73.69% 78.64% +4.95%
==========================================
Files 32 36 +4
Lines 3140 2810 -330
==========================================
- Hits 2314 2210 -104
+ Misses 717 465 -252
- Partials 109 135 +26 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍 I left a question for @toddbaert to clarify an open requirement :)
Nice @bacherfl this is great! I will review thoroughly next week. I think we can merge this, but I don't want to add schema support for it until we have something like #1312 so that we can track the implementation of this across different providers and avoid confusion as to why some flagd and some providers support it and others do not. I don't think it will be that much work to support #1312. I will follow up next week. |
docs/reference/specifications/custom-operations/fractional-operation-spec.md
Outdated
Show resolved
Hide resolved
docs/reference/specifications/custom-operations/fractional-operation-spec.md
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great to me, but I'm going to block it for just a while to see about the feasibility of this, which would help us to release this in a consistent way across multiple implementations.
Consider this approved but temporarily blocked for merge.
@bacherfl @Kavindu-Dodan @thisthat see: open-feature/flagd-schemas#163 With these, we will serve fully versioned schemas for flagd, which we can use to denote features and fixes such as the one in this PR. |
Signed-off-by: Florian Bacher <[email protected]>
Signed-off-by: Florian Bacher <[email protected]>
Signed-off-by: Florian Bacher <[email protected]>
Signed-off-by: Florian Bacher <[email protected]>
Signed-off-by: Florian Bacher <[email protected]>
Signed-off-by: Florian Bacher <[email protected]>
…ration-spec.md Signed-off-by: Todd Baert <[email protected]>
…ration-spec.md Signed-off-by: Todd Baert <[email protected]>
Signed-off-by: Todd Baert <[email protected]>
23d179d
to
2c5d23a
Compare
I'm not doing this afterall. I think it's more maintenance than it's worth, and @aepfli took the time to implement this in most other impls, so I think we can just move forward with this now. I will do the release(s) over the next couple days. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks so much @bacherfl
🤖 I have created a release *beep* *boop* --- <details><summary>flagd: 0.11.0</summary> ## [0.11.0](flagd/v0.10.3...flagd/v0.11.0) (2024-06-27) ### ⚠ BREAKING CHANGES * support emitting errors from the bulk evaluator ([#1338](#1338)) ### 🐛 Bug Fixes * **deps:** update module buf.build/gen/go/open-feature/flagd/connectrpc/go to v1.16.2-20240215170432-1e611e2999cc.1 ([#1293](#1293)) ([2694e7f](2694e7f)) * **deps:** update module buf.build/gen/go/open-feature/flagd/grpc/go to v1.4.0-20240215170432-1e611e2999cc.1 ([#1333](#1333)) ([494062f](494062f)) * **deps:** update module buf.build/gen/go/open-feature/flagd/protocolbuffers/go to v1.34.2-20240215170432-1e611e2999cc.2 ([#1330](#1330)) ([32291ad](32291ad)) * **deps:** update module github.com/open-feature/flagd/core to v0.9.3 ([#1296](#1296)) ([1f7b8bd](1f7b8bd)) * **deps:** update module github.com/rs/cors to v1.11.0 ([#1299](#1299)) ([5f77541](5f77541)) * **deps:** update module github.com/spf13/cobra to v1.8.1 ([#1332](#1332)) ([c62bcb0](c62bcb0)) * **deps:** update module github.com/spf13/viper to v1.19.0 ([#1334](#1334)) ([1097b99](1097b99)) * **deps:** update module golang.org/x/net to v0.26.0 ([#1337](#1337)) ([83bdbb5](83bdbb5)) * **deps:** update opentelemetry-go monorepo ([#1314](#1314)) ([e9f1a7a](e9f1a7a)) * readable error messages ([#1325](#1325)) ([7ff33ef](7ff33ef)) ### ✨ New Features * support `FLAGD_DEBUG` / `--debug` / `-x` ([#1326](#1326)) ([298bd36](298bd36)) * support emitting errors from the bulk evaluator ([#1338](#1338)) ([b9c099c](b9c099c)) </details> <details><summary>flagd-proxy: 0.6.3</summary> ## [0.6.3](flagd-proxy/v0.6.2...flagd-proxy/v0.6.3) (2024-06-27) ### 🐛 Bug Fixes * **deps:** update module buf.build/gen/go/open-feature/flagd/grpc/go to v1.4.0-20240215170432-1e611e2999cc.1 ([#1333](#1333)) ([494062f](494062f)) * **deps:** update module buf.build/gen/go/open-feature/flagd/protocolbuffers/go to v1.34.2-20240215170432-1e611e2999cc.2 ([#1330](#1330)) ([32291ad](32291ad)) * **deps:** update module github.com/open-feature/flagd/core to v0.9.3 ([#1296](#1296)) ([1f7b8bd](1f7b8bd)) * **deps:** update module github.com/spf13/cobra to v1.8.1 ([#1332](#1332)) ([c62bcb0](c62bcb0)) * **deps:** update module github.com/spf13/viper to v1.19.0 ([#1334](#1334)) ([1097b99](1097b99)) * **deps:** update module golang.org/x/net to v0.26.0 ([#1337](#1337)) ([83bdbb5](83bdbb5)) * **deps:** update opentelemetry-go monorepo ([#1314](#1314)) ([e9f1a7a](e9f1a7a)) </details> <details><summary>core: 0.10.0</summary> ## [0.10.0](core/v0.9.3...core/v0.10.0) (2024-06-27) ### ⚠ BREAKING CHANGES * support emitting errors from the bulk evaluator ([#1338](#1338)) ### 🐛 Bug Fixes * **deps:** update module buf.build/gen/go/open-feature/flagd/grpc/go to v1.4.0-20240215170432-1e611e2999cc.1 ([#1333](#1333)) ([494062f](494062f)) * **deps:** update module buf.build/gen/go/open-feature/flagd/protocolbuffers/go to v1.34.2-20240215170432-1e611e2999cc.2 ([#1330](#1330)) ([32291ad](32291ad)) * **deps:** update module connectrpc.com/connect to v1.16.2 ([#1289](#1289)) ([8bacb7c](8bacb7c)) * **deps:** update module github.com/open-feature/open-feature-operator/apis to v0.2.43 ([#1331](#1331)) ([fecd769](fecd769)) * **deps:** update module golang.org/x/crypto to v0.24.0 ([#1335](#1335)) ([2a31a17](2a31a17)) * **deps:** update module golang.org/x/mod to v0.18.0 ([#1336](#1336)) ([5fa83f7](5fa83f7)) * **deps:** update opentelemetry-go monorepo ([#1314](#1314)) ([e9f1a7a](e9f1a7a)) * readable error messages ([#1325](#1325)) ([7ff33ef](7ff33ef)) ### ✨ New Features * add mandatory flags property in bulk response ([#1339](#1339)) ([b20266e](b20266e)) * support emitting errors from the bulk evaluator ([#1338](#1338)) ([b9c099c](b9c099c)) * support relative weighting for fractional evaluation ([#1313](#1313)) ([f82c094](f82c094)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Signed-off-by: OpenFeature Bot <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Closes #1282
This PR adds support for using relative weights instead of percentages that need to add up to 100.
The behavior for existing flag configs does not change with this PR, so those will continue to work as they did previously