Releases: lukeed/dequal
v2.0.3
Patches
- Add
"types"conditions for TypeScript's "nodenext" resolver (#20): f99ec70
Thank you @willstott101~!
Full Changelog: v2.0.2...v2.0.3
v2.0.2
v2.0.1
v2.0.0
Breaking
-
Migrated from
defaultto named export: 88f7ec5ESM/TypeScript
- import dequal from 'dequal'; + import { dequal } from 'dequal';
CommonJS
- const dequal = require('dequal'); + const { dequal } = require('dequal');
-
Dropped Internet Explorer support
If IE9+ support is still needed, please use the newdequal/liteentry (see below).
Thedequal/litecode is identical to[email protected].
Features
-
Added
ArrayBufferandTypeArraysupport todequalentry: cf14422 -
Added
MapandSetsupport todequalentry: ef34745, 0f081ab
Set values, Map values, and Map keys use deep value equality.Example
const foo = new Map([ [{ abc: 123 }, 'value'] ]); const bar = new Map([ [{ abc: 123 }, 'value'] ]);
With referential equality,
fooandbarare not equal. Even though they look identical, their{ abc: 123 }key is not a shared reference. However, with value equality,fooandbarare equal. This is because their{ abc: 123 }key holds the same value –– this follows howdequalanddequal/litecompare any other object. -
Added native ESM support via
exportsmapping: 3533248
Allows for Node.jsimportstatements to work within native ESM resolvers. -
Added
dequal/litemode: 81075b1
Preserves[email protected]behaviors, allowing opt-in, continued IE support.
Unlike the primarydequaloffering, this mode does not & will not support Maps, Sets, TypedArray, etc.
Chores
- (readme): Add documentation for "modes" with table comparison: 00c7428..f5210c6, 92e9c7e
- (action) Update CI config (paths, branches, ignores): 0b3e650, 154af6f, 35192d7
- (bench) Update
lodashversion (#10): a255871 - (bench) Refactor and update bench runner for multiple fixtures: 901deab, 8b14a8a
- (bench) Update benchmark results: b971b41
- (tests) Update
uvuversion: b3cfc11