SIGN IN SIGN UP

Fix: Detect infinite update loops caused by render phase updates (#26625)

This PR contains a regression test and two separate fixes: a targeted
fix, and a more general one that's designed as a last-resort guard
against these types of bugs (both bugs in app code and bugs in React).

I confirmed that each of these fixes separately are sufficient to fix
the regression test I added.

We can't realistically detect all infinite update loop scenarios because
they could be async; even a single microtask can foil our attempts to
detect a cycle. But this improves our strategy for detecting the most
common kind.

See commit messages for more details.
A
Andrew Clark committed
822386f252fd1f0e949efa904a1ed790133329f7
Parent: 80d9a40
Committed by GitHub <noreply@github.com> on 6/27/2023, 5:26:35 PM