Open tstirrat15 opened 6 years ago
@tstirrat15 Thank you for catching this. I’m going to look into this this week and hopefully get back to you with a solution. Compatibility with other libraries is a huge priority for us.
@tstirrat15 Can you provide a minimal reproduction repository so that I can take a look? I don't have much experience building/using preboot outside of Angular
Working on it... I'll let you know when I've got something workable. There aren't many boilerplates out there that have the correct structure, and minimizing them is more of a pain than I was expecting.
https://github.com/tstirrat15/react-preboot-universal-minimal
It might not be completely minimal, but it demonstrates the usage where I've been running into problems.
To run, clone and then yarn && yarn start
. You'll see the error in the webpack build (albeit maybe a ways up in the build output - my local was spamming webpack output for reasons that I don't entirely understand). Let me know if you run into any problems.
@tstirrat15 As an update to this issue, I think our solution is going to be moving the Angular module into a secondary entrypoint to separate out that code from the main package.
I'm waiting on APF v6 to come out before I implement this though, because that may fix the structure issues you're facing.
APF?
Sounds good.
This will probably be fixed by #84, the gist is that there will be a secondary entrypoint for all of the Angular stuff, that way top-level is just pure JS with no dependencies.
APF stands for Angular Package Format, and it's the way we bundle Preboot 6.0 beta.
This is now being worked on in https://github.com/angular/preboot/pull/90 now, which needs some attention via rebase and a possible bundling issue.
Note: for support questions, please use the Universal Slack Channel or https://gitter.im/angular/universal
I'm submitting a ...
[x] bug report
Which parts of preboot are affected by this issue?
[x] server side
[x] client side
[ ] inline
Do you want to request a feature or report a bug?
Bug
It seems that when the structure of the imports was flattened, the imports weren't made... optional? I'm not sure how these sorts of things actually work. The code it's complaining about is here.
Use preboot in a repo that doesn't contain angular.
The relevant modules import successfully and the missing peer dependencies are ignored.
See above.
Please tell us about your environment:
Browser: [all]
Language: [ ES6/7 | ES5 ]
OS: [ Linux ]
Platform: [NodeJs]
Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)