Releases: optimizely/javascript-sdk
Releases · optimizely/javascript-sdk
Release 4.1.0-beta
[4.1.0-beta] - June 16, 2020
New Features
- Added support for JSON feature variables: new methods
getFeatureVariableJsonandgetAllFeatureVariables(#467, #470) - Added support for authenticated datafiles when running in Node.js. Pass
datafileAccessTokenwithindatafileOptionsto request an authenticated datafile using the token (#498, #502):const optimizelySDK = require('@optimizely/optimizely-sdk'); var optimizelyClientInstance = optimizely.createInstance({ sdkKey: '<Your SDK key>', datafileOptions: { datafileAccessToken: '<Your datafile access token>', } });
Bug fixes
- Fixed audience evaluation log level: changed from
INFOtoDEBUG(#496)
Release 4.0.0
[4.0.0] - April 30, 2020
New Features
- Removed lodash dependency
- ES module entry point for the browser -
"module"property ofpackage.jsonpoints todist/optimizely.browser.es.min.js(#445)
Breaking Changes
- Removed
Promisepolyfill from browser entry point (417). - Changed functionality of JSON schema validation in all entry points (442).
- Previously,
skipJSONValidationflag was used by the user to specify whether the JSON object should be validated. - Now,
skipJSONValidationhas been removed entirely from all entry points. Instead, a user will need to importjsonSchemaValidatorfrom@optimizely/optimizely-sdk/dist/optimizely.json_schema_validator.min.jsand pass it tocreateInstanceto perform validation as shown below:
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, jsonSchemaValidator: jsonSchemaValidator, });
- Previously,
- Dropped support for Node.js version <8 (#456)
Bug fixes
Release 4.0.0-rc.2
[4.0.0-rc.2] - April 24, 2020
Bug fixes
- Allow multiple instances to be created from the same datafile object (#462)
Release 4.0.0-rc.1
[4.0.0-rc.1] - April 17, 2020
New Features
- ES module entry point for the browser -
"module"property ofpackage.jsonpoints todist/optimizely.browser.es.min.js(#445)
Breaking Changes:
- Dropped support for Node.js version <8 (#456)
Bug fixes
- Node.js datafile manager uses gzip,deflate compression for requests (#456)
Release 4.0.0-alpha.1
[4.0.0-alpha.1] - April 2, 2020
Breaking Changes:
- Removed
Promisepolyfill from browser entry point (417)
Release 3.6.0-alpha.1
[3.6.0-alpha.1] - March 4, 2020
New Features
- Changed
track()to log a warning instead of an error when the event isn't in the datafile (#418)
Release 3.5.0
Release 3.4.1
[3.4.1] - January 28th, 2020
Bug fixes
- Added
getOptimizelyConfigand related types to TypeScript type definitions(#390).
Release 3.4.0
[3.4.0] - January 21th, 2020
Bug fixes
- Fixed incorrect payload for decision notification triggered by calling getVariation on a feature test in a mutex group(#375)
New Features
- Added a new API to get project configuration static data.
- Call
getOptimizelyConfig()to get a snapshot of project configuration static data. - It returns an
OptimizelyConfiginstance which includes a datafile revision number, all experiments, and feature flags mapped by their key values. - Added caching for
getOptimizelyConfig-OptimizelyConfigobject will be cached and reused for the lifetime of the datafile. - For details, refer to our documentation page: https://docs.developers.optimizely.com/full-stack/docs/optimizelyconfig-javascript-node.
- Call
Removed Features
- Removed support for
'launched'experiment status.- Previously, experiments with status
'running'or'launched'would return non-nullvariations fromactivateandgetVariation, and generate impression events fromactivate. - Now, only
'running'experiments will return non-nullvariations and generate impressions.
- Previously, experiments with status
Release 3.4.0-beta
[3.4.0-beta] - December 18th, 2019
Bug fixes
- Fixed incorrect payload for decision notification triggered by calling getVariation on a feature test in a mutex group(#375)
New Features
- Added a new API to get a project configuration static data.
- Call
getOptimizelyConfig()to get a snapshot copy of project configuration static data. - It returns an
OptimizelyConfiginstance which includes a datafile revision number, all experiments, and feature flags mapped by their key values. - For details, refer to a documention page: https://docs.developers.optimizely.com/full-stack/docs/optimizelyconfig-javascript-node
- Call