-
Notifications
You must be signed in to change notification settings - Fork 136
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
Actionable warning for Your build is slower because some babel plugins are non-serializable? #727
Comments
Part of the issue is due to a misalignment between how broccoli-babel-transpiler handles the parallelization vs how ember-cli-htmlbars handles it. The parallelization system that exists within Embroider assumes the two systems are compatible, but unfortunately they are not (which is 100% my fault, but here we are... 😞 ). The good news is that we are actively working on aligning the two systems, and fixing this issue for the majority of folks that see it only under Embroider builds. Unfortunately, I'm not sure exactly how long that will be (hopefully "soon", but still a bit TBD). To alleviate the issue for your builds right now you can use embroider/packages/core/src/options.ts Lines 60 to 71 in bdea400
|
One challenge here is that the reason a plugin is non-serializable is that we have no idea where it came from. So it's hard to tell in the error message who's responsible. But you're right, we could at least include a URL in this message explaining more what it means and how to address it. |
Specifically for ember-test-selectors, you can manually tell Embroider where to find its plugins like this: return compatBuild(app, Webpack, {
pluginHints: [
{
resolve: [
'ember-test-selectors/transform-test-selector-params-to-hash-pairs',
],
},
{
resolve: ['ember-test-selectors/strip-test-selectors'],
},
],
}); |
I'm running into something similar that's a bit confusing. Embroider is reporting this warning for the transformation from Here, Would the "solve" here to do something like {
pluginHints: [
{
resolve: [
'ember-fetch', 'ember-element-helper/lib/element-helper-syntax-plugin.js'
]
}
}
} Even though Edit: I tried this and it didn't work... removing |
@ef4 is there something that addons could be doing to make it so that Embroider does know where the transforms are coming from? I'd love to make PRs against the plugins generating this warning to fix it on their end, if there's something they can do. |
I think you're being mislead by the ordering of the output. I don't think there's any guarantee that you can tell which addon's broccoli tree caused the warning. If you know the problematic plugin is from ember-element-helper, use |
The addons were already doing what ember-cli-htmlbars supports, but embroider didn't understand that. This should fix it: #754 |
Should this issue be closed? |
Hi. When building a fresh app with ember-test-selectors installed, I get the following warning:
[ConfigLoader]WARNING: Your build is slower because some babel plugins are non-serializable
I could have created an issue over at
ember-test-selectors
to see if this is easily fixable from there. However, I am not completely sure how useful this message itself would be for them.Would it make sense to provide some actionable best-practices we could link to for ember-addons to be non-"non-serializable"?
The text was updated successfully, but these errors were encountered: