statsig 2.7.0 → 2.7.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: 03e6d3622747b21150f1b9af0da570e2771c1a2794eeb0806decda2a358f5530
4
- data.tar.gz: 6368ec902764c9347d56690d2369dd17763adea6b54dc18228e7fde41fab729c
3
+ metadata.gz: da5438e7812517334d930d0197e5549a56e0c6e578aa9e33a07f2c6b9ef1804e
4
+ data.tar.gz: 47e783b6c2ef006c60842d6c22fb404495089da097ace1188de984e432be2554
5
5
  SHA512:
6
- metadata.gz: 3ff3889f41fdcf86498dfbc7c8865e1a7d02236e75adaa2e6bf98afd4f6e8803506248e4c14f23346764f02ce8c957e4f66dfd9923047bc382084de976f08d79
7
- data.tar.gz: def37cb5444b646dbe4e04057f5661ec1c58509c687b0b25014bb1078cec5bda4fb4a48291bd00afe9e82ed2877717dfd47e19f587aa30f0cb89e4009a9b183a
6
+ metadata.gz: 0055f81028a6b254721bcdeab44140df4e701ee5e4cf393687b821c749b56eb6df5a5a0d6f9ee16edb8ddfe37805207198441c55d1b5717874c5514572ed04a8
7
+ data.tar.gz: 43a92f8184f5a04c0018cdcce8c5182602b06fb723d29697108f6621e57c1b53df6ea51e357edf72a879be4e0d53b3fdfaa0e94fc5719ec0a5208f0cde8f9f9a
data/lib/api_config.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'constants'
1
+ require_relative 'constants'
2
2
 
3
3
  class UnsupportedConfigException < StandardError
4
4
  end
@@ -1,7 +1,6 @@
1
+ require_relative 'constants'
1
2
  require_relative 'hash_utils'
2
3
 
3
- require 'constants'
4
-
5
4
  module Statsig
6
5
  class ResponseFormatter
7
6
  def self.get_responses(
@@ -1,4 +1,4 @@
1
- require 'statsig_errors'
1
+ require_relative 'statsig_errors'
2
2
 
3
3
  $endpoint = 'https://statsigapi.net/v1/sdk_exception'
4
4
 
data/lib/evaluator.rb CHANGED
@@ -1,15 +1,15 @@
1
- require 'config_result'
2
1
  require 'country_lookup'
3
2
  require 'digest'
4
- require 'evaluation_helpers'
5
- require 'client_initialize_helpers'
6
- require 'spec_store'
7
3
  require 'time'
8
- require 'ua_parser'
9
- require 'evaluation_details'
10
4
  require 'user_agent_parser/operating_system'
11
- require 'user_persistent_storage_utils'
12
- require 'constants'
5
+ require_relative 'client_initialize_helpers'
6
+ require_relative 'config_result'
7
+ require_relative 'constants'
8
+ require_relative 'evaluation_details'
9
+ require_relative 'evaluation_helpers'
10
+ require_relative 'spec_store'
11
+ require_relative 'ua_parser'
12
+ require_relative 'user_persistent_storage_utils'
13
13
 
14
14
  module Statsig
15
15
  class Evaluator
@@ -549,7 +549,7 @@ module Statsig
549
549
  value: rule[:returnValue],
550
550
  group_name: rule[:groupName],
551
551
  rule_id: rule[:id],
552
- evaluation_details: EvaluationDetails.local_override(@config_sync_time, @init_time)
552
+ evaluation_details: EvaluationDetails.local_override(@spec_store.last_config_sync_time, @spec_store.initial_config_sync_time)
553
553
  }
554
554
  return
555
555
  end
@@ -560,7 +560,7 @@ module Statsig
560
560
  value: {},
561
561
  group_name: group_name,
562
562
  rule_id: "#{experiment_name}:override",
563
- evaluation_details: EvaluationDetails.local_override(@config_sync_time, @init_time)
563
+ evaluation_details: EvaluationDetails.local_override(@spec_store.last_config_sync_time, @spec_store.initial_config_sync_time)
564
564
  }
565
565
  end
566
566
 
data/lib/hash_utils.rb CHANGED
@@ -1,5 +1,5 @@
1
- require 'json'
2
1
  require 'digest'
2
+ require 'json'
3
3
 
