Skip to content

Commit

Permalink
Merge pull request #360 from splitio/breaking_changes_baseline
Browse files Browse the repository at this point in the history
Breaking changes
  • Loading branch information
EmilianoSanchez authored Nov 1, 2024
2 parents af7981f + 05aa2af commit a81642b
Show file tree
Hide file tree
Showing 200 changed files with 3,044 additions and 4,312 deletions.
16 changes: 15 additions & 1 deletion .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"parser": "@typescript-eslint/parser",
"plugins": [
"@typescript-eslint",
"eslint-plugin-tsdoc",
"import"
],

Expand Down Expand Up @@ -80,7 +81,7 @@
"message": "Don't declare const enum, because it is not supported by Babel used for building RN SDK"
}
],
"compat/compat": ["error", "defaults, ie 10, node 6"],
"compat/compat": ["error", "defaults, node >=14"],
"no-throw-literal": "error",
"import/no-default-export": "error",
"import/no-self-import": "error"
Expand All @@ -90,6 +91,19 @@
"sourceType": "module"
}
},
{
"files": ["types/**"],
"rules": {
"no-use-before-define": "off"
}
},
{
// Enable TSDoc rules for TypeScript files, allowing the use of JSDoc in JS files.
"files": ["**/*.ts"],
"rules": {
"tsdoc/syntax": "warn"
}
},
// @TODO remove when moving InLocalStorage to js-browser
{
"files": ["src/storages/inLocalStorage/**/*.ts"],
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
## transpiled code
/esm
/cjs
/types

## coverage info
/coverage
6 changes: 6 additions & 0 deletions CHANGES.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
2.0.0 (October XX, 2024)
- Added support for targeting rules based on large segments.
- Added `factory.destroy()` method, which invokes the `destroy` method on all SDK clients created by the factory.
- Added `SplitIO` namespace with the public TypeScript definitions to be reused by the SDKs, rather than having each SDK define its own types.
- Updated the handling of timers and async operations inside an `init` factory method to enable lazy initialization of the SDK in standalone mode. This update is intended for the React SDK.
- Bugfixing - Fixed an issue with the server-side polling manager that caused dangling timers when the SDK was destroyed before it was ready.
- BREAKING CHANGES:
- Updated default flag spec version to 1.2.
- Removed `/mySegments` endpoint from SplitAPI module, as it is replaced by `/memberships` endpoint.
- Removed support for MY_SEGMENTS_UPDATE and MY_SEGMENTS_UPDATE_V2 notification types, as they are replaced by MEMBERSHIPS_MS_UPDATE and MEMBERSHIPS_LS_UPDATE notification types.
- Removed the deprecated `GOOGLE_ANALYTICS_TO_SPLIT` and `SPLIT_TO_GOOGLE_ANALYTICS` integrations.
- Removed the migration logic for the old format of MySegments keys in LocalStorage introduced in JavaScript SDK v10.17.3.
- Removed the `sdkClientMethodCSWithTT` function, which handled the logic to bound an optional traffic type to SDK clients. Client-side SDK implementations must use `sdkClientMethodCS` module, which, unlike the previous function, does not allow passing a traffic type but simplifies the SDK API.
- Removed internal ponyfills for `Map` and `Set` global objects, dropping support for IE and other outdated browsers. The SDK now requires the runtime environment to support these features natively or to provide a polyfill.
- Removed the `sync.localhostMode` configuration option to plug the LocalhostMode module.

1.17.0 (September 6, 2024)
- Added `sync.requestOptions.getHeaderOverrides` configuration option to enhance SDK HTTP request Headers for Authorization Frameworks.
Expand Down
Loading

0 comments on commit a81642b

Please sign in to comment.