-
Notifications
You must be signed in to change notification settings - Fork 410
Support SSRC conditions #2487
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
Merged
Merged
Support SSRC conditions #2487
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit
Hold shift + click to select a range
81c90c3
Get And condition passing
erikeldridge fc7deeb
Support and.or condition
erikeldridge bd12f0d
Support true condition
erikeldridge 43e479e
Support false condition, and fix tests
erikeldridge 64c71d7
Use or.and, not the other way around
erikeldridge dd3af1d
Integrate conditional values into evaluate method
erikeldridge 14f5339
Test handling for multiple conditions
erikeldridge 1754fb5
Clean up logs
erikeldridge 0283dbf
Extract condition evaluation to class for testing
erikeldridge 264c75f
Namespace condition names
erikeldridge fcbcd6d
Iterate over ordered condition list
erikeldridge ef07c33
Test condition ordering
erikeldridge 9179a0f
Differentiate named conditions
erikeldridge 816f38a
Document condition types
erikeldridge 307ec9d
Generalize condition eval test and fix styling
erikeldridge f87e605
Replace log statement with todo
erikeldridge 4599ec5
Implement evaluate percent condition for RC server-side
trekforever 559d8aa
Apply lint fixes
trekforever 31d6c9a
Add context param to evaluate method
erikeldridge 4e6a1c9
Add tests for percent condition eval
trekforever 6e86cba
Update evaluator tests to use context
erikeldridge b669472
Increase threshold to +/- 500 for percent condition eval tests
trekforever 687daa3
Clean up percentCondition tests a bit and add note on the tolerance used
trekforever 12101f1
Apply suggestions from code review
erikeldridge 89efaa7
Update copyright date and remove stray log statement
erikeldridge d161bd6
Mock farmhash in tests
erikeldridge 9e0bc5d
Add Math.abs for farmhash - to be consistent with the internal implem…
trekforever bdc14d3
Regenerate package-lock to fix Node 14 CI error re busboy
erikeldridge 0a3408f
Fix lint errors
erikeldridge 347f07b
Rename "id" to "randomizationId" per discussion
erikeldridge 6e245e2
Extract API
erikeldridge f7dbf1d
Only return false in cases of uknown template evaluation
erikeldridge 0cab5d1
Remove product prefix from type names
erikeldridge 53c2145
Remove product prefix from exported types
erikeldridge ee675fb
Remove unused "expression" field from server condition
erikeldridge c9701eb
Extract API
erikeldridge 2f2fa2f
Merge branch 'ssrc-prefix' into ssrc-percent
erikeldridge fa21a91
Remove prefix from impl classes, for consistency
erikeldridge caddabe
Merge branch 'ssrc-prefix' into ssrc-percent
erikeldridge 530ae21
Remove prefix from new internal classes
erikeldridge 97876df
Remove "server" prefix
erikeldridge 689c6aa
Remove prefix from NamedCondition
erikeldridge 9c79eea
Merge branch 'ssrc-prefix' into ssrc-percent
erikeldridge 0202ac7
Rename "or" and "and" fields to match API
erikeldridge 14fdd8e
Rename "operator" field to "percentOperator" to match API
erikeldridge 117eae9
Extract API after "and" and "or" rename
erikeldridge e99c489
Merge remote-tracking branch 'gh-public/ssrc' into ssrc-percent
erikeldridge File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Apply suggestions from code review
Co-authored-by: jen_h <harveyjen@google.com>
- Loading branch information
commit 12101f1fd097973df7e06c7125aa4c69c1c538f9
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
@lahirumaramba I see some interfaces with the RemoteConfig prefix and others without. Is there a guideline for what needs the prefix?
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.
I can't recall a reason. Looking at this proposal (go/admin-sdk-remote-config) from 2020 it looks like the types that were added later are missing the prefix.... maybe we weren't strict about the prefix in follow up proposals?
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.
I was just reviewing a change for the REST API and I think what happened is the TS API naming biased toward the REST API. The REST API has nested protos, but TS interfaces can't be nested. The parent protos had more qualified names than the child protos. When we created interfaces to match the protos, we retained the existing names.
I think the guideline we discussed against product prefixes still holds and will help the TS API be more consistent.