statsig 2.7.1 → 2.8.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: da5438e7812517334d930d0197e5549a56e0c6e578aa9e33a07f2c6b9ef1804e
4
- data.tar.gz: 47e783b6c2ef006c60842d6c22fb404495089da097ace1188de984e432be2554
3
+ metadata.gz: 20ee1f5defc13286856fb81276a04db5e1078cc0b0c88223a4a361e71e8c2949
4
+ data.tar.gz: fd32bbe80668331c751091a7d9ddfad05c50eb1c2c37c037a50672731415af30
5
5
  SHA512:
6
- metadata.gz: 0055f81028a6b254721bcdeab44140df4e701ee5e4cf393687b821c749b56eb6df5a5a0d6f9ee16edb8ddfe37805207198441c55d1b5717874c5514572ed04a8
7
- data.tar.gz: 43a92f8184f5a04c0018cdcce8c5182602b06fb723d29697108f6621e57c1b53df6ea51e357edf72a879be4e0d53b3fdfaa0e94fc5719ec0a5208f0cde8f9f9a
6
+ metadata.gz: c42d83f65d9689eb181d54eb23e703962550270fd82950c808f34d5e1ce45098ebaa1e89860cc35e0fff20c5efd528bf335cb06a897ef7b0486159c4a3a0af22
7
+ data.tar.gz: 0c41f82dc93999a11e9419cd008d7dcdeb74c42c2d11208ce3ed13168ec3e13a42d2fc4fd6314b5717a51ea1d57ba2c6880b010b4ae3fb131a59bbf2b9def55e
data/lib/evaluator.rb CHANGED
@@ -568,6 +568,10 @@ module Statsig
568
568
  @experiment_overrides.clear
569
569
  end
570
570
 
571
+ def remove_experiment_override(experiment_name)
572
+ @experiment_overrides.delete(experiment_name.to_sym)
573
+ end
574
+
571
575
  def eval_spec(config_name, user, config, end_result, is_nested: false)
572
576
  config[:rules].each do |rule|
573
577
  end_result.sampling_rate = rule[:samplingRate]
data/lib/network.rb CHANGED
@@ -67,6 +67,10 @@ module Statsig
67
67
  gzip << json_body
68
68
 
69
69
  response, e = post(url, gzip.close.string, @post_logs_retry_limit, 1, true, event_count)
70
+
71
+ # Consume response body to ensure connection can be closed.
72
+ response&.flush
73
+
70
74
  unless e == nil
71
75
  message = "Failed to log #{event_count} events after #{@post_logs_retry_limit} retries"
72
76
  puts "[Statsig]: #{message}"
data/lib/statsig.rb CHANGED
@@ -373,6 +373,11 @@ module Statsig
373
373
  @shared_instance&.clear_experiment_overrides
374
374
  end
375
375
 
376
+ def self.remove_experiment_override(experiment_name)
377
+ ensure_initialized
378
+ @shared_instance&.remove_experiment_override(experiment_name)
379
+ end
380
+
376
381
  ##
377
382
  # @param [HashTable] debug information log with exposure events
378
383
  def self.set_debug_info(debug_info)
@@ -405,7 +410,7 @@ module Statsig
405
410
  def self.get_statsig_metadata
406
411
  {
407
412
  'sdkType' => 'ruby-server',
408
- 'sdkVersion' => '2.7.1',
413
+ 'sdkVersion' => '2.8.1',
409
414
  'languageVersion' => RUBY_VERSION
410
415
  }
411
416
  end
@@ -338,6 +338,12 @@ class StatsigDriver
338
338
  end
339
339
  end
340
340
 
341
+ def remove_experiment_override(experiment_name)
342
+ @err_boundary.capture(caller: __method__) do
343
+ @evaluator.remove_experiment_override(experiment_name)
344
+ end
345
+ end
346
+
341
347
  def set_debug_info(debug_info)
342
348
  @err_boundary.capture(caller: __method__) do
343
349
  @logger.set_debug_info(debug_info)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: statsig
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.1
4
+ version: 2.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Statsig, Inc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-10-20 00:00:00.000000000 Z
11
+ date: 2025-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler