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
chore: vendor Mitt & update project structure #6209
Conversation
The standard pattern is to put it in a root folder under |
I normally would agree but I want to make it clear that we only vendor things in that are needed in all environments. E.g. we're not vendoring in any node-only dependencies. WDYT? |
Could we achieve that by adding |
I just realised it will complicate our setup much more if we have code outside of Therefore, how do people feel about having We could have vendor at the top level, but it will mean a fair bit of tweaking of the build system that doesn't feel worth the effort, to be honest with you. @mathiasbynens @paullewis LMK what you think |
b31aac3
to
dfa6d96
Compare
I'd be alright with
With |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@mathiasbynens we ended up chatting it through and going for the top level vendor directory, which I do think is probably cleaner in the long run. We've had to do some tweaking of the configuration but actually it's probably a bit cleaner now, and has some more clear divides between all the various ways we use TS (docs, tests, source code). |
Nice! I'm happy when Paul's happy. Thanks for resolving this |
(note: please change the commit message accordingly while squash+merging) |
As discussed in #6203 we need to vendor our common dependencies in so that when we ship an ESM build all imports point to file paths and do not rely on Node resolution (e.g. a browser does not understand `import mitt from 'mitt'`).
25c1488
to
7250519
Compare
As discussed in #6203 we need to vendor our common dependencies in so
that when we ship an ESM build all imports point to file paths and do
not rely on Node resolution (e.g. a browser does not understand
import mitt from 'mitt'
).