react/scripts
Andrew Clark 51c8411d9d
Log a recoverable error whenever hydration fails (#23319)
There are several cases where hydration fails, server-rendered HTML is
discarded, and we fall back to client rendering. Whenever this happens,
we will now log an error with onRecoverableError, with a message
explaining why.

In some of these scenarios, this is not the only recoverable error that
is logged. For example, an error during hydration will cause hydration
to fail, which is itself an error. So we end up logging two separate
errors: the original error, and one that explains why hydration failed.

I've made sure that the original error always gets logged first, to
preserve the causal sequence.

Another thing we could do is aggregate the errors with the Error "cause"
feature and AggregateError. Since these are new-ish features in
JavaScript, we'd need a fallback behavior. I'll leave this for a
follow up.
2022-02-17 15:16:17 -05:00
..
babel Add comment support to `@gate` pragma (#21881) 2021-07-14 10:36:24 -07:00
bench Bump ecstatic from 2.2.1 to 2.2.2 in /scripts/bench (#20468) 2021-06-29 16:53:31 -04:00
circleci Console message fixed for devtools (#23067) 2022-01-05 11:45:45 -05:00
devtools Console message fixed for devtools (#23067) 2022-01-05 11:45:45 -05:00
error-codes Log a recoverable error whenever hydration fails (#23319) 2022-02-17 15:16:17 -05:00
eslint Migrate from CLIEngine to the new ESLint class. (#22756) 2021-11-18 21:12:18 +00:00
eslint-rules Remove unused react-internal/invariant-args ESLint rule. (#22778) 2021-11-16 20:11:20 +00:00
flow React Native raw event EventEmitter - intended for app-specific perf listeners and debugging (#23232) 2022-02-07 18:34:01 -08:00
git Remove leftover env variable logic in pre-commit hook 2015-09-01 14:35:47 -07:00
jest DevTools: Timeline profiler refactor 2022-01-28 13:09:28 -05:00
merge-fork Improve DEV errors if string coercion throws (Temporal.*, Symbol, etc.) (#22064) 2021-09-27 10:05:07 -07:00
perf-counters Drop the year from Facebook copyright headers and the LICENSE file. (#13593) 2018-09-07 15:11:23 -07:00
prettier DevTools: Update named hooks match to use column number also (#21833) 2021-07-08 16:12:22 -04:00
print-warnings Add onRecoverableError option to hydrateRoot, createRoot (#23207) 2022-02-04 07:57:33 -08:00
release Add --no-show-signature to "git show" commands (#23038) 2022-01-11 12:14:08 -05:00
rollup Remove deprecated wildcard folder mapping (#23256) 2022-02-09 11:37:17 -08:00
shared Remove deprecated wildcard folder mapping (#23256) 2022-02-09 11:37:17 -08:00
tasks Migrate from CLIEngine to the new ESLint class. (#22756) 2021-11-18 21:12:18 +00:00
yarn chore: upgrade to jest 24 (#15778) 2019-10-03 22:44:18 +05:30
authors AUTHORS 2013-09-09 23:42:54 -07:00