4
4
  TWO_TO_THE_63 = 1 << 63
5
5
  TWO_TO_THE_64 = 1 << 64
data/lib/network.rb CHANGED
@@ -1,10 +1,9 @@
1
+ require 'connection_pool'
1
2
  require 'http'
2
3
  require 'json'
3
4
  require 'securerandom'
4
5
  require 'zlib'
5
6
 
6
- require 'connection_pool'
7
-
8
7
  RETRY_CODES = [408, 500, 502, 503, 504, 522, 524, 599].freeze
9
8
 
10
9
  module Statsig
data/lib/spec_store.rb CHANGED
@@ -1,10 +1,10 @@
1
+ require 'concurrent-ruby'
1
2
  require 'net/http'
2
3
  require 'uri'
3
- require 'evaluation_details'
4
- require 'id_list'
5
- require 'concurrent-ruby'
6
- require 'hash_utils'
7
- require 'api_config'
4
+ require_relative 'api_config'
5
+ require_relative 'evaluation_details'
6
+ require_relative 'hash_utils'
7
+ require_relative 'id_list'
8
8
 
9
9
  module Statsig
10
10
  class SpecStore
data/lib/statsig.rb CHANGED
@@ -1,6 +1,5 @@
1
- require 'statsig_driver'
2
-
3
- require 'statsig_errors'
1
+ require_relative 'statsig_driver'
2
+ require_relative 'statsig_errors'
4
3
 
5
4
  module Statsig
6
5
 
@@ -406,7 +405,7 @@ module Statsig
406
405
  def self.get_statsig_metadata
407
406
  {
408
407
  'sdkType' => 'ruby-server',
409
- 'sdkVersion' => '2.7.0',
408
+ 'sdkVersion' => '2.7.1',
410
409
  'languageVersion' => RUBY_VERSION
411
410
  }
412
411
  end
@@ -1,19 +1,20 @@
1
- require 'config_result'
2
- require 'evaluator'
3
- require 'network'
4
- require 'statsig_errors'
5
- require 'statsig_event'
6
- require 'statsig_logger'
7
- require 'statsig_options'
8
- require 'statsig_user'
9
- require 'spec_store'
10
- require 'dynamic_config'
11
- require 'feature_gate'
12
- require 'error_boundary'
13
- require 'layer'
14
- require 'memo'
15
- require 'diagnostics'
16
- require 'sdk_configs'
1
+ require_relative 'api_config'
2
+ require_relative 'config_result'
3
+ require_relative 'diagnostics'
4
+ require_relative 'dynamic_config'
5
+ require_relative 'error_boundary'
6
+ require_relative 'evaluator'
7
+ require_relative 'feature_gate'
8
+ require_relative 'layer'
9
+ require_relative 'memo'
10
+ require_relative 'network'
11
+ require_relative 'sdk_configs'
12
+ require_relative 'spec_store'
13
+ require_relative 'statsig_errors'
14
+ require_relative 'statsig_event'
15
+ require_relative 'statsig_logger'
16
+ require_relative 'statsig_options'
17
+ require_relative 'statsig_user'
17
18
 
18
19
  class StatsigDriver
19
20
 
@@ -1,8 +1,8 @@
1
- require 'constants'
2
- require 'statsig_event'
3
- require 'ttl_set'
4
1
  require 'concurrent-ruby'
5
- require 'hash_utils'
2
+ require_relative 'constants'
3
+ require_relative 'hash_utils'
4
+ require_relative 'statsig_event'
5
+ require_relative 'ttl_set'
6
6
 
7
7
  $gate_exposure_event = 'statsig::gate_exposure'
8
8
  $config_exposure_event = 'statsig::config_exposure'
data/lib/statsig_user.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  require 'json'
2
- require 'constants'
2
+ require_relative 'constants'
3
3
  ##
4
4
  # The user object to be evaluated against your Statsig configurations (gates/experiments/dynamic configs).
5
5
  class StatsigUser
@@ -1,4 +1,4 @@
1
- require 'statsig_options'
1
+ require_relative 'statsig_options'
2
2
 
3
3
  module Statsig
4
4
  class UserPersistentStorageUtils
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.0
4
+ version: 2.7.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-14 00:00:00.000000000 Z
11
+ date: 2025-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler