You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Hr/azure3 (#103)
* Add Consul and Redis services to Windows.
* Enable Consul and Redis testing
* add dynamo (#104)
* add experimentation event overrides for rules and fallthrough
* warn & don't send event if identify or track has no valid user
* include user in prereq flag events
* rm unnecessary logic
* more factory methods
* update readme to refer to docs
* add Ruby 2.6.2 to CI
* fix missing require for net/http
* stringify built-in user attributes in events, and secondary key for evals
* make const names consistent
* support metric value with track()
* update method description
* applying markdown templates and updating repository url references
* Cleaning up markdown files
* allow skipping database tests
* Updating the package name (#115)
* update package name
* missed one
* revert module entry point name change
* bump ld-eventsource version for stream logging fix
* use YAML.safe_load
* add unit test and temporarily revert fix to demonstrate failure
* restore fix
* add comment about not using FileDataSource in production
* drop events if inbox is full
* update doc comment for track with metric_value
* don't let user fall outside of last bucket in rollout
* refactor evaluation logic and move it out of the main namespace
* comments
* fix type coercion behavior
* make type coercion behavior consistent with earlier versions for now
* whitespace
* break up Evaluator tests further
* make EvaluationReason an immutable class
* FrozenError doesn't exist in older Ruby, use more general RuntimeError
* precompute evaluation reasons when we receive a flag
* rm unused
* rename FeatureStore to DataStore
* remove references to UpdateProcessor (now DataSource)
* add event payload ID header
* (6.0) drop support for old Ruby versions
* add Ruby version constraint to gemspec
* remove Rake dependency
* update ld-eventsource to 1.0.2 which doesn't have Rake dependency
* implement diagnostic events in Ruby (#130)
* update ruby-eventsource to 1.0.3 for backoff bug
* fix incorrect initialization of EventProcessor
* remove install-time openssl check that breaks if you don't have rake
* treat comparison with wrong data type as a non-match, not an exception (#134)
* fail fast for nil SDK key when appropriate
* tolerate nil value for user.custom (#137)
* Only shutdown the Redis pool if it is owned by the SDK (#158)
* Only shutdown a Redis pool created by SDK
* Make pool shutdown behavior an option
* improve doc comment
* remove support for indirect/patch and indirect/put (#138)
* update to json 2.3.1 (#139)
* update json dep to 2.3.x to fix CVE
* add publication of API docs on GitHub Pages (#143)
* try fixing release metadata
* update the default base url (#144)
* revert renames of feature_store & update_processor
* [ch92483] Use http gem and add socket factory support (#142)
* update dependencies and add CI for ruby 3 (#141)
* reference eventsource 2.0 in gemspec
* add 5.x releasable branch for releaser
* use Ruby 2.6.6 in releases
* Removed the guides link
* [ch99757] add alias method (#147)
* don't send event for nil user evaluation
* remove lockfile (#148)
* rm redundant nil check
* Experiment Allocation Changes (#150)
* WIP - from sam's pairing session
* starting sdk changes
* adding tests and making sure everything works
* adding more tests
* removing the singleton for fallthrough
* Revert "removing the singleton for fallthrough"
This reverts commit dff7adbb809ecc63118d0fbff9742a88a039c679.
* taking a different approach to keep things immutable
* adding tests for untracked
* remove unnecessary comment
* making sure to return two values in all code paths
Co-authored-by: pellyg-ld <gpelly@launchdarkly.com>
* Use camelCase for JSON property names (#151)
The in_experiment attribute was added to reasons as part of #150 but it doesn't appear to be received in events. I think that's because it's sending it in JSON as "in_experiment" rather than "inExperiment" as we expect to parse it.
* fixing ruby logic causing ih failures (#152)
* fixing ruby logic
* adding missing spec
* Apply suggestions from code review
Co-authored-by: Sam Stokes <sstokes@launchdarkly.com>
* pr tweaks
* making spec language consistent
Co-authored-by: Sam Stokes <sstokes@launchdarkly.com>
* add log warning for missing user key (#153)
* add log warnings for nil/empty user key
* rm warning for empty string key
* fix test
* diagnostic events should respect HTTPS_PROXY (#154)
* minor test simplification (#155)
* allow higher minor versions of json and http gems
* allow v5.x of http gem (#157)
* use Bundler 2.2.10 + modernize CI config (#158)
* enable verbose rspec output
* fix socket factory tests
* restore log suppression
* Replacing deprecated circleci image usage (#159)
* use Releaser v2 config (#161)
* Updates docs URLs
* Update lib/ldclient-rb/ldclient.rb
Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* remove reliance on git in gemspec (#163)
* use ruby-eventsource 2.1.1 for fix of sc-123850 and sc-125504 (#164)
* use ruby-eventsource 2.1.1 for fix of sc-123850 and sc-125504
* comment phrasing
* Start work on flag builder.
* Add user targeting and rule builder
* Add datasource implementation
* Convert the current_flags hash to use symbols instead of strings as keys
* Fix typo on FlagRuleBuilder copy constructor
* minor refactoring of impl; Added use of new Clause struct instead of Hash in FlagRuleBuilder; Moved TestData.factory out of Impl namespace and renamed Impl to TestDataImpl
* Add the doc comments
* (big segments 1) add public config/interface/reason types (#167)
* Cleanup docstrings to be YARD docs
* Added Util.is_bool helper function to clean up the check for whether an object is a boolean; Removed the DeepCopyHash/DeepCopyArray objects in favor of deep_copy_hash and deep_copy_array functions
* Move public classes out of Impl namespace. Most of it is in public namespace except for the data source now.
* Move require of concurrent/atomics to the correct module
* (big segments 2) implement Big Segments evaluation & status APIs (#168)
* improve CONTRIBUTING.md with notes on code organization
* add note about doc comments
* Cleanup YARD warnings and cleanup docs
* Address PR feedback: Move is_bool back to Impl namespace to avoid confusion; Remove unnecessary nil check on variations in build function; fixup comments
* (big segments 3) implement Redis & DynamoDB big segment stores (#169)
* add missing import
* fix stale calculation
* fix big segments user hash algorithm to use SHA256
* improve & refactor client/evaluation tests
* more cleanup/DRY
* add use_preconfigured_flag and use_preconfigured_segment to TestData (#173)
* always cache big segment query result even if it's nil
* comments
* add test for cache expiration
* use TestData in our own tests (#174)
* use TestData in our own tests
* fix test
* replace LaunchDarkly::FileDataSource with LaunchDarkly::Integrations::FileData
* update ruby-eventsource version for recent SSE fixes
* Bump bundler version (#184)
* Add ability to to set initial reconnect delay (#183)
* Treat secondary as a built-in attribute (#180)
* all_flags_state is invalid if store isn't initialized (#182)
* identify should not emit events if user key is "" (#181)
* Account for traffic allocation on all flags (#185)
* Add contract tests (#178)
* Fix string interpolation in log message (#187)
* Default opts to empty hash when creating persistent feature store (#186)
* Remove Hakiri badge from README (#188)
Hakiri was sunset on January 31st, 2022 at which time our badge stopped
working.
* detect http/https proxy env vars when creating HTTP clients
* rever accidental change
* fix nil safety in test service config
* master -> main (#190)
* master -> main
* update ruby-eventsource version for parsing efficiency fix
* miscellaneous optimizations for event processing (#193)
* Add polling support for contract test service (#198)
* Add windows tests in circleci (#199)
At some point in the past, we were experimenting with using Azure to
verify Window builds. Now that CircleCI supports Windows, we should keep
everything on a single CI provider.
* Add application info support (#194)
* reuse EvaluationDetail instances by precomputing results
Co-authored-by: hroederld <46500128+hroederld@users.noreply.github.com>
Co-authored-by: Eli Bishop <eli@launchdarkly.com>
Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com>
Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com>
Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com>
Co-authored-by: Jacob Smith <jacob@jacobsmith.io>
Co-authored-by: Elliot <35050275+Apache-HB@users.noreply.github.com>
Co-authored-by: hroederld <hroeder@launchdarkly.com>
Co-authored-by: Kerrie Martinez <kyee@launchdarkly.com>
Co-authored-by: pellyg-ld <gpelly@launchdarkly.com>
Co-authored-by: Sam Stokes <sstokes@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com>
Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com>
Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
Co-authored-by: Matthew M. Keeler <keelerm84@gmail.com>
Co-authored-by: Ben Levy <benjaminlevy007@gmail.com>
Co-authored-by: Ben Levy <ben@foxhound.systems>
Co-authored-by: Matthew M. Keeler <mkeeler@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
0 commit comments