## Changelog

# 1.2.1

- minor refactoring

# 1.2.0

### Breaking changes

- improved strict mode. Major difference between strict and loose mode.
- improved argument equality checking
- improved Symbol() comparison
- improved Promise comparison
- improved error comparison

## New

- added support for Set and Map iterator comparison in strict mode
- added support for ES6 Class comparison
- added support for Symbol.iterator
- added support for string and arrays iterator comparison in strict mode

### Other changes

- fixed a bug with typed arrays
- fixed a bug with circular references
- minor bug fixes
- file size reduction
- improved performance

# 1.1.0

- added missing support for `Array.prototype.entries` (*ES6 and beyound*)
- improved support for arrows
- improved strict mode
- fix bug with function comparison in strict mode
- fixed bugs related to primitive equality checks in strict mode
- fix loads of other bugs in strict mode
- improved support for weakMap, weakSet
- improved support for Promises
- improved support for numbers
- Generators now 100% supported
- huge refactoring
- huge performance improvements
- loads of new tests
- code size reduction

# 1.0.0

- fixed minor bugs
- tightened up TypeScript
- reduced code size
- improved performance
- added more tests

# 0.7.1

- reduced code size

# 0.7.0

- tighten up strict mode
- fixed bugs
- fixed how two dates are compared
- string objects now follows ES2016. Minor difference between strict and loose mode.
- improved circular references
- fixed issues with WeekSet and WeekMap
- refactoring
- added loads of new tests
- improved code quality
- improved performance
- reduced code size
- updated readme

# 0.6.4

- added changes from 1.0 branch - renamed modules

# 0.6.2

- improved WeekSet and WeekMap support
- better Error equality checking
- improved strict mode
- tons of new tests
- fixed a few bugs
- reduced file size

# 0.6.0

- IMPORTANT! Support for ES2016 added for strict mode. NodeJS doesn't support this, so use Babel or Buble.
- Map() and Set() updated to support ES2016
- RegExp and String equality check now uses ES2016 by default for 'strict' mode
- improved performance
- updated readme

# 0.5.6

- now gives correct results for arrayBuffer equality comparison
- added more tests
- updated readme

# 0.5.5

- TypeScript fixes

# 0.5.3

- reduced size
- fixed bugs with Map() and Set() equality checks
- improved performance
- updated readme

# 0.5.2

- fixed a core bug

# 0.5.1

- added support for `NodeJS 5.12.0+` specific features
- fixed issue with typed arrays
- improved performance for typed array comparison with 9%
- added `Buffer.from` shim for early versions of the `NodeJS 4.x series`
- reduced code size
- updated readme

# 0.5.0

- refactored Buffer(). Now can be used without the new keyword. Use the new Buffer API.
- added shim for new Buffer() API for NodeJS 4.x - 4.5.0.
- removed DEOPT with hidden classes
- fixed bug with typed arrays
- dropped NodeJS 0.12 support
- removed 'match' mode
- huge refactoring

# 0.4.2

- refactoring

# 0.4.0

- handles deep comparison with complex datasets
- better Error equality comparison
- improved Set() and Map() comparison
- improved performance
- reduced code size

# 0.3.3

- improved 'strict' mode. This mode is't NodeJS core assert module compatible anymore, but follows ECMA specs
- added new tests
- code size reduction
- cleanup

# 0.3.2

- reduced code size

# 0.3.1

- reduced code size

# 0.3.0

- reduced code size
- fixed a few bugs
- minor refactoring
- updated readme

# 0.2.8

- BC! Removed browser support.
- removed code size
- minor refactoring

# 0.2.6

- 100% NodeJS core assert module compatible

# 0.2.5

- fixed bug with function comparison
- added more tests

# 0.2.4

- all tests in TypeScript

# 0.2.3

- removed DOM node support

# 0.2.2

- file size reduction

# 0.2.1

- removed various DEOPTS
- added better Error comparison. Now checks if the `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, `SyntaxError`, `TypeError`, or `URIError` object.

# 0.2.0

- fixed isArguments Safari 8.1 browser bug
- added auto fixing of known cross-browser bugs (*IE, Safari and iOS*)

# 0.1.9

- fixed float number issues
- improved typed arrays
- added more tests

# 0.1.8
- minor refactoring

# 0.1.7

- Fixed an issue where Boogy wasn't compatible with NodejS core module - section 7.4 - in loose mode. now
  `boogy(undefined, null)` are returned as true in loose and match mode.
- now uses bit flags for different modes
- fixed an issue with isBuffer detection. No longer Browser compatible

# 0.1.5

- added isNaN method
- minor refactoring
- improved performance
- updated readme

# 0.1.4

- improved Symbol() detection. Added isSymbol() method
- improved NaN comparison and fixed a bug
- fixed minor issues

# 0.1.3

- fixed of compare class works

# 0.1.2

- BC! All modes are now exported as functions, and not as a third param.  This way you can choose on import
- Node modules etc are now suppoted. This module can either be imported as commonJS module or ES

# 0.1.1

- fixed readme

# 0.1.1

- stable to be used in production
- added isBuffer browser support

# 0.0.11

- added support for DOM node comparison in strict mode
- added support for all RegExp types included sticky and unicode.
- added support for generator comparison
- minor rewrite
- updated readme

# 0.0.10

- made it NodejS core module compatible

# 0.0.9

- all tests converted from Tape to Mocha. Tape didn't handle the tests correctly.

# 0.0.8

- fixed issue where `null` isn't equal to `undefined`. Equal to `NodejS` core module.
- fixed issue with isBuffer. This method now returns false if not natively supported.
- improved Symbol() matching
- added more tests
- updated readme

# 0.0.1
- first release