forked from facebook/react
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] main from facebook:main #198
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…34012) This collects the ReactAsyncInfo between instances. It associates it with the parent. Typically this would be a Server Component's Promise return value but it can also be Promises in a fragment. It can also be associated with a client component when you pass a Promise into the child position e.g. `<div>{promise}</div>` then it's associated with the div. If an instance is filtered, then it gets associated with the parent of that's unfiltered. The stack trace currently isn't source mapped. I'll do that in a follow up. We also need to add a "short name" from the Promise for the description (e.g. url). I'll also add a little marker showing the relative time span of each entry. <img width="447" height="591" alt="Screenshot 2025-07-26 at 7 56 00 PM" src="https://github.com/user-attachments/assets/7c966540-7b1b-4568-8cb9-f25cefd5a918" /> <img width="446" height="570" alt="Screenshot 2025-07-26 at 7 55 23 PM" src="https://github.com/user-attachments/assets/4eac235b-e735-41e8-9c6e-a7633af64e4b" />
Add changelog details matching release notes: https://github.com/facebook/react/releases/tag/v19.1.1
…lative to others (#34016) Stacked on #34012. This shows a time track for when some I/O started and when it finished relative to other I/O in the same component (or later in the same suspense boundary). This is not meant to be a precise visualization since the data might be misleading if you're running this in dev which has other perf characteristics anyway. It's just meant to be a general way to orient yourself in the data. We can also highlight rejected promises here. The color scheme is the same as Chrome's current Performance Track colors to add continuity but those could change. <img width="478" height="480" alt="Screenshot 2025-07-27 at 11 48 03 PM" src="https://github.com/user-attachments/assets/545dd591-a91f-4c47-be96-41d80f09a94a" />
See #34021 (comment). The purpose of the changelog is to communicate to React users what changed in the release. Therefore, it is important that the changelog is written oriented towards React end users. Historically this means that we omit internal-only changes, i.e. changes that have no effect on the end user behavior. If internal changes are mentioned in the changelog (e.g. if they affect end user behavior), they should be phrased in a way that is understandable to the end user — in particular, they should not refer to internal API names or concepts. We also try to group changes according to the publicly known packages. In this PR: - Make #33680 an actual link (otherwise it isn't linkified in CHANGELOG.md on GitHub). - Remove two changelog entries listed under "React" that don't affect anyone who upgrades the "React" package, that are phrased using terminology and internal function names unfamiliar to React users, and that seem to be RN-specific changes (so should probably go into the RN changelog that goes out with the next renderer sync that includes these changes).
…33989) Adds a new property to ReturnTerminals to disambiguate whether it was explicit, implicit (arrow function expressions), or void (where it was omitted). I will use this property in the next PR adding a new validation pass. --- [//]: # (BEGIN SAPLING FOOTER) Stack created with [Sapling](https://sapling-scm.com). Best reviewed with [ReviewStack](https://reviewstack.dev/facebook/react/pull/33989). * #34022 * #34002 * #34001 * #33990 * __->__ #33989
Adds a new validation pass to validate against `useMemo`s that don't return anything. This usually indicates some kind of "useEffect"-like code that has side effects that need to be memoized to prevent overfiring, and is an anti-pattern. A follow up validation could also look at the return value of `useMemo`s to see if they are being used. --- [//]: # (BEGIN SAPLING FOOTER) Stack created with [Sapling](https://sapling-scm.com). Best reviewed with [ReviewStack](https://reviewstack.dev/facebook/react/pull/33990). * #34022 * #34002 * #34001 * __->__ #33990 * #33989
) Much of the logic in the new validation pass is already implemented in DropManualMemoization, so let's combine them. I opted to keep the environment flag so we can more precisely control the rollout. --- [//]: # (BEGIN SAPLING FOOTER) Stack created with [Sapling](https://sapling-scm.com). Best reviewed with [ReviewStack](https://reviewstack.dev/facebook/react/pull/34001). * #34022 * #34002 * __->__ #34001
…34002) Noticed this from my previous PR that this pass was throwing on the first error. This PR is a small refactor to aggregate every violation and report them all at once. --- [//]: # (BEGIN SAPLING FOOTER) Stack created with [Sapling](https://sapling-scm.com). Best reviewed with [ReviewStack](https://reviewstack.dev/facebook/react/pull/34002). * #34022 * __->__ #34002
Enables `validateNoVoidUseMemo` by default only in eslint (it defaults to false otherwise) as well as the playground.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.3)
Can you help keep this open source service alive? 💖 Please sponsor : )