splitclient-rb 8.1.1.pre.rc2 → 8.1.1.pre.rc3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cb58331fe788f44a387c77cd0afce468c915879e55c5920d4bf20b11273b41bd
4
- data.tar.gz: a5b310fe842ad026159aa6c8a16688cac72e73bb69188599da619e17d1a0a183
3
+ metadata.gz: bd080651012addd19857407fc736636f9efe6a63dc81bf729d1fee4476ffc378
4
+ data.tar.gz: c2f7567e89777d23a950f25dfe67948858226c5ebbe0e497afcde48150440997
5
5
  SHA512:
6
- metadata.gz: 41b224700eea9145c2510771edb30d8db6c75c1591b5095ee6c7636d4342b9600d63bd4435aab90c350ed899eda2f3865ac9965dd738c8dbca8fb70731a45e14
7
- data.tar.gz: 984ee7cc0b3d3994ae6b050c837717d40d6c1d2fc7587f22ee28b9f6ef09947427ab6b1e4e588dfe14a62c4eea2c940d74ae7a7d4f2191bba1ada5c3718e4bfa
6
+ metadata.gz: 22a8b4aae91df29d09a9a6c0b71f198a0997e2b5c237ae3f3963d922dcd9874a4cea1ed52d85707bd733501c77968a515c9e435ac77340f72480cc5cf0da316c
7
+ data.tar.gz: '0569443f03eeff1c21f44cbdae8d238a8162584fe36f5e62144cddd3abd134d80f96ae4e27375f551df27b8437f838fabf427a35dea192ee7f64cba50f47544d'
data/CHANGES.txt CHANGED
@@ -1,5 +1,10 @@
1
1
  CHANGES
2
2
 
3
+ 8.1.1 (Mar 17, 2023)
4
+ - Added retries with backoff when the sdk tries to connect to the Streaming service and it is not available.
5
+ - Updated the way that the sdk write mtks in redis.
6
+ - Fixed calculation of timeUntilReady in telemetry.
7
+
3
8
  8.1.0 (Oct 5, 2022)
4
9
  - Added a new impressions mode for the SDK called NONE , to be used in factory when there is no desire to capture impressions on an SDK factory to feed Split's analytics engine. Running NONE mode, the SDK will only capture unique keys evaluated for a particular feature flag instead of full blown impressions.
5
10
 
@@ -12,13 +12,9 @@ module SplitIoClient
12
12
  end
13
13
 
14
14
  def record_uniques_key(uniques)
15
- return if uniques.nil? || uniques == {}
15
+ return if uniques.nil? || uniques.empty?
16
16
 
17
- size = @adapter.redis.pipelined do |pipeline|
18
- uniques.each do |key, value|
19
- pipeline.rpush(unique_keys_key, { f: key, ks: value.to_a }.to_json)
20
- end
21
- end
17
+ size = @adapter.add_to_queue(unique_keys_key, uniques_formatter(uniques))
22
18
 
23
19
  @adapter.expire(unique_keys_key, EXPIRE_SECONDS) if uniques.length == size.last
24
20
  rescue StandardError => e
@@ -48,6 +44,18 @@ module SplitIoClient
48
44
  @adapter.expire(impressions_count_key, EXPIRE_SECONDS) if impressions_count.size == hlen && (pipeline_result.sum - hlen) == total_count
49
45
  end
50
46
 
47
+ def uniques_formatter(uniques)
48
+ to_return = []
49
+ uniques.each do |key, value|
50
+ to_return << {
51
+ f: key,
52
+ ks: value.to_a
53
+ }.to_json
54
+ end
55
+
56
+ to_return
57
+ end
58
+
51
59
  def impressions_count_key
52
60
  "#{@config.redis_namespace}.impressions.count"
53
61
  end
@@ -1,3 +1,3 @@
1
1
  module SplitIoClient
2
- VERSION = '8.1.1.pre.rc2'
2
+ VERSION = '8.1.1.pre.rc3'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: splitclient-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.1.1.pre.rc2
4
+ version: 8.1.1.pre.rc3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Split Software
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-16 00:00:00.000000000 Z
11
+ date: 2023-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: allocation_stats