-
-
Notifications
You must be signed in to change notification settings - Fork 242
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
Add the ability to not regenerate types during hmr #3110
Comments
This is still a valid issue, Currently, the options in Correct me if I'm wrong, but I would expect that setting Are there any plans to make DTS faster with things like web-infra-dev/rspack#8097 on the horizon? |
have you tried this? https://www.typescriptlang.org/tsconfig/#isolatedDeclarations |
@zmzlois haven't tried |
What if you set dts: false? |
|
Ahh you just want initial type gen. Then it to stop watching subsequent updates? |
@jbroma try this: Im wondering if i can change the plugin so that initial build uses |
You can give a shot to the webpack-module-federation-types-plugin, though it was not tested with v2-enhanced. That package recently got an update to compile types in a worker, this way type generation is completely decoupled from compilation. Results can be seen on screenshots in the PR. |
There's a PR open already. We also use worker. That's not the issue; the issue is we use process assets. So the pipeline blocks the seal phase, which bottlenecks. In the future, we will use outputFileSystem directly, which will allow full non-blocking HMR. |
Need @jbroma to validate then ill merge |
Thx for the heads up Zack! I hope we can deprecate webpack-module-federation-types-plugin in favor of native solution. |
Hey! Feel free to contribute your ideas to our repo if you have some. 🥰 The TS plugin is a monster. It does runtime browser type discovery as well, so dynamic remotes that can't be statically analyzed are posted from the browser back to the DTS engine. I don't work with TS in general, so I'm not much use on this feature set beyond plugin APIs. So if you ever want to contribute, we would love it. One aspect you might be interested in is that currently our DTS manager does not extract third-party package types. For example, if you have an exposed module or shared module and they have a nested package like Redux, the typing for the underlying Redux API isn't created. |
Hey, sorry for the late reply, I can confirm the canary fixes the issue 👍 |
Merged |
Clear and concise description of the problem
Generate module federation types makes rsbuild hmr slow(from 0.4s to 4s). When I set disableHotTypesReload to true, it still regenerate types. And I find disableHotTypesReload option can't control this behavior. So it would be better to have an option to not generate types during hmr to improve hmr speed.
Suggested solution
Maybe stop regenerate types when provider set disableHotTypesReload to true or just add a new opition.
Alternative
No response
Additional context
No response
Validations
The text was updated successfully, but these errors were encountered: