Граф коммитов

112 Коммитов

Автор SHA1 Сообщение Дата
Daniel Sainati 974f0a3281 pre-suppress this typing errors ahead of 154
Summary:
This pre-suppresses the 154 error diff ahead of its release, since it is large.

Changelog: [Internal]

Reviewed By: samwgoldman

Differential Revision: D29065246

fbshipit-source-id: f418041305a46df410dcbe3d9a4db81a61ac7014
2021-06-11 14:31:41 -07:00
Daniel Sainati 74d5d03dbd pre-suppress Flow errors in xplat ahead of 153 release
Summary:
This pre-suppresses the 153 error diff ahead of its release, since it is large.

Changelog: [Internal]

Reviewed By: mroch

Differential Revision: D28754374

fbshipit-source-id: 1806f53bc7d804644d434583a2dcd6da63d00328
2021-06-01 09:01:26 -07:00
Tim Yung ede74e5936 RN: Cleanup `ExtendedError` Type
Summary:
Cleans up the `ExtendedError` internal type and moves it into a separate module instead of burying it in `parseErrorStack.js`.

Also, this resolves some unnecessary Flow type suppressions.

Changelog:
[Internal]

Reviewed By: GijsWeterings

Differential Revision: D28470299

fbshipit-source-id: 04093243f06f67f41567270ef9778f01c7549b05
2021-05-19 12:30:41 -07:00
Rubén Norte 8abe737068 Centralize public access to LogBox in LogBox module
Summary:
Some components are using `LogBoxData` directly, forcing logs to be shown on the screen even when LogBox is uninstalled. This changes all accesses to `LogBoxData` to go through `LogBox` so `uninstall` is used correctly.

It also changes when LogBox is installed, moving it from `AppContainer` to `InitializeCore` (which happens earlier) so we can capture more logs in LogBox.

Changelog: [General][Changed] Initialized LogBox earlier and centralized access in LogBox module

Reviewed By: rickhanlonii

Differential Revision: D27999361

fbshipit-source-id: 1115ef6b71e08cc33743d205da0064fbe9a74a0e
2021-05-04 10:58:24 -07:00
Luna Wei bac2c2c801 Update FlowFixMes to use error codes in react-native-github
Summary:
Changelog:
[Internal] - Add error codes to existing FlowFixMe's

Reviewed By: kacieb

Differential Revision: D27445689

fbshipit-source-id: 2b19692e1cb822ab6785efcc5f93ee33e7dce1e5
2021-03-31 18:21:47 -07:00
Tim Yung 88a41f180c LogBox: Intelligently Un-Collapse Stack Frames
Summary:
Tweaks LogBox so that if all stack frames are collapsed, start off without collapsing any of them.

It saves developers from one extra interaction to make the LogBox actually useful for errors where every frame is ignored.

Changelog:
[General][Changed] - LogBox will not initially collapse stack frames if every frame would be collapsed.

Differential Revision: D26266195

fbshipit-source-id: dcdbe0834da5fc3a0bf49fb7857de30dd7e4b8cb
2021-02-08 17:17:57 -08:00
Micha Reiser 93377ff508 Remove "use strict" directive from ES Modules
Summary:
ES Modules implicitly enable strict mode. Adding the "use strict" directive is, therefore, not required.

This diff removes all "use strict" directives from ES modules.

Changelog:

[Internal]

Reviewed By: motiz88

Differential Revision: D26172715

fbshipit-source-id: 57957bcbb672c4c3e62b1db633cf425c1c9d6430
2021-02-02 11:12:56 -08:00
Rick Hanlon 87b91c057c Clean up eager component stack regexes
Summary:
Clean up from a previous diff.

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D23475250

fbshipit-source-id: 3f390134e684bbe95b584dc01b8272a29cecc0af
2020-09-02 10:01:13 -07:00
Tim Yung 9c9e677918 RN: Remove `react-animated` Legacy Package
Summary:
Removes the legacy `react-animated` package configuration and collapses the `Animated/src/` directory into `Animated/`.

Also, reconfigures all references to `Animated/src/` to just be `Animated/`.

Changelog:
[Internal]

Reviewed By: cpojer

Differential Revision: D22450848

fbshipit-source-id: 9fd4861e9f357d817d82e9fec71967a2936a3830
2020-08-25 14:15:35 -07:00
Rick Hanlon abba44de1e Re-land React Sync b5c6dd2...a437f3ff3
Summary:
This is attempt 3 of upgrading React for React Native.

Changelog: [Internal]

Reviewed By: gaearon

Differential Revision: D23162240

fbshipit-source-id: b1f2659481e9f13df8683a34178a46dd64373bf7
2020-08-17 11:49:03 -07:00
Rick Hanlon 499b021b78 Backout React Sync again
Summary:
Revert the react sync.

Changelog: [Internal]

Reviewed By: kacieb

Differential Revision: D22994588

