Skip to content

Commit d4ae3e6

Browse files
Stable version
1 parent 8bdaf82 commit d4ae3e6

File tree

4 files changed

+68
-48
lines changed

4 files changed

+68
-48
lines changed

CHANGES.txt

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
1+
2.3.0 (May 28, 2025)
2+
- Added support for rule-based segments. These segments determine membership at runtime by evaluating their configured rules against the user attributes provided to the SDK.
3+
- Added support for feature flag prerequisites. This allows customers to define dependency conditions between flags, which are evaluated before any allowlists or targeting rules.
4+
- Bugfix - Enhanced HTTP client module to implement timeouts for failing requests that might otherwise remain pending indefinitely on some Fetch API implementations.
5+
- Updated @splitsoftware/splitio package to version 11.4.0.
6+
17
2.2.0 (April 15, 2025)
28
- Added `updateOnSdkUpdate`, `updateOnSdkReady`, `updateOnSdkReadyFromCache` and `updateOnSdkTimedout` props to the `SplitFactoryProvider` component to overwrite the default value (`true`) of the `updateOnSdk<Event>` options in the `useSplitClient` and `useSplitTreatments` hooks.
39
- Updated development dependencies to use React v19 and TypeScript v4.5.5 to test compatibility and avoid type conflicts when using the SDK with React v19 types.
410

511
2.1.1 (April 9, 2025)
6-
- Bugfixing - Fixed `useSplitClient` and `useSplitTreatments` hooks to properly respect `updateOn<Event>` options. Previously, if the hooks were re-called due to a component re-render, they used the latest version of the SDK client status ignoring when `updateOn<Event>` options were set to `false` and resulting in unexpected changes in treatment values.
12+
- Bugfix - Fixed `useSplitClient` and `useSplitTreatments` hooks to properly respect `updateOn<Event>` options. Previously, if the hooks were re-called due to a component re-render, they used the latest version of the SDK client status ignoring when `updateOn<Event>` options were set to `false` and resulting in unexpected changes in treatment values.
713

