splitclient-rb 8.1.1.pre.rc2 → 8.1.1

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: 0d344f92b7ba8f06a542a643352365abe771f233d838e677527752f6f74d8a67
4
+ data.tar.gz: e8344d162313b6d1e647f859359f81208d9dce1cbed0ba5ab02e0adb69aa92ca
5
5
  SHA512:
6
- metadata.gz: 41b224700eea9145c2510771edb30d8db6c75c1591b5095ee6c7636d4342b9600d63bd4435aab90c350ed899eda2f3865ac9965dd738c8dbca8fb70731a45e14
7
- data.tar.gz: 984ee7cc0b3d3994ae6b050c837717d40d6c1d2fc7587f22ee28b9f6ef09947427ab6b1e4e588dfe14a62c4eea2c940d74ae7a7d4f2191bba1ada5c3718e4bfa
6
+ metadata.gz: 49543470094b38f9780e77fe6b57d8b821e8a070d3f736d583d9911e4dfe6a2255a668b7ab2eb466742b43190a2f91b0885c11b2236adf7a71df892abbd0a63d
7
+ data.tar.gz: 5192e8a0af32d52d7e0aaa416cf1e1a98ba2c5d0a7926387c186ef5b6b363c96299da6866816daaad5e6a1003c24fcf45e1c3fa5393c420019d1950ec82593e3
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,15 +12,11 @@ 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
- @adapter.expire(unique_keys_key, EXPIRE_SECONDS) if uniques.length == size.last
19
+ @adapter.expire(unique_keys_key, EXPIRE_SECONDS) if uniques.length == size
24
20
  rescue StandardError => e
25
21
  @config.log_found_exception(__method__.to_s, e)
26
22
  end
@@ -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'
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
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
@@ -561,9 +561,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
561
561
  version: 2.5.0
562
562
  required_rubygems_version: !ruby/object:Gem::Requirement
563
563
  requirements:
564
- - - ">"
564
+ - - ">="
565
565
  - !ruby/object:Gem::Version
566
- version: 1.3.1
566
+ version: '0'
567
567
  requirements: []
568
568
  rubygems_version: 3.2.3
569
569
  signing_key: