mu-editor / mu

A small, simple editor for beginner Python programmers. Written in Python and Qt5.
http://codewith.mu
GNU General Public License v3.0
1.42k stars 437 forks source link

Shipping compressed wheels makes Windows installer bigger #1202

Open devdanzin opened 3 years ago

devdanzin commented 3 years ago

The Windows installer built from master as of 4241844 is around 107MB, but it gets down to 87MB if we unpack the wheels in mu.wheels right before building. The issue is that wheel files are zipped, which makes the NSIS LZMA compression unable to shrink them further.

It's rather easy to unpack the wheels during build and it seems it'd be easy to pack them back on install, the end result should be the same as without unpacking. But that could add new failure modes for both build and install time.

Another way to make this content compressible would be to patch the wheel command to pack the wheels with STORE instead of DEFLATE, but that would use more disk space on install and probably be more brittle than the first option.

Not sure we need to do something about it, but writing findings down for discussion.

carlosperate commented 3 years ago

That's a good observation @devdanzin, thanks!

From my point of view, simplicity and reducing risks is more important than installer size. It's a shame the app can end up being quite large, but I think it's worth the trade-off.