Open aminya opened 4 years ago
cc: @pfitzseb @aviatesk Let me know if you agree with this. I need your confirmation and collaboration before I put time on it.
To do this:
This doesn't take much. We just need to fix the import/export connections for now. Decaffeinated already compiles a very good code, and fine adjustments can be done later. ES6 import/export shouldn't be done right away, we can do that later as long as the software works.
Decaffeination is very welcome. The most important thing is whether the JSfied code is maintainable; don't forget to read through and check the code "makes sense" even when you start with the auto-decaf tool at the beginning.
As for webpack, I guess it only gives negligible loading time improvement. Atom uses transpiled cache even if we don't transpile AOT. So it's not good idea to rush decaf stuff just because of webpacking, etc.
Yeah, let's do the decaffeination as a first step. Just a quick comment on your PRs, @aminya: We're currently using something close to standard for our JS, so it'd be cool if you could switch your linter pass to that (or just follow the style manually, I guess).
Probably, I will not spend more time on this project. I cannot deal with loads of strong opinions.
If you want you can close this issue.
Method
Decaffeination can be done easily using:
or without automatic import/export
or without loose modifications (the safest but worst looking)
We need to run either of those and then fix the linkage of modules manually. We don't need to use
import/export
, but it will help to reduce excess deps in Webpack.Why
Side-Note
There is also bulk-decaffeinate that automatically searches for connections, but it doesn't work well on Windows (I couldn't get it to work).
https://github.com/decaffeinate/bulk-decaffeinate https://github.com/decaffeinate/bulk-decaffeinate/issues/265