From 3cfd31de84c08c3ea9ce039fa3d570a2b6fd4b17 Mon Sep 17 00:00:00 2001 From: Matt Carroll Date: Fri, 17 Apr 2020 13:20:08 -0700 Subject: [PATCH] chore: Prepare for 4.0.0-rc.1 release --- packages/optimizely-sdk/CHANGELOG.MD | 15 ++++++-- .../optimizely-sdk/lib/index.browser.tests.js | 2 +- .../optimizely-sdk/lib/index.node.tests.js | 2 +- .../lib/index.react_native.tests.js | 2 +- .../optimizely-sdk/lib/utils/enums/index.js | 2 +- packages/optimizely-sdk/package-lock.json | 34 +++++++++++-------- packages/optimizely-sdk/package.json | 4 +-- 7 files changed, 38 insertions(+), 23 deletions(-) diff --git a/packages/optimizely-sdk/CHANGELOG.MD b/packages/optimizely-sdk/CHANGELOG.MD index ac763728d..1f3cf1a1a 100644 --- a/packages/optimizely-sdk/CHANGELOG.MD +++ b/packages/optimizely-sdk/CHANGELOG.MD @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [Unreleased] +## [4.0.0-rc.1] - April 17, 2020 + +### New Features +- ES module entry point for the browser - `"module"` property of `package.json` points to `dist/optimizely.browser.es.min.js` ([#445](https://github.com/optimizely/javascript-sdk/pull/445)) + +### Breaking Changes: +- Dropped support for Node.js version <8 ([#456](https://github.com/optimizely/javascript-sdk/pull/456)) + +### Bug fixes +- Node.js datafile manager uses gzip,deflate compression for requests ([#456](https://github.com/optimizely/javascript-sdk/pull/456)) + ## [4.0.0-alpha.1] - March 4, 2020 ### Breaking Changes: @@ -14,11 +25,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Changed functionality of JSON schema validation in all entry points ([442](https://github.com/optimizely/javascript-sdk/pull/442)). - Previously, `skipJSONValidation` flag was used by the user to specify whether the JSON object should be validated. - Now, `skipJSONValidation` has been removed entirely from all entry points. Instead, a user will need to import `jsonSchemaValidator` from `@optimizely/optimizely-sdk/dist/optimizely.json_schema_validator.min.js` and pass it to `createInstance` to perform validation as shown below: - + ```js const optimizelySDK = require('@optimizely/optimizely-sdk'); const jsonSchemaValidator = require('@optimizely/optimizely-sdk/dist/optimizely.json_schema_validator.min'); - + // Require JSON schema validation for the datafile var optimizelyClientInstance = optimizely.createInstance({ datafile: datafile, diff --git a/packages/optimizely-sdk/lib/index.browser.tests.js b/packages/optimizely-sdk/lib/index.browser.tests.js index 20a6aaa1e..9ba9bb829 100644 --- a/packages/optimizely-sdk/lib/index.browser.tests.js +++ b/packages/optimizely-sdk/lib/index.browser.tests.js @@ -145,7 +145,7 @@ describe('javascript-sdk', function() { optlyInstance.onReady().catch(function() {}); assert.instanceOf(optlyInstance, Optimizely); - assert.equal(optlyInstance.clientVersion, '4.0.0-alpha.1'); + assert.equal(optlyInstance.clientVersion, '4.0.0-rc.1'); }); it('should set the JavaScript client engine and version', function() { diff --git a/packages/optimizely-sdk/lib/index.node.tests.js b/packages/optimizely-sdk/lib/index.node.tests.js index 220176be0..ca86b3e22 100644 --- a/packages/optimizely-sdk/lib/index.node.tests.js +++ b/packages/optimizely-sdk/lib/index.node.tests.js @@ -90,7 +90,7 @@ describe('optimizelyFactory', function() { optlyInstance.onReady().catch(function() {}); assert.instanceOf(optlyInstance, Optimizely); - assert.equal(optlyInstance.clientVersion, '4.0.0-alpha.1'); + assert.equal(optlyInstance.clientVersion, '4.0.0-rc.1'); }); describe('event processor configuration', function() { diff --git a/packages/optimizely-sdk/lib/index.react_native.tests.js b/packages/optimizely-sdk/lib/index.react_native.tests.js index 0b9f6b913..b4435f6fd 100644 --- a/packages/optimizely-sdk/lib/index.react_native.tests.js +++ b/packages/optimizely-sdk/lib/index.react_native.tests.js @@ -89,7 +89,7 @@ describe('javascript-sdk/react-native', function() { optlyInstance.onReady().catch(function() {}); assert.instanceOf(optlyInstance, Optimizely); - assert.equal(optlyInstance.clientVersion, '4.0.0-alpha.1'); + assert.equal(optlyInstance.clientVersion, '4.0.0-rc.1'); }); it('should set the React Native JS client engine and javascript SDK version', function() { diff --git a/packages/optimizely-sdk/lib/utils/enums/index.js b/packages/optimizely-sdk/lib/utils/enums/index.js index 0e4286453..0b127c67a 100644 --- a/packages/optimizely-sdk/lib/utils/enums/index.js +++ b/packages/optimizely-sdk/lib/utils/enums/index.js @@ -175,7 +175,7 @@ export var NODE_CLIENT_ENGINE = 'node-sdk'; export var REACT_CLIENT_ENGINE = 'react-sdk'; export var REACT_NATIVE_CLIENT_ENGINE = 'react-native-sdk'; export var REACT_NATIVE_JS_CLIENT_ENGINE = 'react-native-js-sdk'; -export var NODE_CLIENT_VERSION = '4.0.0-alpha.1'; +export var NODE_CLIENT_VERSION = '4.0.0-rc.1'; export var VALID_CLIENT_ENGINES = [ NODE_CLIENT_ENGINE, diff --git a/packages/optimizely-sdk/package-lock.json b/packages/optimizely-sdk/package-lock.json index 19a5734a3..a1f39190c 100644 --- a/packages/optimizely-sdk/package-lock.json +++ b/packages/optimizely-sdk/package-lock.json @@ -1,6 +1,6 @@ { "name": "@optimizely/optimizely-sdk", - "version": "4.0.0-alpha.1", + "version": "4.0.0-rc.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -25,22 +25,13 @@ } }, "@optimizely/js-sdk-datafile-manager": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@optimizely/js-sdk-datafile-manager/-/js-sdk-datafile-manager-0.4.0.tgz", - "integrity": "sha512-olkXopZBaf6CPOfd9AKFEPjJ422S0IRnPa8S7Xx6EVoXYFvi+ButzJLHbHopFnMfAxKYPPs3owAW6V5feGnaVQ==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@optimizely/js-sdk-datafile-manager/-/js-sdk-datafile-manager-0.5.0.tgz", + "integrity": "sha512-ZDov8jphA+Ez+fA0anioA8ooJrraCFbeGm7GejzPTCZPMisNGtchrpdHr9TMd+hld+TOMBZ5NbqfMvvYhbB34A==", "requires": { "@optimizely/js-sdk-logging": "^0.1.0", - "@optimizely/js-sdk-utils": "^0.1.0" - }, - "dependencies": { - "@optimizely/js-sdk-utils": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@optimizely/js-sdk-utils/-/js-sdk-utils-0.1.0.tgz", - "integrity": "sha512-p7499GgVaX94YmkrwOiEtLgxgjXTPbUQsvETaAil5J7zg1TOA4Wl8ClalLSvCh+AKWkxGdkL4/uM/zfbxPSNNw==", - "requires": { - "uuid": "^3.3.2" - } - } + "@optimizely/js-sdk-utils": "^0.2.0", + "decompress-response": "^4.2.1" } }, "@optimizely/js-sdk-event-processor": { @@ -1659,6 +1650,14 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, + "decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "requires": { + "mimic-response": "^2.0.0" + } + }, "deep-eql": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", @@ -4526,6 +4525,11 @@ "mime-db": "~1.33.0" } }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" + }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", diff --git a/packages/optimizely-sdk/package.json b/packages/optimizely-sdk/package.json index 54214a24d..e60fb384c 100644 --- a/packages/optimizely-sdk/package.json +++ b/packages/optimizely-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@optimizely/optimizely-sdk", - "version": "4.0.0-alpha.1", + "version": "4.0.0-rc.1", "description": "JavaScript SDK for Optimizely X Full Stack", "module": "dist/optimizely.browser.es.min.js", "main": "dist/optimizely.node.min.js", @@ -35,7 +35,7 @@ }, "homepage": "https://github.com/optimizely/javascript-sdk/tree/master/packages/optimizely-sdk", "dependencies": { - "@optimizely/js-sdk-datafile-manager": "^0.4.0", + "@optimizely/js-sdk-datafile-manager": "^0.5.0", "@optimizely/js-sdk-event-processor": "^0.4.0", "@optimizely/js-sdk-logging": "^0.1.0", "@optimizely/js-sdk-utils": "^0.2.0",