-
Notifications
You must be signed in to change notification settings - Fork 15
feat!: add provider eventing, remove setProvider timeout #207
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
beeme1mr
merged 51 commits into
open-feature:main
from
sameerank:feat/add-provider-eventing
Jan 16, 2026
Merged
Changes from all commits
Commits
Show all changes
51 commits
Select commit
Hold shift + click to select a range
9b0052d
feat: add event system foundation for provider lifecycle
sameerank 147a9c3
feat: add provider lifecycle interfaces and state management
sameerank 2833a4a
fix: correct test expectation for init_with_timeout method signature
sameerank 7f85a25
feat: implement async provider initialization with event-driven lifec…
sameerank 45684bc
test: add OpenFeature specification requirement tests for provider li…
sameerank 8c91379
style: remove excessive comments to match project conventions
sameerank 821e71c
fix: address code review feedback
sameerank 0ab5d30
refactor: remove ContextAwareStateHandler as it provides no additiona…
sameerank e4887f1
fix: address second round of Gemini code review feedback
sameerank 6eefe78
fix: address third round of Gemini code review feedback
sameerank ce8d3f1
refactor: use dedicated ProviderEventDispatcher class
sameerank 700ad79
refactor: remove EventAwareNoOpProvider and reorganize compatibility …
sameerank 2fa7865
fix: address race conditions in provider lifecycle management
sameerank fc88010
refactor: improve API structure and fix nil provider handling
sameerank d22ca3c
refactor: improve error messages and init parameter handling
sameerank 2611c40
refactor: improve parameter inspection and simplify event details
sameerank e6e176a
refactor: replace PROVIDER_FATAL string literals with constants
sameerank fb37e18
improve: enhance error handling by propagating original exception object
sameerank 2d531a1
fix: prevent memory leaks in provider state registry
sameerank fc2efaf
fix: prevent race condition in async provider initialization
sameerank 4cdc814
improve: enhance diagnostics and robustness of provider eventing system
sameerank f858bfb
fix: correct semantically incorrect original_error assignment
sameerank ca59659
fix: remove problematic provider reversion logic and dead code
sameerank e0e354c
fix: address code review feedback on exception handling and test stab…
sameerank 8a13c74
fix: add thread-safety to set_provider_and_wait method
sameerank 4f7c547
fix: resolve race condition in set_provider_and_wait
sameerank 2be203e
perf: improve concurrency in set_provider_and_wait
sameerank ebe7621
refactor: improve error message clarity and code organization
sameerank bc37195
refactor: replace hash mapping with idiomatic case statement
sameerank 3f0e659
test: achieve 100% test coverage with comprehensive edge case testing
sameerank feb988b
refactor: remove redundant comments and add OpenFeature spec reference
sameerank 40ec89e
Merge remote-tracking branch 'origin/main' into feat/add-provider-eve…
sameerank b301cf9
style: apply Standard Ruby lint fixes for CI compliance
sameerank 124b689
docs: update README with eventing documentation
sameerank 19dd12f
refactor: improve API encapsulation by making testing utilities private
sameerank ba4a136
refactor: remove unnecessary StateHandler module to simplify PR
sameerank e5ba150
refactor: simplify provider initialization with explicit blocking con…
sameerank bfb771d
feat: implement client-level event handlers with domain scoping
sameerank 31ddc6f
refactor: consolidate duplicate immediate handler methods
sameerank aee04ac
refactor: improve API design by marking internal methods private
sameerank 4bc1557
feat: replace sleep-based synchronization with async coordination pat…
sameerank 688c908
refactor: make attach/detach methods private in EventHandler
sameerank fc4ab55
refactor: improve mutex handling in set_provider_internal
sameerank d17fee9
fix: always emit PROVIDER_READY events regardless of EventHandler cap…
sameerank 7fc6450
fix: PROVIDER_CONFIGURATION_CHANGED events must not update state per …
sameerank f78e5de
fix: move provider shutdown outside mutex and prevent race condition
sameerank e6dded1
refactor: inline EventToStateMapper into ProviderStateRegistry
sameerank e222491
refactor: update naming to better reflect responsibilities
sameerank 9107058
fix: use GENERAL error code for provider initialization failures
sameerank 0e9ad01
refactor: move Requirement 5.1.3 test to events specification
sameerank 8fcf69a
docs: update README to reflect that original_error is always present
sameerank 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
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
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.