You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGES.txt
+7Lines changed: 7 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,10 @@
1
+
11.8.0 (October 30, 2025)
2
+
- Added new configuration for Fallback Treatments, which allows setting a treatment value and optional config to be returned in place of "control", either globally or by flag. Read more in our docs.
3
+
- Added `client.getStatus()` method to retrieve the client readiness status properties (`isReady`, `isReadyFromCache`, etc).
4
+
- Added `client.whenReady()` and `client.whenReadyFromCache()` methods to replace the deprecated `client.ready()` method, which has an issue causing the returned promise to hang when using async/await syntax if it was rejected.
5
+
- Updated the SDK_READY_FROM_CACHE event to be emitted alongside the SDK_READY event if it hasn’t already been emitted.
6
+
- Updated @splitsoftware/splitio-commons package to version 2.8.0.
7
+
1
8
11.7.1 (October 8, 2025)
2
9
- Bugfix - Updated @splitsoftware/splitio-commons package to version 2.7.1, which fixes the `debug` option to support log levels when the `logger` option is used.
t.true(client.__getStatus().isReady,'Client should emit SDK_READY_FROM_CACHE alongside SDK_READY');
145
+
t.true(client.getStatus().isReady,'Client should emit SDK_READY_FROM_CACHE alongside SDK_READY');
146
146
});
147
147
148
148
client.on(client.Event.SDK_READY,()=>{
149
-
t.true(client.__getStatus().isReadyFromCache,'Client should emit SDK_READY and it should be ready from cache');
149
+
t.true(client.getStatus().isReadyFromCache,'Client should emit SDK_READY and it should be ready from cache');
150
150
});
151
151
client2.on(client.Event.SDK_READY,()=>{
152
-
t.true(client2.__getStatus().isReadyFromCache,'Non-default client should emit SDK_READY and it should be ready from cache');
152
+
t.true(client2.getStatus().isReadyFromCache,'Non-default client should emit SDK_READY and it should be ready from cache');
153
153
});
154
154
client3.on(client.Event.SDK_READY,()=>{
155
-
t.true(client2.__getStatus().isReadyFromCache,'Non-default client should emit SDK_READY and it should be ready from cache');
155
+
t.true(client2.getStatus().isReadyFromCache,'Non-default client should emit SDK_READY and it should be ready from cache');
156
156
});
157
157
158
158
});
@@ -331,7 +331,7 @@ export default function (fetchMock, assert) {
331
331
332
332
client.on(client.Event.SDK_READY_FROM_CACHE,()=>{
333
333
t.true(Date.now()-startTime<400,'It should emit SDK_READY_FROM_CACHE on every client if there was data in the cache and we subscribe on time. Should be considerably faster than actual readiness from the cloud.');
334
-
t.false(client.__getStatus().isReady,'It should not be ready yet');
334
+
t.false(client.getStatus().isReady,'It should not be ready yet');
335
335
336
336
t.equal(client.getTreatment('always_on'),'off','It should evaluate treatments with data from cache instead of control due to Input Validation');
337
337
@@ -515,13 +515,13 @@ export default function (fetchMock, assert) {
515
515
});
516
516
});
517
517
518
-
assert.test(t=>{// Testing when we start with initial rollout plan data and sync storage type (is ready from cache immediately)
518
+
assert.test(asynct=>{// Testing when we start with initial rollout plan data and sync storage type (is ready from cache immediately)
0 commit comments