Convert ReactFreshIntegration-test to createRoot#28073
Conversation
| const id = setInterval(() => { | ||
| setValue(v => v + 10); | ||
| }, 1000); | ||
| return () => clearInterval(id); |
There was a problem hiding this comment.
This was the only tricky case here as internal act seems to wait for all timers to finish which they never did.
I preserved the 2 properties tested here: effects are unmounted and re-mounted and state is reset when the hook calls change.
There was a problem hiding this comment.
What was the reason to use timers originally? Are we losing anything by removing them in favor of Scheduler.log?
There was a problem hiding this comment.
I think that the state is reset, I did a setState instead to explicitly update the state.
The second thing this maybe tested was that the effect is cleaned up (old timer is stopped). I tested for that explicitly with the Scheduler.log on effect unmount.
There was a problem hiding this comment.
I think the intent was to verify that a component is able to re-render independently with both the right state and the right "version" of the code. A failing case would be if it kept re-rendering with stale state somehow or if a re-render caused an older version of the code to run.
| const id = setInterval(() => { | ||
| setValue(v => v + 10); | ||
| }, 1000); | ||
| return () => clearInterval(id); |
There was a problem hiding this comment.
What was the reason to use timers originally? Are we losing anything by removing them in favor of Scheduler.log?
- react/react#28250 - react/react#28225 - react/react#28123 - react/react#28240 - react/react#28239 - react/react#28245 - react/react#28244 - react/react#28238 - react/react#28235 - react/react#28221 - react/react#28215 - react/react#28214 - react/react#28213 - react/react#28212 - react/react#28211 - react/react#28247 - react/react#28210 - react/react#28186 - react/react#28232 - react/react#28169 - react/react#28177 - react/react#28170 - react/react#28168 - react/react#28122 - react/react#27982 - react/react#28217 - react/react#28223 - react/react#28208 - react/react#28209 - react/react#28200 - react/react#28199 - react/react#28198 - react/react#28197 - react/react#28196 - react/react#28194 - react/react#28192 - react/react#28191 - react/react#28182 - react/react#28181 - react/react#28180 - react/react#28178 - react/react#28201 - react/react#28176 - react/react#28162 - react/react#28131 - react/react#28190 - react/react#28172 - react/react#28171 - react/react#28173 - react/react#28174 - react/react#28175 - react/react#28136 - react/react#28135 - react/react#28134 - react/react#28133 - react/react#28132 - react/react#28130 - react/react#28202 - react/react#28102 - react/react#28161 - react/react#28193 - react/react#28195 - react/react#28189 - react/react#28160 - react/react#28096 - react/react#28183 - react/react#28125 - react/react#28157 - react/react#28115 - react/react#28124 - react/react#28163 - react/react#28164 - react/react#28150 - react/react#28159 - react/react#28069 - react/react#28110 - react/react#28148 - react/react#28116 - react/react#28099 - react/react#28100 - react/react#28147 - react/react#28128 - react/react#28126 - react/react#28139 - react/react#28140 - react/react#28141 - react/react#28142 - react/react#28113 - react/react#28129 - react/react#28114 - react/react#28053 - react/react#28091 - react/react#28087 - react/react#28112 - react/react#28086 - react/react#28101 - react/react#28106 - react/react#28117 - react/react#28118 - react/react#28105 - react/react#27883 - react/react#28111 - react/react#28095 - react/react#28108 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939
Updates React from 60a927d04 to 2bc7d336a Also updates aliases for `react.shared-subset` to `react.react-server` ### React upstream changes - react/react#28250 - react/react#28225 - react/react#28123 - react/react#28240 - react/react#28239 - react/react#28245 - react/react#28244 - react/react#28238 - react/react#28235 - react/react#28221 - react/react#28215 - react/react#28214 - react/react#28213 - react/react#28212 - react/react#28211 - react/react#28247 - react/react#28210 - react/react#28186 - react/react#28232 - react/react#28169 - react/react#28177 - react/react#28170 - react/react#28168 - react/react#28122 - react/react#27982 - react/react#28217 - react/react#28223 - react/react#28208 - react/react#28209 - react/react#28200 - react/react#28199 - react/react#28198 - react/react#28197 - react/react#28196 - react/react#28194 - react/react#28192 - react/react#28191 - react/react#28182 - react/react#28181 - react/react#28180 - react/react#28178 - react/react#28201 - react/react#28176 - react/react#28162 - react/react#28131 - react/react#28190 - react/react#28172 - react/react#28171 - react/react#28173 - react/react#28174 - react/react#28175 - react/react#28136 - react/react#28135 - react/react#28134 - react/react#28133 - react/react#28132 - react/react#28130 - react/react#28202 - react/react#28102 - react/react#28161 - react/react#28193 - react/react#28195 - react/react#28189 - react/react#28160 - react/react#28096 - react/react#28183 - react/react#28125 - react/react#28157 - react/react#28115 - react/react#28124 - react/react#28163 - react/react#28164 - react/react#28150 - react/react#28159 - react/react#28069 - react/react#28110 - react/react#28148 - react/react#28116 - react/react#28099 - react/react#28100 - react/react#28147 - react/react#28128 - react/react#28126 - react/react#28139 - react/react#28140 - react/react#28141 - react/react#28142 - react/react#28113 - react/react#28129 - react/react#28114 - react/react#28053 - react/react#28091 - react/react#28087 - react/react#28112 - react/react#28086 - react/react#28101 - react/react#28106 - react/react#28117 - react/react#28118 - react/react#28105 - react/react#27883 - react/react#28111 - react/react#28095 - react/react#28108 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939 Closes NEXT-2331
Convert ReactFreshIntegration-test to createRoot
Convert ReactFreshIntegration-test to createRoot DiffTrain build for commit 7724754.
Convert ReactFreshIntegration-test to createRoot