From da38be2a97bd7431668ce44ed35e4a241b58b532 Mon Sep 17 00:00:00 2001 From: Emiliano Sanchez Date: Sat, 23 May 2026 14:27:42 -0300 Subject: [PATCH 1/2] Add RBS support for configs --- src/services/__tests__/splitApi.spec.ts | 8 ++++---- src/services/splitApi.ts | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/services/__tests__/splitApi.spec.ts b/src/services/__tests__/splitApi.spec.ts index cd311cb9..03f518a0 100644 --- a/src/services/__tests__/splitApi.spec.ts +++ b/src/services/__tests__/splitApi.spec.ts @@ -45,10 +45,10 @@ describe('splitApi', () => { assertHeaders(settings, headers); expect(url).toBe(expectedFlagsUrl(-1, 100, settings.validateFilters || false, settings, -1)); - splitApi.fetchConfigs(-1, false, 100); + splitApi.fetchConfigs(-1, false, 100, -1); [url, { headers }] = fetchMock.mock.calls[4]; assertHeaders(settings, headers); - expect(url).toBe(expectedConfigsUrl(-1, 100, settings.validateFilters || false, settings)); + expect(url).toBe(expectedConfigsUrl(-1, 100, settings.validateFilters || false, settings, -1)); splitApi.fetchConfigsSegmentChanges(-1, 'segmentName', false, 100); [url, { headers }] = fetchMock.mock.calls[5]; @@ -81,9 +81,9 @@ describe('splitApi', () => { return `sdk/splitChanges?s=1.1&since=${since}${rbSince ? '&rbSince=' + rbSince : ''}${usesFilter ? filterQueryString : ''}${till ? '&till=' + till : ''}`; } - function expectedConfigsUrl(since: number, till: number, usesFilter: boolean, settings: ISettings) { + function expectedConfigsUrl(since: number, till: number, usesFilter: boolean, settings: ISettings, rbSince?: number) { const filterQueryString = settings.sync.__splitFiltersValidation && settings.sync.__splitFiltersValidation.queryString; - return `configs/v1/configs?since=${since}${usesFilter ? filterQueryString : ''}${till ? '&till=' + till : ''}`; + return `configs/v1/configs?since=${since}${rbSince ? '&rbSince=' + rbSince : ''}${usesFilter ? filterQueryString : ''}${till ? '&till=' + till : ''}`; } }); diff --git a/src/services/splitApi.ts b/src/services/splitApi.ts index d90b1e2d..4d95a925 100644 --- a/src/services/splitApi.ts +++ b/src/services/splitApi.ts @@ -69,8 +69,8 @@ export function splitApiFactory( }, // @TODO support filterQueryString and handle ERROR_TOO_MANY_SETS error - fetchConfigs(since: number, noCache?: boolean, till?: number) { - const url = `${urls.configs}/v1/configs?since=${since}${filterQueryString || ''}${till ? '&till=' + till : ''}`; + fetchConfigs(since: number, noCache?: boolean, till?: number, rbSince?: number) { + const url = `${urls.configs}/v1/configs?since=${since}${rbSince ? '&rbSince=' + rbSince : ''}${filterQueryString || ''}${till ? '&till=' + till : ''}`; return (secureSplitHttpClient || splitHttpClient)(url, noCache ? noCacheHeaderOptions : undefined); }, From 0451a4446276c005200b6bc709590e0ea1a472e9 Mon Sep 17 00:00:00 2001 From: Emiliano Sanchez Date: Wed, 8 Jul 2026 16:07:40 -0300 Subject: [PATCH 2/2] rc --- CHANGES.txt | 3 +++ package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 2f353229..9dd13056 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,6 @@ +3.1.0 (July XX, 2026) + - Added support for rule-based segments in /api/v1/configs endpoint. + 3.0.0 (June 26, 2026) - Extracted SDK lifecycle methods (`init`, `flush`, and `destroy`) into a reusable `sdkLifecycle` module. - Extracted the `track` method into a standalone `trackMethod` factory for reuse across SDKs. diff --git a/package-lock.json b/package-lock.json index 24e3f32a..42dec283 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@splitsoftware/splitio-commons", - "version": "3.0.1-rc.1", + "version": "3.0.1-rc.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@splitsoftware/splitio-commons", - "version": "3.0.1-rc.1", + "version": "3.0.1-rc.2", "license": "Apache-2.0", "dependencies": { "@types/ioredis": "^4.28.0", diff --git a/package.json b/package.json index d387edfe..2d5c30ab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@splitsoftware/splitio-commons", - "version": "3.0.1-rc.1", + "version": "3.0.1-rc.2", "description": "Split JavaScript SDK common components", "main": "cjs/index.js", "module": "esm/index.js",