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

Add back useMutableSource temporarily #22396

Merged
merged 1 commit into from
Sep 22, 2021
Merged

Conversation

acdlite
Copy link
Collaborator

@acdlite acdlite commented Sep 22, 2021

Recoil uses useMutableSource behind a flag. I thought this was fine because Recoil isn't used in any concurrent roots, so the behavior would be the same, but it turns out that it is used by concurrent roots in a few places.

I'm not expecting it to be hard to migrate to useSyncExternalStore, but to de-risk the change I'm going to roll it out gradually with a flag. In the meantime, I've added back the useMutableSource API.

Recoil uses useMutableSource behind a flag. I thought this was fine
because Recoil isn't used in any concurrent roots, so the behavior
would be the same, but it turns out that it is used by concurrent
roots in a few places.

I'm not expecting it to be hard to migrate to useSyncExternalStore, but
to de-risk the change I'm going to roll it out gradually with a flag. In
the meantime, I've added back the useMutableSource API.
@sizebot
Copy link

sizebot commented Sep 22, 2021

Comparing: 8fcfdff...41ae6c2

Critical size changes

Includes critical production bundles, as well as any change greater than 2%:

Name +/- Base Current +/- gzip Base gzip Current gzip
oss-stable/react-dom/cjs/react-dom.production.min.js +1.69% 127.37 kB 129.52 kB +1.74% 40.58 kB 41.28 kB
oss-experimental/react-dom/cjs/react-dom.production.min.js +1.65% 130.19 kB 132.34 kB +1.74% 41.50 kB 42.22 kB
facebook-www/ReactDOM-prod.classic.js +1.40% 405.41 kB 411.10 kB +1.38% 75.05 kB 76.08 kB
facebook-www/ReactDOM-prod.modern.js +1.44% 394.00 kB 399.67 kB +1.41% 73.34 kB 74.37 kB
facebook-www/ReactDOMForked-prod.classic.js +1.40% 405.41 kB 411.10 kB +1.38% 75.05 kB 76.08 kB
oss-experimental/react/cjs/react-unstable-shared-subset.production.min.js +3.95% 6.30 kB 6.55 kB +2.76% 2.61 kB 2.68 kB
oss-stable-semver/react/cjs/react.production.min.js +3.61% 6.87 kB 7.12 kB +2.51% 2.75 kB 2.82 kB
oss-stable/react/cjs/react.production.min.js +3.61% 6.87 kB 7.12 kB +2.51% 2.75 kB 2.82 kB
facebook-react-native/react/cjs/React-prod.js +3.49% 16.64 kB 17.22 kB +2.77% 4.27 kB 4.38 kB
facebook-react-native/react/cjs/React-profiling.js +3.49% 16.64 kB 17.22 kB +2.77% 4.27 kB 4.38 kB
facebook-www/React-prod.modern.js +3.46% 16.77 kB 17.35 kB +2.65% 4.31 kB 4.42 kB
facebook-www/React-profiling.modern.js +3.46% 16.77 kB 17.35 kB +2.65% 4.31 kB 4.42 kB
facebook-www/React-prod.classic.js +3.43% 16.92 kB 17.50 kB +2.69% 4.35 kB 4.47 kB
facebook-www/React-profiling.classic.js +3.43% 16.92 kB 17.50 kB +2.69% 4.35 kB 4.47 kB
oss-experimental/react/cjs/react.production.min.js +3.27% 7.58 kB 7.83 kB +2.19% 2.92 kB 2.98 kB
oss-stable-semver/react-reconciler/cjs/react-reconciler.production.min.js +2.43% 89.34 kB 91.51 kB +2.54% 27.39 kB 28.09 kB
oss-stable/react-reconciler/cjs/react-reconciler.production.min.js +2.43% 89.34 kB 91.51 kB +2.54% 27.39 kB 28.09 kB
oss-experimental/react-debug-tools/cjs/react-debug-tools.development.js +2.40% 22.87 kB 23.41 kB +0.93% 6.15 kB 6.20 kB
oss-stable-semver/react-debug-tools/cjs/react-debug-tools.development.js +2.40% 22.87 kB 23.41 kB +0.93% 6.15 kB 6.20 kB
oss-stable/react-debug-tools/cjs/react-debug-tools.development.js +2.40% 22.87 kB 23.41 kB +0.93% 6.15 kB 6.20 kB
oss-experimental/react-reconciler/cjs/react-reconciler.production.min.js +2.37% 91.79 kB 93.96 kB +2.53% 28.14 kB 28.86 kB
oss-stable-semver/react-reconciler/cjs/react-reconciler.profiling.min.js +2.24% 97.11 kB 99.28 kB +2.26% 29.73 kB 30.40 kB
oss-stable/react-reconciler/cjs/react-reconciler.profiling.min.js +2.24% 97.11 kB 99.28 kB +2.26% 29.73 kB 30.40 kB
oss-experimental/react-reconciler/cjs/react-reconciler.profiling.min.js +2.18% 99.57 kB 101.75 kB +2.29% 30.45 kB 31.15 kB
oss-stable-semver/react/umd/react.profiling.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable/react/umd/react.profiling.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable-semver/react/umd/react.production.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable/react/umd/react.production.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable-semver/react-reconciler/cjs/react-reconciler.development.js +2.16% 697.66 kB 712.70 kB +2.28% 147.65 kB 151.02 kB
oss-stable/react-reconciler/cjs/react-reconciler.development.js +2.16% 697.66 kB 712.70 kB +2.28% 147.65 kB 151.02 kB
facebook-react-native/react-test-renderer/cjs/ReactTestRenderer-dev.js +2.15% 610.12 kB 623.22 kB +2.23% 131.57 kB 134.50 kB
oss-stable-semver/react-test-renderer/cjs/react-test-renderer.development.js +2.14% 599.66 kB 612.48 kB +2.19% 130.60 kB 133.46 kB
oss-stable/react-test-renderer/cjs/react-test-renderer.development.js +2.14% 599.66 kB 612.48 kB +2.19% 130.60 kB 133.46 kB
oss-stable-semver/react-test-renderer/umd/react-test-renderer.development.js +2.13% 629.00 kB 642.37 kB +2.15% 132.05 kB 134.89 kB
oss-stable/react-test-renderer/umd/react-test-renderer.development.js +2.13% 629.00 kB 642.37 kB +2.15% 132.05 kB 134.89 kB
facebook-www/ReactTestRenderer-dev.classic.js +2.11% 621.55 kB 634.69 kB +2.21% 132.80 kB 135.73 kB
facebook-www/ReactTestRenderer-dev.modern.js +2.11% 621.56 kB 634.70 kB +2.21% 132.81 kB 135.74 kB
oss-experimental/react-reconciler/cjs/react-reconciler.development.js +2.11% 713.73 kB 728.77 kB +2.24% 151.08 kB 154.46 kB
oss-experimental/react-test-renderer/cjs/react-test-renderer.development.js +2.08% 615.51 kB 628.33 kB +2.14% 133.96 kB 136.83 kB
oss-experimental/react-test-renderer/umd/react-test-renderer.development.js +2.07% 645.69 kB 659.07 kB +2.15% 135.41 kB 138.32 kB
oss-stable-semver/react-test-renderer/cjs/react-test-renderer.production.min.js +2.07% 77.82 kB 79.42 kB +2.14% 24.07 kB 24.58 kB
oss-stable/react-test-renderer/cjs/react-test-renderer.production.min.js +2.07% 77.82 kB 79.42 kB +2.14% 24.07 kB 24.58 kB
oss-stable-semver/react-test-renderer/umd/react-test-renderer.production.min.js +2.06% 78.03 kB 79.64 kB +2.13% 24.40 kB 24.92 kB
oss-stable/react-test-renderer/umd/react-test-renderer.production.min.js +2.06% 78.03 kB 79.64 kB +2.13% 24.40 kB 24.92 kB
oss-experimental/react/umd/react.profiling.min.js +2.05% 11.58 kB 11.82 kB +1.38% 4.57 kB 4.64 kB
oss-experimental/react/umd/react.production.min.js +2.05% 11.58 kB 11.82 kB +1.38% 4.57 kB 4.64 kB
oss-experimental/react-debug-tools/cjs/react-debug-tools.production.min.js +2.01% 6.76 kB 6.89 kB +1.13% 2.58 kB 2.61 kB
oss-stable-semver/react-debug-tools/cjs/react-debug-tools.production.min.js +2.01% 6.76 kB 6.89 kB +1.13% 2.58 kB 2.61 kB
oss-stable/react-debug-tools/cjs/react-debug-tools.production.min.js +2.01% 6.76 kB 6.89 kB +1.13% 2.58 kB 2.61 kB
oss-experimental/react-test-renderer/cjs/react-test-renderer.production.min.js +2.01% 80.20 kB 81.81 kB +2.09% 24.81 kB 25.33 kB

