This repository was archived by the owner on Nov 19, 2024. It is now read-only.
forked from splitio/ruby-client
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES.txt
177 lines (127 loc) · 5.36 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
5.1.2 (October 26th, 2018)
- Add input validation for client API methods
5.1.1 (October 4th, 2018)
- Change get_treatments so that it sends a single latency metric
- Removed unused call to Redis#scan when adding latencies
- Removed Redis calls on initialization when SDK is set to consumer mode
- Change split_config approach so that every property has an accessor
- Removed @config parameter on most initializers
5.1.0 (September 10th, 2018)
- Change `get_api` to return only a Faraday response.
- Add `SplitLogger` to clean up logging code and reduce the complexity in several methods.
5.0.3 (August 13th, 2018)
- Add `impressions_bulk_size` option to set the max number of impressions to be sent to the Split backend on each post.
5.0.2 (July 31st, 2018)
- Prevents the impression thread from being started if a listener is not in place
5.0.1 (July 19th, 2018)
- Adds stop! method to the factory for gracefully stopping the SDK.
5.0.0 (May 18th, 2018)
- Fix bug where the sdk picked the wrong hashing algo. This is a breaking change.
4.5.2 (May 16th, 2018)
- do not return control when a split has custom attr and I don't pass attributes to get_treatment
4.5.1 (Mar 23rd, 2018)
- Fix Forwardable load issue
- Fix native extension path issue
- Add .jar executable to the gem
4.5.0 (Mar 2nd, 2018)
- Move MurmurHash3 implementation inside the gem
- Add native Java MurmurHash3 implementation -> now support JRuby
4.4.0 (Feb 5th, 2018)
- Add track API
4.3.3 (Feb 22th, 2018)
- Allow usage of Redis >= 3.2, not only ~> 3.2
4.3.2 (Dec 19th, 2017)
- Add DEFINITION_NOT_FOUND and rename NO_RULE_MATCHED labels
4.3.1 (Nov 10th, 2017)
- Do not throw exception when storing impressions on reids and it is not available. Returns CONTROL instead.
4.3.0 (Oct 13th, 2017)
- Add impression listener
- Add support for client shutdown (destroy())
- Add "time" to the routed impressions
- Add support to apply attribute matcher to the traffic type
- Add support for string matchers to match on matching keys
4.2.3 (August 4, 2017)
- Use ENV vars in producer
4.2.2 (July 28, 2017)
- Fix treatments array in SplitManager
4.2.1 (July 20, 2017)
- Coerce string to regexp for Regexp matcher
4.2.0 (July 18, 2017)
- Add new boolean/regexp matchers
- Add support for split dependency on other splits
- Pass bucketing_key to `match?` method
- Fix IP address fetching
- Remove unneeded dependencies (faraday_middleware, faraday-http-cache)
4.1.0 (April 16, 2017)
- Add new string/set matchers
- Use Rails logger if available. Now we do not pollute STDOUT by default
4.0.0
- Add support for murmur3 algo
- Optimize memory usage
3.3.0
- Add support for traffic allocation
3.2.4
- Fix Faraday compability issue (now compatible with Faraday 0.8.9)
- Provide an interface to run SplitAdapter(start and resume), can be used to resurrect threads in Unicorn and Passenger servers
- Allow passing non-string values to get_treatment/get_treatments
- Better logging when returning CONTROL and label:Exception as well as when restarting threads
- Add exception logging when failed to clear impressions keys or fetch impressions keys
- Fix Redis naming issues (key_name -> keyName)
- Fix negation matcher. Negation had not effect and was ignored.
3.2.3
- Fix Redis namespace issue to align with the spec
- Allocate less memory by not creating Split model to check if Split is archived
3.2.2
- Fix issue when segment_store was never invoked
3.2.0
- Add impression labeling
3.1.3
- Refactor SplitFactory - split it into separate mangers and client classes
- Refactor Utilities to comply style guide
- Allow to store block until ready flag in Redis
- rescue exception when posting impressions threads failed to prevent it to die
3.1.2
- Fix issue with complex key where get_treatment and get_treatments return different values.
3.1.1
- Fix variable not found when posting impression
- Fix infinite loop when posting impression if there is a network glitch
3.1.0
- Add RedisAdapter
- adds manager.split_names()
- add impressions_queue_size to prevent memory leak when Threads pauses due to 'smart' fork.
- do not report latencies for get_treatment is array is all zeros
- Fix deduplication problem when posting impressions
- Change in how factory is construct.
- Detach implementation for local factory and regular one.
3.0.3
- Fix nil ref in manager
3.0.2
- add ability to provide different bucketing/matching keys
3.0.1
- fix segments not deleting from the cache
3.0.0
- add new caching interface
- add replaceable adapters to store cache in
- add first cache adapter: MemoryAdapter
- refactoring
2.0.1
- Supress warnings cause by Net::HTTP when it already exists.
2.0.0
- Add Factory for creation of Client and Manager interface.
1.0.4
- added support for AND combiner on conditions
- added events_uri as config param which defines the metrics post url
- updated metrics post default endpoint to be https://events.split.io/api/
1.0.3
- fixed refresh rate intervals issue
- fixed datetime bug for split definitions created directly from api
1.0.2
- created between_matcher, equal_to_matcher, greater_than_or_equal_to_matcher, less_than_or_equal_to_matcher to support attributes
- refactored whitelist_matcher to support attributes
- tweaked to drop analytics data if the POST get an error response
- added condition to return CONTROL on the deleted features
1.0.1
- .splits to .split for local env
- isTreatment was removed from the API.
1.0.0
- Support multivariate treatment