A number of issues with v3.0.0 spotted and fixed by the growing Immutable.js community.
Fixes:
- Indexed and Set constructors no longer accept Objects, an unintended edge case which led to easy to make mistakes.
- Indexed and Set constructors accept Keyed Iterables as lists of [K,V] entries rather than dropping the keys, better mirroring ES6 Map and Set behavior.
- Collection constructors no longer throw when provided null/undefined and instead return empty collections. Better mirroring the behavior of ES6 Map/Set.
- concat accepts arguments of similar type as it's
this
's constructor. Ensures objects passed to concat are not exploded into an array of fields which is almost never intended. - Record equality works as advertised
- Record iteration now includes default fields
- Map iteration no longer incorrectly yield values on ES6 browsers (Chrome canary)
- Implicit
any
removed from TypeScript files - OrderedMap no longer breaks when keys are removed.
- Cursor iterators now reference proper
this
. - Improvements to example code and Readme.