# Changelog All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. ### [2.3.10](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.9...v2.3.10) (2021-09-14) ### Misc * **deps:** update ([996e344](https://github.com/SkeLLLa/node-object-hash/commit/996e3441a4560c2f909f8e9e0ef674201a0275c2)) ### [2.3.9](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.8...v2.3.9) (2021-08-18) ### [2.3.8](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.7...v2.3.8) (2021-07-31) ### [2.3.7](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.6...v2.3.7) (2021-06-17) ### Misc * update links ([f48c0c9](https://github.com/SkeLLLa/node-object-hash/commit/f48c0c99c7d9f60b7a75109e72a7d373d3913d1b)) ### [2.3.6](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.5...v2.3.6) (2021-06-17) ### Tests * update jest types ([b1a7774](https://github.com/SkeLLLa/node-object-hash/commit/b1a7774e96d640e9cbce95527c629bdb9ba2d07e)) ### [2.3.5](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.4...v2.3.5) (2021-06-17) ### Misc * **deps:** update ([d16d2b2](https://github.com/SkeLLLa/node-object-hash/commit/d16d2b2ecaa36bdbb3a4c0d238be4dae4bf18222)) ### Bug fixes * revert ts to 4.2 ([6423ea7](https://github.com/SkeLLLa/node-object-hash/commit/6423ea701113f92f9570169c63138dde012f20ed)) ### [2.3.4](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.3...v2.3.4) (2021-06-14) ### [2.3.3](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.2...v2.3.3) (2021-05-29) ### [2.3.2](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.1...v2.3.2) (2021-05-28) ### [2.3.1](https://github.com/SkeLLLa/node-object-hash/compare/v2.3.0...v2.3.1) (2021-02-28) ### Tests * add tests for every possible option ([0fc56f0](https://github.com/SkeLLLa/node-object-hash/commit/0fc56f08bb8d7cadcfed1d136eb3b2f5b89fa8ba)) ## [2.3.0](https://github.com/SkeLLLa/node-object-hash/compare/v2.2.0...v2.3.0) (2021-02-24) ### Features * add sorting option for typed arrays ([28d5344](https://github.com/SkeLLLa/node-object-hash/commit/28d53445d1f59213ac32de77890b0311a0dffe7f)) ### Bug fixes * stringification of typed arrays ([bc1e1a6](https://github.com/SkeLLLa/node-object-hash/commit/bc1e1a6654036935769006df4823cd16a67c0a62)) ## [2.2.0](https://github.com/SkeLLLa/node-object-hash/compare/v2.1.2...v2.2.0) (2021-02-22) ### Features * add bigint support ([544d97e](https://github.com/SkeLLLa/node-object-hash/commit/544d97e9712961effae0a6940357bb1f8b9adcc6)) ### Bug fixes * coerce option for bigint ([ca2f87c](https://github.com/SkeLLLa/node-object-hash/commit/ca2f87c7af8270ec5ce89de1bb166257000ffca1)) * typo in doc ([d9d7e24](https://github.com/SkeLLLa/node-object-hash/commit/d9d7e24f2b45e5b14c92a01da648f6ad9daf8427)) * **typos:** fix typos in test and contributing.md ([2ee3ddd](https://github.com/SkeLLLa/node-object-hash/commit/2ee3ddde2cd062844b2d3829f13647bf78b88eb7)) ### [2.1.2](https://github.com/SkeLLLa/node-object-hash/compare/v2.1.1...v2.1.2) (2021-01-29) ### [2.1.1](https://github.com/SkeLLLa/node-object-hash/compare/v2.1.0...v2.1.1) (2021-01-29) ## 2.1.0 (2021-01-27) ### Features - added warnings to eslint errors ([422c893](https://github.com/SkeLLLa/node-object-hash/commit/422c8932e8ad140553259e9e49555f7ddfef4db1)) - fixed eslint errors ([e9245f7](https://github.com/SkeLLLa/node-object-hash/commit/e9245f7aa3aa14238fbb62d97dacdcc414ec0f40)) - fixed npm script issue ([0bf8c17](https://github.com/SkeLLLa/node-object-hash/commit/0bf8c175ae058bbc442628e953ff577be500d865)) - updated typescript, migrated to tslint ([3a40fcc](https://github.com/SkeLLLa/node-object-hash/commit/3a40fccbe03f265b8452b59ac1434cb1b0ceb6a3)) ### Bug fixes - remove unnecessary checks ([1bbad3a](https://github.com/SkeLLLa/node-object-hash/commit/1bbad3a2f6dc1dd28ed48ab2ca065b878b450f53)) - **lint:** fix eslint ([caeac70](https://github.com/SkeLLLa/node-object-hash/commit/caeac700031c7637448e4d76f2d2fe9276df2b01)) - **types:** fix encoding type ([cdc6958](https://github.com/SkeLLLa/node-object-hash/commit/cdc69588b781095764d574b6f14e00b2609ff4e5)) - improve checking of Hashable applicant ([3856207](https://github.com/SkeLLLa/node-object-hash/commit/38562077f9465e1aa871e607fd13de861f10582d)) ### Misc - **deps:** bump deps ([a370ea2](https://github.com/SkeLLLa/node-object-hash/commit/a370ea2bf9b89b94063d5fb3e584da20dd0eb855)) - **pj:** add prettier to docs ([77b6001](https://github.com/SkeLLLa/node-object-hash/commit/77b6001674284fc613e95fd44cddb9aec143aeb5)) - **pj:** update scripts ([dd8c778](https://github.com/SkeLLLa/node-object-hash/commit/dd8c778301899e41dacb73f83426a733bb327dda)) ## [2.0.0](https://gitlab.com/m03geek/node-object-hash/compare/v2.0.0-rc.1...v2.0.0) (2019-09-07) ## [2.0.0-rc.1](https://gitlab.com/m03geek/node-object-hash/compare/v2.0.0-rc.0...v2.0.0-rc.1) (2019-09-03) ## [2.0.0-rc.0](https://gitlab.com/m03geek/node-object-hash/compare/v1.4.2...v2.0.0-rc.0) (2019-09-03) ### ⚠ BREAKING CHANGES - Library rewritten in typescript that could cause some side-effects, but it should not. - With `coerce=false` `Set`s will no longer generate the same hashes as `Array`s. In order to restore previous behavior set `coerce.set=true`. - With `coerce=false` `Symbol`s will generate hash based on symbol `.toString` value. That's useful for `Symbol.for('smth')`. If `coerce.symbol=true` all `Symbols`s will have equal hashes. TLDR; If you use library with `Set`s or `Symbol`s with `coerce=false` in order to keep hashes the same as in `v1.X.X` you should use following constructor: ``` const hasher = require('node-object-hash')({coerce: {set: true, symbol: true}}) ``` - Object sorter sources moved to `dist` directory. If you required it directly via `require('node-object-hash/objectSorter')` you should change it to require('node-object-hash/dist/objectSorter'). - Removed old `v0` version from code. - Changed license to MIT. ### Bug Fixes - **hasher:** fix options ([05241ca](https://gitlab.com/m03geek/node-object-hash/commit/05241ca)) ### Features - major refactor ([450471e](https://gitlab.com/m03geek/node-object-hash/commit/450471e)) - New granular options. Now you can specify what types need to be sorted or coerced. - Add new `trim` option. It can be used to remove unncecessary spaces in `string`s or `function` bodies. - Library rewritten to typescript, so it may have better ts compatibility. ## [1.4.X](https://gitlab.com/m03geek/node-object-hash/compare/v1.3.0...v1.4.2) ### Features - Add support for objects without constructor #11 [PR @futpib](https://gitlab.com/m03geek/node-object-hash/pull/12) - Simplify eslint rules, update codestyle ### Fixes - Fix npm links issues in readme - Update dev dependencies ## [1.3.X](https://gitlab.com/m03geek/node-object-hash/compare/v1.2.0...v1.3.0) ### Features - Add definition types to support typescript - Add >=node-8.0.0 support in tests. ## [1.2.X](https://gitlab.com/m03geek/node-object-hash/compare/v1.1.6...v1.2.0) ### Features - Added typed arrays support - Added primitive type constructors support - Add more docs about type mapping and type coercion ## [1.1.X](https://gitlab.com/m03geek/node-object-hash/compare/v1.0.3..v1.1.6) ### Features Mainly all changes affected codestyle and documentation to provide better experience using this library. There are no changes that should affect functionality. - Renamed `sortObject` function to `sort` (old one is still present in code for backward compatibility). - Performed some refactoring for better codestyle and documentation. - Old version (`0.X.X`) moved to subfolder (`./v0`). - Advanced API reference added: [link](API.md). ## [1.0.0](https://gitlab.com/m03geek/node-object-hash/compare/v0.1.0...v1.0.3) - Sorting mechanism rewritten form ES6 Maps to simple arrays (add <=node-4.0.0 support) - Performance optimization (~2 times faster than 0.x.x) - API changes: - Now module returns 'constructor' function, where you can set default parameters: `var objectHash = require('node-object-hash')(options);` In case if you still need an old 0.x.x version it's available in `hash.js` file.