-
Notifications
You must be signed in to change notification settings - Fork 296
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
Publish correct action for built modules in multi-compiler (built/sync) #312
base: master
Are you sure you want to change the base?
Conversation
I'm struggling the follow this scenario. Part of this will be because the existing events I've implemented are not well documented. I'm pretty sure the I don't think there should need to be special-cased logic to skip a sync. If the client bundle has the same name and doesn't have the same hash, it should try and update against the server. It does sound from your description that the bug is to do with when the server sends events to clients. Another thing i've just noticed is that the The multi-compiler support is a bit patchy, it's been added ad-hoc by multiple people over the years. This pull-request seemed like it would improve support in general, but the branch went stale without anyone to champion it #155 |
The thing is for multi-compiler support to be fully functional and easier to setup, there are also a couple changes needed in the main template plugins |
I created a feature request in webpack for that: webpack/webpack#7406 |
Thanks for looking into this. It’s probably also worth comparing notes with webpack-hot-client to see what it does |
Apparently, webpack-hot-client is also using |
multi compiler mode doesn't work. [webpack-contrib/webpack-hot-middleware#270] Publish correct action for built modules in multi-compiler [webpack-contrib/webpack-hot-middleware#312] First class hot reload support in Multi-Compiler mode [webpack/webpack#7406]
Are any updates on this issue ? |
In the client side, when receiving the "built" action, it tries to load a manifest for the updated chunks, but such manifest is only available when the bundle actually has changed (is not available the first time either, for example), so the result is an error message in the client saying it's getting a 404 for such manifest. Changes where made so it only tries to load such manifest when "built" action is received, but not "sync".
In the server side, this pull request makes it so in multi-compiler each bundle is sent with proper action. Not all bundles change when one does, so not all should send "built" action, which would try to load a manifest that might not be there.
Fixes issue #270