diff --git a/.gitignore b/.gitignore index f26a161f7..92b7a1d29 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,6 @@ dump.rdb ## TS tests compilated files /ts-tests/*.js /ts-tests/package-lock.json + +.yalc/ +yalc.lock \ No newline at end of file diff --git a/CHANGES.txt b/CHANGES.txt index 285bc11a7..534a5524b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,6 @@ +11.11.0 (February 24, 2026) + - Updated @splitsoftware/splitio-commons package to version 2.12.0, which supports both ioredis v4 and v5 as transitive dependency. + 11.10.1 (February 3, 2026) - Updated js-yaml dependency for vulnerability fixes (Related to issue https://github.com/splitio/javascript-client/issues/913). diff --git a/package-lock.json b/package-lock.json index d56e827f5..e82bda8fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,17 +1,17 @@ { "name": "@splitsoftware/splitio", - "version": "11.10.1", + "version": "11.11.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@splitsoftware/splitio", - "version": "11.10.1", + "version": "11.11.0", "license": "Apache-2.0", "dependencies": { - "@splitsoftware/splitio-commons": "2.11.0", + "@splitsoftware/splitio-commons": "2.12.0", "bloom-filters": "^3.0.4", - "ioredis": "^4.28.0", + "ioredis": "^4.28.0 || ^5.0.0", "js-yaml": "^4.1.1", "node-fetch": "^2.7.0", "tslib": "^2.3.1", @@ -346,16 +346,16 @@ "dev": true }, "node_modules/@splitsoftware/splitio-commons": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@splitsoftware/splitio-commons/-/splitio-commons-2.11.0.tgz", - "integrity": "sha512-/cY9V2CHG2EnOAJp3vVWcs+ZqJ3zqEKHdKX115cK6zHKRMNDXODuPQSX7CIkuCLr6C0kQMQuBnXwcaf5C+cO1A==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/@splitsoftware/splitio-commons/-/splitio-commons-2.12.0.tgz", + "integrity": "sha512-RN6CCeTZHV0oHTudQd+VVqVnJ6vUDgo95RUN4Lez2UM5Z/YVz9MQxtRoHcLYwCQEDf60yoTMB6bwHd8WlamgkQ==", "license": "Apache-2.0", "dependencies": { "@types/ioredis": "^4.28.0", "tslib": "^2.3.1" }, "peerDependencies": { - "ioredis": "^4.28.0" + "ioredis": "^4.28.0 || ^5.0.0" }, "peerDependenciesMeta": { "ioredis": { @@ -418,6 +418,7 @@ "version": "4.28.10", "resolved": "https://registry.npmjs.org/@types/ioredis/-/ioredis-4.28.10.tgz", "integrity": "sha512-69LyhUgrXdgcNDv7ogs1qXZomnfOEnSmrmMFqKgt1XMJxmoOSG/u3wYy13yACIfKuMJ8IhKgHafDO3sx19zVQQ==", + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -438,7 +439,8 @@ "node_modules/@types/node": { "version": "18.11.7", "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.7.tgz", - "integrity": "sha512-LhFTglglr63mNXUSRYD8A+ZAIu5sFqNJ4Y2fPuY7UlrySJH87rRRlhtVmMHplmfk5WkoJGmDjE9oiTfyX94CpQ==" + "integrity": "sha512-LhFTglglr63mNXUSRYD8A+ZAIu5sFqNJ4Y2fPuY7UlrySJH87rRRlhtVmMHplmfk5WkoJGmDjE9oiTfyX94CpQ==", + "peer": true }, "node_modules/@types/node-fetch": { "version": "2.6.10", @@ -684,6 +686,7 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "dev": true, + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -733,6 +736,7 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -1367,6 +1371,7 @@ "url": "https://github.com/sponsors/ai" } ], + "peer": true, "dependencies": { "caniuse-lite": "^1.0.30001538", "electron-to-chromium": "^1.4.526", @@ -2633,6 +2638,7 @@ "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -3870,6 +3876,7 @@ "version": "4.28.5", "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-4.28.5.tgz", "integrity": "sha512-3GYo0GJtLqgNXj4YhrisLaNNvWSNwSS2wS4OELGfGxH8I69+XfNdnmV1AyN+ZqMh0i7eX+SWjrwFKDBDgfBC1A==", + "peer": true, "dependencies": { "cluster-key-slot": "^1.1.0", "debug": "^4.3.1", @@ -7630,6 +7637,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", "dev": true, + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -7883,6 +7891,7 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", "dev": true, + "peer": true, "dependencies": { "@types/estree": "^1.0.5", "@webassemblyjs/ast": "^1.12.1", @@ -7929,6 +7938,7 @@ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", "dev": true, + "peer": true, "dependencies": { "@discoveryjs/json-ext": "^0.5.0", "@webpack-cli/configtest": "^1.2.0", @@ -8532,9 +8542,9 @@ "dev": true }, "@splitsoftware/splitio-commons": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@splitsoftware/splitio-commons/-/splitio-commons-2.11.0.tgz", - "integrity": "sha512-/cY9V2CHG2EnOAJp3vVWcs+ZqJ3zqEKHdKX115cK6zHKRMNDXODuPQSX7CIkuCLr6C0kQMQuBnXwcaf5C+cO1A==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/@splitsoftware/splitio-commons/-/splitio-commons-2.12.0.tgz", + "integrity": "sha512-RN6CCeTZHV0oHTudQd+VVqVnJ6vUDgo95RUN4Lez2UM5Z/YVz9MQxtRoHcLYwCQEDf60yoTMB6bwHd8WlamgkQ==", "requires": { "@types/ioredis": "^4.28.0", "tslib": "^2.3.1" @@ -8614,7 +8624,8 @@ "@types/node": { "version": "18.11.7", "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.7.tgz", - "integrity": "sha512-LhFTglglr63mNXUSRYD8A+ZAIu5sFqNJ4Y2fPuY7UlrySJH87rRRlhtVmMHplmfk5WkoJGmDjE9oiTfyX94CpQ==" + "integrity": "sha512-LhFTglglr63mNXUSRYD8A+ZAIu5sFqNJ4Y2fPuY7UlrySJH87rRRlhtVmMHplmfk5WkoJGmDjE9oiTfyX94CpQ==", + "peer": true }, "@types/node-fetch": { "version": "2.6.10", @@ -8842,7 +8853,8 @@ "version": "8.10.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true + "dev": true, + "peer": true }, "acorn-import-attributes": { "version": "1.9.5", @@ -8875,6 +8887,7 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "peer": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -9377,6 +9390,7 @@ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.11.tgz", "integrity": "sha512-xn1UXOKUz7DjdGlg9RrUr0GGiWzI97UQJnugHtH0OLDfJB7jMgoIkYvRIEO1l9EeEERVqeqLYOcFBW9ldjypbQ==", "dev": true, + "peer": true, "requires": { "caniuse-lite": "^1.0.30001538", "electron-to-chromium": "^1.4.526", @@ -10342,6 +10356,7 @@ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", "dev": true, + "peer": true, "requires": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -11250,6 +11265,7 @@ "version": "4.28.5", "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-4.28.5.tgz", "integrity": "sha512-3GYo0GJtLqgNXj4YhrisLaNNvWSNwSS2wS4OELGfGxH8I69+XfNdnmV1AyN+ZqMh0i7eX+SWjrwFKDBDgfBC1A==", + "peer": true, "requires": { "cluster-key-slot": "^1.1.0", "debug": "^4.3.1", @@ -14001,7 +14017,8 @@ "version": "4.4.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", - "dev": true + "dev": true, + "peer": true }, "ua-parser-js": { "version": "0.7.33", @@ -14173,6 +14190,7 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", "dev": true, + "peer": true, "requires": { "@types/estree": "^1.0.5", "@webassemblyjs/ast": "^1.12.1", @@ -14222,6 +14240,7 @@ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", "dev": true, + "peer": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", "@webpack-cli/configtest": "^1.2.0", diff --git a/package.json b/package.json index f1c37918b..ec568aa61 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@splitsoftware/splitio", - "version": "11.10.1", + "version": "11.11.0", "description": "Split SDK", "files": [ "README.md", @@ -38,9 +38,9 @@ "node": ">=14.0.0" }, "dependencies": { - "@splitsoftware/splitio-commons": "2.11.0", + "@splitsoftware/splitio-commons": "2.12.0", "bloom-filters": "^3.0.4", - "ioredis": "^4.28.0", + "ioredis": "^4.28.0 || ^5.0.0", "js-yaml": "^4.1.1", "node-fetch": "^2.7.0", "tslib": "^2.3.1", @@ -107,7 +107,10 @@ "test-node-e2e-destroy": "cross-env NODE_ENV=test tape -r ./ts-node.register src/__tests__/destroy/node.spec.js | tap-min", "test-node-e2e-errorCatching": "cross-env NODE_ENV=test tape -r ./ts-node.register src/__tests__/errorCatching/node.spec.js | tap-min", "test-node-e2e-push": "cross-env NODE_ENV=test tape -r ./ts-node.register src/__tests__/push/node.spec.js | tap-min", - "test-node-e2e-redis": "cross-env NODE_ENV=test tape -r ./ts-node.register src/__tests__/consumer/node_redis.spec.js | tap-min", + "test-node-e2e-redis-run": "cross-env NODE_ENV=test tape -r ./ts-node.register src/__tests__/consumer/node_redis.spec.js | tap-min", + "test-node-e2e-redis": "npm run test-node-e2e-redis:v4 && npm run test-node-e2e-redis:v5", + "test-node-e2e-redis:v4": "npm install ioredis@4 --no-save && node -e \"console.log('\\n>> Testing with ioredis', require('./node_modules/ioredis/package.json').version, '\\n')\"&& npm run test-node-e2e-redis-run", + "test-node-e2e-redis:v5": "npm install ioredis@5 --no-save && node -e \"console.log('\\n>> Testing with ioredis', require('./node_modules/ioredis/package.json').version, '\\n')\"&& npm run test-node-e2e-redis-run", "test-ts-decls": "tsc --build ts-tests", "test": "npm run test-node && npm run test-browser", "all": "npm run check && npm run build && npm run test-ts-decls && npm run test", diff --git a/src/settings/defaults/version.js b/src/settings/defaults/version.js index cac57e995..04cd29353 100644 --- a/src/settings/defaults/version.js +++ b/src/settings/defaults/version.js @@ -1 +1 @@ -export const packageVersion = '11.10.1'; +export const packageVersion = '11.11.0';