Significant size changes

Includes any change greater than 0.2%:

Expand to show
Name +/- Base Current +/- gzip Base gzip Current gzip
oss-experimental/react/cjs/react-unstable-shared-subset.production.min.js +3.95% 6.30 kB 6.55 kB +2.76% 2.61 kB 2.68 kB
oss-stable-semver/react/cjs/react.production.min.js +3.61% 6.87 kB 7.12 kB +2.51% 2.75 kB 2.82 kB
oss-stable/react/cjs/react.production.min.js +3.61% 6.87 kB 7.12 kB +2.51% 2.75 kB 2.82 kB
facebook-react-native/react/cjs/React-prod.js +3.49% 16.64 kB 17.22 kB +2.77% 4.27 kB 4.38 kB
facebook-react-native/react/cjs/React-profiling.js +3.49% 16.64 kB 17.22 kB +2.77% 4.27 kB 4.38 kB
facebook-www/React-prod.modern.js +3.46% 16.77 kB 17.35 kB +2.65% 4.31 kB 4.42 kB
facebook-www/React-profiling.modern.js +3.46% 16.77 kB 17.35 kB +2.65% 4.31 kB 4.42 kB
facebook-www/React-prod.classic.js +3.43% 16.92 kB 17.50 kB +2.69% 4.35 kB 4.47 kB
facebook-www/React-profiling.classic.js +3.43% 16.92 kB 17.50 kB +2.69% 4.35 kB 4.47 kB
oss-experimental/react/cjs/react.production.min.js +3.27% 7.58 kB 7.83 kB +2.19% 2.92 kB 2.98 kB
oss-stable-semver/react-reconciler/cjs/react-reconciler.production.min.js +2.43% 89.34 kB 91.51 kB +2.54% 27.39 kB 28.09 kB
oss-stable/react-reconciler/cjs/react-reconciler.production.min.js +2.43% 89.34 kB 91.51 kB +2.54% 27.39 kB 28.09 kB
oss-experimental/react-debug-tools/cjs/react-debug-tools.development.js +2.40% 22.87 kB 23.41 kB +0.93% 6.15 kB 6.20 kB
oss-stable-semver/react-debug-tools/cjs/react-debug-tools.development.js +2.40% 22.87 kB 23.41 kB +0.93% 6.15 kB 6.20 kB
oss-stable/react-debug-tools/cjs/react-debug-tools.development.js +2.40% 22.87 kB 23.41 kB +0.93% 6.15 kB 6.20 kB
oss-experimental/react-reconciler/cjs/react-reconciler.production.min.js +2.37% 91.79 kB 93.96 kB +2.53% 28.14 kB 28.86 kB
oss-stable-semver/react-reconciler/cjs/react-reconciler.profiling.min.js +2.24% 97.11 kB 99.28 kB +2.26% 29.73 kB 30.40 kB
oss-stable/react-reconciler/cjs/react-reconciler.profiling.min.js +2.24% 97.11 kB 99.28 kB +2.26% 29.73 kB 30.40 kB
oss-experimental/react-reconciler/cjs/react-reconciler.profiling.min.js +2.18% 99.57 kB 101.75 kB +2.29% 30.45 kB 31.15 kB
oss-stable-semver/react/umd/react.profiling.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable/react/umd/react.profiling.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable-semver/react/umd/react.production.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable/react/umd/react.production.min.js +2.17% 10.94 kB 11.18 kB +1.62% 4.40 kB 4.47 kB
oss-stable-semver/react-reconciler/cjs/react-reconciler.development.js +2.16% 697.66 kB 712.70 kB +2.28% 147.65 kB 151.02 kB
oss-stable/react-reconciler/cjs/react-reconciler.development.js +2.16% 697.66 kB 712.70 kB +2.28% 147.65 kB 151.02 kB
facebook-react-native/react-test-renderer/cjs/ReactTestRenderer-dev.js +2.15% 610.12 kB 623.22 kB +2.23% 131.57 kB 134.50 kB
oss-stable-semver/react-test-renderer/cjs/react-test-renderer.development.js +2.14% 599.66 kB 612.48 kB +2.19% 130.60 kB 133.46 kB
oss-stable/react-test-renderer/cjs/react-test-renderer.development.js +2.14% 599.66 kB 612.48 kB +2.19% 130.60 kB 133.46 kB
oss-stable-semver/react-test-renderer/umd/react-test-renderer.development.js +2.13% 629.00 kB 642.37 kB +2.15% 132.05 kB 134.89 kB
oss-stable/react-test-renderer/umd/react-test-renderer.development.js +2.13% 629.00 kB 642.37 kB +2.15% 132.05 kB 134.89 kB
facebook-www/ReactTestRenderer-dev.classic.js +2.11% 621.55 kB 634.69 kB +2.21% 132.80 kB 135.73 kB
facebook-www/ReactTestRenderer-dev.modern.js +2.11% 621.56 kB 634.70 kB +2.21% 132.81 kB 135.74 kB
oss-experimental/react-reconciler/cjs/react-reconciler.development.js +2.11% 713.73 kB 728.77 kB +2.24% 151.08 kB 154.46 kB
oss-experimental/react-test-renderer/cjs/react-test-renderer.development.js +2.08% 615.51 kB 628.33 kB +2.14% 133.96 kB 136.83 kB
oss-experimental/react-test-renderer/umd/react-test-renderer.development.js +2.07% 645.69 kB 659.07 kB +2.15% 135.41 kB 138.32 kB
oss-stable-semver/react-test-renderer/cjs/react-test-renderer.production.min.js +2.07% 77.82 kB 79.42 kB +2.14% 24.07 kB 24.58 kB
oss-stable/react-test-renderer/cjs/react-test-renderer.production.min.js +2.07% 77.82 kB 79.42 kB +2.14% 24.07 kB 24.58 kB
oss-stable-semver/react-test-renderer/umd/react-test-renderer.production.min.js +2.06% 78.03 kB 79.64 kB +2.13% 24.40 kB 24.92 kB
oss-stable/react-test-renderer/umd/react-test-renderer.production.min.js +2.06% 78.03 kB 79.64 kB +2.13% 24.40 kB 24.92 kB
oss-experimental/react/umd/react.profiling.min.js +2.05% 11.58 kB 11.82 kB +1.38% 4.57 kB 4.64 kB
oss-experimental/react/umd/react.production.min.js +2.05% 11.58 kB 11.82 kB +1.38% 4.57 kB 4.64 kB
oss-experimental/react-debug-tools/cjs/react-debug-tools.production.min.js +2.01% 6.76 kB 6.89 kB +1.13% 2.58 kB 2.61 kB
oss-stable-semver/react-debug-tools/cjs/react-debug-tools.production.min.js +2.01% 6.76 kB 6.89 kB +1.13% 2.58 kB 2.61 kB
oss-stable/react-debug-tools/cjs/react-debug-tools.production.min.js +2.01% 6.76 kB 6.89 kB +1.13% 2.58 kB 2.61 kB
oss-experimental/react-test-renderer/cjs/react-test-renderer.production.min.js +2.01% 80.20 kB 81.81 kB +2.09% 24.81 kB 25.33 kB
oss-experimental/react-test-renderer/umd/react-test-renderer.production.min.js +1.99% 80.40 kB 82.01 kB +2.28% 25.19 kB 25.77 kB
oss-stable-semver/react-art/cjs/react-art.production.min.js +1.98% 80.96 kB 82.57 kB +2.07% 25.05 kB 25.57 kB
oss-stable/react-art/cjs/react-art.production.min.js +1.98% 80.96 kB 82.57 kB +2.07% 25.05 kB 25.57 kB
oss-stable-semver/react-art/cjs/react-art.development.js +1.98% 648.04 kB 660.86 kB +2.04% 139.85 kB 142.71 kB
oss-stable/react-art/cjs/react-art.development.js +1.98% 648.04 kB 660.86 kB +2.04% 139.85 kB 142.71 kB
facebook-react-native/react-test-renderer/cjs/ReactTestRenderer-prod.js +1.97% 234.02 kB 238.62 kB +1.98% 42.85 kB 43.70 kB
oss-experimental/react-art/cjs/react-art.development.js +1.93% 663.92 kB 676.74 kB +1.99% 143.26 kB 146.11 kB
oss-experimental/react-art/cjs/react-art.production.min.js +1.93% 83.35 kB 84.95 kB +1.96% 25.86 kB 26.36 kB
facebook-www/ReactART-dev.modern.js +1.87% 702.19 kB 715.33 kB +1.97% 149.31 kB 152.25 kB
react-native/implementations/ReactFabric-dev.js +1.87% 700.88 kB 713.98 kB +1.90% 151.50 kB 154.38 kB
facebook-react-native/react-test-renderer/cjs/ReactTestRenderer-profiling.js +1.85% 248.60 kB 253.21 kB +2.09% 45.18 kB 46.12 kB
facebook-www/ReactART-dev.classic.js +1.84% 712.47 kB 725.61 kB +1.96% 151.39 kB 154.36 kB
react-native/implementations/ReactNativeRenderer-dev.js +1.82% 718.03 kB 731.12 kB +1.88% 155.38 kB 158.30 kB
react-native/implementations/ReactFabric-dev.fb.js +1.82% 720.99 kB 734.09 kB +1.90% 155.25 kB 158.19 kB
oss-stable-semver/react-art/umd/react-art.development.js +1.78% 751.23 kB 764.61 kB +1.81% 158.20 kB 161.07 kB
oss-stable/react-art/umd/react-art.development.js +1.78% 751.23 kB 764.61 kB +1.81% 158.20 kB 161.07 kB
react-native/implementations/ReactNativeRenderer-dev.fb.js +1.78% 736.12 kB 749.21 kB +1.83% 158.67 kB 161.58 kB
oss-experimental/react-art/umd/react-art.development.js +1.74% 767.95 kB 781.33 kB +1.79% 161.60 kB 164.49 kB
facebook-www/ReactART-prod.modern.js +1.72% 255.63 kB 260.04 kB +1.88% 45.65 kB 46.51 kB
react-native/implementations/ReactFabric-prod.js +1.70% 270.15 kB 274.75 kB +1.78% 48.43 kB 49.29 kB
oss-stable-semver/react-dom/umd/react-dom.production.min.js +1.69% 127.51 kB 129.67 kB +1.70% 41.37 kB 42.08 kB
oss-stable/react-dom/umd/react-dom.production.min.js +1.69% 127.51 kB 129.67 kB +1.70% 41.37 kB 42.08 kB
oss-stable-semver/react-dom/cjs/react-dom.production.min.js +1.69% 127.37 kB 129.52 kB +1.74% 40.58 kB 41.28 kB
oss-stable/react-dom/cjs/react-dom.production.min.js +1.69% 127.37 kB 129.52 kB +1.74% 40.58 kB 41.28 kB
facebook-www/ReactART-prod.classic.js +1.68% 263.29 kB 267.70 kB +1.84% 46.90 kB 47.76 kB
react-native/implementations/ReactFabric-prod.fb.js +1.66% 277.67 kB 282.27 kB +1.84% 49.83 kB 50.74 kB
oss-experimental/react-dom/cjs/react-dom.production.min.js +1.65% 130.19 kB 132.34 kB +1.74% 41.50 kB 42.22 kB
react-native/implementations/ReactNativeRenderer-prod.js +1.65% 278.68 kB 283.28 kB +1.73% 50.08 kB 50.95 kB
oss-experimental/react-dom/umd/react-dom.production.min.js +1.65% 130.30 kB 132.44 kB +1.64% 42.30 kB 42.99 kB
react-native/implementations/ReactNativeRenderer-prod.fb.js +1.63% 281.51 kB 286.11 kB +1.68% 50.77 kB 51.62 kB
facebook-www/ReactDOMTesting-dev.modern.js +1.62% 940.15 kB 955.38 kB +1.65% 211.12 kB 214.59 kB
react-native/implementations/ReactFabric-profiling.js +1.60% 288.05 kB 292.66 kB +1.79% 51.36 kB 52.28 kB
oss-stable-semver/react-dom/umd/react-dom.profiling.min.js +1.60% 135.13 kB 137.29 kB +1.62% 43.75 kB 44.46 kB
oss-stable/react-dom/umd/react-dom.profiling.min.js +1.60% 135.13 kB 137.29 kB +1.62% 43.75 kB 44.46 kB
oss-stable-semver/react-dom/cjs/react-dom.profiling.min.js +1.59% 135.04 kB 137.19 kB +1.71% 42.91 kB 43.64 kB
oss-stable/react-dom/cjs/react-dom.profiling.min.js +1.59% 135.04 kB 137.19 kB +1.71% 42.91 kB 43.64 kB
facebook-www/ReactDOMTesting-dev.classic.js +1.57% 967.22 kB 982.45 kB +1.60% 216.75 kB 220.22 kB
oss-experimental/react-dom/cjs/react-dom.profiling.min.js +1.56% 137.88 kB 140.03 kB +1.80% 43.83 kB 44.63 kB
oss-experimental/react-dom/umd/react-dom.profiling.min.js +1.56% 137.94 kB 140.09 kB +1.66% 44.60 kB 45.34 kB
react-native/implementations/ReactFabric-profiling.fb.js +1.56% 295.60 kB 300.20 kB +1.71% 52.85 kB 53.75 kB
react-native/implementations/ReactNativeRenderer-profiling.js +1.55% 296.62 kB 301.22 kB +1.79% 52.98 kB 53.93 kB
oss-stable-semver/react-dom/cjs/react-dom.development.js +1.54% 964.15 kB 979.03 kB +1.56% 216.42 kB 219.80 kB
oss-stable/react-dom/cjs/react-dom.development.js +1.54% 964.15 kB 979.03 kB +1.56% 216.42 kB 219.80 kB
react-native/implementations/ReactNativeRenderer-profiling.fb.js +1.54% 299.44 kB 304.04 kB +1.75% 53.68 kB 54.62 kB
oss-stable-semver/react-dom/umd/react-dom.development.js +1.53% 1,013.09 kB 1,028.62 kB +1.54% 219.02 kB 222.39 kB
oss-stable/react-dom/umd/react-dom.development.js +1.53% 1,013.09 kB 1,028.62 kB +1.54% 219.02 kB 222.39 kB
oss-experimental/react-dom/cjs/react-dom.development.js +1.52% 982.00 kB 996.88 kB +1.52% 220.18 kB 223.52 kB
oss-experimental/react-dom/umd/react-dom.development.js +1.50% 1,031.90 kB 1,047.43 kB +1.50% 222.76 kB 226.11 kB
facebook-www/ReactDOMTesting-prod.modern.js +1.48% 382.65 kB 388.31 kB +1.46% 72.59 kB 73.65 kB
facebook-www/ReactDOMForked-dev.modern.js +1.47% 1,037.10 kB 1,052.34 kB +1.51% 229.62 kB 233.10 kB
facebook-www/ReactDOM-dev.modern.js +1.47% 1,037.10 kB 1,052.34 kB +1.51% 229.63 kB 233.10 kB
facebook-www/ReactDOM-prod.modern.js +1.44% 394.00 kB 399.67 kB +1.41% 73.34 kB 74.37 kB
facebook-www/ReactDOMForked-prod.modern.js +1.44% 394.00 kB 399.67 kB +1.41% 73.34 kB 74.37 kB
facebook-www/ReactDOMForked-dev.classic.js +1.43% 1,061.55 kB 1,076.78 kB +1.49% 234.62 kB 238.12 kB
facebook-www/ReactDOM-dev.classic.js +1.43% 1,061.55 kB 1,076.78 kB +1.49% 234.62 kB 238.12 kB
facebook-www/ReactDOMTesting-prod.classic.js +1.43% 395.89 kB 401.56 kB +1.42% 74.65 kB 75.71 kB
facebook-www/ReactDOM-prod.classic.js +1.40% 405.41 kB 411.10 kB +1.38% 75.05 kB 76.08 kB
facebook-www/ReactDOMForked-prod.classic.js +1.40% 405.41 kB 411.10 kB +1.38% 75.05 kB 76.08 kB
oss-stable-semver/react-art/umd/react-art.production.min.js +1.38% 116.88 kB 118.49 kB +1.49% 36.27 kB 36.81 kB
oss-stable/react-art/umd/react-art.production.min.js +1.38% 116.88 kB 118.49 kB +1.49% 36.27 kB 36.81 kB
facebook-www/ReactDOM-profiling.modern.js +1.35% 420.22 kB 425.90 kB +1.29% 77.90 kB 78.91 kB
facebook-www/ReactDOMForked-profiling.modern.js +1.35% 420.22 kB 425.90 kB +1.29% 77.90 kB 78.91 kB
oss-experimental/react-art/umd/react-art.production.min.js +1.35% 119.27 kB 120.88 kB +1.37% 37.03 kB 37.54 kB
oss-experimental/react-suspense-test-utils/cjs/react-suspense-test-utils.js +1.34% 2.61 kB 2.65 kB +0.91% 1.09 kB 1.10 kB
oss-stable-semver/react-suspense-test-utils/cjs/react-suspense-test-utils.js +1.34% 2.61 kB 2.65 kB +0.91% 1.09 kB 1.10 kB
oss-stable/react-suspense-test-utils/cjs/react-suspense-test-utils.js +1.34% 2.61 kB 2.65 kB +0.91% 1.09 kB 1.10 kB
facebook-www/ReactDOM-profiling.classic.js +1.32% 431.69 kB 437.39 kB +1.27% 79.58 kB 80.60 kB
facebook-www/ReactDOMForked-profiling.classic.js +1.32% 431.69 kB 437.39 kB +1.27% 79.59 kB 80.60 kB
oss-experimental/react/cjs/react-unstable-shared-subset.development.js +1.25% 70.17 kB 71.05 kB +1.10% 19.11 kB 19.32 kB
oss-stable-semver/react/cjs/react.development.js +1.05% 83.54 kB 84.42 kB +1.01% 22.39 kB 22.62 kB
oss-stable/react/cjs/react.development.js +1.05% 83.54 kB 84.42 kB +1.01% 22.39 kB 22.62 kB
oss-experimental/react/cjs/react.development.js +1.04% 84.48 kB 85.36 kB +0.95% 22.54 kB 22.76 kB
facebook-react-native/react/cjs/React-dev.js +0.98% 99.87 kB 100.84 kB +0.88% 24.18 kB 24.40 kB
facebook-www/React-dev.modern.js +0.90% 108.40 kB 109.38 kB +0.89% 26.50 kB 26.73 kB
facebook-www/React-dev.classic.js +0.89% 109.42 kB 110.40 kB +0.80% 26.71 kB 26.92 kB
oss-stable-semver/react/umd/react.development.js +0.86% 107.05 kB 107.97 kB +0.67% 27.42 kB 27.60 kB
oss-stable/react/umd/react.development.js +0.86% 107.05 kB 107.97 kB +0.67% 27.42 kB 27.60 kB
oss-experimental/react/umd/react.development.js +0.86% 108.02 kB 108.94 kB +0.67% 27.55 kB 27.73 kB
oss-stable-semver/react-server/cjs/react-server.development.js +0.36% 116.40 kB 116.83 kB +0.55% 28.50 kB 28.66 kB
oss-stable/react-server/cjs/react-server.development.js +0.36% 116.40 kB 116.83 kB +0.55% 28.50 kB 28.66 kB
oss-experimental/react-server/cjs/react-server.development.js +0.36% 116.96 kB 117.39 kB +0.54% 28.67 kB 28.83 kB
oss-stable-semver/react-server/cjs/react-server.production.min.js +0.32% 17.31 kB 17.36 kB +0.34% 5.89 kB 5.91 kB
oss-stable/react-server/cjs/react-server.production.min.js +0.32% 17.31 kB 17.36 kB +0.34% 5.89 kB 5.91 kB
oss-experimental/react-server/cjs/react-server.production.min.js +0.32% 17.43 kB 17.49 kB +0.29% 5.94 kB 5.95 kB
facebook-www/ReactDOMServer-prod.classic.js +0.31% 47.71 kB 47.86 kB +0.27% 11.19 kB 11.22 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-writer.browser.production.min.server.js +0.29% 6.63 kB 6.65 kB +0.28% 2.81 kB 2.82 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-writer.browser.production.min.server.js +0.29% 6.63 kB 6.65 kB +0.28% 2.81 kB 2.82 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-writer.browser.production.min.server.js +0.29% 6.63 kB 6.65 kB +0.28% 2.81 kB 2.82 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-writer.node.production.min.server.js +0.29% 6.64 kB 6.66 kB +0.32% 2.78 kB 2.79 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-writer.node.production.min.server.js +0.29% 6.64 kB 6.66 kB +0.32% 2.78 kB 2.79 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-writer.node.production.min.server.js +0.29% 6.64 kB 6.66 kB +0.32% 2.78 kB 2.79 kB
oss-experimental/react-server/cjs/react-server-flight.production.min.js +0.28% 6.81 kB 6.83 kB +0.42% 2.86 kB 2.87 kB
oss-stable-semver/react-server/cjs/react-server-flight.production.min.js +0.28% 6.81 kB 6.83 kB +0.42% 2.86 kB 2.87 kB
oss-stable/react-server/cjs/react-server-flight.production.min.js +0.28% 6.81 kB 6.83 kB +0.42% 2.86 kB 2.87 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-writer.browser.production.min.server.js +0.28% 6.84 kB 6.86 kB +0.31% 2.90 kB 2.91 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-writer.browser.production.min.server.js +0.28% 6.84 kB 6.86 kB +0.31% 2.90 kB 2.91 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-writer.browser.production.min.server.js +0.28% 6.84 kB 6.86 kB +0.31% 2.90 kB 2.91 kB
facebook-www/ReactDOMServer-dev.classic.js +0.28% 152.78 kB 153.21 kB +0.32% 38.76 kB 38.88 kB
facebook-www/ReactFlightDOMRelayServer-prod.classic.js +0.25% 15.51 kB 15.55 kB +0.25% 3.96 kB 3.97 kB
facebook-www/ReactFlightDOMRelayServer-prod.modern.js +0.25% 15.51 kB 15.55 kB +0.25% 3.96 kB 3.97 kB
facebook-relay/flight/ReactFlightNativeRelayServer-prod.js +0.24% 15.92 kB 15.96 kB +0.25% 4.05 kB 4.06 kB
facebook-www/ReactDOMServer-prod.modern.js +0.21% 70.55 kB 70.69 kB +0.21% 14.50 kB 14.53 kB

