Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use native scheduler if defined #1

Closed
wants to merge 269 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
269 commits
Select commit Hold shift + click to select a range
5379b61
Batch sync, default and continuous lanes (#25700)
tyao1 Jan 5, 2023
0b97441
[Fizz] Fork Fizz instruction set for inline script and external runti…
mofeiZ Jan 6, 2023
0b4f443
[flow] enable enforce_local_inference_annotations (#25921)
kassens Jan 9, 2023
e2424f3
[flow] enable exact_empty_objects (#25973)
kassens Jan 9, 2023
34464fb
Upgrade to Flow 0.196.3 (#25974)
kassens Jan 9, 2023
1253462
Refactor: Reuse variable "remoteRepoDir" (#25740)
HoikanChan Jan 10, 2023
afe6521
Refactor: remove useless parameter (#25923)
cchaonie Jan 10, 2023
c491316
Remove unused Flow suppressions (#25977)
kassens Jan 10, 2023
0f4a835
Remove duplicate JSResourceReferenceImpl mock (#25976)
kassens Jan 10, 2023
a48e54f
[cleanup] remove old feature flag warnAboutDeprecatedLifecycles (#25978)
kassens Jan 10, 2023
fb324fa
Test case for stack overflow in ReactFizzServer (#25971)
tyao1 Jan 11, 2023
7002a67
[cleanup] remove unused values from ReactFeatureFlags.www-dynamic (#2…
kassens Jan 11, 2023
0fce6bb
[cleanup] remove feature flags warnAboutDefaultPropsOnFunctionCompone…
kassens Jan 11, 2023
555ece0
Don't warn about concurrently rendering contexts if we finished rende…
eps1lon Jan 12, 2023
489d00f
[cleanup] Remove warnAboutDeprecatedLifecycles feature flag (#25992)
alunyov Jan 12, 2023
379dd74
[www] set enableTrustedTypesIntegration to false (#25997)
kassens Jan 13, 2023
0e31dd0
Remove findDOMNode www shim (#25998)
kassens Jan 13, 2023
4f8ffec
Rejct toWarnDev if given callback throws (#26003)
eps1lon Jan 15, 2023
ee85098
[cleanup] remove deletedTreeCleanUpLevel feature flag (#25529)
kassens Jan 17, 2023
0652bdb
Add flow types to Maps in ReactNativeViewConfigRegistry.js (#26064)
sammy-SC Jan 27, 2023
cb16201
Update danger.js token (#26066)
kassens Jan 27, 2023
78c4bec
[DevTools] fix local build for extension (#26067)
mondaychen Jan 27, 2023
ce09ace
Improve Error Messages when Access Client References (#26059)
sebmarkbage Jan 28, 2023
b0671f9
Include removal of scheduler/tracing in changelog (#26063)
eps1lon Jan 30, 2023
9b1423c
Revert "Hold host functions in var" (#26079)
sammy-SC Jan 30, 2023
48b687f
[trusted types][www] Add enableTrustedTypesIntegration flag back in (…
onionymous Jan 30, 2023
1f5ce59
[cleanup] fully roll out warnAboutSpreadingKeyToJSX (#26080)
kassens Jan 30, 2023
6b30832
Upgrade prettier (#26081)
kassens Jan 31, 2023
d7bb524
[cleanup] Remove unused package jest-mock-scheduler (#26084)
ymqy Jan 31, 2023
8b9ac81
Remove unused dependency 'abort-controller' (#26074)
ymqy Jan 31, 2023
977bccd
Refactor Flight Encoding (#26082)
sebmarkbage Jan 31, 2023
8c234c0
Move the Webpack manifest config to one level deeper (#26083)
sebmarkbage Feb 1, 2023
0ba4698
Fix async test in React reconciler (#26087)
ymqy Feb 1, 2023
9d111ff
Serialize Promises through Flight (#26086)
sebmarkbage Feb 1, 2023
922dd7b
Revert the outer module object to an object (#26093)
sebmarkbage Feb 2, 2023
2ef2414
[flow] upgrade to 0.199.0 (#26096)
kassens Feb 2, 2023
855b77c
publish-prereleases: Exit if CircleCI request fails (#26100)
acdlite Feb 3, 2023
4bf2113
Revert "Move the Webpack manifest config to one level deeper (#26083)…
sebmarkbage Feb 6, 2023
03a2160
Rename "dom" fork to "dom-node" and "bun" fork to "dom-bun" (#26117)
sebmarkbage Feb 6, 2023
1445acf
[CI] cache yarn instead of node_modules (#25834)
kassens Feb 6, 2023
c12194f
[DevTools] improve error handling in extension (#26068)
mondaychen Feb 7, 2023
13f4ccf
Fix main (#26120)
eps1lon Feb 7, 2023
f0cf832
Update Flight Fixture to "use client" instead of .client.js (#26118)
sebmarkbage Feb 7, 2023
01a0c4e
Add Edge Server Builds for workerd / edge-light (#26116)
sebmarkbage Feb 7, 2023
758fc7f
Support highlights for React Native apps in dev tools (#26060)
ryancat Feb 7, 2023
a3152ed
support ReactDOM.render(..., document) without crashing (#26129)
gnoff Feb 8, 2023
78d2e9e
Replace DevTools `semver` usages with `compare-versions` for smaller …
markerikson Feb 9, 2023
3ff1540
Prefer JSX in ReactNoop assertions (to combat out-of-memory test runs…
eps1lon Feb 9, 2023
28fcae0
Add support for SVG `transformOrigin` prop (#26130)
arav-ind Feb 9, 2023
5940934
Update to Jest 29 (#26088)
ymqy Feb 9, 2023
c0b0b3a
Only restore Yarn caches on exact key hits (#26133)
eps1lon Feb 9, 2023
53b1f69
Implement unstable_getBoundingClientRect in RN Fabric refs (#26137)
rubennorte Feb 9, 2023
6ddcbd4
[flow] enable LTI inference mode (#26104)
kassens Feb 9, 2023
3569831
Update jest escapeString config (#26140)
ymqy Feb 9, 2023
6c75d4e
Delete blocks fixture (#26143)
sebmarkbage Feb 9, 2023
ef9f6e7
Enable passing Server References from Server to Client (#26124)
sebmarkbage Feb 10, 2023
6396b66
Model Float on Hoistables semantics (#26106)
gnoff Feb 10, 2023
55542bc
Update jest printBasicPrototype config (#26142)
ymqy Feb 10, 2023
c851022
Treat displayName as undefined (#26148)
sebmarkbage Feb 10, 2023
d9e0485
Bypass packages that are already published when confirmed by users (#…
ryancat Feb 10, 2023
b8ae89f
Fix and update attribute-behavior fixture (#26114)
eps1lon Feb 10, 2023
71cace4
Migrate testRunner from jasmine2 to jest-circus (#26144)
ymqy Feb 10, 2023
2de85d7
Minor Jest upgrade (#26150)
kassens Feb 10, 2023
64acd39
remove unguarded getRootNode call (#26152)
gnoff Feb 10, 2023
4a4ef27
Remove unnecessary flowconfig ignore paths (#26159)
ymqy Feb 12, 2023
86c8c8d
test: Don't retry flushActWork if flushUntilNextPaint threw (#26121)
eps1lon Feb 13, 2023
fccf3a9
Remove redundant test steps (#26161)
mateusmtoledo Feb 13, 2023
2f40170
Don't recommend deprecated debugger script (#26171)
Biki-das Feb 16, 2023
fbf3bc3
Add `scale` as a unitless property (#25601)
JonnyBurger Feb 16, 2023
189f70e
Create a bunch of custom webpack vs unbundled node bundles (#26172)
sebmarkbage Feb 16, 2023
21b4910
[difftrain] Remove dependency on node-fetch (#26182)
poteto Feb 16, 2023
4210655
React DevTools 4.27.1 -> 4.27.2 (#26185)
mondaychen Feb 16, 2023
4fcc918
Test :Add a small test for ReactTestUtils to find rendered component …
Biki-das Feb 17, 2023
1a49e2d
remove flow check in electron app.js (#26184)
mondaychen Feb 17, 2023
c9d9f52
Make enableCustomElementPropertySupport a dynamic flag in www build (…
acdlite Feb 17, 2023
db5e625
Rename yarn build-combined to just yarn build (#26192)
sebmarkbage Feb 17, 2023
bc38a3d
Update rollup config to use moduleSideEffects (#26199)
ymqy Feb 20, 2023
6b6d061
Update Rollup and related plugins to their most recent versions (#24916)
0xdevalias Feb 20, 2023
8a82207
add test case for semver major comparisons
chenpengjiayou2009 Feb 20, 2023
2cc54b5
Change commit message for DiffTrain commigs (#26203)
sammy-SC Feb 20, 2023
80cf4a0
Update Closure Compiler (#26205)
sebmarkbage Feb 20, 2023
62e6c46
Move Mutation/Persistence fork inline into the functions (#26206)
sebmarkbage Feb 20, 2023
bb1e3d0
Fail yarn build if any bundle fails to build (#26207)
eps1lon Feb 20, 2023
c7967b1
Distribute bundles more evenly into CI shards (#26208)
eps1lon Feb 20, 2023
70b0bbd
[fizz][external-runtime] Fix: process mutation records before disconn…
mofeiZ Feb 21, 2023
60144a0
Split out Edge and Node implementations of the Flight Client (#26187)
sebmarkbage Feb 21, 2023
c8d4eed
Rename `yarn start` to `yarn dev` and `yarn start:prod` to `yarn star…
sebmarkbage Feb 21, 2023
0a76fb9
Copy from build to node_modules instead of linking to builds (#26210)
sebmarkbage Feb 21, 2023
212b89f
Bug: yarn flow dom does not exist, so console should suggest yarn flo…
abhiram11 Feb 21, 2023
c04b180
Remove eventTime field from class Update type (#26219)
acdlite Feb 22, 2023
bfb9cbd
[difftrain] Make github sha clickable for easier debugging (#26225)
poteto Feb 23, 2023
ca2cf31
[DevTools] permanently polyfill for rAF in devtools_page (#26193)
mondaychen Feb 23, 2023
96cdeaf
[Fizz Node] Fix null bytes written at text chunk boundaries (#26228)
sophiebits Feb 24, 2023
a8f971b
Switch to mount dispatcher after use() when needed (#26232)
sophiebits Feb 24, 2023
5641660
[DevTools] remove script tag immediately (#26233)
mondaychen Feb 24, 2023
e7d7d4c
Move Flight Fixture to use Middleware instead of WebDevServer (#26246)
sebmarkbage Feb 25, 2023
1173a17
[Float][Fizz][Fiber] implement preconnect and prefetchDNS float metho…
gnoff Feb 25, 2023
6ff1733
[Float][Fizz][Fiber] support type for ReactDOM.preload() options (#26…
gnoff Feb 25, 2023
b2ae9dd
Cleanup enableSyncDefaultUpdate flag (#26236)
kassens Feb 27, 2023
38509cc
Add preconnect and prefetchDNS to rendering-stub (#26265)
huozhi Feb 28, 2023
40755c0
[Flight Fixture] Proxy requests through the global server instead of …
sebmarkbage Mar 1, 2023
67a61d5
[Flight Fixture] Show SSR Support with CSS (#26263)
sebmarkbage Mar 1, 2023
4111002
Fix: Selective hydration causing incorrect thenable type passed to De…
acdlite Mar 1, 2023
d49e0e0
Removed unused imperative events implementation from React Native ren…
rubennorte Mar 2, 2023
e524467
New internal testing helpers: waitFor, waitForAll, waitForPaint (#26285)
acdlite Mar 3, 2023
25a8b97
Codemod tests to waitFor pattern (1/?) (#26288)
acdlite Mar 3, 2023
b72ed69
Fixed incorrect value returned as public instance from reconciler (#2…
rubennorte Mar 3, 2023
fcf2187
[DevTools] Remove renderer.js from extension build (#26234)
mondaychen Mar 3, 2023
b073104
[DevTools] improve troubleshooting in README (#26235)
mondaychen Mar 3, 2023
5c633a4
Add back accidentally deleted test comments (#26294)
acdlite Mar 3, 2023
1f1f8eb
[Float][Fizz][Fiber]: Refactor <style> Resource implementation to gro…
gnoff Mar 3, 2023
ce8a72f
Codemod tests to waitFor pattern (2/?) (#26296)
acdlite Mar 3, 2023
e64a8f4
Codemod tests to waitFor pattern (3/?) (#26299)
acdlite Mar 3, 2023
06460b6
Remove unnecessary (and incorrect) code for compatibility with Paper …
rubennorte Mar 3, 2023
faacefb
Codemod tests to waitFor pattern (4/?) (#26302)
acdlite Mar 4, 2023
03462cf
[Fizz] External runtime: fix bug in processing existing elements (#26…
mofeiZ Mar 4, 2023
9a52cc8
Convert ReactLazy-test to waitFor pattern (#26304)
acdlite Mar 4, 2023
e98695d
Codemod tests to waitFor pattern (6/?) (#26305)
acdlite Mar 4, 2023
3cb5afb
Codemod tests to waitFor pattern (7/?) (#26307)
acdlite Mar 4, 2023
64dde70
Codemod tests to waitFor pattern (8/?) (#26308)
acdlite Mar 4, 2023
25685d8
Codemod tests to waitFor pattern (9/?) (#26309)
acdlite Mar 4, 2023
e0241b6
Simplify Webpack References by encoding file path + export name as si…
sebmarkbage Mar 5, 2023
f905da2
[Flight] Send server reference error chunks to the client (#26293)
unstubbable Mar 5, 2023
106ea1c
Support Iterables in Flight (#26313)
sebmarkbage Mar 5, 2023
49f7410
Fix: Infinite act loop caused by wrong shouldYield (#26317)
acdlite Mar 6, 2023
eb616a1
Extract duplicated methods in Fabric and the legacy renderer to a sha…
rubennorte Mar 6, 2023
4bbac04
Upgrade Flow to 0.201 (#26326)
kassens Mar 6, 2023
1528c5c
SchedulerMock.unstable_yieldValue -> SchedulerMock.log (#26312)
acdlite Mar 6, 2023
6e1756a
Move suspended render logic to ensureRootIsScheduled (#26328)
acdlite Mar 6, 2023
88313ff
Codesandbox: upgrade to Node.js 18 (#26330)
kassens Mar 6, 2023
ba353a5
Build: make version in build artifacts match (#26329)
kassens Mar 6, 2023
3cad3a5
Use content hash for facebook-www builds (#26331)
kassens Mar 6, 2023
8a9f82e
[Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrat…
gnoff Mar 6, 2023
978fae4
[Float][Fiber] implement a faster hydration match for hoistable eleme…
gnoff Mar 7, 2023
8f812e7
Refactor ReactFabricHostComponent (#26323)
rubennorte Mar 7, 2023
b380c24
Convert class equivlance tests to flushSync (#26333)
acdlite Mar 7, 2023
703c675
Codemod act -> await act (1/?) (#26334)
acdlite Mar 7, 2023
58605f7
Codemod act -> await act (2/?) (#26335)
acdlite Mar 7, 2023
161f6ae
Codemod act -> await act (3/?) (#26336)
acdlite Mar 7, 2023
aef9303
[DevTools] upgrade electron to latest version & security improvements…
mondaychen Mar 8, 2023
9fb2469
Restore definition of NativeMethods as an object for React Native (#2…
rubennorte Mar 8, 2023
702fc98
Codemod act -> await act (4/?) (#26338)
acdlite Mar 8, 2023
d814473
[Internal API only] Delete non-awaited form of act (#26339)
acdlite Mar 8, 2023
8c10062
Build: specify Node.js 16 as minimum for dev (#26343)
kassens Mar 8, 2023
44d3807
Move internalAct to internal-test-utils package (#26344)
acdlite Mar 8, 2023
f36ab0e
Remove timers from ReactDOMSuspensePlaceholder tests (#26346)
acdlite Mar 8, 2023
8364377
Internal test helpers: Use Node's MessageChannel to queue task (#26345)
acdlite Mar 8, 2023
d8e49f2
Use setTimeout to schedule work on the server in Edge environments (#…
sebmarkbage Mar 8, 2023
0373782
Internal `act`: Call scope function after an async gap (#26347)
acdlite Mar 8, 2023
62cd5af
Codemod redundant async act scopes (#26350)
acdlite Mar 8, 2023
2b003a5
Split out ServerReferenceMetadata into Id and Bound Arguments (#26351)
sebmarkbage Mar 9, 2023
3706edb
[Float][Fizz]: Don't preload nomodule scripts (#26353)
gnoff Mar 9, 2023
39d4b93
[Internal tests] Close MessageChannel port to prevent leak (#26357)
acdlite Mar 9, 2023
d1ad984
[Flight] Add support for returning `undefined` from render (#26349)
eps1lon Mar 9, 2023
a8875ea
Update more tests to not rely on sync queuing (#26358)
acdlite Mar 10, 2023
ef8bdbe
[Flight Reply] Add Reply Encoding (#26360)
sebmarkbage Mar 10, 2023
be353d2
[Flight Reply] Add undefined and Iterable Support (#26365)
sebmarkbage Mar 10, 2023
a22bd99
[DevTools] prevent StyleX plugin from throwing when inspecting CSS (#…
mondaychen Mar 10, 2023
93c10df
flushSync: Exhaust queue even if something throws (#26366)
acdlite Mar 10, 2023
69fd78f
Update Float tests to check for specific errors (#26367)
acdlite Mar 10, 2023
7741118
[Flight Fixture] Fix proxying with compression (#26368)
sebmarkbage Mar 11, 2023
432ffc9
Convert more Scheduler.unstable_flushAll in tests to new test utils (…
tyao1 Mar 11, 2023
6334614
Add disableLegacyContext test gates where needed (#26371)
acdlite Mar 11, 2023
f411e89
Remote `.internal` override from untrusted URL tests (#26372)
acdlite Mar 11, 2023
d4f58c3
Support Promise as a renderable node (#25634)
acdlite Mar 11, 2023
1317681
Support Context as renderable node (#25641)
acdlite Mar 11, 2023
cd20376
Remove internal `act` from DevTools e2e test (#26376)
acdlite Mar 12, 2023
f828bad
Extracted definition and access to public instances to a separate mod…
rubennorte Mar 13, 2023
2788d0d
Allow empty string to be passed to formAction (#26379)
sebmarkbage Mar 13, 2023
6bd53a5
Remove FeatureFlags fork for `react-dom/unstable_testing` (#26383)
sebmarkbage Mar 13, 2023
56a3c18
[Flight fixture] Remove redundant `use` (#26373)
acdlite Mar 14, 2023
21aee59
Delete unused DOM files (#26387)
sebmarkbage Mar 14, 2023
d310d65
Avoid meta programming to initialize functions in module scope (#26388)
sebmarkbage Mar 15, 2023
a57f40d
Undo dependency injection of batching (#26389)
sebmarkbage Mar 15, 2023
cfc1274
Disable IE innerHTML workaround behind a flag (#26390)
sebmarkbage Mar 15, 2023
47cf4e5
Restore some guards in ReactFabricGlobalResponderHandler after refact…
rubennorte Mar 15, 2023
99aa082
Remove unstable_flushControlled (#26397)
kassens Mar 15, 2023
21f6dba
Sync from oss-experimental, not oss-stable (#26401)
rickhanlonii Mar 16, 2023
05777ff
Setting transition pending flag shouldn't be part of a surrounding tr…
sophiebits Mar 16, 2023
e4606c1
Add missing `"react-dom/server.bun"` entry in package.json `"exports"…
Jarred-Sumner Mar 16, 2023
9941cba
Fix devtools tests after internal test changes (#26405)
rickhanlonii Mar 16, 2023
480aa77
Remove hydrate entry point from www builds (#26400)
sebmarkbage Mar 16, 2023
eaccf27
Revert "Remove hydrate entry point from www builds" (#26413)
kassens Mar 16, 2023
87c803d
Fix a test case in ReactUpdates-test (#26399)
tyao1 Mar 16, 2023
8fa41ff
Don't "fix up" mismatched text content with suppressedHydrationWarnin…
sebmarkbage Mar 17, 2023
108aed0
Fix use of stale props in Fabric events (#26408)
rubennorte Mar 17, 2023
163d86e
Updated comment message (#26158)
notEpsilon Mar 17, 2023
5530855
[www] enable enableFilterEmptyStringAttributesDOM flag (#26410)
kassens Mar 17, 2023
6854a3c
[difftrain] Fix broken workflow (#26421)
poteto Mar 17, 2023
6310087
[ci] Fix download_base_build_for_sizebot (#26422)
poteto Mar 17, 2023
db281b3
Feature: Suspend commit without blocking render (#26398)
acdlite Mar 17, 2023
842bd78
Fix sizebot not working due to missing auth token (#26423)
acdlite Mar 18, 2023
c57b90f
[DiffTrain] Add artifacts for React Native to compiled (#26204)
sammy-SC Mar 20, 2023
3554c88
Clean interface for public instances between React and React Native (…
rubennorte Mar 20, 2023
0131d0c
Check if suspensey instance resolves in immediate task (#26427)
acdlite Mar 20, 2023
520f7f3
Refactor ReactDOMComponent to use flatter property operations (#26433)
sebmarkbage Mar 21, 2023
77ba161
Bugfix: Remove extra render pass when reverting to client render (#26…
acdlite Mar 21, 2023
12a1d14
Don't prerender siblings of suspended component (#26380)
acdlite Mar 21, 2023
0018cf2
Add REVISION file to react-fbsource-import (#26448)
sammy-SC Mar 21, 2023
ffb6733
fix docs link for useSyncExternalStore (#26452)
sdta25196 Mar 22, 2023
bd5e323
Small Flow upgrade to 0.202.0 (#26435)
kassens Mar 22, 2023
56f7a90
chore: update new docs links for react-dom (#26456)
leedom92 Mar 22, 2023
c0b34bc
chore: update links of docs and api (#26455)
leedom92 Mar 22, 2023
b93b4f0
Should not throw for children of iframe or object (#26458)
sebmarkbage Mar 22, 2023
8bdf162
React DevTools 4.27.2 -> 4.27.3 (#26459)
mondaychen Mar 22, 2023
8e17bfd
Make InternalInstanceHandle type opaque in ReactNativeTypes (#26461)
rubennorte Mar 22, 2023
afb3d51
Fix enableClientRenderFallbackOnTextMismatch flag (#26457)
sebmarkbage Mar 22, 2023
51a7c45
Bugfix: SuspenseList incorrectly forces a fallback (#26453)
acdlite Mar 22, 2023
f77099b
Remove layout effect warning on the server (#26395)
rickhanlonii Mar 22, 2023
9c54b29
Remove ReactFabricPublicInstance and used definition from ReactNative…
rubennorte Mar 22, 2023
909c6da
Update Rollup to 3.x (#26442)
markerikson Mar 24, 2023
bde974a
[DevTools] missing file name in package.json (#26469)
mondaychen Mar 24, 2023
3fcf209
React DevTools 4.27.3 -> 4.27.4 (#26470)
mondaychen Mar 24, 2023
175962c
Fix remaining CommonJS imports after Rollup upgrade (#26473)
gaearon Mar 25, 2023
73b6435
[Float][Fiber] Implement waitForCommitToBeReady for stylesheet resour…
gnoff Mar 25, 2023
d12bdcd
Fix Flow types of useEffectEvent (#26468)
eps1lon Mar 25, 2023
768f965
Suspensily committing a prerendered tree (#26434)
acdlite Mar 27, 2023
afea1d0
[flow] make Flow suppressions explicit on the error (#26487)
kassens Mar 27, 2023
8342a09
Remove unused feature flag disableSchedulerTimeoutBasedOnReactExpirat…
kassens Mar 27, 2023
8faf751
Codemod some expiration tests to waitForExpired (#26491)
acdlite Mar 27, 2023
e0bbc26
Improve tests that deal with microtasks (#26493)
acdlite Mar 28, 2023
fc90eb6
Codemod more tests to waitFor pattern (#26494)
acdlite Mar 28, 2023
41b4714
Remove disableNativeComponentFrames (#26490)
rickhanlonii Mar 28, 2023
f718199
[DevTools] browser extension: improve script injection logic (#26492)
mondaychen Mar 28, 2023
f62cb39
Make disableSchedulerTimeoutInWorkLoop a static ff (#26497)
rickhanlonii Mar 28, 2023
1f5cdf8
Update Suspense fuzz tests to use `act` (#26498)
acdlite Mar 28, 2023
5cbe625
Remove unnecessary CIRCLE_CI_API_TOKEN checks (#26499)
mondaychen Mar 28, 2023
85de6fd
Refactor DOM special cases per tags including controlled fields (#26501)
sebmarkbage Mar 29, 2023
fd0511c
[Flight] Add support BigInt support (#26479)
eps1lon Mar 29, 2023
f118b7c
[Flight] Gated test for dropped transport of undefined object values …
eps1lon Mar 29, 2023
90995ef
Delete "triangle" resuming fuzz tester (#26508)
acdlite Mar 29, 2023
f0aafa1
Convert a few more tests to waitFor test helpers (#26509)
acdlite Mar 29, 2023
4c2fc01
Generate safe javascript url instead of throwing with disableJavaScri…
sebmarkbage Mar 30, 2023
29a3be7
Move ReactDOMFloat to react-dom/src/ (#26514)
sebmarkbage Mar 30, 2023
0ffc7f6
Update useMemoCache test to confirm that cache persists across errors…
josephsavona Mar 30, 2023
2d51251
Clean up deferRenderPhaseUpdateToNextBatch (#26511)
acdlite Mar 30, 2023
73deff0
Refactor DOMProperty and CSSProperty (#26513)
sebmarkbage Mar 30, 2023
5b8cf20
Add Circle CI API token to request header if available (#26519)
mondaychen Mar 30, 2023
1a1d61f
Warn for ARIA typos on custom elements (#26523)
sebmarkbage Mar 30, 2023
1308e49
[Flight Plugin] Scan for "use client" (#26474)
gaearon Mar 30, 2023
43a70a6
Limit the meaning of "custom element" to not include `is` (#26524)
sebmarkbage Mar 30, 2023
ca01f35
Remove skipUnmountedBoundaries (#26489)
rickhanlonii Mar 31, 2023
8310854
Clean up enableCapturePhaseSelectiveHydrationWithoutDiscreteEventRepl…
acdlite Mar 31, 2023
09c8d25
Move update scheduling to microtask (#26512)
acdlite Mar 31, 2023
8888746
Allow transitions to interrupt Suspensey commits (#26531)
acdlite Mar 31, 2023
0ae3480
[Float] Suspend unstyled content for up to 1 minute (#26532)
acdlite Mar 31, 2023
7329ea8
Fix suspense replaying forward refs (#26535)
hansottowirtz Apr 2, 2023
b14f8da
refactor[devtools]: forbid editing class instances in props (#26522)
hoxyq Apr 3, 2023
4a1cc2d
Fix logic around attribute seralization (#26526)
gnoff Apr 3, 2023
52bc271
Use native scheduler if defined in global scope
sammy-SC Apr 5, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
252 changes: 104 additions & 148 deletions .circleci/config.yml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion .codesandbox/ci.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"packages": ["packages/react", "packages/react-dom", "packages/scheduler"],
"buildCommand": "download-build-in-codesandbox-ci",
"node": "14",
"node": "18",
"publishDirectory": {
"react": "build/oss-experimental/react",
"react-dom": "build/oss-experimental/react-dom",
Expand Down
266 changes: 252 additions & 14 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,26 @@ const {
const restrictedGlobals = require('confusing-browser-globals');

const OFF = 0;
const WARNING = 1;
const ERROR = 2;

module.exports = {
extends: ['fbjs', 'prettier'],
extends: ['prettier'],

// Stop ESLint from looking for a configuration file in parent folders
root: true,

plugins: [
'babel',
'ft-flow',
'jest',
'no-for-of-loops',
'no-function-declare-after-return',
'react',
'react-internal',
],

parser: 'babel-eslint',
parser: 'hermes-eslint',
parserOptions: {
ecmaVersion: 9,
sourceType: 'script',
Expand All @@ -33,6 +36,190 @@ module.exports = {
// We're stricter than the default config, mostly. We'll override a few rules
// and then enable some React specific ones.
rules: {
'ft-flow/array-style-complex-type': [OFF, 'verbose'],
'ft-flow/array-style-simple-type': [OFF, 'verbose'], // TODO should be WARNING
'ft-flow/boolean-style': ERROR,
'ft-flow/no-dupe-keys': ERROR,
'ft-flow/no-primitive-constructor-types': ERROR,
'ft-flow/no-types-missing-file-annotation': OFF, // TODO should be ERROR
'ft-flow/no-unused-expressions': ERROR,
// 'ft-flow/no-weak-types': WARNING,
// 'ft-flow/require-valid-file-annotation': ERROR,

'no-cond-assign': OFF,
'no-constant-condition': OFF,
'no-control-regex': OFF,
'no-debugger': ERROR,
'no-dupe-args': ERROR,
'no-dupe-keys': ERROR,
'no-duplicate-case': WARNING,
'no-empty-character-class': WARNING,
'no-empty': OFF,
'no-ex-assign': WARNING,
'no-extra-boolean-cast': WARNING,
'no-func-assign': ERROR,
'no-invalid-regexp': WARNING,
'no-irregular-whitespace': WARNING,
'no-negated-in-lhs': ERROR,
'no-obj-calls': ERROR,
'no-regex-spaces': WARNING,
'no-sparse-arrays': ERROR,
'no-unreachable': ERROR,
'use-isnan': ERROR,
'valid-jsdoc': OFF,
'block-scoped-var': OFF,
complexity: OFF,
'default-case': OFF,
'guard-for-in': OFF,
'no-alert': OFF,
'no-caller': ERROR,
'no-case-declarations': OFF,
'no-div-regex': OFF,
'no-else-return': OFF,
'no-empty-pattern': WARNING,
'no-eq-null': OFF,
'no-eval': ERROR,
'no-extend-native': WARNING,
'no-extra-bind': WARNING,
'no-fallthrough': WARNING,
'no-implicit-coercion': OFF,
'no-implied-eval': ERROR,
'no-invalid-this': OFF,
'no-iterator': OFF,
'no-labels': [ERROR, {allowLoop: true, allowSwitch: true}],
'no-lone-blocks': WARNING,
'no-loop-func': OFF,
'no-magic-numbers': OFF,
'no-multi-str': ERROR,
'no-native-reassign': [ERROR, {exceptions: ['Map', 'Set']}],
'no-new-func': ERROR,
'no-new': WARNING,
'no-new-wrappers': WARNING,
'no-octal-escape': WARNING,
'no-octal': WARNING,
'no-param-reassign': OFF,
'no-process-env': OFF,
'no-proto': ERROR,
'no-redeclare': OFF, // TODO should be WARNING?
'no-return-assign': OFF,
'no-script-url': ERROR,
'no-self-compare': WARNING,
'no-sequences': WARNING,
'no-throw-literal': ERROR,
'no-useless-call': WARNING,
'no-void': OFF,
'no-warning-comments': OFF,
'no-with': OFF,
radix: WARNING,
'vars-on-top': OFF,
yoda: OFF,
'init-declarations': OFF,
'no-catch-shadow': ERROR,
'no-delete-var': ERROR,
'no-label-var': WARNING,
'no-shadow-restricted-names': WARNING,
'no-undef-init': OFF,
'no-undef': ERROR,
'no-undefined': OFF,
'callback-return': OFF,
'global-require': OFF,
'handle-callback-err': OFF,
'no-mixed-requires': OFF,
'no-new-require': OFF,
'no-path-concat': OFF,
'no-process-exit': OFF,
'no-restricted-modules': OFF,
'no-sync': OFF,
camelcase: [OFF, {properties: 'always'}],
'consistent-this': [OFF, 'self'],
'func-names': OFF,
'func-style': [OFF, 'declaration'],
'id-length': OFF,
'id-match': OFF,
'max-depth': OFF,
'max-nested-callbacks': OFF,
'max-params': OFF,
'max-statements': OFF,
'new-cap': OFF,
'newline-after-var': OFF,
'no-array-constructor': ERROR,
'no-continue': OFF,
'no-inline-comments': OFF,
'no-lonely-if': OFF,
'no-negated-condition': OFF,
'no-nested-ternary': OFF,
'no-new-object': WARNING,
'no-plusplus': OFF,
'no-ternary': OFF,
'no-underscore-dangle': OFF,
'no-unneeded-ternary': WARNING,
'one-var': [WARNING, {initialized: 'never'}],
'operator-assignment': [WARNING, 'always'],
'require-jsdoc': OFF,
'sort-vars': OFF,
'spaced-comment': [
OFF,
'always',
{exceptions: ['jshint', 'jslint', 'eslint', 'global']},
],
'constructor-super': ERROR,
'no-class-assign': WARNING,
'no-const-assign': ERROR,
'no-dupe-class-members': ERROR,
'no-this-before-super': ERROR,
'object-shorthand': OFF,
'prefer-const': OFF,
'prefer-spread': OFF,
'prefer-reflect': OFF,
'prefer-template': OFF,
'require-yield': OFF,
'babel/generator-star-spacing': OFF,
'babel/new-cap': OFF,
'babel/array-bracket-spacing': OFF,
'babel/object-curly-spacing': OFF,
'babel/object-shorthand': OFF,
'babel/arrow-parens': OFF,
'babel/no-await-in-loop': OFF,
'babel/flow-object-type': OFF,
'react/display-name': OFF,
'react/forbid-prop-types': OFF,
'react/jsx-closing-bracket-location': OFF,
'react/jsx-curly-spacing': OFF,
'react/jsx-equals-spacing': WARNING,
'react/jsx-filename-extension': OFF,
'react/jsx-first-prop-new-line': OFF,
'react/jsx-handler-names': OFF,
'react/jsx-indent': OFF,
'react/jsx-indent-props': OFF,
'react/jsx-key': OFF,
'react/jsx-max-props-per-line': OFF,
'react/jsx-no-bind': OFF,
'react/jsx-no-duplicate-props': ERROR,
'react/jsx-no-literals': OFF,
'react/jsx-no-target-blank': OFF,
'react/jsx-pascal-case': OFF,
'react/jsx-sort-props': OFF,
'react/jsx-uses-vars': ERROR,
'react/no-comment-textnodes': OFF,
'react/no-danger': OFF,
'react/no-deprecated': OFF,
'react/no-did-mount-set-state': OFF,
'react/no-did-update-set-state': OFF,
'react/no-direct-mutation-state': OFF,
'react/no-multi-comp': OFF,
'react/no-render-return-value': OFF,
'react/no-set-state': OFF,
'react/no-string-refs': OFF,
'react/no-unknown-property': OFF,
'react/prefer-es6-class': OFF,
'react/prefer-stateless-function': OFF,
'react/prop-types': OFF,
'react/require-extension': OFF,
'react/require-optimization': OFF,
'react/require-render-return': OFF,
'react/sort-comp': OFF,
'react/sort-prop-types': OFF,

'accessor-pairs': OFF,
'brace-style': [ERROR, '1tbs'],
'consistent-return': OFF,
Expand All @@ -51,7 +238,6 @@ module.exports = {
'no-restricted-globals': [ERROR].concat(restrictedGlobals),
'no-restricted-syntax': [ERROR, 'WithStatement'],
'no-shadow': ERROR,
'no-unused-expressions': ERROR,
'no-unused-vars': [ERROR, {args: 'none'}],
'no-use-before-define': OFF,
'no-useless-concat': OFF,
Expand All @@ -74,8 +260,6 @@ module.exports = {
// deal. But I turned it off because loading the plugin causes some obscure
// syntax error and it didn't seem worth investigating.
'max-len': OFF,
// Prettier forces semicolons in a few places
'flowtype/object-type-delimiter': OFF,

// React & JSX
// Our transforms set this automatically
Expand Down Expand Up @@ -141,6 +325,7 @@ module.exports = {
'packages/react-native-renderer/**/*.js',
'packages/eslint-plugin-react-hooks/**/*.js',
'packages/jest-react/**/*.js',
'packages/internal-test-utils/**/*.js',
'packages/**/__tests__/*.js',
'packages/**/npm/*.js',
],
Expand All @@ -166,7 +351,7 @@ module.exports = {
// We apply these settings to the source files that get compiled.
// They can use all features including JSX (but shouldn't use `var`).
files: esNextPaths,
parser: 'babel-eslint',
parser: 'hermes-eslint',
parserOptions: {
ecmaVersion: 8,
sourceType: 'module',
Expand Down Expand Up @@ -204,14 +389,6 @@ module.exports = {
ERROR,
{isProductionUserAppCode: false},
],

// Disable accessibility checks
'jsx-a11y/aria-role': OFF,
'jsx-a11y/no-noninteractive-element-interactions': OFF,
'jsx-a11y/no-static-element-interactions': OFF,
'jsx-a11y/role-has-required-aria-props': OFF,
'jsx-a11y/no-noninteractive-tabindex': OFF,
'jsx-a11y/tabindex-no-positive': OFF,
},
},
{
Expand Down Expand Up @@ -253,10 +430,71 @@ module.exports = {
},
],

env: {
browser: true,
es6: true,
node: true,
jest: true,
},

globals: {
$Call: 'readonly',
$ElementType: 'readonly',
$Flow$ModuleRef: 'readonly',
$FlowFixMe: 'readonly',
$Keys: 'readonly',
$NonMaybeType: 'readonly',
$PropertyType: 'readonly',
$ReadOnly: 'readonly',
$ReadOnlyArray: 'readonly',
$Shape: 'readonly',
AnimationFrameID: 'readonly',
// For Flow type annotation. Only `BigInt` is valid at runtime.
bigint: 'readonly',
BigInt: 'readonly',
Class: 'readonly',
ClientRect: 'readonly',
CopyInspectedElementPath: 'readonly',
DOMHighResTimeStamp: 'readonly',
EventListener: 'readonly',
Iterable: 'readonly',
Iterator: 'readonly',
JSONValue: 'readonly',
JSResourceReference: 'readonly',
MouseEventHandler: 'readonly',
PropagationPhases: 'readonly',
PropertyDescriptor: 'readonly',
React$AbstractComponent: 'readonly',
React$Component: 'readonly',
React$ComponentType: 'readonly',
React$Config: 'readonly',
React$Context: 'readonly',
React$Element: 'readonly',
React$ElementConfig: 'readonly',
React$ElementProps: 'readonly',
React$ElementRef: 'readonly',
React$ElementType: 'readonly',
React$Key: 'readonly',
React$Node: 'readonly',
React$Portal: 'readonly',
React$Ref: 'readonly',
React$StatelessFunctionalComponent: 'readonly',
ReadableStreamController: 'readonly',
RequestInfo: 'readonly',
RequestOptions: 'readonly',
ResponseState: 'readonly',
StoreAsGlobal: 'readonly',
symbol: 'readonly',
SyntheticEvent: 'readonly',
SyntheticMouseEvent: 'readonly',
Thenable: 'readonly',
TimeoutID: 'readonly',
WheelEventHandler: 'readonly',

spyOnDev: 'readonly',
spyOnDevAndProd: 'readonly',
spyOnProd: 'readonly',
__DEV__: 'readonly',
__EXPERIMENTAL__: 'readonly',
__EXTENSION__: 'readonly',
__PROFILE__: 'readonly',
Expand Down
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
3. If you've fixed a bug or added code that should be tested, add tests!
4. Ensure the test suite passes (`yarn test`). Tip: `yarn test --watch TestName` is helpful in development.
5. Run `yarn test --prod` to test in the production environment. It supports the same options as `yarn test`.
6. If you need a debugger, run `yarn debug-test --watch TestName`, open `chrome://inspect`, and press "Inspect".
6. If you need a debugger, run `yarn test --debug --watch TestName`, open `chrome://inspect`, and press "Inspect".
7. Format your code with [prettier](https://github.com/prettier/prettier) (`yarn prettier`).
8. Make sure your code lints (`yarn lint`). Tip: `yarn linc` to only check changed files.
9. Run the [Flow](https://flowtype.org/) type checks (`yarn flow`).
Expand Down