diff --git a/.travis.yml b/.travis.yml index 625c82fb8..a48429109 100644 --- a/.travis.yml +++ b/.travis.yml @@ -43,14 +43,25 @@ stages: jobs: include: - stage: 'Lint markdown files' - language: ruby - rvm: 2.4.1 os: linux + language: generic install: gem install awesome_bot script: - find . -type f -name '*.md' -exec awesome_bot {} \; notifications: email: false + + - stage: 'Lint markdown files' + os: linux + language: generic + before_install: skip + install: + - npm i -g markdown-spellcheck + before_script: + - wget --quiet https://raw.githubusercontent.com/optimizely/mdspell-config/master/.spelling + script: + - mdspell -a -n -r --en-us '**/*.md' + after_success: skip - &integrationtest stage: 'Integration tests' diff --git a/CHANGELOG.md b/CHANGELOG.md index f4d42e18e..234368a6c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -216,7 +216,7 @@ This is the release candidate for the 3.0 SDK, which includes a number of improv * refactor: Performance improvements for JacksonConfigParser ([#209](https://github.com/optimizely/java-sdk/pull/209)) * refactor: typeAudience.combinations will not be string encoded like audience.combinations. To handle this we created a new parsing type TypedAudience. * fix for exact match when dealing with integers and doubles. Created a new Numeric match type. -* make a copy of attributes passed in to avoid any concurrency problems. Addresses GitHub isue in Optimizely Andriod SDK. +* make a copy of attributes passed in to avoid any concurrency problems. Addresses GitHub issue in Optimizely Andriod SDK. * allow single root node for audience.conditions, typedAudience.conditions, and Experiment.audienceCombinations. ## 3.0.0-RC @@ -239,7 +239,7 @@ This is the release candidate for the 3.0 SDK, which includes a number of improv * refactor: Performance improvements for JacksonConfigParser ([#209](https://github.com/optimizely/java-sdk/pull/209)) * refactor: typeAudience.combinations will not be string encoded like audience.combinations. To handle this we created a new parsing type TypedAudience. * fix for exact match when dealing with integers and doubles. Created a new Numeric match type. -* make a copy of attributes passed in to avoid any concurrency problems. Addresses GitHub isue in Optimizely Andriod SDK. +* make a copy of attributes passed in to avoid any concurrency problems. Addresses GitHub issue in Optimizely Andriod SDK. ## 3.0.0-alpha @@ -386,7 +386,7 @@ January 30, 2018 This release adds support for bucketing id (By passing in `$opt_bucketing_id` in the attribute map to override the user id as the bucketing variable. This is useful when wanting a set of users to share the same experience such as two players in a game). -This release also depricates the old notification broadcaster in favor of a notification center that supports a wide range of notifications. The notification listener is now registered for the specific notification type such as ACTIVATE and TRACK. This is accomplished by allowing for a variable argument call to notify (a new var arg method added to the NotificationListener). Specific abstract classes exist for the associated notification type (ActivateNotification and TrackNotification). These abstract classes enforce the strong typing that exists in Java. You may also add custom notification types and fire them through the notification center. The notification center is implemented using this var arg approach in all Optimizely SDKs. +This release also deprecates the old notification broadcaster in favor of a notification center that supports a wide range of notifications. The notification listener is now registered for the specific notification type such as ACTIVATE and TRACK. This is accomplished by allowing for a variable argument call to notify (a new var arg method added to the NotificationListener). Specific abstract classes exist for the associated notification type (ActivateNotification and TrackNotification). These abstract classes enforce the strong typing that exists in Java. You may also add custom notification types and fire them through the notification center. The notification center is implemented using this var arg approach in all Optimizely SDKs. ### New Features diff --git a/core-api/README.md b/core-api/README.md index 73be6ce9d..13504566f 100644 --- a/core-api/README.md +++ b/core-api/README.md @@ -41,7 +41,7 @@ interface is available for handling errors from the SDK without interfering with ### NoOpErrorHandler The [`NoOpErrorHandler`](https://github.com/optimizely/java-sdk/blob/master/core-api/src/main/java/com/optimizely/ab/error/NoOpErrorHandler.java) -is the default `ErrorHandler` implemetation that silently consumes all errors raised from the SDK. +is the default `ErrorHandler` implementation that silently consumes all errors raised from the SDK. ### RaiseExceptionErrorHandler The [`RaiseExceptionErrorHandler`](https://github.com/optimizely/java-sdk/blob/master/core-api/src/main/java/com/optimizely/ab/error/RaiseExceptionErrorHandler.java)