12.0.0 / 2017-08-28
===================

  * Update `should-equal` to 2.x
  * Update entry points to do the same thing (global should entry)

11.2.1 / 2017-03-09
===================

  * Fix `.match(regex)` for not supported cases

11.2.0 / 2017-01-27
===================

  * Added `.only` modifier for `.keys` to check also size
  * Soft deprecate `.enumerable(s)`

11.1.2 / 2016-12-10
===================

  * Added workaround for runtimes where error's stack populated eagerly

11.1.1 / 2016-10-10
===================

  * Update modules

11.1.0 / 2016-08-14
===================

  * Update modules

11.0.0 / 2016-08-10
===================

  * Extracted parts from code for traversing different data types in similar ways.
  This allows for easily extending the library to almost any collection class.
  Now should.js supports `Set`/`Map`/`WeakSet`/`WeakMap` everywhere.
  * `.empty()` now uses new type adaptors
  * Breaking change in `.keys()`/`.key()`: now only checks for passed keys (also uses type adaptors) - it can check for keys in `Map`/`Set` e.g
  * Added `.value(key, value)` to assert if key-value object has such `value` with this `key`
  * Added `.size()` to get size of collection; also works with type adaptors
  * `.containEql` uses type adaptors and can check something contained within a collection or sub-part of a key-value object

10.0.0 / 2016-07-18
===================

  * Possible breaking change/bugfix in should-format when in objects used keys that looks like a numbers

9.0.2 / 2016-06-10
==================

  * Small test fixes for function expressions without names in Chrome

9.0.1 / 2016-06-09
==================

  * Fix browser global export

9.0.0 / 2016-05-30
==================

  * Set should.config values to be more obvious. Pls check brecking changes page for exact values.
  * Add support for SIMD data types.
  * Fixed minor bugs in .eql
  * Allow to show all equality check fails in .eql

8.4.0 / 2016-05-21
==================

  * Add support for Symbols in .eql

8.3.2 / 2016-05-18
==================

  * Fix for `should-equal` to do not call .toString when checking circular usage

8.3.1 / 2016-04-15
==================

  * Fix browser script to again be UMD bundle

8.3.0 / 2016-03-23
==================

  * .true() and .false() can accept optional message to be used in assertion Error
  * Add more useful messages to promise assertions

8.2.2 / 2016-02-09
==================

  * Fix bug with .match when called primitive to match object
  * Various linting issues

8.2.1 / 2016-01-27
==================

  * Fix bug with new option, thanks @VinGarcia

8.2.0 / 2016-01-24
==================

  * Add option to should.equal to treat -0 and +0 as equals

8.1.1 / 2016-01-10
==================

  * Fix browser build to do not loose window.Should

8.1.0 / 2016-01-10
==================

  * Add .Date() assertion to test if given object is Date instance

8.0.2 / 2015-12-18
==================

  * Update should-format to fix bug in formatting arrow functions

8.0.1 / 2015-12-11
==================

  * Fix throwing TypeError in .match

8.0.0 / 2015-12-08
==================

  * Move should-promised to main repo
  * Expose window.should as should function and not a getter

7.1.1 / 2015-10-20
==================

  * Update format package to fix node 0.12 Symbol formatting

7.1.0 / 2015-08-28
==================

  * Added .aboveOrEqual and .belowOrEqual for numbers (<= and >=)
  * Added .oneOf and .equalOneOf to check equality of one of values
  * Added 'browser' field to package.json

7.0.4 / 2015-08-14
==================

  * Missing doc for .deepEqual
  * Fix .match and dependent assertions to check property in object-object matching

7.0.3 / 2015-08-09
==================

  * Add alias .deepEqual for .eql

7.0.2 / 2015-07-09
==================

  * Bug in browser script and build

7.0.1 / 2015-06-18
==================

  * Fixes in should-type for dom nodes, host object and promises

7.0.0 / 2015-06-18
==================

  * Added support to `.eql` es6 set, map and symbol (`should-type`, `should-format`, `should-equal`)
  * **Breaking Change** More accurate work with types (dom nodes, typed-arrays).
  * **Breaking Change** Change result of should-type to be more accurate and consistent.
  * Fixed should-equal options checks
  * Fixed should-format typed arrays (more then 8 bits)
  * Added aliases: .matchEach => .matchSome, .matchAny => .matchEvery (to be similar to array methods). See #65.
  * **Breaking Change (possibly)** .matchEach and .matchAny now uses internally .match. See #65.
  * **Breaking Change** No more getter assertions. No all assertions are functions.
  * **Breaking Change** No more proxy returning, to check property names.
  * **Breaking Change** `should-format` now looks more like chrome developer tools inpections.

6.0.3 / 2015-05-18
==================

  * Replace rest of usage after 6.0.2

6.0.2 / 2015-05-18
==================

  * Replace in all internal assertions `should` usage to non getter form

6.0.1 / 2015-04-15
==================

  * Remove dummy debug messages

