meteor / meteor-feature-requests

A tracker for Meteor issues that are requests for new functionality, not bugs.
Other
89 stars 3 forks source link

[Build tool] - Split meteor bundle and cache its components #277

Open avalanche1 opened 6 years ago

avalanche1 commented 6 years ago

So the basic meteor app structure is:

During app lifetime, mostly app-specific files are changed, meteor core and npms remain the same (unless updated to a newer version). So, it wd only be reasonable to download them to the client only once. And all the future times when client accesses the app - it sd only re-download app-specific bundle - if it has changed.

As far as I know, as of v.1.6 Meteor still bundles everything together into 2 huge files, bundle.js & bundle.css. And thus even a minuscule change in app code or style will require re-download of either or these two possibly-huge files. Instead of just serving everything from cache.

I guess that could be achieved with dynamic imports and some convoluted logic.. BUT it would really be helpful if each developer didn't have to invent this wheel and instead a standardised solution could be added to official Meteor build tool.

smeijer commented 6 years ago

Copy from https://github.com/meteor/meteor-feature-requests/issues/332#issuecomment-428909236

Stretching this one a bit. It might even be possible to get a base docker image; where Meteor is installed with this base bundle precompiled.

And that the end user could have a layer with only his code (+ node_modules) compiled.

Yes, it might lead to a slightly larger base image, but I think that outweighs the benefits.

Am I missing something here; or would this be quite possible?

avalanche1 commented 5 years ago

get a base docker image

A great proposal! I think it deserves its own feture request. Especially with all the existing solutions to dockerize meteor failing miserably for me. Spent a couple of days with them and had to resort to Galaxy hosting. On second thought, maybe that explains..)))