Comments (7)
@Timer I think you're the better judge of that! But it does appear that you successfully copied my code into a test case. đ Does the fact that it passes CI mean that this works correctly in @next/react-refresh-utils already?
from react-refresh-webpack-plugin.
@sophiebits thanks for this excellent reproduction!
I've added a test case for this to the Fast Refresh conformance suite (destined for the facebook/react
repo). Can you please confirm it tests all the cases you've found buggy?
from react-refresh-webpack-plugin.
@sophiebits Thanks for the reproduction! It seems that the latest version of the plugin also don't have this issue anymore, can you try it out and see if it fixes the issue for you too?
I'll further investigate this tonight.
from react-refresh-webpack-plugin.
Sorry, I had tried on the latest stable but not the latest beta.
For my mini repro case, I did a bisect and it seems that c66bda1 is the commit that fixed this, though I don't understand why.
But for my larger app, it still seems broken on 0.3.0-beta.5. đ Will try to re-reduce when I have time but lmk if you have other ideas.
from react-refresh-webpack-plugin.
For my mini repro case, I did a bisect and it seems that c66bda1 is the commit that fixed this, though I don't understand why.
It has something to do with whether SurveyOverview
is being detected as a React component, because that affects whether the module is included in the react-refresh
life cycle.
But for my larger app, it still seems broken on 0.3.0-beta.5. đ Will try to re-reduce when I have time but lmk if you have other ideas.
I can confirm that if you rename SurveyOverview
to surveyOverview
, the issue persists (even in @next/react-refresh-utils
). I'll have to look deeper and see which part of the integration is broken because it is most likely a race condition
from react-refresh-webpack-plugin.
I have further investigated the issue and it seems that even without the plugin the issue still persists (given that we don't accept SurveyOverview
, and accepts Milestones
, NudgeOverview
and App
- as aligned with their corresponding Refresh Boundary status).
Tbh I'm not sure if we're hitting the limit of Webpack here, it seems to me that the issue only exists when there' both cyclic imports and reexported dependencies. I'll file an issue in Webpack's repository and see what we can do about it.
from react-refresh-webpack-plugin.
Closing as it is marked as won't fix
in upstream.
from react-refresh-webpack-plugin.
Related Issues (20)
- Cannot read properties of undefined (reading 'call') at at options.factory HOT 1
- Relative imports outside of src/ are not supported. HOT 6
- Can I use a custom domain and SSL cert for the cable URL? HOT 1
- Tsc error when upgraded to 0.5.X from 0.4.X HOT 1
- Is that possible to refresh when files in node_modules are changed?
- Rewrite window.fetch method It will not work!
- Using with webpack-hot-middleware, issues
- npm ERR! ERESOLVE could not resolve HOT 1
- Security vulnerability - loader-utils 2.0.4 HOT 2
- Getting lot's of *.hot-update.js files in dist folder HOT 1
- Not working with multiple entry points in webpack where one entry does not use react
- Expand webpack-dev-server dev dependency to include the newes semver 5.x HOT 1
- erroroverlay
- There are some edge cases where we have to manually refresh the page to see the change. HOT 1
- Issues when combining webpack HMR and react-refresh-webpack-plugin HOT 10
- `useEffect` inside refreshed code runs needlessly HOT 1
- Alternative for React Class Components. HOT 1
- Issues with peer dependencies found HOT 1
- Memory cleanup doesn't happen on incremental compiles HOT 3
- Using the external configuration item of webpack in the development environment can cause react refresh to fail HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
đ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. đđđ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google â¤ī¸ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-refresh-webpack-plugin.