814
2.1.0 (March 28, 2025)
915
- Added a new optional `properties` argument to the options object of the `useSplitTreatments` hook, allowing to pass a map of properties to append to the generated impressions sent to Split backend. Read more in our docs.
@@ -19,14 +25,14 @@
1925
- Updated @splitsoftware/splitio package to version 11.0.3 that includes some improvements and bugfixes.
2026
- Updated internal handling of the `updateOnSdkTimedout` param to remove the wrong log "[ERROR] A listener was added for SDK_READY_TIMED_OUT on the SDK, which has already fired and won't be emitted again".
2127
- Updated implementation of `SplitFactoryProvider` component to support React Strict Mode (Related to https://github.com/splitio/react-client/issues/221).
22-
- Bugfixing - Fixed an issue with the `updateOn***` object parameters of the `useSplitClient` and `useSplitTreatments` hooks, and their components and HOCs alternatives, which were not defaulting to `true` when a non-boolean value was provided.
28+
- Bugfix - Fixed an issue with the `updateOn***` object parameters of the `useSplitClient` and `useSplitTreatments` hooks, and their components and HOCs alternatives, which were not defaulting to `true` when a non-boolean value was provided.
2329

2430
2.0.0 (November 1, 2024)
2531
- Added support for targeting rules based on large segments.
2632
- Added support for passing factory instances to the `factory` prop of the `SplitFactoryProvider` component from other SDK packages that extends the `SplitIO.IBrowserSDK` interface, such as `@splitsoftware/splitio-react-native`, `@splitsoftware/splitio-browserjs` and `@splitsoftware/browser-suite` packages.
2733
- Updated @splitsoftware/splitio package to version 11.0.0 that includes major updates, and updated some transitive dependencies for vulnerability fixes.
2834
- Renamed distribution folders from `/lib` to `/cjs` for CommonJS build, and `/es` to `/esm` for ECMAScript Modules build.
29-
- Bugfixing - When the `config` prop is provided, the `SplitFactoryProvider` now makes the SDK factory and client instances available in the context immediately during the initial render, instead of waiting for the first SDK event (Related to https://github.com/splitio/react-client/issues/198). This change fixes a bug in the `useTrack` hook, which was not retrieving the client's `track` method during the initial render.
35+
- Bugfix - When the `config` prop is provided, the `SplitFactoryProvider` now makes the SDK factory and client instances available in the context immediately during the initial render, instead of waiting for the first SDK event (Related to https://github.com/splitio/react-client/issues/198). This change fixes a bug in the `useTrack` hook, which was not retrieving the client's `track` method during the initial render.
3036
- BREAKING CHANGES:
3137
- NOTE: Refer to ./MIGRATION-GUIDE.md for instructions on how to migrate your codebase from version 1.x to 2.0.0.
3238
- Updated the default value of the `updateOnSdkUpdate` and `updateOnSdkTimedout` parameters of the `useSplitClient` and `useSplitTreatments` hooks options object to `true`, to re-render on all SDK events by default. The same applies for the equivalent props in the `[with]SplitClient` and `[with]SplitTreatments` components.
@@ -54,11 +60,11 @@
5460
- Updated internal use of the SDK client to remove EventEmitter memory leak warnings. These warnings were emitted when using multiple hooks and components from the SDK simultaneously, but they do not indicate an actual memory leak and are irrelevant for SDK usage (Related to https://github.com/splitio/react-client/issues/191).
5561

5662
1.11.1 (March 26, 2024)
57-
- Bugfixing - Added tslib as an explicit dependency to avoid issues with some package managers that don't resolve it automatically as a transitive dependency from @splitsoftware/splitio-commons (Related to issue https://github.com/splitio/javascript-client/issues/795).
63+
- Bugfix - Added tslib as an explicit dependency to avoid issues with some package managers that don't resolve it automatically as a transitive dependency from @splitsoftware/splitio-commons (Related to issue https://github.com/splitio/javascript-client/issues/795).
5864

5965
1.11.0 (January 16, 2024)
6066
- Added new `SplitFactoryProvider` component as a replacement for the now deprecated `SplitFactory` component.
61-
- Bugfixing: The new component is a revised version of `SplitFactory` that properly handles SDK side effects (i.e., factory creation and destruction) within the React component lifecycle,
67+
- Bugfix: The new component is a revised version of `SplitFactory` that properly handles SDK side effects (i.e., factory creation and destruction) within the React component lifecycle,
6268
- resolving memory leak issues in React development mode, strict mode and server-side rendering (Related to issues #11 and #109),
6369
- and also ensuring that the SDK is updated if `config` or `factory` props change (Related to issues #11 and #148).
6470
- Notable changes when migrating from `SplitFactory` to `SplitFactoryProvider`:
@@ -73,7 +79,7 @@
7379
- Updated @splitsoftware/splitio package to version 10.24.1 that updates localStorage usage to clear cached feature flag definitions before initiating the synchronization process, if the cache was previously synchronized with a different SDK key (i.e., a different environment) or different Split Filter criteria, to avoid using invalid cached data when the SDK is ready from cache.
7480

7581
1.10.1 (November 21, 2023)
76-
- Bugfixing - Resolved an issue with `useSplitClient` hook and `SplitClient` component, that were not re-rendering when an SDK client event was emitted between the render and the commit phases of component lifecycle.
82+
- Bugfix - Resolved an issue with `useSplitClient` hook and `SplitClient` component, that were not re-rendering when an SDK client event was emitted between the render and the commit phases of component lifecycle.
7783

7884
1.10.0 (November 16, 2023)
7985
- 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):
@@ -89,8 +95,8 @@
8995
- Added `defaultTreatment` property to the `SplitView` object returned by the `split` and `splits` methods of the SDK manager (Related to issue https://github.com/splitio/javascript-commons/issues/225).
9096
- Updated type declarations of the library components to not restrict the type of the `children` prop to ReactElement, allowing to pass any valid ReactNode value (Related to issue https://github.com/splitio/react-client/issues/164).
9197
- Updated linter and other dependencies for vulnerability fixes.
92-
- Bugfixing - Removed conditional code within hooks to adhere to the rules of hooks and prevent React warnings. Previously, this code checked for the availability of the hooks API (available in React version 16.8.0 or above) and logged an error message. Now, using hooks with React versions below 16.8.0 will throw an error.
93-
- Bugfixing - Updated `useClient` and `useTreatments` hooks to re-render and re-evaluate feature flags when they consume a different SDK client than the context and its status updates (i.e., when it emits SDK_READY or other event).
98+
- Bugfix - Removed conditional code within hooks to adhere to the rules of hooks and prevent React warnings. Previously, this code checked for the availability of the hooks API (available in React version 16.8.0 or above) and logged an error message. Now, using hooks with React versions below 16.8.0 will throw an error.
99+
- Bugfix - Updated `useClient` and `useTreatments` hooks to re-render and re-evaluate feature flags when they consume a different SDK client than the context and its status updates (i.e., when it emits SDK_READY or other event).
94100

95101
1.9.0 (July 18, 2023)
96102
- Updated some transitive dependencies for vulnerability fixes.
@@ -109,7 +115,7 @@
109115

110116
1.8.1 (December 16, 2022)
111117
- Updated some transitive dependencies for vulnerability fixes.
112-
- Bugfixing - Upgrade @splitsoftware/splitio dependency to version 10.22.3 which includes a memory leak fix for localhost mode (Related to issue https://github.com/splitio/javascript-commons/issues/181) among other improvements.
118+
- Bugfix - Upgrade @splitsoftware/splitio dependency to version 10.22.3 which includes a memory leak fix for localhost mode (Related to issue https://github.com/splitio/javascript-commons/issues/181) among other improvements.
113119

114120
1.8.0 (October 5, 2022)
115121
- Updated @splitsoftware/splitio dependency to version 10.22.0, which includes:
@@ -118,7 +124,7 @@
118124
- Updated storage implementations to improve the performance of split evaluations (i.e., `getTreatment(s)` method calls) when using the default storage in memory.
119125

120126
1.7.1 (July 25, 2022)
121-
- Bugfixing - Updated @splitsoftware/splitio-commons dependency to include new features and updates.
127+
- Bugfix - Updated @splitsoftware/splitio-commons dependency to include new features and updates.
122128

123129
1.7.0 (July 25, 2022)
124130
- Updated @splitsoftware/splitio dependency to version 10.21.1, which includes:
@@ -134,12 +140,12 @@
134140
- Updated submitters logic, to avoid duplicating the post of impressions to Split cloud when the SDK is destroyed while its periodic post of impressions is running.
135141

136142
1.5.0 (June 13, 2022)
137-
- Bugfixing - Fixed issue with useTreatments hooks, to return control treatments without evaluating feature flags when the SDK client is not ready or is destroyed, to avoid not ready impressions and warning log.
143+
- Bugfix - Fixed issue with useTreatments hooks, to return control treatments without evaluating feature flags when the SDK client is not ready or is destroyed, to avoid not ready impressions and warning log.
138144
- Updated @splitsoftware/splitio dependency to version 10.19.1, which includes:
139145
- Added `scheduler.telemetryRefreshRate` property to SDK configuration, and deprecated `scheduler.metricsRefreshRate` property.
140146
- Updated SDK telemetry storage, metrics and updater to be more effective and send less often.
141147
- Updated eventsource dependency range to ^1.1.2 to avoid a vulnerability and dependency resolution to a vulnerable version of url-parse transitive dependency.
142-
- Bugfixing - Updated submitters logic, to avoid dropping impressions and events that are being tracked while POST request is pending.
148+
- Bugfix - Updated submitters logic, to avoid dropping impressions and events that are being tracked while POST request is pending.
143149

144150
1.4.1 (May 11, 2022)
145151
- Updated React peer dependency range to include [email protected].
@@ -178,7 +184,7 @@
178184
1.2.3 (February 8, 2021)
179185
- Updated React peer dependency range to include [email protected].
180186
- Added `memoize-one` dependency for basic memoization utilities.
181-
- Bugfixing - Optimizing feature flags evaluation via memoization in order to remove `shouldComponentUpdate` method of `SplitTreatments` component and avoid stopping render propagation (issue #42).
187+
- Bugfix - Optimizing feature flags evaluation via memoization in order to remove `shouldComponentUpdate` method of `SplitTreatments` component and avoid stopping render propagation (issue #42).
182188

183189
1.2.2 (December 15, 2020)
184190
- Updated @splitsoftware/splitio dependency to version 10.15.2.
@@ -197,13 +203,13 @@
197203
- Added an optional prop to `SplitFactory` and `SplitClient`: `updateOnSdkReadyFromCache`, to update the component when an SDK_READY_FROM_CACHE event is emitted. Its value is true by default.
198204
- Added gracefull shutdown of the SDK, when SplitFactory component is unmounted.
199205
- Added validation and error logs associated to the use of incompatible React library versions.
200-
- Bugfixing - Incorrect status properties in SplitContext when using SplitClient component.
201-
- Bugfixing - Properly handling side-effects (creating Split factory) in SplitFactory component constructor.
202-
- Bugfixing - Properly handling component state updates in React commit phase.
206+
- Bugfix - Incorrect status properties in SplitContext when using SplitClient component.
207+
- Bugfix - Properly handling side-effects (creating Split factory) in SplitFactory component constructor.
208+
- Bugfix - Properly handling component state updates in React commit phase.
203209

204210
1.1.0 (March 11, 2020)
205211
- Exported `SplitContext` to access Split readiness state when using React hooks.
206-
- Bugfixing - issue with SDK_READY_TIMED_OUT events.
212+
- Bugfix - issue with SDK_READY_TIMED_OUT events.
207213

208214
1.0.0 (January 24, 2020)
209215
- Initial public release!

0 commit comments

Comments
 (0)