Releases: immutable-js/immutable-js
Releases · immutable-js/immutable-js
2.0.17
2.0.16
Breaking Changes:
- Sequence's
keys
,values
,entries
andfromEntries
renamed tokeySeq
,valueSeq
,entrySeq
andfromEntrySeq
respectively.
Features Added:
- Sets can now contain Collections and JS Objects
- Maps can now use Collections and JS Objects as keys
- ES6 Iteration methods,
keys
,values
andentries
, added to all concrete collections. - concrete collections can be used directly in ES6 for-of loops
- Vector iterator follows ES6 spec: dense iteration but adds an optional param to get sparse iteration.
- Improved performance of Vector iteration and folding.
Bugs Fixed:
- IE8 no longer complains about "delete" used as a method
- Cursor access and sequence methods now always return Cursors.
2.0.15
- Source used by node is now not-minified
withMutations
and all complex mutation methods implemented with it (such asmerge
), now returnthis
when they result in a no-op.- Fixed bug where a Map key could be incorrectly dropped.
- Cursors now behave as Sequences and share more of the Map API
- Clarify API of
update
andupdateIn
2.0.12
- Fix warnings with node v0.10
- Fix issue with case-sensitive file systems
- Significant performance improvements to Map
- Bug fixes:
- Deleting key from map can result in incorrect result
- Deleting key from map can result in thrown error
- Map iteration was returning incorrect value
- Map key comparison was incorrect for complex keys (e.g.
NaN
)
2.0.11
2.0.10
- Cursors - Alpha support. Please provide feedback!
rest
andbutLast
methods.- Jasmine-check tests - Yay robust!
- API Changes:
- updateIn now creates empty Maps for missing keys, previously it simply performed no update.
- Fixed bugs:
- Map inserts with colliding hashes was causing a stack overflow.
- Unshift >32 elements caused structural failure.
- Slicing a Range could result in incorrect return value.
- updateIn and getIn with empty array would throw, now it correctly applys the change to the root element.