Skip to content

[Fast Refresh] Derive the fiber tag from the resolved type when mounting - #36963

Merged
sophiebits merged 1 commit into
mainfrom
fresh-type-changes/derive-fiber-tag
Jul 8, 2026
Merged

[Fast Refresh] Derive the fiber tag from the resolved type when mounting#36963
sophiebits merged 1 commit into
mainfrom
fresh-type-changes/derive-fiber-tag

Conversation

@sophiebits

@sophiebits sophiebits commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

If an edit changed the kind of the type (e.g. a plain function got
wrapped in memo()), the fiber could get the old kind's tag with the
new kind's type, usually throwing an error.

@meta-cla meta-cla Bot added the CLA Signed label Jul 8, 2026
@github-actions github-actions Bot added the React Core Team Opened by a member of the React Core Team label Jul 8, 2026
@sophiebits
sophiebits marked this pull request as ready for review July 8, 2026 07:20
@sophiebits
sophiebits requested a review from gaearon July 8, 2026 07:20
Base automatically changed from fresh-type-changes/unify-type-resolution to main July 8, 2026 16:11
If an edit changed the kind of the type (e.g. a plain function got
wrapped in memo()), the fiber could get the old kind's tag with the
new kind's type, usually throwing an error.
@sophiebits
sophiebits force-pushed the fresh-type-changes/derive-fiber-tag branch from 1dd8f42 to 2922920 Compare July 8, 2026 16:11
@sophiebits

Copy link
Copy Markdown
Contributor Author

sorry, apparently I need stamps one at a time as the stack rebases

@sophiebits
sophiebits requested a review from gaearon July 8, 2026 16:11
@react-sizebot

Copy link
Copy Markdown

Comparing: df4bd1b...2922920

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.js = 7.19 kB 7.19 kB = 1.91 kB 1.91 kB
oss-stable/react-dom/cjs/react-dom-client.production.js = 614.54 kB 614.54 kB = 108.60 kB 108.61 kB
oss-experimental/react-dom/cjs/react-dom.production.js = 7.19 kB 7.19 kB = 1.91 kB 1.91 kB
oss-experimental/react-dom/cjs/react-dom-client.production.js = 685.72 kB 685.73 kB = 120.10 kB 120.11 kB
facebook-www/ReactDOM-prod.classic.js = 706.07 kB 706.08 kB = 123.68 kB 123.69 kB
facebook-www/ReactDOM-prod.modern.js = 696.39 kB 696.39 kB = 122.07 kB 122.07 kB

Significant size changes

Includes any change greater than 0.2%:

(No significant changes)

Generated by 🚫 dangerJS against 2922920

@hoxyq hoxyq left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If only landing the whole stack worked! This is such a bad experience, even for an experimental feature.

I had the same issues previously, stamping without a review based on Dan's approval above.

@sophiebits
sophiebits merged commit 3b9b59f into main Jul 8, 2026
238 checks passed
github-actions Bot pushed a commit that referenced this pull request Jul 8, 2026
…ing (#36963)

If an edit changed the kind of the type (e.g. a plain function got
wrapped in memo()), the fiber could get the old kind's tag with the
new kind's type, usually throwing an error.

DiffTrain build for [3b9b59f](3b9b59f)
github-actions Bot pushed a commit that referenced this pull request Jul 8, 2026
…ing (#36963)

If an edit changed the kind of the type (e.g. a plain function got
wrapped in memo()), the fiber could get the old kind's tag with the
new kind's type, usually throwing an error.

DiffTrain build for [3b9b59f](3b9b59f)
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.

4 participants