-
Notifications
You must be signed in to change notification settings - Fork 7
/
CHANGES.txt
167 lines (125 loc) · 6.95 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
6.6.0 (May 14, 2024)
- Updated go-split-commons to v6
- Added support for targeting rules based on semantic versions (https://semver.org/).
- Added the logic to handle correctly when the SDK receives an unsupported Matcher type.
6.5.2 (Dec 21, 2023)
- Updated telemetry name methods for flagSets.
6.5.1 (Dec 6, 2023)
- Fixed FlagSetsFilter naming in Advanced config.
6.5.0 (Nov 29, 2023)
- Added support for Flag Sets on the SDK, which enables grouping feature flags and interacting with the group rather than individually (more details in our documentation):
- Added new variations of the get treatment methods to support evaluating flags in given flag set/s.
- TreatmentsByFlagSet and TreatmentsByFlagSets
- TreatmentsWithConfigByFlagSet and TreatmentsWithConfigByFlagSets
- Added a new optional Flag Sets Filter configuration option. This allows the SDK and Split services to only synchronize the flags in the specified flag sets, avoiding unused or unwanted flags from being synced on the SDK instance, bringing all the benefits from a reduced payload.
- Note: Only applicable when the SDK is in charge of the rollout data synchronization. When not applicable, the SDK will log a warning on init.
- Updated the following SDK manager methods to expose flag sets on flag views.
- Added `DefaultTreatment` property to the `SplitView` object returned by the `Split` and `Splits` functions of the SDK manager.
6.4.0 (Jul 18, 2023)
- Improved streaming architecture implementation to apply feature flag updates from the notification received which is now enhanced, improving efficiency and reliability of the whole update system.
- Pointed to new version of go-split-commons v5.0.0.
6.3.3 (Jun 9, 2023)
- Fixed buffering logic in impressions for consumer mode
- Pointed to new version of go-split-commons v4.3.5:
Fixed nil message in error log when trying to connect to Redis
Storing the proper impressions mode for telemetry in consumer mode
6.3.2 (May 15, 2023)
- Updated terminology on the SDKs codebase to be more aligned with current standard without causing a breaking change. The core change is the term split for feature flag on things like logs and godoc comments.
- Pointed to new version of go-split-commons v4.3.3:
- Updated default treatment to be control for json localhost.
6.3.1 (March 21, 2023)
- Fixed Unique Keys dto in redis.
6.3.0 (March 13, 2023)
- Added support to use JSON files in localhost mode.
- Pointed to new version of go-split-commons v4.3.0 for vulnerability fixes
6.2.1 (Oct 28, 2022)
- Updated Matchers logging: demoted the log message to "warning".
6.2.0 (Oct 12, 2022)
- 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.
6.1.8 (Sep 9, 2022)
- Updated BooleanMatcher logging: demoted the log message to "warning".
6.1.7 (Sep 8, 2022)
- Replaced murmur3 32 library.
6.1.6 (June 21, 2022)
- Updated the synchronization flow to be more reliable in the event of an edge case generating delay in cache purge propagation, keeping the SDK cache properly synced.
6.1.5 (Jun 6, 2022)
- Updated segments and feature flag storage to return -1 as default changeNumber instead of zero
6.1.4 (May 12, 2022)
- Updated config telemetry redis storage
- Made the synchronization for telemetry cfg as goroutine to not degrade SDK readiness.
6.1.3 (Apr 18, 2022)
- Fixed panic on initialization when redis is down.
6.1.2 (April 8, 2022)
- Fixed SDK library version.
6.1.1 (Jan 12, 2022)
- Fixed 100% cpu issue in localhost mode.
- Bumped toolkit & commons dependencies.
6.1.0 (Apr 14, 2021)
- Updated SDK telemetry storage, metrics and updater to be more effective and send less often.
6.0.2 (Feb 25, 2021)
- Fixed SSE race conditions on token refresh & general push revamp (implemented in commons and toolkit).
6.0.1 (Dec 22, 2020)
- Point to new versions of commons & toolkit which remove unnecessary log message.
6.0.0 (Oct 6, 2020)
- BREAKING CHANGE: Migrated to go modules (dep & bare-bones go-dep no longer supported).
5.3.0 (Oct 6, 2020)
- Added impressions dedupe logic to avoid sending duplicated impressions:
- Added `OPTIMIZED` and `DEBUG` modes in order to enabling/disabling how impressions are going to be sent into Split servers,
- `OPTIMIZED`: will send unique impressions in a timeframe in order to reduce how many times impressions are posted to Split.
- `DEBUG`: will send every impression generated to Split.
5.2.2 (Sep 10, 2020)
- Fixed possible issue with SSE client using 100% cpu.
5.2.1 (Aug 31, 2020)
- Added impression observer.
- Added rates validation.
- Updated with latest version in go-split-commons.
5.2.0 (Aug 3, 2020)
- Added split-commons library.
- Added Streaming support.
5.1.3 (Jan 27, 2020)
- Removed unnecessary Feature flag copy made in memory.
5.1.2 (Nov 28, 2019)
- Several fixes in tests as a result of a locking & race conditions audit/
- Fixed locking issue for .Treatments() && .TreatmentsWithConfig() methods.
5.1.1 (Oct 15, 2019)
- Added logic to fetch multiple feature flags at once on getTreatments/getTreatmentsWithConfig.
- Added flag `IPAddressesEnabled` into Config to enable/disable sending MachineName and MachineIP when data is posted in headers.
- Fixed resource leak in `api.ValidateApikey`.
5.1.0 (Jul 19, 2019)
- Added support for TLS connections to redis.
- Refactored initialization process.
- Fixed traffic type count issue.
- Fixed possible concurrency issue with feature flag storage.
5.0.1 (Jun 19, 2019)
- Added coverage for traffic type validation existence only on ready and non localhost mode.
5.0.0 (Jun 4, 2019)
- Added support for optional event properties via our Track() method.
- Added validation for traffic types in track call.
- Added new label when the sdk is not ready.
- Added multiple factory instantiation check.
- Added validation when feature flag does not exist in treatments and manager calls.
- Moved Impressions in-memory to single-queue approach and refactored ImpressionDTO.
4.0.1 (May 17, 2019)
- Fixed bug on client.Destroy() method.
4.0.0 (April 30, 2019)
- Added custom Impression Listener.
- BlockUntilReady refactor.
- Added getTreatmentWithConfig and getTreatmentsWithConfig methods.
- Added support for YAML file in Localhost mode.
3.0.1 (March 8, 2019)
- Updated Feature flags refreshing rate.
3.0.0 (Feb 19, 2019)
- Updated SDK Parity.
- BREAKING CHANGE: Moved Impressions to Single Queue.
2.1.1 (Dec 19, 2018)
- Fixed traffic allocation issue on 1%.
2.1.0: (Oct 12, 2018)
- Added Input Sanitization
2.0.0: (May 24, 2018)
- Fixed bucketing key
1.1.1: (Apr 20, 2018)
- Fixing http headers output
1.1.0: (Feb 9, 2018)
- Split client supports .track method (events) in all falvours (inmemory-standalone, redis-standalone, redis-consumer)
1.0.0: (Dec 22, 2017)
- Downgrade logging level for shared memory messages