splitclient-rb 3.1.0.pre.rc8 → 3.1.0.pre.rc9
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3037157b7408479db6d29868df4005078bf344c4
|
4
|
+
data.tar.gz: 20b2c1ef05f4ab0ea4114a748ef513e0b95fcf51
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8894fab929d077ee1ab8906e0326076944a0bb4de41514dc8672e6d0ec0e21ffc9dc3394d6d66367c611304e4d6f81a4c4b9442acff078444e0391e490dc4577
|
7
|
+
data.tar.gz: '01656839c7ca92686ee5b0623de195ce42caa66673cc7873baf010b08d5e5c5b71b018f1f4d17b2997f3dae2f4a4ef7944e2df081a8596d22360861414fa55c6'
|
@@ -19,16 +19,16 @@ module SplitIoClient
|
|
19
19
|
# delete fetched impressions afterwards
|
20
20
|
def clear
|
21
21
|
impressions = impression_keys.each_with_object([]) do |key, memo|
|
22
|
-
@adapter.random_set_elements(key, @config.impressions_queue_size)
|
22
|
+
members = @adapter.random_set_elements(key, @config.impressions_queue_size)
|
23
|
+
members.each do |impression|
|
23
24
|
parsed_impression = JSON.parse(impression)
|
24
25
|
|
25
26
|
memo << {
|
26
27
|
feature: parsed_impression['split_name'],
|
27
28
|
impressions: parsed_impression.reject { |k, _| k == 'split_name' }
|
28
29
|
}
|
29
|
-
|
30
|
-
@adapter.delete_from_set(key, impression)
|
31
30
|
end
|
31
|
+
@adapter.delete_from_set(key, members)
|
32
32
|
end
|
33
33
|
|
34
34
|
impressions
|
@@ -73,6 +73,13 @@ module SplitIoClient
|
|
73
73
|
load_localhost_mode_features(splits_file)
|
74
74
|
end
|
75
75
|
|
76
|
+
def get_treatments(key, split_names, attributes = nil)
|
77
|
+
split_names.each_with_object({}) do | (name), memo|
|
78
|
+
puts "name #{name} memo #{memo}"
|
79
|
+
memo.merge!(name => get_treatment(key, name, attributes))
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
76
83
|
#
|
77
84
|
# obtains the treatment for a given feature
|
78
85
|
#
|
@@ -150,6 +150,14 @@ module SplitIoClient
|
|
150
150
|
end
|
151
151
|
|
152
152
|
def get_treatments(key, split_names, attributes = nil)
|
153
|
+
|
154
|
+
# This localhost behavior must live in in localhost_spit_factory#client
|
155
|
+
if is_localhost_mode?
|
156
|
+
return split_names.each_with_object({}) do | (name), memo|
|
157
|
+
memo.merge!(name => get_localhost_treatment(name))
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
153
161
|
@splits_repository.get_splits(split_names).each_with_object({}) do |(name, data), memo|
|
154
162
|
memo.merge!(name => get_treatment(key, name, attributes, data))
|
155
163
|
end
|
data/splitio.yml
ADDED
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: 3.1.0.pre.
|
4
|
+
version: 3.1.0.pre.rc9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Split Software
|
@@ -295,6 +295,7 @@ files:
|
|
295
295
|
- lib/splitclient-rb/version.rb
|
296
296
|
- lib/splitclient-rb_utilitites.rb
|
297
297
|
- splitclient-rb.gemspec
|
298
|
+
- splitio.yml
|
298
299
|
- tasks/benchmark_get_treatment.rake
|
299
300
|
- tasks/console.rake
|
300
301
|
- tasks/rspec.rake
|