Generated by 🚫 dangerJS against 41ae6c2

@acdlite acdlite merged commit 82c8fa9 into facebook:main Sep 22, 2021
facebook-github-bot pushed a commit to facebook/react-native that referenced this pull request Oct 12, 2021
Summary:
This sync includes the following changes:
- **[579c008a7](facebook/react@579c008a7 )**: [Fizz/Flight] pipeToNodeWritable(..., writable).startWriting() -> renderToPipeableStream(...).pipe(writable) ([#22450](facebook/react#22450)) //<Sebastian Markbåge>//
- **[f2c381131](facebook/react@f2c381131 )**: fix: useSyncExternalStoreExtra ([#22500](facebook/react#22500)) //<Daishi Kato>//
- **[0ecbbe142](facebook/react@0ecbbe142 )**: Sync hydrate discrete events in capture phase and dont replay discrete events ([#22448](facebook/react#22448)) //<salazarm>//
- **[a724a3b57](facebook/react@a724a3b57 )**: [RFC] Codemod invariant -> throw new Error ([#22435](facebook/react#22435)) //<Andrew Clark>//
- **[201af81b0](facebook/react@201af81b0 )**: Release pooled cache reference in complete/unwind ([#22464](facebook/react#22464)) //<Joseph Savona>//
- **[033efe731](facebook/react@033efe731 )**: Call get snapshot in useSyncExternalStore server shim ([#22453](facebook/react#22453)) //<salazarm>//
- **[7843b142a](facebook/react@7843b142a )**: [Fizz/Flight] Pass in Destination lazily to startFlowing instead of in createRequest ([#22449](facebook/react#22449)) //<Sebastian Markbåge>//
- **[d9fb383d6](facebook/react@d9fb383d6 )**: Extract queueing logic into shared functions ([#22452](facebook/react#22452)) //<Andrew Clark>//
- **[9175f4d15](facebook/react@9175f4d15 )**: Scheduling Profiler: Show Suspense resource .displayName ([#22451](facebook/react#22451)) //<Brian Vaughn>//
- **[eba248c39](facebook/react@eba248c39 )**: [Fizz/Flight] Remove reentrancy hack ([#22446](facebook/react#22446)) //<Sebastian Markbåge>//
- **[66388150e](facebook/react@66388150e )**: Remove usereducer eager bailout ([#22445](facebook/react#22445)) //<Joseph Savona>//
- **[d3e086932](facebook/react@d3e086932 )**: Make root.unmount() synchronous  ([#22444](facebook/react#22444)) //<Andrew Clark>//
- **[2cc6d79c9](facebook/react@2cc6d79c9 )**: Rename onReadyToStream to onCompleteShell ([#22443](facebook/react#22443)) //<Sebastian Markbåge>//
- **[c88fb49d3](facebook/react@c88fb49d3 )**: Improve DEV errors if string coercion throws (Temporal.*, Symbol, etc.) ([#22064](facebook/react#22064)) //<Justin Grant>//
- **[05726d72c](facebook/react@05726d72c )**: [Fix] Errors should not "unsuspend" a transition ([#22423](facebook/react#22423)) //<Andrew Clark>//
- **[3746eaf98](facebook/react@3746eaf98 )**: Packages/React/src/ReactLazy ---> changing -1 to unintialized ([#22421](facebook/react#22421)) //<BIKI DAS>//
- **[04ccc01d9](facebook/react@04ccc01d9 )**: Hydration errors should force a client render ([#22416](facebook/react#22416)) //<Andrew Clark>//
- **[029fdcebb](facebook/react@029fdcebb )**: root.hydrate -> root.isDehydrated ([#22420](facebook/react#22420)) //<Andrew Clark>//
- **[af87f5a83](facebook/react@af87f5a83 )**: Scheduling Profiler marks should include thrown Errors ([#22417](facebook/react#22417)) //<Brian Vaughn>//
- **[d47339ea3](facebook/react@d47339ea3 )**: [Fizz] Remove assignID mechanism ([#22410](facebook/react#22410)) //<Sebastian Markbåge>//
- **[3a50d9557](facebook/react@3a50d9557 )**: Never attach ping listeners in legacy Suspense ([#22407](facebook/react#22407)) //<Andrew Clark>//
- **[82c8fa90b](facebook/react@82c8fa90b )**: Add back useMutableSource temporarily ([#22396](facebook/react#22396)) //<Andrew Clark>//
- **[5b57bc6e3](facebook/react@5b57bc6e3 )**: [Draft] don't patch console during first render ([#22308](facebook/react#22308)) //<Luna Ruan>//
- **[cf07c3df1](facebook/react@cf07c3df1 )**: Delete all but one `build2` reference ([#22391](facebook/react#22391)) //<Andrew Clark>//
- **[bb0d06935](facebook/react@bb0d06935 )**: [build2 -> build] Local scripts //<Andrew Clark>//
- **[0c81d347b](facebook/react@0c81d347b )**: Write artifacts to `build` instead of `build2` //<Andrew Clark>//
- **[4da03c9fb](facebook/react@4da03c9fb )**: useSyncExternalStore React Native version ([#22367](facebook/react#22367)) //<salazarm>//
- **[48d475c9e](facebook/react@48d475c9e )**: correct typos ([#22294](facebook/react#22294)) //<Bowen>//
- **[cb6c619c0](facebook/react@cb6c619c0 )**: Remove Fiber fields that were used for hydrating useMutableSource ([#22368](facebook/react#22368)) //<Sebastian Silbermann>//
- **[64e70f82e](facebook/react@64e70f82e )**: [Fizz] add avoidThisFallback support ([#22318](facebook/react#22318)) //<salazarm>//
- **[3ee7a004e](facebook/react@3ee7a004e )**: devtools: Display actual ReactDOM API name in root type ([#22363](facebook/react#22363)) //<Sebastian Silbermann>//
- **[79b8fc667](facebook/react@79b8fc667 )**: Implement getServerSnapshot in userspace shim ([#22359](facebook/react#22359)) //<Andrew Clark>//
- **[86b3e2461](facebook/react@86b3e2461 )**: Implement useSyncExternalStore on server ([#22347](facebook/react#22347)) //<Andrew Clark>//
- **[8209de269](facebook/react@8209de269 )**: Delete useMutableSource implementation ([#22292](facebook/react#22292)) //<Andrew Clark>//

Changelog:
[General][Changed] - React Native sync for revisions e8feb11...afcb9cd

jest_e2e[run_all_tests]

Reviewed By: yungsters

Differential Revision: D31541359

fbshipit-source-id: c35941bc303fdf55cb061e9996200dc868a6f2af
zhengjitf pushed a commit to zhengjitf/react that referenced this pull request Apr 15, 2022
Recoil uses useMutableSource behind a flag. I thought this was fine
because Recoil isn't used in any concurrent roots, so the behavior
would be the same, but it turns out that it is used by concurrent
roots in a few places.

I'm not expecting it to be hard to migrate to useSyncExternalStore, but
to de-risk the change I'm going to roll it out gradually with a flag. In
the meantime, I've added back the useMutableSource API.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed React Core Team Opened by a member of the React Core Team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants