atom-ink icon indicating copy to clipboard operation
atom-ink copied to clipboard

Rollup

Open aminya opened this issue 5 years ago • 1 comments

We made it 😃 Fixes https://github.com/JunoLab/atom-ink/issues/144

  • This builds atom-ink using rollup.

Now it loads 2.6X faster

reduces the ink load time by 110ms + 20ms for julia-client

After Ink rollup and Katex movement

After Ink rollup without Katex movement

Without Ink rollup

  • Allows debugging using npm run debug

To achieve I made some changes to the code:

  • modernized the code to use import/exports.
  • decaffeinated ink.coffee.
  • fixed a couple of errors and typos here and there.
  • I removed the old abandoned underscore-plus in favor of actively maintained underscore. The new one is tree shakable, which gives more performance.
  • Moved Katex to julia-client

One difference: I used static import in ink.coffee (which bundles everything into one file). If you want I can change this to dynamic import (which makes use of Rollup's code splitting). I did not do this since I was not sure how these variables are used on the julia-client side, and using dynamic import may ruin the performance if these are called right away from the Julia client.

Registering

Similar to https://github.com/JunoLab/atom-indent-detective/issues/23

Commit history is verbose so you can review it easily.

In sync with https://github.com/JunoLab/atom-julia-client/pull/750

aminya avatar May 28 '20 09:05 aminya

@pfitzseb Could you review this? If you have any questions we can have a skype call.

aminya avatar May 28 '20 23:05 aminya