splitclient-rb 8.10.0 → 8.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.txt +5 -1
  3. data/LICENSE +169 -13
  4. data/NOTICE.txt +5 -0
  5. data/lib/splitclient-rb/cache/repositories/impressions/redis_repository.rb +1 -0
  6. data/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb +14 -1
  7. data/lib/splitclient-rb/cache/repositories/segments_repository.rb +14 -2
  8. data/lib/splitclient-rb/cache/repositories/splits_repository.rb +23 -1
  9. data/lib/splitclient-rb/clients/split_client.rb +12 -3
  10. data/lib/splitclient-rb/engine/api/faraday_middleware/gzip.rb +1 -0
  11. data/lib/splitclient-rb/engine/api/splits.rb +2 -2
  12. data/lib/splitclient-rb/engine/auth_api_client.rb +3 -3
  13. data/lib/splitclient-rb/engine/events/events_delivery.rb +20 -0
  14. data/lib/splitclient-rb/engine/events/events_manager.rb +194 -0
  15. data/lib/splitclient-rb/engine/events/events_manager_config.rb +96 -0
  16. data/lib/splitclient-rb/engine/events/events_task.rb +50 -0
  17. data/lib/splitclient-rb/engine/events/noop_events_queue.rb +13 -0
  18. data/lib/splitclient-rb/engine/matchers/rule_based_segment_matcher.rb +7 -4
  19. data/lib/splitclient-rb/engine/models/event_active_subscriptions.rb +14 -0
  20. data/lib/splitclient-rb/engine/models/events_metadata.rb +10 -0
  21. data/lib/splitclient-rb/engine/models/sdk_event.rb +4 -0
  22. data/lib/splitclient-rb/engine/models/sdk_event_type.rb +4 -0
  23. data/lib/splitclient-rb/engine/models/sdk_internal_event.rb +8 -0
  24. data/lib/splitclient-rb/engine/models/sdk_internal_event_notification.rb +14 -0
  25. data/lib/splitclient-rb/engine/models/valid_sdk_event.rb +14 -0
  26. data/lib/splitclient-rb/engine/status_manager.rb +7 -1
  27. data/lib/splitclient-rb/engine/sync_manager.rb +6 -6
  28. data/lib/splitclient-rb/split_factory.rb +20 -5
  29. data/lib/splitclient-rb/sse/event_source/client.rb +14 -15
  30. data/lib/splitclient-rb/sse/event_source/event_parser.rb +2 -2
  31. data/lib/splitclient-rb/sse/notification_manager_keeper.rb +3 -3
  32. data/lib/splitclient-rb/sse/workers/segments_worker.rb +4 -4
  33. data/lib/splitclient-rb/sse/workers/splits_worker.rb +5 -5
  34. data/lib/splitclient-rb/version.rb +1 -1
  35. data/lib/splitclient-rb.rb +12 -0
  36. metadata +14 -1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: splitclient-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.10.0
4
+ version: 8.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Split Software
@@ -394,6 +394,7 @@ files:
394
394
  - CONTRIBUTORS-GUIDE.md
395
395
  - Gemfile
396
396
  - LICENSE
397
+ - NOTICE.txt
397
398
  - README.md
398
399
  - Rakefile
399
400
  - ext/murmurhash/3_x64_128.c
@@ -459,6 +460,11 @@ files:
459
460
  - lib/splitclient-rb/engine/common/impressions_manager.rb
460
461
  - lib/splitclient-rb/engine/common/noop_impressions_counter.rb
461
462
  - lib/splitclient-rb/engine/evaluator/splitter.rb
463
+ - lib/splitclient-rb/engine/events/events_delivery.rb
464
+ - lib/splitclient-rb/engine/events/events_manager.rb
465
+ - lib/splitclient-rb/engine/events/events_manager_config.rb
466
+ - lib/splitclient-rb/engine/events/events_task.rb
467
+ - lib/splitclient-rb/engine/events/noop_events_queue.rb
462
468
  - lib/splitclient-rb/engine/fallback_treatment_calculator.rb
463
469
  - lib/splitclient-rb/engine/impressions/noop_unique_keys_tracker.rb
464
470
  - lib/splitclient-rb/engine/impressions/unique_keys_tracker.rb
@@ -494,13 +500,20 @@ files:
494
500
  - lib/splitclient-rb/engine/matchers/whitelist_matcher.rb
495
501
  - lib/splitclient-rb/engine/metrics/binary_search_latency_tracker.rb
496
502
  - lib/splitclient-rb/engine/models/evaluation_options.rb
503
+ - lib/splitclient-rb/engine/models/event_active_subscriptions.rb
504
+ - lib/splitclient-rb/engine/models/events_metadata.rb
497
505
  - lib/splitclient-rb/engine/models/fallback_treatment.rb
498
506
  - lib/splitclient-rb/engine/models/fallback_treatments_configuration.rb
499
507
  - lib/splitclient-rb/engine/models/label.rb
508
+ - lib/splitclient-rb/engine/models/sdk_event.rb
509
+ - lib/splitclient-rb/engine/models/sdk_event_type.rb
510
+ - lib/splitclient-rb/engine/models/sdk_internal_event.rb
511
+ - lib/splitclient-rb/engine/models/sdk_internal_event_notification.rb
500
512
  - lib/splitclient-rb/engine/models/segment_type.rb
501
513
  - lib/splitclient-rb/engine/models/split.rb
502
514
  - lib/splitclient-rb/engine/models/split_http_response.rb
503
515
  - lib/splitclient-rb/engine/models/treatment.rb
516
+ - lib/splitclient-rb/engine/models/valid_sdk_event.rb
504
517
  - lib/splitclient-rb/engine/parser/condition.rb
505
518
  - lib/splitclient-rb/engine/parser/evaluator.rb
506
519
  - lib/splitclient-rb/engine/parser/partition.rb