Skip to content

Commit 7e02f11

Browse files
authored
Upgrade React to 18.3.0-canary-16d053d59-20230506 (#49402)
Fixes a bug where `useFormStatus` crashed during SSR. Includes the following upstream changes: - [16d053d59](https://github.com/facebook/react/commits/16d053d59) Add useFormStatus to server rendering stub ([#26788](facebook/react#26788)) (Andrew Clark) - [efb381bbf](https://github.com/facebook/react/commits/efb381bbf) [Release Script] Print a hint where to get the token ([#26783](facebook/react#26783)) (dan) - [b00e27342](https://github.com/facebook/react/commits/b00e27342) Use native scheduler if defined in global scope ([#26554](facebook/react#26554)) (Samuel Susla) - [783e7fcfa](https://github.com/facebook/react/commits/783e7fcfa) React DevTools 4.27.6 -> 4.27.7 ([#26780](facebook/react#26780)) (Ruslan Lesiutin) - [377c5175f](https://github.com/facebook/react/commits/377c5175f) DevTools: fix backend activation ([#26779](facebook/react#26779)) (Ruslan Lesiutin)
1 parent 173381a commit 7e02f11

File tree

61 files changed

+1449
-216
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+1449
-216
lines changed

package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -197,14 +197,14 @@
197197
"random-seed": "0.3.0",
198198
"react": "18.2.0",
199199
"react-17": "npm:[email protected]",
200-
"react-builtin": "npm:[email protected]aef7ce554-20230503",
201-
"react-experimental-builtin": "npm:[email protected]aef7ce554-20230503",
200+
"react-builtin": "npm:[email protected]16d053d59-20230506",
201+
"react-experimental-builtin": "npm:[email protected]16d053d59-20230506",
202202
"react-dom": "18.2.0",
203203
"react-dom-17": "npm:[email protected]",
204-
"react-dom-builtin": "npm:[email protected]aef7ce554-20230503",
205-
"react-dom-experimental-builtin": "npm:[email protected]aef7ce554-20230503",
206-
"react-server-dom-webpack": "18.3.0-canary-aef7ce554-20230503",
207-
"react-server-dom-webpack-experimental": "npm:[email protected]aef7ce554-20230503",
204+
"react-dom-builtin": "npm:[email protected]16d053d59-20230506",
205+
"react-dom-experimental-builtin": "npm:[email protected]16d053d59-20230506",
206+
"react-server-dom-webpack": "18.3.0-canary-16d053d59-20230506",
207+
"react-server-dom-webpack-experimental": "npm:[email protected]16d053d59-20230506",
208208
"react-ssr-prepass": "1.0.8",
209209
"react-virtualized": "9.22.3",
210210
"relay-compiler": "13.0.2",
@@ -215,8 +215,8 @@
215215
"rimraf": "3.0.2",
216216
"sass": "1.54.0",
217217
"satori": "0.4.4",
218-
"scheduler-builtin": "npm:[email protected]aef7ce554-20230503",
219-
"scheduler-experimental-builtin": "npm:[email protected]aef7ce554-20230503",
218+
"scheduler-builtin": "npm:[email protected]16d053d59-20230506",
219+
"scheduler-experimental-builtin": "npm:[email protected]16d053d59-20230506",
220220
"seedrandom": "3.0.5",
221221
"selenium-webdriver": "4.0.0-beta.4",
222222
"semver": "7.3.7",

packages/next/src/compiled/babel-packages/packages-bundle.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ if (process.env.NODE_ENV !== "production") {
1717
var React = require("next/dist/compiled/react-experimental");
1818
var ReactDOM = require('react-dom');
1919

20-
var ReactVersion = '18.3.0-experimental-aef7ce554-20230503';
20+
var ReactVersion = '18.3.0-experimental-16d053d59-20230506';
2121

2222
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
2323

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ var React = require("next/dist/compiled/react-experimental");
1818
var ReactDOM = require('react-dom');
1919
var stream = require('stream');
2020

21-
var ReactVersion = '18.3.0-experimental-aef7ce554-20230503';
21+
var ReactVersion = '18.3.0-experimental-16d053d59-20230506';
2222

2323
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
2424

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-rendering-stub.development.js

Lines changed: 70 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ if (process.env.NODE_ENV !== "production") {
1414
(function() {
1515
'use strict';
1616

17-
var ReactVersion = '18.3.0-experimental-aef7ce554-20230503';
17+
var React = require("next/dist/compiled/react-experimental");
18+
19+
var ReactVersion = '18.3.0-experimental-16d053d59-20230506';
1820

1921
var Internals = {
2022
usingClientEntryPoint: false,
@@ -84,6 +86,72 @@ function preinit(href, options) {
8486

8587
}
8688

89+
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
90+
91+
function error(format) {
92+
{
93+
{
94+
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
95+
args[_key2 - 1] = arguments[_key2];
96+
}
97+
98+
printWarning('error', format, args);
99+
}
100+
}
101+
}
102+
103+
function printWarning(level, format, args) {
104+
// When changing this logic, you might want to also
105+
// update consoleWithStackDev.www.js as well.
106+
{
107+
var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;
108+
var stack = ReactDebugCurrentFrame.getStackAddendum();
109+
110+
if (stack !== '') {
111+
format += '%s';
112+
args = args.concat([stack]);
113+
} // eslint-disable-next-line react-internal/safe-string-coercion
114+
115+
116+
var argsWithFormat = args.map(function (item) {
117+
return String(item);
118+
}); // Careful: RN currently depends on this prefix
119+
120+
argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it
121+
// breaks IE9: https://github.com/facebook/react/issues/13610
122+
// eslint-disable-next-line react-internal/no-production-logging
123+
124+
Function.prototype.apply.call(console[level], console, argsWithFormat);
125+
}
126+
}
127+
128+
var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher; // Since the "not pending" value is always the same, we can reuse the
129+
130+
function resolveDispatcher() {
131+
// Copied from react/src/ReactHooks.js. It's the same thing but in a
132+
// different package.
133+
var dispatcher = ReactCurrentDispatcher.current;
134+
135+
{
136+
if (dispatcher === null) {
137+
error('Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for' + ' one of the following reasons:\n' + '1. You might have mismatching versions of React and the renderer (such as React DOM)\n' + '2. You might be breaking the Rules of Hooks\n' + '3. You might have more than one copy of React in the same app\n' + 'See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.');
138+
}
139+
} // Will result in a null access error if accessed outside render phase. We
140+
// intentionally don't throw our own error because this is in a hot path.
141+
// Also helps ensure this is inlined.
142+
143+
144+
return dispatcher;
145+
}
146+
147+
function useFormStatus() {
148+
{
149+
var dispatcher = resolveDispatcher(); // $FlowFixMe[not-a-function] We know this exists because of the feature check above.
150+
151+
return dispatcher.useHostTransitionStatus();
152+
}
153+
}
154+
87155
function createPortal() {
88156
throw new Error('createPortal was called on the server. Portals are not currently' + ' supported on the server. Update your program to conditionally call' + ' createPortal on the client only.');
89157
}
@@ -93,6 +161,7 @@ function flushSync() {
93161

94162
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
95163
exports.createPortal = createPortal;
164+
exports.experimental_useFormStatus = useFormStatus;
96165
exports.flushSync = flushSync;
97166
exports.preconnect = preconnect;
98167
exports.prefetchDNS = prefetchDNS;

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-rendering-stub.production.min.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@
77
* This source code is licensed under the MIT license found in the
88
* LICENSE file in the root directory of this source tree.
99
*/
10-
'use strict';var d={usingClientEntryPoint:!1,Events:null,Dispatcher:{current:null}};function e(c){for(var b="https://reactjs.org/docs/error-decoder.html?invariant="+c,a=1;a<arguments.length;a++)b+="&args[]="+encodeURIComponent(arguments[a]);return"Minified React error #"+c+"; visit "+b+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var f=d.Dispatcher;exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=d;
11-
exports.createPortal=function(){throw Error(e(448));};exports.flushSync=function(){throw Error(e(449));};exports.preconnect=function(c,b){var a=f.current;a&&a.preconnect(c,b)};exports.prefetchDNS=function(c){var b=f.current;b&&b.prefetchDNS(c)};exports.preinit=function(c,b){var a=f.current;a&&a.preinit(c,b)};exports.preload=function(c,b){var a=f.current;a&&a.preload(c,b)};exports.version="18.3.0-experimental-aef7ce554-20230503";
10+
'use strict';var d=require("next/dist/compiled/react-experimental"),e={usingClientEntryPoint:!1,Events:null,Dispatcher:{current:null}};function f(c){for(var b="https://reactjs.org/docs/error-decoder.html?invariant="+c,a=1;a<arguments.length;a++)b+="&args[]="+encodeURIComponent(arguments[a]);return"Minified React error #"+c+"; visit "+b+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var g=e.Dispatcher,h=d.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;
11+
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=e;exports.createPortal=function(){throw Error(f(448));};exports.experimental_useFormStatus=function(){return h.current.useHostTransitionStatus()};exports.flushSync=function(){throw Error(f(449));};exports.preconnect=function(c,b){var a=g.current;a&&a.preconnect(c,b)};exports.prefetchDNS=function(c){var b=g.current;b&&b.prefetchDNS(c)};exports.preinit=function(c,b){var a=g.current;a&&a.preinit(c,b)};
12+
exports.preload=function(c,b){var a=g.current;a&&a.preload(c,b)};exports.version="18.3.0-experimental-16d053d59-20230506";

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ if (process.env.NODE_ENV !== "production") {
1717
var React = require("next/dist/compiled/react-experimental");
1818
var ReactDOM = require('react-dom');
1919

20-
var ReactVersion = '18.3.0-experimental-aef7ce554-20230503';
20+
var ReactVersion = '18.3.0-experimental-16d053d59-20230506';
2121

2222
var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
2323

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)