|
Repo Added
|
Files
24
|
Badge
README BADGES
|
push
github
forwardport from v10.x (#5122) * Fix hydrate error recovery with null excess DOM children (#5112) (cherry picked from commit 82ed24ef6) * perf(hooks): avoid redundant allocations and writes in SCU and diffed (#5115) (cherry picked from commit 6aced2101) * Fix memory leak hotspots (#5116) - render: clear the root Fragment's props.children after commit so replaced vnode generations are not retained - unmount: clear component._globalContext with the other component references (cherry picked from commit bd0302ddc) * Flush subtree effects (#5055) (cherry picked from commit d9e898430) * Fix useId stability across async Suspense (#5108) Assisted-By: devx/1b997072-d89c-4f6a-a18f-9525b3ef7a9e (cherry picked from commit 67f02906e) * Fix error recovery for partially rendered subtrees (#5120) When a component throws after `diffChildren()` has already started, its `newVNode._children` may contain partially mounted children. The error recovery path always replaced those children with `oldVNode._children`, which can be `undefined` during initial mount. That loses the partially rendered subtree, so children that queued updates are not unmounted and keep their _parentDom. A later queued update can then call `getDomSibling()` through an ancestor whose `_children` is undefined and crash. Only restore old children when the new vnode has no children yet, and discard commit/ref queue entries produced by the failed partial render so lifecycles from the aborted subtree are not committed. (cherry picked from commit 1a3b8b56b)
576 of 594 branches covered (96.97%)
24 of 24 new or added lines in 2 files covered. (100.0%)
1 existing line in 1 file now uncovered.2154 of 2187 relevant lines covered (98.49%)
810.26 hits per line
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
|---|