-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Fix errors reported by strict peer checking #9934
Conversation
The problem is this doesn't reliably fix the problem. It assumes that hoisting will work out and that some deeply nested packages will be able to resolve the app's copy of Given an error like:
In order to satisfy a peer dependency, the peer of babel-plugin-debug-macros needs to have |
Also, I think having an unused copy of |
This recursive peer dependencies situation actually makes sense when you consider that it requires each addon to document what range of babel it works under, and those requirements necessarily recurse (if your addon depends on another addon that only works in a certain babel range, your addon also only works in that babel range). |
🤔 that makes sense -- thanks for explaining the situation! so given these errors:
is it best to propagate the
atm, I'm not sure if having |
We're not free to pick and choose here, babel has decided that plugins are peerDeps of |
I don't understand how adding adding |
Ask yourself: why do babel plugins have a peerDep on If they need to access something from But that's not what they do. Why? Why do they declare the peerDep and force everybody to deal with it? It's because getting access to the copy of Now, in an ember app, which copy of So to actually give the plugins what they're asking for, we need to make sure that if any of them does This is why I said above:
If you just add |
Gotchya, thanks! I have a flurry of prs to make then! |
The main one to start with is ember-cli-babel. |
@NullVoxPopuli Going to close this one in favor of #10141 if that's okay. |
of course! |
Resolves: #9933