This release contains an update that allows components and elements to have “identity”. That is, their state can be preserved across updates. Before this point, only the state for the component at the root of an update was preserved. Now though, the state for any component and element with a key that is unique amongst its siblings, will be preserved so long as this is also true for parent elements/components within the scope of the current update. Thus, only when the key of the element or component changes will its state do the same.
In a future update, the default key for all elements and components will be its index with respect to its siblings in the layout. The `IDOM_FEATURE_INDEX_AS_DEFAULT_KEY` feature flag has been introduced to allow users to enable this behavior early.
- add feature flag for default key behavior - 42ee01c
- use unique object instead of index as default key - 5727ab4
- make HookCatcher/StaticEventHandlers testing utils - 1abfd76
- add element and component identity - 5548f02
- minor doc updates - e5511d9
- add tests for callback identity preservation with keys - 72e03ec
- add 'key' to VDOM spec - c3236fe
- Rename validate_serialized_vdom to validate_vdom - d04faf9
- EventHandler should not serialize itself - f7a59f2
- fix docs typos - 42b2e20
- fixes: 331 - add roadmap to docs - 4226c12