-
-
Notifications
You must be signed in to change notification settings - Fork 20
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
Migrate to esbuild #70
Conversation
Pull new changes
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.
Impressive how much config code we can save.
I found 2 problems:
- TypeScript dev dependency needs to stay, otherwise the tests can't run (
npm test
) - Because the tsconfig.json is missing there are 2 issues:
2.1 the tests don't run because of the '--downlevelIteration' flag
2.2 the type declaration files are not being generated (.d.ts files).
I think we can't get rid of the tsconfig.json because it is necessary for some ts settings.
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.
Impressive how much config code we can save.
I found 2 problems:
- TypeScript dev dependency needs to stay, otherwise the tests can't run (
npm test
) - Because the tsconfig.json is missing there are 2 issues:
2.1 the tests don't run because of the '--downlevelIteration' flag
2.2 the type declaration files are not being generated (.d.ts files).
I think we can't get rid of the tsconfig.json because it is necessary for some ts settings.
I re-added the |
@splashsky The tests run fine now. But if I run I found this issue here: They suggest to create the declaration files in a separate step with If I chain the commands in the package.json like this:
It creates the declaration files. However, I still need to manually copy the |
we could add another dependency to do that (i.e. https://www.npmjs.com/package/copyfiles) |
Actually, I was able to add a small modification to the build script that generates type declarations and dumps them into It seems that bundling type declarations still has iffy support across the board. |
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.
Please turn back the indentation. But the rest works fine. Actually I found out that it is even better to have all the .d.ts files around because they are including each other.
So type support should be better now. 🙂
…dengine into migrate-to-esbuild
The recent PRs kind of went beyond the scope of this little project, but I've got prettier and eslint set up here as well. Tested them in the Sorry about the spaces - my IDE is fully set up to do everything in 4 spaces automatically so I didn't even notice 🤣 |
@splashsky with "recent PRs" you mean adding eslint and prettier? I never heard that using prettier and eslint depends on the size of the project before. Despite being useful for a single person already, their true advantage shows when having more than one person working at the code. |
Co-authored-by: Johannes Baum <[email protected]>
I apologize, I meant little project as in this PR specifically - but I did get that last note resolved so maybe we're good to go? 😄 |
No, I apologize 🙂 I now get what you meant. Now everything works fine. We are good to go. Excellent work and thank you for your contribution. esbuild is blazingly fast. |
I can't merge it due to conflicts. Can you resolve them by merging the latest master into your branch? |
Whoops, accidentally merged this - still new to Git and was just trying to resolve the conflicts lol Either way, conflicts were fixed and merged into master. 😄 |
This PR addresses #69 (nice), implementing the migration to the
esbuild
bundler. A lot of the Webpack bloat is removed and the list of required dependencies is now much shorter.This PR also accidentally includes the removal of the now-useless
docs/
directory, which was meant to take effect when the new docs were pushed through.See issue #69 in regards to this PR's functionality - a working example of the
esbuild
build can be found there.