-
-
Notifications
You must be signed in to change notification settings - Fork 31.6k
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
Bump @types/react to ^17.0.42 #31894
Conversation
@eps1lon I saw that you worked on DefinitelyTyped/DefinitelyTyped#58936 Can you share a bit of info about what should be the migration story here? |
Handle #31845 first and then see what's left to do. |
af11425
to
9b8f95c
Compare
There are many issues, I have started creating a batch of the changes that we will need and try to test them on master first. @eps1lon this looks very much like breaking change to me, how was it released in a patch version? I know the major version needs to be compatible with the react's version but still looks like this change was not safe to be made as a patch. |
Patches are technically never backwards compatible since people may rely on bugs. This is often the case with type patches. So yes, the There can still be instances were this isn't intended so we need to investigate each type error that is now reported. If you find instances that are unclear or should not be rejected by TypeScript, then please point them out. But a generic "type changes should not break tsc" is not helpful. |
In our case, many problems are caused by refs not accepting the supertypes anymore. |
Regarding the subset <=> superset change, this is an interesting issue - #31928 where there basically isn't |
At first glance this looks like we were just a bit inaccurate because polymorphic components are really hard. And this sloppyness was fine before because I wouldn't be that concerned if this were just subtypes of But we also allow ignoring nullable instances which is the bigger problem here and which is harder to let go off. Though on the flipside by making the callback bivariant we at least normalize behavior with ref objects because right now you can totally do So this was helpful since it's now clear to me that the bivariance hack existed to normalize behavior between ref objects and ref callbacks. The current ref callback behavior is correct but ref objects are still unsound so let's prefer the consistent unsoundness over inconsistent soundness. |
Thanks for a quick response, @eps1lon! |
Thanks for checking this up @eps1lon |
9b8f95c
to
5577f39
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can merge now π
This PR contains the following updates:
^17.0.40
->^17.0.42
Configuration
π Schedule: "on sunday before 6:00am" in timezone UTC.
π¦ Automerge: Disabled by config. Please merge this manually once you are satisfied.
β» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by WhiteSource Renovate. View repository job log here.