fbshipit-source-id: 9662723839389465615bff2fdcf2759fb85bcb75
2020-08-06 23:44:08 -07:00
Rick Hanlon d0e710bfb3 Re-land React Native sync for revisions b5c6dd2...e67a6b160
Summary:
Re-land of , with the following additional changes:
- **[e67a6b160](https://github.com/facebook/react/commit/e67a6b160 )**: Fix runtime error that happens if a passive destroy function throws within an unmounted tree (#19543) //<Brian Vaughn>//
- **[5cff77550](https://github.com/facebook/react/commit/5cff77550 )**: [Scheduler] Get current time from performance.now in non-DOM environments (#19532) //<Emilis Baliukonis>//
- **[e9721e14e](https://github.com/facebook/react/commit/e9721e14e )**: Remove onScroll bubbling flag (#19535) //<Dan Abramov>//
- **[b61174fb7](https://github.com/facebook/react/commit/b61174fb7 )**: Remove the deprecated React Flare event system (#19520) //<Dominic Gannaway>//

Changelog: [internal]

Reviewed By: lunaruan

Differential Revision: D22961478

fbshipit-source-id: 2df73038dc2424cf8e1d44cc76dba70203253f40
2020-08-05 20:13:12 -07:00
Rick Hanlon 4cdb1951b4 Back out ""React Native sync for revisions b5c6dd2...a437f3ff3""
Summary:
Original commit changeset: c3c146b87fa5

Changelog: [Internal]

Reviewed By: makovkastar

Differential Revision: D22949053

fbshipit-source-id: 746719e44cd5d960dc14d7398f093a288ab61d88
2020-08-05 10:29:10 -07:00
Rick Hanlon b6ba6f5808 "React Native sync for revisions b5c6dd2...a437f3ff3"
Summary:
# Please include the following changelog as your Diff Summary:
This sync includes the following changes:
- **[a437f3ff3](https://github.com/facebook/react/commit/a437f3ff3 )**: Use RN fork in default branch of feature flags (#19522) //<Ricky>//
- **[86314d5b4](https://github.com/facebook/react/commit/86314d5b4 )**: Turn off new component stacks for React Native (#19521) //<Ricky>//
- **[5f1890f12](https://github.com/facebook/react/commit/5f1890f12 )**: Bugfix: Don't unmount siblings of deleted node (#19516) //<Andrew Clark>//
- **[93a0c2830](https://github.com/facebook/react/commit/93a0c2830 )**: Add static version of Passive subtree tag (#19510) //<Andrew Clark>//
- **[3d0895557](https://github.com/facebook/react/commit/3d0895557 )**: Disable onScroll bubbling statically except for WWW (#19503) //<Dan Abramov>//
- **[332ecefac](https://github.com/facebook/react/commit/332ecefac )**: Revert "Statically enable enableFilterEmptyStringAttributesDOM (#19502)" (#19504) //<Dan Abramov>//
- **[815ee89bf](https://github.com/facebook/react/commit/815ee89bf )**: Statically enable enableFilterEmptyStringAttributesDOM (#19502) //<Dan Abramov>//
- **[ede917064](https://github.com/facebook/react/commit/ede917064 )**: Move passive logic out of layout phase (#19500) //<Andrew Clark>//
- **[6ef997b53](https://github.com/facebook/react/commit/6ef997b53 )**: Check for passive effects on the root fiber (#19488) //<Andrew Clark>//
- **[e1f96b82b](https://github.com/facebook/react/commit/e1f96b82b )**: Check PassiveStatic instead of Passive (#19489) //<Andrew Clark>//
- **[eae90cdbe](https://github.com/facebook/react/commit/eae90cdbe )**: Effects list refactor continued: passive effects traversal (#19374) //<Brian Vaughn>//
- **[74cd7e5f1](https://github.com/facebook/react/commit/74cd7e5f1 )**: Use feature flags for React Native in the test renderer (#19486) //<Ricky>//
- **[7c8cc4358](https://github.com/facebook/react/commit/7c8cc4358 )**: Add postTask browser scheduler implementation  (#19479) //<Ricky>//
- **[5227a3786](https://github.com/facebook/react/commit/5227a3786 )**: Add "unstable_" prefix to experimental mutable source APIs (#19472) //<Brian Vaughn>//
- **[52c514627](https://github.com/facebook/react/commit/52c514627 )**: Add SchedulerHostConfig fork for post task (#19470) //<Ricky>//
- **[722bc046d](https://github.com/facebook/react/commit/722bc046d )**: Don't rely on `didTimeout` for SyncBatched (#19469) //<Andrew Clark>//
- **[96ac799ea](https://github.com/facebook/react/commit/96ac799ea )**: Remove `callbackId` field from FiberRoot (#19458) //<Andrew Clark>//
- **[c24b641b7](https://github.com/facebook/react/commit/c24b641b7 )**: Remove `timeout` option from `scheduleCallback` (#19457) //<Andrew Clark>//
- **[06d104e8e](https://github.com/facebook/react/commit/06d104e8e )**: Don't emulate bubbling of the scroll event (#19464) //<Dan Abramov>//
- **[b55f75d0a](https://github.com/facebook/react/commit/b55f75d0a )**: fix issue #19362 + test (#19412) //<Robert Ferentz>//
- **[d93c8faad](https://github.com/facebook/react/commit/d93c8faad )**: Move Persistent Mode Optimization away from firstEffect (#19381) //<Sebastian Markbåge>//
- **[909b612e2](https://github.com/facebook/react/commit/909b612e2 )**: Sync React Native types (#19437) //<Ricky>//
- **[c9749d38e](https://github.com/facebook/react/commit/c9749d38e )**: Generate RN renderers for stable builds (#19421) //<Ricky>//
- **[ab1f51700](https://github.com/facebook/react/commit/ab1f51700 )**: isFBBundle should be true if it's FB for www or FB for RN (#19420) //<Sebastian Markbåge>//
- **[b23ea02be](https://github.com/facebook/react/commit/b23ea02be )**: Track event times per lane on the root (#19387) //<Andrew Clark>//
- **[faa697f4f](https://github.com/facebook/react/commit/faa697f4f )**: Set current update lane priority for user blocking events (#19342) //<Ricky>//
- **[51267c4ac](https://github.com/facebook/react/commit/51267c4ac )**: Sync scheduling profiler marks and debug tracing to new reconciler fork (#19375, #19376, #19396) //<Brian Vaughn>//
- **[aec934af7](https://github.com/facebook/react/commit/aec934af7 )**: Remove form event delegation flag (#19395) //<Dan Abramov>//
- **[9102719ba](https://github.com/facebook/react/commit/9102719ba )**: Tidy up React Scope API (#19352) //<Dominic Gannaway>//
- **[a226b9b44](https://github.com/facebook/react/commit/a226b9b44 )**: Effects list refactor continued: did-bailout flag (#19322) //<Brian Vaughn>//
- **[a89854bc9](https://github.com/facebook/react/commit/a89854bc9 )**: Fix Suspense-wrapping heuristic (and bump version numbers) (#19373) //<Brian Vaughn>//
- **[4961833db](https://github.com/facebook/react/commit/4961833db )**: Don't build shallow renderer UMD bundles //<Dan Abramov>//
- **[392277f0a](https://github.com/facebook/react/commit/392277f0a )**: Revert "Scheduling profiler updates (#19334)" (#19366) //<Dominic Gannaway>//
- **[6d7555b01](https://github.com/facebook/react/commit/6d7555b01 )**: Scheduling profiler updates (#19334) //<Brian Vaughn>//
- **[d1f2143aa](https://github.com/facebook/react/commit/d1f2143aa )**: Use RetryLanes instead of event time (follow up) (#19335) //<Andrew Clark>//
- **[fe19b4247](https://github.com/facebook/react/commit/fe19b4247 )**: eslint-plugin-react-hooks@4.0.8 //<Dan Abramov>//
- **[84479046f](https://github.com/facebook/react/commit/84479046f )**: reference not add to dependencies if only its type is used as typeof arg (#19316) //<Bianca Del Carretto>//
- **[26472c889](https://github.com/facebook/react/commit/26472c889 )**: Bubble onSubmit/onReset behind a feature flag (#19333) //<Dan Abramov>//
- **[61dd00db2](https://github.com/facebook/react/commit/61dd00db2 )**: Extract some of the tidy up changes from 19278 (#19315) //<Dominic Gannaway>//
- **[a2b4db05b](https://github.com/facebook/react/commit/a2b4db05b )**: eslint-plugin-react-hooks@4.0.7 //<Dan Abramov>//
- **[47915fd6e](https://github.com/facebook/react/commit/47915fd6e )**: [ESLint] Fix a bug causing a too coarse dependency suggestion (#19313) //<Dan Abramov>//
- **[970fa122d](https://github.com/facebook/react/commit/970fa122d )**: Use lanes to check if a render is a Suspense retry (#19307) //<Andrew Clark>//
- **[14084be28](https://github.com/facebook/react/commit/14084be28 )**: Refactor algorithm for next Lanes to work on (#19302) //<Andrew Clark>//
- **[965d08cff](https://github.com/facebook/react/commit/965d08cff )**: Add dedicated LanePriority for Suspense retries (#19287) //<Andrew Clark>//
- **[766af5968](https://github.com/facebook/react/commit/766af5968 )**: Move Scope API ref resolution to mutation phase (#19264) //<Dominic Gannaway>//
- **[77e872217](https://github.com/facebook/react/commit/77e872217 )**: Improve readability of isValidElementType (#19251) //<Behnam Mohammadi>//
- **[d87220f21](https://github.com/facebook/react/commit/d87220f21 )**: Add console group methods to dev disabled groups (#19069) //<Giovanni Fumagalli>//
- **[f5ea39c18](https://github.com/facebook/react/commit/f5ea39c18 )**: Modern Event System: make on*Capture events use capture phase (#19221) //<Dominic Gannaway>//
- **[40cddfeeb](https://github.com/facebook/react/commit/40cddfeeb )**: Add user timing marks for scheduling profiler tool (#19223) //<E-Liang Tan>//
- **[6fd432113](https://github.com/facebook/react/commit/6fd432113 )**: eslint-plugin-react-hooks@4.0.6 //<Dan Abramov>//
- **[7c35cb20e](https://github.com/facebook/react/commit/7c35cb20e )**: [ESLint] Handle optional member chains (#19275) //<Dan Abramov>//
- **[dccf541ec](https://github.com/facebook/react/commit/dccf541ec )**: Allow decoupleUpdatePriorityFromScheduler to be set (#19272) //<Ricky>//
- **[7ca1d861e](https://github.com/facebook/react/commit/7ca1d861e )**: [ESLint] Consistently treat optional chaining as regular chaining (#19273) //<Dan Abramov>//
- **[4eb9b1d2b](https://github.com/facebook/react/commit/4eb9b1d2b )**: Refactor createEventHandle signature (#19174) //<Dominic Gannaway>//
- **[91a2e8173](https://github.com/facebook/react/commit/91a2e8173 )**: Decouple update priority tracking from Scheduler package (#19121) //<Ricky>//
- **[0f84b0f02](https://github.com/facebook/react/commit/0f84b0f02 )**: Fix ExhaustiveDeps ESLint rule throwing with optional chaining (#19260) //<Joe Lencioni>//
- **[670c0376e](https://github.com/facebook/react/commit/670c0376e )**: Enable createEventHandle API for wWW test builds (#19262) //<Brian Vaughn>//
- **[9fba65efa](https://github.com/facebook/react/commit/9fba65efa )**: Enable modern event system and delete dead code (#19230) //<Dan Abramov>//
- **[e3f4eb727](https://github.com/facebook/react/commit/e3f4eb727 )**: Fork legacy-events folder into react-dom and react-native (#19228) //<Dan Abramov>//
- **[b231445f9](https://github.com/facebook/react/commit/b231445f9 )**: Move responder tests and remove dead code (#19226) //<Dan Abramov>//
- **[5707eeb2d](https://github.com/facebook/react/commit/5707eeb2d )**: Run ReactBrowserEventEmitter test on bundles (#19225) //<Dan Abramov>//
- **[b2bac7311](https://github.com/facebook/react/commit/b2bac7311 )**: Remove React Flare Keyboard responder (#19222) //<Dominic Gannaway>//
- **[f918b0eb4](https://github.com/facebook/react/commit/f918b0eb4 )**: Fix development mode hang when iframe is removed (#19220) //<Dan Abramov>//
- **[8bff8987e](https://github.com/facebook/react/commit/8bff8987e )**: Don't bailout after Suspending in Legacy Mode (#19216) //<Dan Abramov>//
- **[f4097c1ae](https://github.com/facebook/react/commit/f4097c1ae )**: Added warning to <Context.Provider> in case no value prop is provided (#19054) //<Shailendra Gupta>//
- **[47ff31a77](https://github.com/facebook/react/commit/47ff31a77 )**: Revert "Add regression test for #18497 (#18538)" (#19215) //<Dan Abramov>//
- **[fa32cf299](https://github.com/facebook/react/commit/fa32cf299 )**: Add regression tests where sync render causes later concurrent render to expire soon (#18608) //<jddxf>//
- **[1887c5d94](https://github.com/facebook/react/commit/1887c5d94 )**: eslint-plugin-react-hooks@4.0.5 //<Dan Abramov>//
- **[b0533fe33](https://github.com/facebook/react/commit/b0533fe33 )**: fix(eslint-plugin-react-hooks): Support optional chaining when accessing prototype method inside useCallback and useMemo #19061 (#19062) //<Fred Vollmer>//
- **[e9c1445ba](https://github.com/facebook/react/commit/e9c1445ba )**: Add regression test for #18497 (#18538) //<Sophie Alpert>//
- **[7d0e4150a](https://github.com/facebook/react/commit/7d0e4150a )**: Fix react-runtime `main` field (#19193) //<Christoph Nakazawa>//
- **[ffe516f3b](https://github.com/facebook/react/commit/ffe516f3b )**: use NoTimestamp instead of -1 (#19182) //<Chen Gang>//
- **[1425fcbb8](https://github.com/facebook/react/commit/1425fcbb8 )**: Re-enabled DebugTracing feature for old reconciler fork (#19161) //<Brian Vaughn>//
- **[5b9865690](https://github.com/facebook/react/commit/5b9865690 )**: fix: use define property to overwrite console, close #19099 (#19123) //<Jack Works>//
- **[6ba25b96d](https://github.com/facebook/react/commit/6ba25b96d )**: Bugfix: Legacy Mode + DevTools "force fallback" (#19164) //<Andrew Clark>//
- **[d1d9054e0](https://github.com/facebook/react/commit/d1d9054e0 )**: Revert "Re-enabled DebugTracing feature for old reconciler fork (#19142)" (#19159) //<Luna Ruan>//
- **[090c6ed75](https://github.com/facebook/react/commit/090c6ed75 )**: [eslint-plugin-react-hooks]: handling sparse array when no-inline callback (#19145) //<YeonJuan>//
- **[cc7c1aece](https://github.com/facebook/react/commit/cc7c1aece )**: Re-enabled DebugTracing feature for old reconciler fork (#19142) //<Brian Vaughn>//
- **[30b47103d](https://github.com/facebook/react/commit/30b47103d )**: Fix spelling errors and typos (#19138) //<Ricky>//
- **[655affa30](https://github.com/facebook/react/commit/655affa30 )**: Clarifications //<Rick Hanlon>//
- **[103ed08c4](https://github.com/facebook/react/commit/103ed08c4 )**: Remove shouldDeprioritizeSubtree from host config (#19124) //<Andrew Clark>//
- **[8f05f2bd6](https://github.com/facebook/react/commit/8f05f2bd6 )**: Land Lanes implementation in old fork (#19108) //<Andrew Clark>//
- **[7f28234f8](https://github.com/facebook/react/commit/7f28234f8 )**: Enable component stacks everywhere except RN (#19120) //<Sebastian Markbåge>//
- **[e3ccdf154](https://github.com/facebook/react/commit/e3ccdf154 )**: Remove synamic modern event system flag for FB (#19059) //<Dominic Gannaway>//
- **[4c7036e80](https://github.com/facebook/react/commit/4c7036e80 )**: Bugfix: Infinite loop in beforeblur event (#19053) //<Andrew Clark>//
- **[1d85bb3ce](https://github.com/facebook/react/commit/1d85bb3ce )**: Build FB specific Isomorphic Bundles (#19049) //<Sebastian Markbåge>//
- **[89edb0eae](https://github.com/facebook/react/commit/89edb0eae )**: Enable component stack locations in www (#19047) //<Sebastian Markbåge>//
- **[cb1416817](https://github.com/facebook/react/commit/cb1416817 )**: Remove unnecessary throw catch (#19044) //<Sebastian Markbåge>//
- **[c03b8661a](https://github.com/facebook/react/commit/c03b8661a )**: Upgrade Closure Compiler (#19041) //<Sebastian Markbåge>//
- **[2e7cc949a](https://github.com/facebook/react/commit/2e7cc949a )**: Remove www builds of fetch (#19038) //<Sebastian Markbåge>//
- **[76f157e3d](https://github.com/facebook/react/commit/76f157e3d )**: Add simple Node build (#19022) //<Sebastian Markbåge>//
- **[60afa3c11](https://github.com/facebook/react/commit/60afa3c11 )**: Lint bundles using the bundle config instead of scanning for files (#19025) //<Sebastian Markbåge>//
- **[518ce9c25](https://github.com/facebook/react/commit/518ce9c25 )**: Add Lazy Elements Behind a Flag (#19033) //<Sebastian Markbåge>//
- **[4985bb0a8](https://github.com/facebook/react/commit/4985bb0a8 )**: Rename 17 to 18 in warnings (#19031) //<Sebastian Markbåge>//
- **[86b4070dd](https://github.com/facebook/react/commit/86b4070dd )**: Cleaned up passive effects experimental flags (#19021) //<Brian Vaughn>//
- **[607148673](https://github.com/facebook/react/commit/607148673 )**: Remove ReactComponentTreeHook from internals (#19032) //<Sebastian Markbåge>//
- **[43e59f29d](https://github.com/facebook/react/commit/43e59f29d )**: Delete Entries without Build Output from package.json and the build directory (#19029) //<Sebastian Markbåge>//
- **[0219925e0](https://github.com/facebook/react/commit/0219925e0 )**: Remove regenerator from noop (#19024) //<Sebastian Markbåge>//
- **[c66ac10f4](https://github.com/facebook/react/commit/c66ac10f4 )**: Lint classic www build (#19023) //<Sebastian Markbåge>//
- **[55cb0b7ee](https://github.com/facebook/react/commit/55cb0b7ee )**: Only prepare extra stack frames if needed (#19014) //<Sebastian Markbåge>//
- **[9752d31f1](https://github.com/facebook/react/commit/9752d31f1 )**: Document `additionalHooks` option (#19005) //<Aaron Pettengill>//
- **[b7ff88819](https://github.com/facebook/react/commit/b7ff88819 )**: eslint-plugin-react-hooks@4.0.4 //<Dan Abramov>//
- **[18de3b6e7](https://github.com/facebook/react/commit/18de3b6e7 )**: Bug: Spawning hydration in response to Idle update (#19011) //<Andrew Clark>//
- **[fb735423b](https://github.com/facebook/react/commit/fb735423b )**: Fix rollup validate script (#18900) //<Toru Kobayashi>//
- **[8abc202c7](https://github.com/facebook/react/commit/8abc202c7 )**: [eslint-plugin-react-hooks] Prefer recommended eslint configuration (#18951) //<Julien Deniau>//
- **[4821d609e](https://github.com/facebook/react/commit/4821d609e )**: fix(eslint-plugin-react-hooks): Added matching for nullish coalescing and optional chaining of dependencies, relates to #18985 (#19008) //<Yann アウネ Eves>//
- **[67e130fc6](https://github.com/facebook/react/commit/67e130fc6 )**: eslint-plugin-react-hooks@4.0.3 //<Dan Abramov>//
- **[bb2239dc9](https://github.com/facebook/react/commit/bb2239dc9 )**: Revert "Feature: Add support to `exhaustive-deps` rule for any hook ending with `Effect` (#18580)" (#19004) //<Dan Abramov>//
- **[03e6b8ba2](https://github.com/facebook/react/commit/03e6b8ba2 )**: Make LegacyHidden match semantics of old fork (#18998) //<Andrew Clark>//
- **[3ca1904b3](https://github.com/facebook/react/commit/3ca1904b3 )**: react-refresh@0.8.3 //<Dan Abramov>//
- **[0aa4cc544](https://github.com/facebook/react/commit/0aa4cc544 )**: Resolve an edge case where ref.node can be falsy (#18984) //<yjimk>//
- **[8f4dc3e5d](https://github.com/facebook/react/commit/8f4dc3e5d )**: Warn if MutableSource snapshot is a function (#18933) //<Brian Vaughn>//
- **[142d4f1c0](https://github.com/facebook/react/commit/142d4f1c0 )**: useMutableSource hydration support (#18771) //<Brian Vaughn>//
- **[aefb97e6b](https://github.com/facebook/react/commit/aefb97e6b )**: DevTools: Add root and renderer version to inspected props panel (#18963) //<Brian Vaughn>//
- **[74394aa8c](https://github.com/facebook/react/commit/74394aa8c )**: Add unstable_isNewReconciler to dispatcher (#18975) //<Andrew Clark>//
- **[730ae7afa](https://github.com/facebook/react/commit/730ae7afa )**: Clear fiber.sibling field when clearing nextEffect (#18970) //<Dominic Gannaway>//
- **[4a3f779d6](https://github.com/facebook/react/commit/4a3f779d6 )**: Remove event pooling in the modern system (#18969) //<Dominic Gannaway>//
- **[22f7663f1](https://github.com/facebook/react/commit/22f7663f1 )**: Profiler: Don't count timed out (hidden) subtrees in base duration (#18966) //<Brian Vaughn>//
- **[64f50c667](https://github.com/facebook/react/commit/64f50c667 )**: Remove disableHiddenPropDeprioritization flag (#18964) //<Andrew Clark>//
- **[a30a1c6ef](https://github.com/facebook/react/commit/a30a1c6ef )**: Transfer actualDuration only once for SuspenseList (#18959) //<Sebastian Markbåge>//
- **[8b3b5c352](https://github.com/facebook/react/commit/8b3b5c352 )**: Bugfix: Missing mode check in resetChildLanes (#18961) //<Andrew Clark>//
- **[95ea8ed47](https://github.com/facebook/react/commit/95ea8ed47 )**: LegacyHidden: mode that defers without hiding (#18958) //<Andrew Clark>//
- **[c390ab364](https://github.com/facebook/react/commit/c390ab364 )**: Add test for displayName on React.memo components (#18925) //<Sebastian Silbermann>//
- **[6ed5c2243](https://github.com/facebook/react/commit/6ed5c2243 )**: Add MIT license to use-subscription package (#18927) //<Gabriele Prestifilippo>//
- **[121af3143](https://github.com/facebook/react/commit/121af3143 )**: Update inaccurate mapChildren comment (#18931) //<Ricky Vetter>//
- **[21dc41c32](https://github.com/facebook/react/commit/21dc41c32 )**: Simplify logic for mutable workInProgressSources (#18920) //<Sophie Alpert>//
- **[0fb747f36](https://github.com/facebook/react/commit/0fb747f36 )**: Add LegacyHidden to server renderer (#18919) //<Andrew Clark>//
- **[b4a1a4980](https://github.com/facebook/react/commit/b4a1a4980 )**: Disable <div hidden /> API in old fork, too (#18917) //<Andrew Clark>//
- **[9e5b2c94e](https://github.com/facebook/react/commit/9e5b2c94e )**: Add expando prop to disabledLog function (#18914) //<Brian Vaughn>//
- **[fdb641629](https://github.com/facebook/react/commit/fdb641629 )**: Fix useMutableSource tearing bug (#18912) //<Andrew Clark>//
- **[33589f742](https://github.com/facebook/react/commit/33589f742 )**: useMutableSource: "Entangle" instead of expiring (#18889) //<Andrew Clark>//
- **[43063fd84](https://github.com/facebook/react/commit/43063fd84 )**: eslint-plugin-react-hooks@4.0.2 //<Dan Abramov>//
- **[f6ff4c43d](https://github.com/facebook/react/commit/f6ff4c43d )**: Update changelog //<Dan Abramov>//
- **[487c69384](https://github.com/facebook/react/commit/487c69384 )**: [eslint-plugin-react-hooks] useWithoutEffectSuffix fix (#18902) (#18907) //<Boris Sergeev>//
- **[61f2a560e](https://github.com/facebook/react/commit/61f2a560e )**: Add experimental ReactDOM.createEventHandle (#18756) //<Dominic Gannaway>//
- **[14e554b31](https://github.com/facebook/react/commit/14e554b31 )**: Add missing changelog item //<Dan Abramov>//
- **[80c4dea0d](https://github.com/facebook/react/commit/80c4dea0d )**: Modern Event System: Add scaffolding for createEventHandle (#18898) //<Dominic Gannaway>//
- **[9f396bdd5](https://github.com/facebook/react/commit/9f396bdd5 )**: eslint-plugin-react-hooks@4.0.1 //<Dan Abramov>//
- **[c512aa008](https://github.com/facebook/react/commit/c512aa008 )**: [Blocks] Scaffolding react-fetch + first pass at node implementation (#18863) //<Richard Maisano>//
- **[e936034ee](https://github.com/facebook/react/commit/e936034ee )**: Add item to ESLint Hooks plugin changelog //<Dan Abramov>//
- **[c3ff21e01](https://github.com/facebook/react/commit/c3ff21e01 )**: feat(eslint-plugin-react-hooks): Support ESLint 7.x (#18878) //<Michaël De Boey>//
- **[8b9c4d168](https://github.com/facebook/react/commit/8b9c4d168 )**: Expose LegacyHidden type and disable <div hidden /> API in new fork (#18891) //<Andrew Clark>//
- **[ef0bf8e31](https://github.com/facebook/react/commit/ef0bf8e31 )**: Revert "Hard code enableComponentStacks in www (#18869)" (#18890) //<Dominic Gannaway>//
- **[ddcc69c83](https://github.com/facebook/react/commit/ddcc69c83 )**: Added clear message for functional component starting with lowercase (#18881) //<Rohith Srivathsav>//
- **[539527b64](https://github.com/facebook/react/commit/539527b64 )**: Don't cut off effects at end of list if hydrating (#18872) //<Sebastian Markbåge>//
- **[fd696df47](https://github.com/facebook/react/commit/fd696df47 )**: Hard code enableComponentStacks in www (#18869) //<Sebastian Markbåge>//
- **[6edaf6f76](https://github.com/facebook/react/commit/6edaf6f76 )**: Detect and prevent render starvation, per lane (#18864) //<Andrew Clark>//
- **[df14b5bcc](https://github.com/facebook/react/commit/df14b5bcc )**: add new IDs for each each server renderer instance and prefixes to distinguish between each server render (#18576) //<Luna Ruan>//
- **[fb3f0acad](https://github.com/facebook/react/commit/fb3f0acad )**: Disable Webpack setImmediate polyfill for DevTools (#18860) //<Brian Vaughn>//
- **[edf6eac8a](https://github.com/facebook/react/commit/edf6eac8a )**: Don't cut off the tail of a SuspenseList if hydrating (#18854) //<Sebastian Markbåge>//
- **[55f5cdee0](https://github.com/facebook/react/commit/55f5cdee0 )**: Disable setState before mount in legacy mode (#18851) //<Sebastian Markbåge>//
- **[47ebc90b0](https://github.com/facebook/react/commit/47ebc90b0 )**: Put render phase update change behind a flag (#18850) //<Andrew Clark>//
- **[96f3b7d1c](https://github.com/facebook/react/commit/96f3b7d1c )**: Warn if calling setState outside of render but before commit (#18838) //<Sebastian Markbåge>//
- **[40e602946](https://github.com/facebook/react/commit/40e602946 )**: wrap SuspenseInstanceRetry callback so scheduler waits for it (#18805) //<Fernando Lores>//
- **[3cde22a84](https://github.com/facebook/react/commit/3cde22a84 )**: Experimental test selector API (#18607) //<Brian Vaughn>//
- **[7992ca10d](https://github.com/facebook/react/commit/7992ca10d )**: eslint-plugin-react-hooks: allow OptionalMemberExpression in deps (#18819) (#18820) //<Kevin Lewis>//
- **[fe7163e73](https://github.com/facebook/react/commit/fe7163e73 )**: Add unstable prefix to experimental APIs (#18825) //<Andrew Clark>//
- **[cd4a96035](https://github.com/facebook/react/commit/cd4a96035 )**: Remove old CM exports (#18710) //<Sebastian Markbåge>//
- **[9751935ab](https://github.com/facebook/react/commit/9751935ab )**: Modern Event System: improve dispatching queue (#18799) //<Dominic Gannaway>//
- **[3e13d7098](https://github.com/facebook/react/commit/3e13d7098 )**: [RN] Remove debugging invariant (#18813) //<Dan Abramov>//
- **[d830cd998](https://github.com/facebook/react/commit/d830cd998 )**: [Blocks] Fix stale data on updates (#18810) //<Dan Abramov>//
- **[64d4b8420](https://github.com/facebook/react/commit/64d4b8420 )**: Rename Flight to Transport (#18808) //<Sebastian Markbåge>//
- **[93e078ddf](https://github.com/facebook/react/commit/93e078ddf )**: Initial Lanes implementation (#18796) //<Andrew Clark>//
- **[3c7d52c3d](https://github.com/facebook/react/commit/3c7d52c3d )**: Give unresolved lazy() a name in component stack (#16104) //<Moti Zilberman>//
- **[333deb707](https://github.com/facebook/react/commit/333deb707 )**: Remove hint to post feedback about exhaustive-deps rule (#18712) //<Benedikt Franke>//
- **[aa88589d0](https://github.com/facebook/react/commit/aa88589d0 )**: Refine experimental Scopes API (#18778) //<Dominic Gannaway>//
- **[d804f99b9](https://github.com/facebook/react/commit/d804f99b9 )**: eslint-plugin-react-hooks@4.0.0 //<Dan Abramov>//
- **[4e93b9364](https://github.com/facebook/react/commit/4e93b9364 )**: Add changelog for eslint-plugin-react-hooks (#18801) //<Dan Abramov>//
- **[5ac9ca72d](https://github.com/facebook/react/commit/5ac9ca72d )**: Feature: Add support to `exhaustive-deps` rule for any hook ending with `Effect` (#18580) //<Aaron Pettengill>//
- **[eab94403d](https://github.com/facebook/react/commit/eab94403d )**: Build Flight runtime for WWW (revert part of earlier change) //<Dan Abramov>//
- **[17dcc29cd](https://github.com/facebook/react/commit/17dcc29cd )**: Don't "schedule" discrete work if we're scheduling sync work (#18797) //<Sebastian Markbåge>//
- **[9491f3947](https://github.com/facebook/react/commit/9491f3947 )**: react-refresh@0.8.2 //<Dan Abramov>//
- **[43a1c7275](https://github.com/facebook/react/commit/43a1c7275 )**: Don't build react-data for WWW //<Dan Abramov>//
- **[01914a767](https://github.com/facebook/react/commit/01914a767 )**: Update bundle configs to not build some packages (#18800) //<Dan Abramov>//
- **[21670cf4b](https://github.com/facebook/react/commit/21670cf4b )**: [react-refresh/babel] Always insert registrations after var (#18794) //<Sophie Alpert>//
- **[914b57be2](https://github.com/facebook/react/commit/914b57be2 )**: Move legacy hidden API to new internal Fiber type (#18782) //<Andrew Clark>//
- **[ac533fde3](https://github.com/facebook/react/commit/ac533fde3 )**: Prevent stale legacy root from clearing a container (DRAFT) (#18792) //<Brian Vaughn>//
- **[5b89d353e](https://github.com/facebook/react/commit/5b89d353e )**: Update react-refresh README //<Dan Abramov>//
- **[3a9c37352](https://github.com/facebook/react/commit/3a9c37352 )**: [Blocks] Add preload to fetch (#18785) //<Dan Abramov>//
- **[dd7f0deb9](https://github.com/facebook/react/commit/dd7f0deb9 )**: [Blocks] Use native fetch (#18784) //<Dan Abramov>//
- **[515326753](https://github.com/facebook/react/commit/515326753 )**: [Blocks] Initial implementation of cache and data/fetch (#18774) //<Dan Abramov>//
- **[ea2af878c](https://github.com/facebook/react/commit/ea2af878c )**: Root API should clear non-empty roots before mounting (#18730) //<Brian Vaughn>//
- **[53ce0c345](https://github.com/facebook/react/commit/53ce0c345 )**: Allow flushSync to noop in life cycles but with a warning (#18759) //<Sebastian Markbåge>//
- **[f342a2399](https://github.com/facebook/react/commit/f342a2399 )**: SuspenseList: Reschedule at same priority (#18738) //<Andrew Clark>//
- **[cb7075399](https://github.com/facebook/react/commit/cb7075399 )**: Move hide/unhide logic to Offscreen component //<Andrew Clark>//
- **[cb48f974c](https://github.com/facebook/react/commit/cb48f974c )**: Wrap primary tree in Offscreen fiber type //<Andrew Clark>//
- **[ed01fdacc](https://github.com/facebook/react/commit/ed01fdacc )**: Add Offscreen component type //<Luna Ruan>//
- **[1df756ba2](https://github.com/facebook/react/commit/1df756ba2 )**: Always wrap Suspense children in fragment (#18711) //<Andrew Clark>//
- **[db6513914](https://github.com/facebook/react/commit/db6513914 )**: Make ExpirationTime an opaque type (#18732) //<Andrew Clark>//
- **[4b02b6611](https://github.com/facebook/react/commit/4b02b6611 )**: [ESLint] Extend isHook to recognize those under PascalCase's namespace (#18722) //<Chang Yan>//
- **[30cee2f4c](https://github.com/facebook/react/commit/30cee2f4c )**: Modern Event System: register onMouseEnter for portals (#18720) //<Dominic Gannaway>//
- **[b58dec979](https://github.com/facebook/react/commit/b58dec979 )**: Remove unnecessary stack (#18707) //<Sebastian Markbåge>//
- **[a2fb84beb](https://github.com/facebook/react/commit/a2fb84beb )**: Disable prepareStackTrace while we're generating stacks (#18708) //<Sebastian Markbåge>//
- **[b0cb137bc](https://github.com/facebook/react/commit/b0cb137bc )**: Don't dedupe using the stack (#18693) //<Sebastian Markbåge>//
- **[571f5ad2d](https://github.com/facebook/react/commit/571f5ad2d )**: Temporarily Remove DebugTracing from the New Reconciler (#18697) //<Sebastian Markbåge>//
- **[2325375f4](https://github.com/facebook/react/commit/2325375f4 )**: Nit: add suffix _TIMEOUT consistently in scheduler (#18696) //<Sebastian Markbåge>//
- **[36cab2720](https://github.com/facebook/react/commit/36cab2720 )**: DevTools: Improved "native" component stacks (#18656) //<Brian Vaughn>//
- **[940f48b99](https://github.com/facebook/react/commit/940f48b99 )**: Avoid passing custom stacks to console.error (#18685) //<Sebastian Markbåge>//
- **[ff431b7fc](https://github.com/facebook/react/commit/ff431b7fc )**: Remove ReactDOM.useEvent and associated types+tests (#18689) //<Dominic Gannaway>//
- **[80d39d8b5](https://github.com/facebook/react/commit/80d39d8b5 )**: Remove null sibling (#18687) //<Dominic Gannaway>//
- **[0960b7ba5](https://github.com/facebook/react/commit/0960b7ba5 )**: Upgrade fbjs-scripts (#18684) //<Sebastian Markbåge>//
- **[a152827ef](https://github.com/facebook/react/commit/a152827ef )**: Refine the heuristics around beforeblur/afterblur (#18668) //<Dominic Gannaway>//
- **[96203240d](https://github.com/facebook/react/commit/96203240d )**: ReactDOM: remove unstable-native-dependencies bundle (#18483) //<Nicolas Gallagher>//
- **[263bc5d54](https://github.com/facebook/react/commit/263bc5d54 )**: Fix incorrect unmounted state update warning (#18617) //<Brian Vaughn>//
- **[cfefc81ab](https://github.com/facebook/react/commit/cfefc81ab )**: Fix for #18657 (#18663) //<Andrew Clark>//
- **[e7163a9c2](https://github.com/facebook/react/commit/e7163a9c2 )**: Revise isFiberInsideHiddenOrRemovedTree (#18662) //<Dominic Gannaway>//
- **[a4b1e65af](https://github.com/facebook/react/commit/a4b1e65af )**: Remove redundant expiration time comparisons (#18620) //<Andrew Clark>//
- **[0301f3e24](https://github.com/facebook/react/commit/0301f3e24 )**: Statically disable factory components for WWW (#18641) //<Dan Abramov>//
- **[c12c2c4c8](https://github.com/facebook/react/commit/c12c2c4c8 )**: Run error replay test again new reconciler (#18628) //<Andrew Clark>//
- **[7b4403cec](https://github.com/facebook/react/commit/7b4403cec )**: Fix requiring timers module with non standard require (#18632) //<Boris Serdiuk>//
- **[71964c034](https://github.com/facebook/react/commit/71964c034 )**: Fix CI (#18626) //<Brian Vaughn>//
- **[22dc2e42b](https://github.com/facebook/react/commit/22dc2e42b )**: Add experimental DebugTracing logger for internal use (#18531) //<Brian Vaughn>//
- **[b68017484](https://github.com/facebook/react/commit/b68017484 )**: Delete mutableSourceFirstPendingUpdateTime (#18613) //<Andrew Clark>//
- **[d53988a9d](https://github.com/facebook/react/commit/d53988a9d )**: ReactDOM.useEvent: add useEvent interaction hook (#18604) //<Dominic Gannaway>//
- **[bf55ea743](https://github.com/facebook/react/commit/bf55ea743 )**: Move beforeblur phase to prepareForCommit (#18609) //<Dominic Gannaway>//
- **[843b50cbe](https://github.com/facebook/react/commit/843b50cbe )**: Remove `.internal` from more test suites (#18597) //<Andrew Clark>//
- **[b928fc030](https://github.com/facebook/react/commit/b928fc030 )**: Delete flushSuspenseFallbacksInTests flag (#18596) //<Andrew Clark>//
- **[bec759906](https://github.com/facebook/react/commit/bec759906 )**: Migrate conditional tests to gate pragma (#18585) //<Andrew Clark>//
- **[65237a237](https://github.com/facebook/react/commit/65237a237 )**: Codemod it.experimental to gate pragma (#18582) //<Andrew Clark>//
- **[72d00ab62](https://github.com/facebook/react/commit/72d00ab62 )**: Fix Component Stacks for IE and Native Classes in Safari (#18575) //<Sebastian Markbåge>//
- **[98d410f50](https://github.com/facebook/react/commit/98d410f50 )**: Build Component Stacks from Native Stack Frames (#18561) //<Sebastian Markbåge>//
- **[50bdd75a6](https://github.com/facebook/react/commit/50bdd75a6 )**: Bubble errors if processing the error itself errors (#18567) //<Sebastian Markbåge>//
- **[348ed0e93](https://github.com/facebook/react/commit/348ed0e93 )**: Don't return from perform/completeUnitOfWork  (#18566) //<Sebastian Markbåge>//
- **[b04c7fa28](https://github.com/facebook/react/commit/b04c7fa28 )**: Decouple expiration times and transition timeouts (#17920) //<Andrew Clark>//
- **[dc630d337](https://github.com/facebook/react/commit/dc630d337 )**: Fork ReactFiberExpirationTime //<Andrew Clark>//
- **[e5d06e34b](https://github.com/facebook/react/commit/e5d06e34b )**: Revert "Clear more Fiber fields in detachFiber (#18556)" (#18562) //<Dan Abramov>//
- **[cbab25bb5](https://github.com/facebook/react/commit/cbab25bb5 )**: Exclude forwardRef and memo from stack frames (#18559) //<Sebastian Markbåge>//
- **[d48dbb824](https://github.com/facebook/react/commit/d48dbb824 )**: Clear more Fiber fields in detachFiber (#18556) //<Dominic Gannaway>//
- **[0566b706e](https://github.com/facebook/react/commit/0566b706e )**: Fix fiber memory leak with runAllPassiveEffectDestroysBeforeCreates (#18554) //<Dominic Gannaway>//
- **[ca1a703d2](https://github.com/facebook/react/commit/ca1a703d2 )**: Make enableLegacyFBSupport flag dynamic for www (#18551) //<Dominic Gannaway>//
- **[4c6470cb3](https://github.com/facebook/react/commit/4c6470cb3 )**: Point ReactDOMForked to the new implementation //<Andrew Clark>//
- **[17f582e04](https://github.com/facebook/react/commit/17f582e04 )**: Add forked copies of reconciler modules //<Andrew Clark>//
- **[376d5c1b5](https://github.com/facebook/react/commit/376d5c1b5 )**: Split cross-package types from implementation //<Andrew Clark>//
- **[d686f3f16](https://github.com/facebook/react/commit/d686f3f16 )**: Add `.old` prefix to reconciler modules //<Andrew Clark>//
- **[147bdef11](https://github.com/facebook/react/commit/147bdef11 )**: Port more tests to the Scheduler.unstable_yieldValue pattern and drop internal.js (#18549) //<Sebastian Markbåge>//
- **[b014e2d5e](https://github.com/facebook/react/commit/b014e2d5e )**: Don't use closures in DevTools injection (#18278) //<Sebastian Markbåge>//
- **[5474a83e2](https://github.com/facebook/react/commit/5474a83e2 )**: Disable console.logs in the second render pass of DEV mode double render (#18547) //<Sebastian Markbåge>//
- **[b225d4f26](https://github.com/facebook/react/commit/b225d4f26 )**: Revert "Revert "Refactor commitPlacement to recursively insert nodes (#17996)" (#18517)" (#18540) //<Dan Abramov>//
- **[241103a6f](https://github.com/facebook/react/commit/241103a6f )**: Fix bailout broken in lazy components due to default props resolving (#18539) //<jddxf>//
- **[2dddd1e00](https://github.com/facebook/react/commit/2dddd1e00 )**: Bugfix: Render phase update causes remaining updates in same component to be dropped (#18537) //<Andrew Clark>//
- **[2def7b3ca](https://github.com/facebook/react/commit/2def7b3ca )**: More robust fix for #18515 (#18535) //<Andrew Clark>//
- **[948fad357](https://github.com/facebook/react/commit/948fad357 )**: Improve detachFiber (#18536) //<Dominic Gannaway>//
- **[ddc4b65cf](https://github.com/facebook/react/commit/ddc4b65cf )**: Clear finished discrete updates during commit phase (#18515) //<jddxf>//
- **[dc49ea108](https://github.com/facebook/react/commit/dc49ea108 )**: Filter certain DOM attributes (e.g. src) if value is empty string (#18513) //<Brian Vaughn>//
- **[e69ca310e](https://github.com/facebook/react/commit/e69ca310e )**: Revert "Refactor commitPlacement to recursively insert nodes (#17996)" (#18517) //<Dan Abramov>//
- **[3278d2421](https://github.com/facebook/react/commit/3278d2421 )**: Add useOpaqueIdentifier Hook (#17322) //<Luna Ruan>//
- **[416942019](https://github.com/facebook/react/commit/416942019 )**: Refactor Component Stack Traces (#18495) //<Sebastian Markbåge>//
- **[a3875663f](https://github.com/facebook/react/commit/a3875663f )**: React Event System: cleanup plugins + break out update batching logic (#18503) //<Dominic Gannaway>//
- **[fe2cb5255](https://github.com/facebook/react/commit/fe2cb5255 )**: [eslint] Consider `useRef() as ...` as constant (#18496) //<Sophie Alpert>//
- **[2ff27ec11](https://github.com/facebook/react/commit/2ff27ec11 )**: [eslint] strip tailing property in assignments (#16784) //<Zen>//
- **[5022fdfd5](https://github.com/facebook/react/commit/5022fdfd5 )**: Refactor Error Dialog Logging (#18487) //<Sebastian Markbåge>//
- **[e2dd30898](https://github.com/facebook/react/commit/e2dd30898 )**: [Flight] Lazily parse models and allow any value to suspend (#18476) //<Sebastian Markbåge>//
- **[59fd09cb6](https://github.com/facebook/react/commit/59fd09cb6 )**: [Flight] Add webpack plugin build (#18485) //<Sebastian Markbåge>//
- **[a876808f0](https://github.com/facebook/react/commit/a876808f0 )**: remove jsx plugin from react (#18484) //<Luna Ruan>//
- **[f312a3fc3](https://github.com/facebook/react/commit/f312a3fc3 )**: useMutableSource: bugfix for new getSnapshot with mutation (#18297) //<Brian Vaughn>//
- **[a8f2165e8](https://github.com/facebook/react/commit/a8f2165e8 )**: Update to Jest 25 (#18480) //<Dan Abramov>//
- **[3c16baf84](https://github.com/facebook/react/commit/3c16baf84 )**: Remove /dist/ UMD builds (#18473) //<Sebastian Markbåge>//
- **[4123d729e](https://github.com/facebook/react/commit/4123d729e )**: Revert "Revert: Enable new passive effect behavior for FB builds (#18467)" (#18468) //<Brian Vaughn>//
- **[8815e4cc7](https://github.com/facebook/react/commit/8815e4cc7 )**: Cleanup getListener and EventSystemFlags (#18469) //<Dominic Gannaway>//
- **[5e464546a](https://github.com/facebook/react/commit/5e464546a )**: ReactDOM.useEvent: fix scope propagation issue (#18464) //<Dominic Gannaway>//
- **[d5e4b3ae1](https://github.com/facebook/react/commit/d5e4b3ae1 )**: Modern Event System: refine flags and handling of enableLegacyFBSupport (#18466) //<Dominic Gannaway>//
- **[3966081cf](https://github.com/facebook/react/commit/3966081cf )**: Revert: Enable new passive effect behavior for FB builds (#18467) //<Dominic Gannaway>//
- **[7dfdff42a](https://github.com/facebook/react/commit/7dfdff42a )**: Run more flags in VARIANT tests (#18461) //<Dan Abramov>//
- **[31734540d](https://github.com/facebook/react/commit/31734540d )**: Remove a flag for style collision warning (#18462) //<Dan Abramov>//
- **[663c13d71](https://github.com/facebook/react/commit/663c13d71 )**: Refactor Enter/Leave listener accumulation (#18405) //<Dominic Gannaway>//
- **[58afba066](https://github.com/facebook/react/commit/58afba066 )**: Fix: Don't read primaryChild.childExpirationTime (#18457) //<Andrew Clark>//
- **[2ea7c6079](https://github.com/facebook/react/commit/2ea7c6079 )**: Fixed race condition in release script (#18456) //<Brian Vaughn>//
- **[3f4684489](https://github.com/facebook/react/commit/3f4684489 )**: [eslint-plugin-react-hooks] Added meta property (including docs) (#16607) //<Gabriel McAdams>//
- **[2bf60d9f9](https://github.com/facebook/react/commit/2bf60d9f9 )**: Fix ESLint rule crash (#18455) //<Dan Abramov>//
- **[3e94bce76](https://github.com/facebook/react/commit/3e94bce76 )**: Enable prefer-const lint rules (#18451) //<Sebastian Markbåge>//
- **[e6ea3d387](https://github.com/facebook/react/commit/e6ea3d387 )**: Use Closure Compiler to compile to ES5 instead of Babel (#18449) //<Sebastian Markbåge>//
- **[7516bdfce](https://github.com/facebook/react/commit/7516bdfce )**: feat(createContext): Include displayName in warning (#18386) //<Sebastian Silbermann>//
- **[5ee0efe83](https://github.com/facebook/react/commit/5ee0efe83 )**: Remove state update warning for passive effect cleanup functions (#18453) //<Brian Vaughn>//
- **[d8d2b6e89](https://github.com/facebook/react/commit/d8d2b6e89 )**: Disable module components dynamically for WWW (#18446) //<Dan Abramov>//
- **[e2c6702fc](https://github.com/facebook/react/commit/e2c6702fc )**: Remove ConcurrentMode and AsyncMode symbols (#18450) //<Sebastian Markbåge>//
- **[dc3c6c956](https://github.com/facebook/react/commit/dc3c6c956 )**: ReactDOM.useEvent: revert and add guard for null stateNode (#18441) //<Dominic Gannaway>//
- **[0f334553c](https://github.com/facebook/react/commit/0f334553c )**: Reset stateNode in resetWorkInProgress (#18448) //<Sebastian Markbåge>//
- **[153b5c305](https://github.com/facebook/react/commit/153b5c305 )**: Cleanup previous shims directories before re-copying (#18447) //<Brian Vaughn>//
- **[4de3a6032](https://github.com/facebook/react/commit/4de3a6032 )**: Remove disableMapsAsChildren flag (#18445) //<Brian Vaughn>//
- **[f4cc97027](https://github.com/facebook/react/commit/f4cc97027 )**: Enable new passive effect behavior for FB builds (#18444) //<Brian Vaughn>//
- **[9065e02d6](https://github.com/facebook/react/commit/9065e02d6 )**: Fix a warning typo (#18443) //<Dan Abramov>//
- **[1960131f1](https://github.com/facebook/react/commit/1960131f1 )**: Add opt-in support for dangerous autofix (#18437) //<Dan Abramov>//
- **[90e90ac8e](https://github.com/facebook/react/commit/90e90ac8e )**: Revert useEvent PRs (#18438) //<Andrew Clark>//
- **[da54641a1](https://github.com/facebook/react/commit/da54641a1 )**: [ESLint] Check deps when callback body is outside the Hook call, too (#18435) //<Dan Abramov>//
- **[bf30e370a](https://github.com/facebook/react/commit/bf30e370a )**: Remove User Timings (#18417) //<Dan Abramov>//
- **[dd7e5e4f5](https://github.com/facebook/react/commit/dd7e5e4f5 )**: Add getInspectorDataForViewAtPoint (take two) (#18388) //<Ricky>//
- **[d7382b6c4](https://github.com/facebook/react/commit/d7382b6c4 )**: Bugfix: Do not unhide a suspended tree without finishing the suspended update (#18411) //<Andrew Clark>//
- **[1f8c40451](https://github.com/facebook/react/commit/1f8c40451 )**: Make interaction tracing on by default in all WWW builds (#18419) //<Dan Abramov>//
- **[ba31ad40a](https://github.com/facebook/react/commit/ba31ad40a )**: feat(StrictMode): Double-invoke render for every component (#18430) //<Sebastian Silbermann>//
- **[689d27586](https://github.com/facebook/react/commit/689d27586 )**: Reset lastEffect when resuming SuspenseList (#18412) //<Sebastian Markbåge>//
- **[be4c8b19c](https://github.com/facebook/react/commit/be4c8b19c )**: Don't show destroy function state update warning when updating ancestors (#18409) //<Brian Vaughn>//
- **[35a2f7497](https://github.com/facebook/react/commit/35a2f7497 )**: Delete leftover assignment from #18384 //<Andrew Clark>//
- **[9d67847f7](https://github.com/facebook/react/commit/9d67847f7 )**: [Bugfix] Dropped updates inside a suspended tree (#18384) //<Andrew Clark>//
- **[5bd1bc29b](https://github.com/facebook/react/commit/5bd1bc29b )**: eslint-plugin-react-hooks@3.0.0 //<Dan Abramov>//
- **[e0ab1a429](https://github.com/facebook/react/commit/e0ab1a429 )**: ReactDOM.useEvent: enable on internal www and add inspection test (#18395) //<Dominic Gannaway>//
- **[a16b34974](https://github.com/facebook/react/commit/a16b34974 )**: ReactDOM.useEvent: Add support for experimental scopes API (#18375) //<Dominic Gannaway>//
- **[dbb060d56](https://github.com/facebook/react/commit/dbb060d56 )**: Pass BundlerConfig through to Relay Integration (#18393) //<Sebastian Markbåge>//
- **[ce6fe50b0](https://github.com/facebook/react/commit/ce6fe50b0 )**: Add server-runtime to create Server Blocks (#18392) //<Sebastian Markbåge>//
- **[64ed221c3](https://github.com/facebook/react/commit/64ed221c3 )**: Formalize the Wakeable and Thenable types (#18391) //<Sebastian Markbåge>//
- **[a6924d77b](https://github.com/facebook/react/commit/a6924d77b )**: Change .model getter to .readRoot method (#18382) //<Sebastian Markbåge>//
- **[6498f62ed](https://github.com/facebook/react/commit/6498f62ed )**: Fix a mistake in ReactChildren refactor (#18380) //<Dan Abramov>//
- **[2ba43edc2](https://github.com/facebook/react/commit/2ba43edc2 )**: Rename internal fields (#18377) //<Dan Abramov>//
- **[a317bd033](https://github.com/facebook/react/commit/a317bd033 )**: Flip the arguments of Blocks and make the query optional (#18374) //<Sebastian Markbåge>//
- **[fc7835c65](https://github.com/facebook/react/commit/fc7835c65 )**: Revert "Upgrade to jest 25 (#17896)" (#18376) //<Andrew Clark>//
- **[a56309fb8](https://github.com/facebook/react/commit/a56309fb8 )**: [Flight] Integrate Blocks into Flight (#18371) //<Sebastian Markbåge>//
- **[fc96a52be](https://github.com/facebook/react/commit/fc96a52be )**: Refactor React.Children to reduce indirection (#18332) //<Dan Abramov>//
- **[fd61f7ea5](https://github.com/facebook/react/commit/fd61f7ea5 )**: Refactor Lazy Components to use teh Suspense (and wrap Blocks in Lazy) (#18362) //<Sebastian Markbåge>//
- **[31a9e391f](https://github.com/facebook/react/commit/31a9e391f )**: Remove unnecessary lines for `hasBadMapPolyfill` issue for rollup (#16231) //<Mohammad Aziz>//
- **[c0cd1be90](https://github.com/facebook/react/commit/c0cd1be90 )**: [Flight] Move bundler configs to use Suspense instead of returning thenable (#18367) //<Sebastian Markbåge>//
- **[b779dd51e](https://github.com/facebook/react/commit/b779dd51e )**: Stop syncing ReactTypes to RN (#18366) //<Sebastian Markbåge>//
- **[c5d2fc712](https://github.com/facebook/react/commit/c5d2fc712 )**: Move some files out of /shared and rename to upper case (#18363) //<Sebastian Markbåge>//
- **[a600408b2](https://github.com/facebook/react/commit/a600408b2 )**: ReactDOM.useEvent: add `EventTarget` support (#18355) //<Dominic Gannaway>//
- **[dbd85a08d](https://github.com/facebook/react/commit/dbd85a08d )**: ReactDOM.useEvent: support custom types (#18351) //<Dominic Gannaway>//
- **[7c1478680](https://github.com/facebook/react/commit/7c1478680 )**: fix string ref cannot be auto converted warning for React.jsxDEV (#18354) //<Luna Ruan>//
- **[fc91508c1](https://github.com/facebook/react/commit/fc91508c1 )**: Follow ups to bundler configs (#18352) //<Sebastian Markbåge>//
- **[ffefb4e77](https://github.com/facebook/react/commit/ffefb4e77 )**: ModernEventSystem: refine Flow types (#18349) //<Dominic Gannaway>//
- **[6818a2aa0](https://github.com/facebook/react/commit/6818a2aa0 )**: Revert accidental changes to package.json (#18348) //<Andrew Clark>//
- **[ad445b127](https://github.com/facebook/react/commit/ad445b127 )**: Update package.jsons for 16.13.1 patch relase //<Andrew Clark>//
- **[8311cb5d2](https://github.com/facebook/react/commit/8311cb5d2 )**: Modern Event System: refactor legacy FB support logic (#18336) //<Dominic Gannaway>//
- **[d3368beee](https://github.com/facebook/react/commit/d3368beee )**: [eslint-plugin-react-hooks] Disallow hooks in class components (#18341) //<Ian Obermiller>//
- **[8206b4b86](https://github.com/facebook/react/commit/8206b4b86 )**: Wire up bundler configs (#18334) //<Sebastian Markbåge>//
- **[5152c4a9f](https://github.com/facebook/react/commit/5152c4a9f )**: Fixed inconcistency with surrounding punctuation (#18339) //<ItsByteMe>//
- **[94505b961](https://github.com/facebook/react/commit/94505b961 )**: Don't use EventListener Fork in Modern WWW Builds (#18333) //<Sebastian Markbåge>//
- **[aae83a4b9](https://github.com/facebook/react/commit/aae83a4b9 )**: Fix UMD Builds (ReactSharedInternals) //<Luna Ruan>//
- **[fe1f79b95](https://github.com/facebook/react/commit/fe1f79b95 )**: Don't fire the render phase update warning for class lifecycles (#18330) //<Dan Abramov>//
- **[22cab1cbd](https://github.com/facebook/react/commit/22cab1cbd )**: test(getComponentName): Increase test coverage (#18149) //<Sebastian Silbermann>//
- **[90f8fe6f5](https://github.com/facebook/react/commit/90f8fe6f5 )**: add jsx-runtime and jsx-dev-runtime (#18299) //<Luna Ruan>//
- **[26666427d](https://github.com/facebook/react/commit/26666427d )**: Don't support older isomorphic React with newer renderers (#18329) //<Dan Abramov>//
- **[3a0076e0e](https://github.com/facebook/react/commit/3a0076e0e )**: useEvent: Small tweaks and changes (#18328) //<Dominic Gannaway>//
- **[924091853](https://github.com/facebook/react/commit/924091853 )**: Bump react-shallow-renderer to 16.13.1 (#18187) //<Minh Nguyen>//
- **[c804f9aeb](https://github.com/facebook/react/commit/c804f9aeb )**: ReactDOM.useEvent: wire to event system to the hook (#18304) //<Dominic Gannaway>//
- **[297f7588c](https://github.com/facebook/react/commit/297f7588c )**: Moved passive effects flag to be beside execution context (#18322) //<Brian Vaughn>//
- **[95df39b6b](https://github.com/facebook/react/commit/95df39b6b )**: improve error message for cross-functional component updates (#18316) //<Jovi De Croock>//
- **[c0ed0a246](https://github.com/facebook/react/commit/c0ed0a246 )**: Replace passive effect context with boolean (#18309) //<Brian Vaughn>//
- **[730389b9d](https://github.com/facebook/react/commit/730389b9d )**: Warn against state updates from useEffect destroy functions (#18307) //<Brian Vaughn>//
- **[73ff8b909](https://github.com/facebook/react/commit/73ff8b909 )**: Run ReactElementJSX-test against bundles (#18301) //<Dan Abramov>//
- **[2a7cd5895](https://github.com/facebook/react/commit/2a7cd5895 )**: ReactDOM.useEvent: Add DOM host event listener logic (#18292) //<Dominic Gannaway>//
- **[d3ec42020](https://github.com/facebook/react/commit/d3ec42020 )**: Address feedback for accumulateTwoPhaseListeners (#18289) //<Dominic Gannaway>//
- **[cd48a0654](https://github.com/facebook/react/commit/cd48a0654 )**: Set up infra for react-reconciler fork (#18285) //<Andrew Clark>//
- **[615df434b](https://github.com/facebook/react/commit/615df434b )**: Remove manual feature flag overrides (#18291) //<Andrew Clark>//
- **[99d271228](https://github.com/facebook/react/commit/99d271228 )**: ReactDOM.useEvent: more scaffolding changes (#18282) //<Dominic Gannaway>//
- **[8b155d261](https://github.com/facebook/react/commit/8b155d261 )**: Flow type ReactDOMComponentTree (#18280) //<Dominic Gannaway>//
- **[322cdcd3a](https://github.com/facebook/react/commit/322cdcd3a )**: useMutableSource hook (#18000) //<Brian Vaughn>//
- **[30a998deb](https://github.com/facebook/react/commit/30a998deb )**: ModernEventSystem: refactor accumulateTwoPhaseListeners (#18274) //<Dominic Gannaway>//
- **[8fe066fda](https://github.com/facebook/react/commit/8fe066fda )**: Bugfix: "Captured" updates on legacy queue (#18265) //<Andrew Clark>//

Changelog:
[General][Changed] - React Native sync for revisions b5c6dd2...c9749d3

Reviewed By: gaearon

Differential Revision: D22640659

fbshipit-source-id: c3c146b87fa5663954bd94adbe689303aabbcd3c
2020-08-05 06:35:41 -07:00
Rick Hanlon 7af3f6e934 Add React integration tests for LogBox
Summary:
This diff adds some integration tests that throw read React errors and asserts on the LogBox data.

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D22752147

fbshipit-source-id: eb2e1542524d67558f2450130015164acd4d6093
2020-07-28 13:09:06 -07:00
Rick Hanlon 4720ee9aa7 Support component stack frames formatted as call stack frames in LogBox
Summary:
In the next version of React they've changed the format of component stacks from a custom format to the same format as call stacks. This diff adds handling (and test) for the new format.

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D22752034

fbshipit-source-id: 38d74bffd9ed623cbdd71e70103d66d8f0765fd9
2020-07-28 13:09:06 -07:00
Rick Hanlon 9edfc43aad Only pass Error.stack to parseErrorStack
Summary:
I want to be able parse error stacks in contexts where I have a call stack string but no error object.

This diff changes parseErrorStack to only accept the stack, instead of a whole error object.

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D22752048

fbshipit-source-id: b4b1cd58802eefe736130d48a82bc091241a11ee
2020-07-27 13:57:58 -07:00
makitake2013 320398afe5 Test fixes related to changes in Jest's Fake Timer behavior (#29011)
Summary:
Fixed tests related to changing Jest's fake timer behavior.
And some of the test code in LogBoxData-test.js itself was incorrect so I am fixing it.

LogBoxData-test.js fails when I try to build a new local development environment and fork the React Native source to run a JavaScript test.
The error message is:
runAllImmediates is not available when using modern timers

After checking, runAllImmediates could not be used with the following modification.
71631f6bf9

## Changelog

[Internal] [Fixed] - Test fixes related to changes in Jest's Fake Timer behavior

Pull Request resolved: https://github.com/facebook/react-native/pull/29011

Test Plan: Ran JavaScript Tests locally.

Reviewed By: cpojer

Differential Revision: D22494991

Pulled By: rickhanlonii

fbshipit-source-id: 4deeaf82b5092ff8b60c4606eb45549beb452a5f
2020-07-12 00:28:53 -07:00
Rick Hanlon f28c7505fa Fix LogBox.ignoreAllLogs used with no argument (#29310)
Summary:
When you call `LogBox.ignoreAllLogs()` it should ignore logs.

This fixes a bug that made this equivalent to `LogBox.ignoreAllLogs(false)`

## Changelog

[General] [Fixed] - LogBox.ignoreAllLogs() should ignore logs

Pull Request resolved: https://github.com/facebook/react-native/pull/29310

Test Plan: Added tests

Reviewed By: TheSavior

Differential Revision: D22448436

Pulled By: rickhanlonii

fbshipit-source-id: 6ba12b9d9c1f29cf3ac503946ac5ca0097425a7a
2020-07-08 18:51:58 -07:00
Janic Duplessis d3b937f990 Make sure LogBox is not included in production bundles (#28984)
Summary:
I was doing some bundle inspection and noticed the LogBox module was included. It does amount to around 15kb so I think it is worth making sure it is not there.

To fix it I moved some imports to require inside __DEV__ blocks to make sure metro is able to remove these imports.

## Changelog

[General] [Fixed] - Make sure LogBox is not included in production bundles
Pull Request resolved: https://github.com/facebook/react-native/pull/28984

Test Plan: Tested using react-native-bundle-visualizer and made sure nothing from LogBox was included in the bundle after these changes.

Reviewed By: TheSavior

Differential Revision: D21794466

Pulled By: rickhanlonii

fbshipit-source-id: 6cb0c0a89633e9850019bd61478c35e9c21638dc
2020-06-02 18:00:45 -07:00
Rick Hanlon 41f0d9ba8f Rename error titles
Summary:
Based on feedback we're updating these titles to be more clear for their source.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D21413486

fbshipit-source-id: c144e7f759a4ff263b7ec80fa643eeb8ffac741b
2020-05-06 11:40:22 -07:00
Rick Hanlon 5066b662f2 LogBox - Always display the first fatal error
Summary:
This diff fixes an off-by-one error probably caused by my font ligatures where when exactly two exceptions are thrown at the same time we would show the second exception instead of the first. If three or more were thrown, we would show the second.

I also fixed some tests that had the wrong descriptions and wrong behavior enforced.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D21413186

fbshipit-source-id: 8e2940c89251dc042b10c6a2a2186089b6e7b53d
2020-05-06 11:40:22 -07:00
George Zahariev cd347a7e0e Upgrade Prettier in Xplat to version 1.19.1
Summary:
Upgrades Prettier in Xplat to 1.19.1
Ignores upgrading packages on already on versions greater than 1.19.1

Changelog: [Internal]

allow-large-files
bypass-lint

(Note: this ignores all push blocking failures!)

Reviewed By: gkz, cpojer

Differential Revision: D20879147

fbshipit-source-id: 0deee7ac941e91e1c3c3a1e7d3d3ed20de1d657d
2020-04-09 11:01:58 -07:00
Rick Hanlon ec0c65c4b2 Improve component stack parsing
Summary:
Update the error log message parsing to fix missing component stacks in console.errors.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D20801985

fbshipit-source-id: ae544200315a8c3c0310e8370bc38b0546734f38
2020-04-01 16:43:15 -07:00
Kacie Bawiec d2f314af75 Make ScrollView use ForwardRef
Summary:
Have ScrollView use forwardRef so that the host component methods like `measure` and `measureLayout` are available without having to call `getNativeScrollRef`. Instead, you can use `<ScrollView ref={myRef} />` and directly call all methods of ScrollView and host components on `myRef`.

Previous usage:
```
const myRef = React.createRef<React.ElementRef<typeof ScrollView>>();
<ScrollView ref={myRef} />

const innerViewRef = myRef.current.getNativeScrollRef();

innerViewRef.measure();
```
New usage:
```
const myRef = React.createRef<React.ElementRef<typeof View>>();
<ScrollView ref={myRef} />

// now, myRef.current can be used directly as the ref
myRef.current.measure();
myRef.current.measureLayout();

// Additionally, myRef still has access to ScrollView methods
myRef.current.scrollTo(...);
```

Changes:

* Added deprecation warnings to ScrollView methods `getNativeScrollRef`, `getScrollableNode`, and `getScrollResponder`
* Added the forwardRef call to create `ForwardedScrollView` - this takes in `ref` and passes it into the class ScrollView as `scrollViewRef`.
* Forwarded the ref to the native scroll view using `setAndForwardRef`.
* Added statics onto `ForwardedScrollView` so that `ScrollView.Context` can still be accessed.
* Added type `ScrollViewImperativeMethods`, which lists the public methods of ScrollView.
* Converted all public methods of ScrollView to arrow functions. This is because they need to be bound to the forwarded ref.
* Bound all public methods of ScrollView to the forwarded ref in the `setAndForwardRef` call.
* Flow typed the final output (ForwardedScrollView) as an abstract component that takes in the props of the `ScrollView` class, and has all methods of both the inner host component (`measure`, `measureLayout`, etc) and the public methods (`scrollTo`, etc).

Changes to mockScrollView:
* Changed mockScrollView to be able to mock the function component instead of a class component
* Updated necessary tests

Changelog:
[General] [Changed] - Make ScrollView use forwardRef

Reviewed By: TheSavior

Differential Revision: D19304480

fbshipit-source-id: 6c359897526d9d5ac6bc6ab6d5f9d82bfc0d8af4
2020-03-26 16:53:46 -07:00
Michael Bolin 0b9ea60b4f Back out "Upgrade Prettier from 1.17 to 2.0.2."
Differential Revision: D20639755

fbshipit-source-id: 5028563f9cf0527a30b4259daac50cdc03934bfd
2020-03-24 21:47:35 -07:00
Michael Bolin cf44650b3f Upgrade Prettier from 1.17 to 2.0.2.
Summary:
This gets us on the latest Prettier 2.x:
https://prettier.io/blog/2020/03/21/2.0.0.html

Notably, this adds support for TypeScript 3.8,
which introduces new syntax, such as `import type`.

Reviewed By: zertosh

Differential Revision: D20636268

fbshipit-source-id: fca5833d003804333a05ba16325bbbe0e06d6c8a
2020-03-24 20:24:47 -07:00
Rick Hanlon 9c64bd5739 Properly handle LogBox errors during tests
Summary:
This diff fixes an issue where errors in LogBox during tests would cause the tests to crash.

The crash is due to the NativeExceptionsManager module not being mocked (as all native module need to be in tests). The fix is to properly mock the NativeExceptionManger.

This fix exposed an infinite loop issue where failures in LogBox will be logged to the ExceptionManager, which logs to the console, which logs to LogBox, creating a loop. This diff also fixes that look by moving the LogBox internal error check to the top of the monkey patched console methods.

Changelog: [Internal]

Differential Revision: D20428590

fbshipit-source-id: 7289a480c99ba8dee67772178b7629afb40b330a
2020-03-19 20:31:01 -07:00
Rick Hanlon 69126069fc LogBox - Handle invalid requires
Summary:
This diff updates the errors thrown by Metro for invalid requires, and fixed a bug in Fast Refresh that was failing to handle errors returned by metro. The net result is that invalid requires are displayed as syntax errors with code frames.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D20107057

fbshipit-source-id: 59f77aa1da620d2c619a7cc45d90f40ef8b54448
2020-03-09 06:02:07 -07:00
Hans Halverson a3d9e91203 Move suppression to primary locations in xplat/js
Summary:
We will soon be enforcing that flow suppressions will only apply when on an error's primary location ([post](https://fb.workplace.com/groups/179614562644215/permalink/559286354677032/)). This diff uses the codemod created in D20008770 to move all suppression comments to their primary locations in the  `xplat/js` flow root, and deletes suppression comments that are not on any primary locations.

This diff was generated with:
```
~/fbsource/fbcode/flow/packages/flow-dev-tools/bin/tool suppression-primary-locations --json-file ~/www/errors.json  ~/fbsource/xplat/js
hg st -n | xargs grep -l -P '@(partially-)?generated' | xargs hg revert
hg st -n | xargs grep -l 'format' | xargs prettier --write
```

Changelog: [Internal]

bypass-lint

Reviewed By: dsainati1

Differential Revision: D20122544

fbshipit-source-id: d94e409aadb18bb399a1ddbf9f3f2494fe4fb54c
2020-02-27 12:14:57 -08:00
Rick Hanlon 956359bee6 Handle errors in Metro by showing a code frame
Summary:
Right now the code frame and stack trace for metro errors are useless. This diff improved these errors by showing the metro code frame for the source of the issue, and stripping the stack trace.

Ideally we could show the metro stack trace as well, but since stack traces are tightly coupled to symbolication (and metro source code does not need symbolicated, nor could it be), this is an acceptable incremental improvement.

Arguably, even showing the code frame is inappropriate and we should show a generic crash screen with reload and report buttons.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D20057353

fbshipit-source-id: 5e999cea14c1cbd2f69737e3992a3e8d159fdf89
2020-02-25 04:34:38 -08:00
Rick Hanlon 64bc400c77 LogBox - Fix code frame whitespace trimming
Summary:
This diff fixes whitespace trimming in codeframes by setting the whitespace size to 0 instead of infinity for lines that's don't have whitespace. This fixes a bug in frames where lines with 0 whitespace would not be considered.

So frames like this, where the common whitespace should be 0:

```
  217 | function Hi(a?: String) {
> 218 |   return Platform.OS === 'android' ? obj.die() : obj.die();
      |                                                  ^
  219 | }
  220 |
  221 | export default CrashReactApp;
```

Are instead trimmed at the second most common whitespace, which is 2. That's because line 217 has a whitespace length of 0, but we consider it as Infinity. When we get to line 218, we set the whitespace to 2. Then on line 19 we consider if 2 < Infinity and decide that the common whitespace is 2 resulting in:

```
  217 | nction Hi(a?: String) {
> 218 | return Platform.OS === 'android' ? obj.die() : obj.die();
      |                                                ^
  219 |
  220 |
  221 | port default CrashReactApp;
```

By setting the whitespace per line to 0 when there's no whitespace match, lines without whitespace can accurately report their size and move the pointer back to the 0 position.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D20030301

fbshipit-source-id: f1dec8cc57479f37ffa8128f93f7c8b3c6baaf91
2020-02-21 10:23:31 -08:00
Rick Hanlon c6d5019573 Interpolate strings before giving them to abd
Summary:
This diff interpolates logs before passing them downstream so that we don't see a bunch of logs with "%s" everywhere.

Changelog: [Internal]

Reviewed By: cpojer

Differential Revision: D20034903

fbshipit-source-id: 966917aa21ba07af3fb114e6a6931d4bbf860040
2020-02-21 09:33:00 -08:00
Rick Hanlon 372771dc8c Remove LogBox.ignoreWarnings
Summary:
This method isn't necessary for the migration to LogBox because we have a YellowBoxDeprecated module instructing users to use LogBox.ignoreLogs (so no old code should be calling LogBox.ignoreWarnings).

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D19950302

fbshipit-source-id: 4850884e770f812273978b9a205f5b914e5a9d2f
2020-02-19 18:01:43 -08:00
Rick Hanlon 87f1e22434 Deprecate console.disableYellowBox in favor of LogBox.ignoreAllLogs()
Summary:
We're replacing console.disableYellowBox (untyped, global hack, only warnings) with LogBox.ignoreAllLogs() (typed, local method, handles errors and warnings).

Changelog: [General] [Removed] Replace console.disableYellowBox with LogBox.ignoreAllLogs.

Reviewed By: TheSavior

Differential Revision: D19813775

fbshipit-source-id: ffd33ddbca0276a27d23b5b6023a15aef761934e
2020-02-18 06:19:45 -08:00
Rick Hanlon 40646e8418 LogBox - Move images to files
Summary:
Moves the LogBox images from base64 data to files since base64 is not supported everywhere.

Changelog: [Internal]

Reviewed By: fkgozali

Differential Revision: D19879323

fbshipit-source-id: 2dc03eebfc712ed863ed76322e133fcad5b00bb4
2020-02-17 08:17:08 -08:00
Rick Hanlon 044991a93f LogBox - Add build version and open in browser
Summary:
Adds build version and an onPress for the build info.

Changelog: [Internal]

Reviewed By: yungsters

Differential Revision: D19334440

fbshipit-source-id: b201b630086179faca31a08c62019a2019cedf4f
2020-01-29 06:23:26 -08:00
Jordan Brown 4e71a30969 Fix return type of StyleSheet.create to be the identity function
Summary:
Changes the return type of StyleSheet.create to `$ReadOnly<S>`. At runtime, it just freezes the fields in dev mode and is the identity function otherwise. This cause 423 errors due to the wrong props being passed to different styles: P124372727

I went over errors at random with Eli to get confidence in the change.

Changelog:
[General][Fixed] Fix return type of StyleSheet.create

Reviewed By: zackargyle, TheSavior

Differential Revision: D19218817

fbshipit-source-id: b7aa10700f8333372c9f0bd61bfbef371caadf97
2020-01-02 10:01:15 -08:00
Rick Hanlon a62062f3c0 LogBox fixes for OSS
Summary:
This diff fixes two issues with LogBox in OSS.

Changelog: [Internal]

Reviewed By: mmmulani

Differential Revision: D19165696

fbshipit-source-id: 4dd9c480ea3d2b205f8e65cb32203949b1e32e8a
2019-12-18 19:28:56 -08:00
Rick Hanlon 586d55d54f LogBox - lazily initialize on iOS, use sync APIs
Summary:
Update LogBox on iOS to lazily initialize, using a synchronous RCTSurface, behind RCTSharedApplication checks.

This results in faster of LogBox, without keeping around a long lived window in the background, and only used when LogBox is used.

On Android, we still start the react app in the background but we create a dialog when it's shown and then destroy it when it's hidden. Once we have the sync APIs on android we can update it to use the same strategy.

Changelog: [Internal]

Reviewed By: fkgozali

Differential Revision: D18925538

fbshipit-source-id: 1a72c39aa0fc26c8ba657d36c7fa7bc0ae777eb9
2019-12-13 03:09:00 -08:00
Rick Hanlon 3714bfed2c Fix logs stuck in pending symbolocated state
Summary:
This diff fixes an issue where symbolicated logs were getting stuck in a "pending" state if the timeout occurred before symbolication finished.

Changelog: [Internal]

Reviewed By: sahrens

Differential Revision: D18894154

fbshipit-source-id: ed225962468f67aef40e430aa798f8d426d31027
2019-12-10 10:09:41 -08:00
Rick Hanlon bbfd64e3e9 RN DevX] LogBox - Handle tapping component stacks if possible
Summary:
This diff adds handling for tapping to open components in component stacks, whenever they're available.

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D18882338

fbshipit-source-id: 574bff1c41c952c33e647cb142d278ace60b4631
2019-12-10 10:09:41 -08:00
Rick Hanlon 587979552d LogBox - Update to use it's own root for the inspector
Summary:
Apologies for the large diff, it was difficult to break down.

This diff is a major refactor of LogBox that:
- Separates LogBoxNotification and LogBoxInspector
- Moves them each to their own container
- Updates AppContainer to only render the notification
- Updates the native logbox root to render the inspector
- Adds withSubscription HOC to manage subscribing to LogBoxData
- Simplifies LogBox to export an object instead of a component

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D18750011

fbshipit-source-id: 639885d29e55e125892d1c2b6bbf2826f27d78db
2019-12-10 02:31:38 -08:00
Eli White e362470305 Convert easy files to flow strict-local
Summary:
This diff was generated by this script used by WWW
https://our.intern.facebook.com/intern/diffusion/WWW/browse/master/scripts/flow/upgrade_to_flow_strict_local.sh?lines=0

Changelog:
[Internal] Upgrade flow to flow strict-local

Reviewed By: zackargyle, rickhanlonii

Differential Revision: D18833630

fbshipit-source-id: e64d4e9a49a0db5e6bf70a0c489567862b578d7f
2019-12-05 16:06:46 -08:00
Eli White c24c8a039c Core files should depend on internals directly
Summary:
By depending on react-native, these files can't be flow strict until index.js is flow strict. By depending on the internals directly they can be flow strict as soon as their dependents are flow strict.

Changelog:
[Internal] Refactoring some core file imports to depend on internals directly

Reviewed By: zackargyle

Differential Revision: D18828324

fbshipit-source-id: 2a347c4e234a64edbb3e6f0ef6387ef1ce78badc
2019-12-05 13:33:58 -08:00
Jordan Brown 90ab8b89e8 Last pass over non-generated files for explicit inexact object rollout
Summary:
The flow team is rolling out exact-by-default object types to xplat/js. In order to do that, we need to take all inexact objects `{}` and turn them into explicitly inexact objects `{...}`.

This codemod does not change any type checking behavior. Prettier was run on all of the modified files with `format`.

drop-conflicts

Changelog: [Internal]

Reviewed By: zackargyle

Differential Revision: D18785076

fbshipit-source-id: c89c7fcc9eabe69859c8a488e03185fba5d06f80
2019-12-04 21:41:16 -08:00
Rick Hanlon 178f126d83 Parse any babel codeframe error as syntax error
Summary:
## Overview

This diff adds handling for syntax errors created using `buildCodeFrameError` which have a slightly different format than syntax errors thrown during transforms.

Changelog: [Internal]

Reviewed By: yungsters

Differential Revision: D18658502

fbshipit-source-id: 0836f2c16cdd57c10ed1e03dc7345d8e1ccf53f3
2019-11-27 09:25:04 -08:00
Rick Hanlon a64e5bc251 LogBox - Use Modal for full screen inspector
Summary:
This diff switches LogBox over to use a Modal component so that the log inspector is always full screen.

In order to do that, it needed to add an `internal_excludeLogBox` flag to AppContainer so that it's not recursively rendered  as: AppContainer -> LogBox -> Modal -> AppContainer. Not thrilled about the prop but it's necessary for now until this is rendered as it's own root (which we're working on next).

Changelog: [Internal]

Reviewed By: rubennorte

Differential Revision: D18461394

fbshipit-source-id: e1a80dfffbbe6c5467ac6f8d3c445a3280829020
2019-11-27 08:27:31 -08:00
Christoph Nakazawa 03766d6a08 Remove unnecessary whitespace from code frames
Summary:
This removes common whitespace from a code frame to show more code. This is especially useful for heavily intended code that may not even be visible in the small window.

I am not 100% confident I wrote the right code because I'm under time pressure but it seems to work. I'm an intern and it's my last day.

Changelog: [Internal]

(Note: this ignores all push blocking failures!)

Reviewed By: rickhanlonii

Differential Revision: D18657572

fbshipit-source-id: 6b93999c4482891f2123d67005843ce5db0d2976
2019-11-22 09:09:10 -08:00
Christoph Nakazawa 89be2d00ea Remove the vertical bar next to the code frame
Summary:
This vertical bar doesn't really add any value. This diff removes it. At first I tried to use regex but ansi codes make that hard. We can just use the structured data and rely on the fact that the second item is always the one with the vertical bar.

(Note: this ignores all push blocking failures!)

Changelog: [Internal]

Reviewed By: motiz88

Differential Revision: D18656911

fbshipit-source-id: b72d4c93d0008c7da54647d072a4c4eb7646b694
2019-11-22 09:09:09 -08:00