6.0.0 / 2015-04-15
==================

  * From .containDeep* removed .indexOf checks for strings, now it is just equality checks (see #55)
  * Fix for .not.throws for generators

5.2.0 / 2015-03-12
==================

 * Added `.matchAny`, like `.matchEach` but with `some` semantics

5.1.0 / 2015-03-05
==================

 * Initial support of es6 generators, iterables, iterators and symbols
 * .throwError now support generator functions
 * Fix bug in .propertyByPath

5.0.1 / 2015-02-21
==================

 * Export utils via should.util

5.0.0 / 2015-02-10
==================

 * Remove old .eql implementation
 * Refactor nested errors
 * Added separate reporting message for false negative results like 10.should.not.equal(10)
 * Make error.message lazy fix old perfomance bottlenecks for constructing messages for big objects
 * Added .propertyWithDescriptor

4.6.5 / 2015-02-05
==================

 * Fix perfomance degradation on large objects

4.6.4 / 2015-02-05
==================

 * Fix end cases for .containDeep and .containDeepOrdered

4.6.3 / 2015-02-01
==================

 * Added small check for .noConflict
 * Fix end cases for .containDeep and .containDeepOrdered

4.6.2 / 2015-01-28
==================

 * Make assertion properties configurable

4.6.1 / 2015-01-18
==================

 * Bump deps
 * Set showDiff only if the same types

4.6.0 / 2015-01-13
==================

 * Wrap everywhere returned assertion with Proxy if available.

4.5.2 / 2015-01-13
==================

 * Fixed null properties in .containDeep and .containDeepOrdered

4.5.1 / 2015-01-13
==================

 * Fixed leaked \_eql

4.5.0 / 2015-01-11
==================

 * Added config flag .useOldDeepEqual to use old .eql implementation

4.4.4 / 2015-01-08
==================

 * Added .enumerables

4.4.3 / 2015-01-08
==================

 * Bump dependencies to get more accurate format of promise
 * Added a lot of jsdocs

4.4.2 / 2014-12-27
==================

 * Remove breaking change with should-equal that check also object prototypes. Instead document how get both behaviours in .eql docs.

4.4.1 / 2014-12-13
==================

 * bump deps

4.4.0 / 2014-12-12
==================

 * assert methods reimplemented via assertion, deepEqual done via should-equal. To avoid possible confusion between should.deepEqual and a.should.eql(b)
 * Possible fix for error tests

4.3.1 / 2014-12-08
==================

 * `.throw()` check if given object is a function

4.3.0 / 2014-11-10
==================

 * Remove node's version of .eql
 * Added reason why .eql failed

4.2.1 / 2014-11-07
==================

 * Move inspection from .formattedObj to be in .getMessage - to make inspection as late as possible.

4.2.0 / 2014-11-06
==================

 * Remove node util.inspect and use instead own inspection module with type detection and browser types compatibility

4.1.0 / 2014-10-19
==================

 * As inspect function was moved to repo, refine how it show Dates (added millis via custom format)
 * Added warnings for potential shoot in the leg: eql non strict and should unwrapping primitive wrappers
 * Added possibility to disable any warnings via environment variable SHOULDJS_WARN and should.warn = false
 * Added new deep equality check function
 * Nested assertions can contribute to parent assertions own messages

4.0.4 / 2014-06-09
==================

 * Make all assertions enumerable in Assertion.prototype

4.0.3 / 2014-06-09
==================

 * Fix wrong/strange behaviour of .containDeep with equal keys. Now it check to contain element once.
 * Added util.formatProp to format properties more accurate

4.0.1 / 2014-06-04
==================

 * Missing name in browser script

4.0.0 / 2014-05-29
==================

 * Breaking change: Move non core assertions out
 * Added casting in properties assertions to String for all property names
 * Added .propertyByPath assertion
 * Breaking change: Remove deprecated .includeEql and .include
 * Breaking change: .containDeep now do not check order for 2 arrays case
 * Added .containDeepOrdered for old .containDeep
 * Added support of array-like objects
 * Added to .throw matching by error properties with .match

3.3.2 / 2014-05-23
==================

 * Fix for should.format

3.3.1 / 2014-04-16
==================

 * Added aliases for es reserved words
 * Fix bug with ownProperty alias
 * Fix bug with not function alias

3.3.0 / 2014-04-07
==================

 * Added .enumerable(name, val)

3.2.0 / 2014-03-29
==================

 * Added first version of .any modifier that affect assertions with multiple parameters
 * .header now have more nice message
 * assertion can now override how to show object

3.1.4 / 2014-03-18
==================

 * .Error now do not throw assertion error for custom errors.

3.1.3 / 2014-02-25
==================

 * Fix TypeError in .containEql

3.1.2 / 2014-01-28
==================

 * Fix for adding .inspect for JQuery object only in case when it is exist

3.1.1 / 2014-01-28
==================

 * Fix for HTMLElement in DOM less environments

3.1.0 / 2014-01-23
==================

 * Added jquery based browser extension

3.0.1 / 2014-01-17
==================

 * Fix: .lengthOf()

3.0.0 / 2014-01-17
==================

 * Split everything to smaller files
 * Added huge extension to .match and .matchEach. Thanks @alsotang for initial code and idea.
 * Added .containDeep and .containEql
 * Separate build for browser and node.js
 * Basic plugin system
 * Breaking change: .Object now do not fail on arrays
 * Breaking change: Additional messages now replaces generated and do not added
 * Breaking change: .keys now check as is - no keys in args means no keys in object
 * Deprecated: assert extension
 * Deprecated: .include and .includeEql
 * Now all assertions define only positive cases, should.js take care about negations and chains

2.1.1 / 2013-12-05
==================

 * Move date formatting out of should.inspect

2.1.0 / 2013-11-11
==================

 * Override .inspect for Date's to convert them to ISOString

2.0.2 / 2013-10-21
==================

 * Add '#of' as getter for chaining.
 * Exclude browser script for .npmignore.

2.0.1 / 2013-10-10
==================

 * Fix wrong path in .npmignore.

2.0.0 / 2013-10-10
==================

 * breaking change: #a now getter like #an. Was replaced with #type(str)
 * breaking change: #empty does not check length for objects. Now it check if object do not have own properties.
 * #properties check if object have some properties
 * util.inspect now exposed as should.inspect
 * assertions for NaN, Infinity, Array, Object, String, Boolean, Number, Error, Function
 * #equal got alias #exactly

1.3.0 / 2013-09-13
==================

 * fix doc for .keys. Closes #108.
 * add #endWith()
 * add .startWith (#119)

1.2.2 / 2013-02-19
==================

  * fix should.be.instanceOf() failure on Date

1.2.1 / 2012-11-02
==================

  * add .showDiff
  * Make instanceOf and throwError be aliased like others [alFReD-NSH]
  * Fix should[.not].exist not having stack trace #84 [alFReD-NSH]

1.2.0 / 2012-09-21
==================

  * Added #approximately(value, delta, description) for doing assertions on results of operations with numbers. [titarenko]

1.1.1 / 2012-09-19
==================

  * add .type for eql()s assert

1.1.0 / 2012-07-30
==================

  * add enclosing of failure message functions. Closes #81
  * add mocha .actual / .expected string support for all assertion values

0.7.0 / 2012-07-17
==================

  * add `.throw(Constructor)` support [snakamura]

0.6.3 / 2012-04-26
==================

  * Added object inclusion support back

0.6.2 / 2012-04-26
==================

  * Added homepage to package.json
  * Fixed .equal() with dates. Closes #63

0.6.1 / 2012-04-10
==================

  * package: add "repository" section [TooTallNate]
  * use valueOf() to get the reference the object [TooTallNate]

0.6.0 / 2012-03-01
==================

  * Added `err.actual` and `err.expected` for .{eql,equal}()
  * Added 'return this;' to 'get json' and 'get html' in order to provide chaining for should.be.json and should.be.html

0.5.1 / 2012-01-13
==================

  * Added better `.json`
  * Added better `.html`

0.5.0 / 2012-01-12
==================

  * Added string matching to `.throw()` [serby]
  * Added regexp matching to `.throw()` [serby]
  * Added `.includeEql()` [RubenVerborgh]
  * Added `.should.be.html`
  * Added `.should.be.json`
  * Added optional description args to most matchers [Mike Swift]

0.4.2 / 2011-12-17
==================

  * Fixed .header() for realzzz

0.4.1 / 2011-12-16
==================

  * Fixed: chain .header() to retain negation

0.4.0 / 2011-12-16
==================

  * Added `.should.throw()`
  * Added `.include()` support for strings
  * Added `.include()` support for arrays
  * Removed `keys()` `.include` modifier support
  * Removed `.object()`
  * Removed `.string()`
  * Removed `.contain()`
  * Removed `.respondTo()` rubyism
  * expresso -> mocha

0.3.2 / 2011-10-24
==================

  * Fixed tests for 0.5.x
  * Fixed sys warning

0.3.1 / 2011-08-22
==================

  * configurable

0.3.0 / 2011-08-20
==================

  * Added assertion for inclusion of an object: `foo.should.include.object({ foo: 'bar' })`

0.2.1 / 2011-05-13
==================

  * Fixed .status(code). Closes #18

0.2.0 / 2011-04-17
==================

  * Added `res.should.have.status(code)` method
  * Added `res.should.have.header(field, val)` method

0.1.0 / 2011-04-06
==================

  * Added `should.exist(obj)` [aseemk]
  * Added `should.not.exist(obj)` [aseemk]

0.0.4 / 2010-11-24
==================

  * Added `.ok` to assert truthfulness
  * Added `.arguments`
  * Fixed double required bug. [thanks dominictarr]

0.0.3 / 2010-11-19
==================

  * Added `true` / `false` assertions

0.0.2 / 2010-11-19
==================

  * Added chaining support

0.0.1 / 2010-11-19
==================

  * Initial release
