-
Notifications
You must be signed in to change notification settings - Fork 23
feat: experimentation support #226
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
+2,426
−10
Merged
Changes from all commits
Commits
Show all changes
38 commits
Select commit
Hold shift + click to select a range
0b95531
feat: add experimentation support
Zaimwa9 431a867
fix: settle every event batch and never ship transient traits
Zaimwa9 bc0a81e
fix: allow a custom events URI without enabling events
Zaimwa9 34ca69d
refactor: stop publishing EventProcessor internals as public API
Zaimwa9 d2fee34
fix: serialise each event when it is buffered, not with its batch
Zaimwa9 66daa74
fix: bound in-flight event batches and log events the API rejects
Zaimwa9 a717dc6
fix: close the event processor's shutdown and startup races
Zaimwa9 9b91185
fix: reject blank event names and unbounded event buffer settings
Zaimwa9 ae482c1
fix: serve the default flag when identity flags time out in getExperi…
Zaimwa9 07c2472
fix: cap in-flight events, not batches, and rate-limit the drop log
Zaimwa9 5972383
fix: bound close() by the worst case of a batch under the real timeouts
Zaimwa9 ac499a2
test: pin the closed re-check under the buffer lock, drop a vacuous test
Zaimwa9 d4e6185
fix: keep a self-referencing trait map from escaping trackEvent as an…
Zaimwa9 9213caa
refactor: trim comments
Zaimwa9 05d2fc2
fix: give each client its own event processor
Zaimwa9 892e05c
fix: let an injected event processor back only one client
Zaimwa9 2a36178
fix: hold the in-flight cap and retry any 5xx once
Zaimwa9 16e7c5d
test: consolidate event and experiment tests
Zaimwa9 b9de038
test: keep FlagTest on JUnit 4
Zaimwa9 52c1792
refactor: bound close() by a fixed timeout
Zaimwa9 bf34335
fix: claim the event processor before starting polling
Zaimwa9 4266bdb
fix: derive the close() bound from the client's timeouts
Zaimwa9 89106e5
fix: send null traits when an event has none
Zaimwa9 a1927ee
fix: keep custom headers off the events request
Zaimwa9 e97fa24
Revert "fix: keep custom headers off the events request"
Zaimwa9 559b270
fix: keep custom headers off the events request
Zaimwa9 09e83b7
fix: stop event requests from outliving close()
Zaimwa9 77ca614
fix: carry events over the in-flight cap instead of dropping them
Zaimwa9 5343b9e
fix: settle batches atomically and bound events calls when a timeout …
Zaimwa9 324ae9f
fix: send waiting events once in-flight capacity frees up
Zaimwa9 29fd232
fix: settle pending flush futures when close() force-stops
Zaimwa9 deea76e
refactor: cap in-flight event batches instead of in-flight events
Zaimwa9 7baec55
fix: make flush wait for events buffered behind the in-flight limit
Zaimwa9 45804d2
fix: send the SDK's environment key on events when a custom one is set
Zaimwa9 ddab0cf
fix: close the previous event processor when a builder is rebuilt
Zaimwa9 5e77a76
fix: build the exposure dedupe key from its fields instead of a joine…
Zaimwa9 960609a
fix: bound events waiting behind the in-flight limit at 1,000
Zaimwa9 02c8463
fix: forget a dropped exposure's dedupe key
Zaimwa9 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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.