-
Notifications
You must be signed in to change notification settings - Fork 971
Updates are larger than necessary (bad .ZIP implementation) #3193
Comments
The issue here is upstream with Electron, which uses Squirrel to deliver updates, which itself doesn’t support anything other than the zip format. Squirrel is two different projects, Squirrel.Mac and Squirrel.Windows (and the Windows version uses NuGet) – Linux is currently unsupported, it’s left to each distribution’s software manager. Brave’s There’s an issue requesting delta updates, Squirrel/Squirrel.Mac#5 and another asking for But it looks like, until Squirrel and NuGet support anything other than plain zips, or unless the Brave developers were to switch solutions, this won’t be readily fixed. And it looks like the NuGet devs aren’t in any hurry to change that… |
I'm not really sure I understand. At a minimum, they can shave off a portion of the size simply by recompressing the ZIP file. |
And I’m explaining that the Brave uses a service (Electron) that uses another service (Squirrel) that in turn (on Windows at least) uses yet another service (NuGet) to package up the archives. If NuGet doesn’t support anything other than vanilla zips, then neither can anything that exclusively uses their services. See the complaints about NuGet here for example, NuGet/Home#890. That’s the way it looks from here, anyway. |
A zip file is a zip file. If you compress it well, it's still a zip file. |
Did you read anything that I linked to? This, Squirrel/Squirrel.Windows#620 specifically speaks to the same issue regarding the current large size of Electron (the thing that Brave is built on):
The reply from a Squirrel developer?
|
Yes, LZMA2 is a compression method. |
And @Ivoz was using LZMA2 as an example,
(Emphasis mine.) The answer from @paulcbetts from last March?
You obviously know a lot more about compression tech than I do, but of course I’ve searched up and found out the source of the current Brave/Electron implementation. Maybe you could take up the issue with the NuGet developers? |
On the Windows side, we're planning on moving to LZMA2 for at least the initial install. LZMA2 actually doesn't win us much of anything for delta updates (<2%). Trying to do this while maintaining compatibility is pretty tricky too (i.e. you're updating from a version of Squirrel that doesn't understand LZMA2 => a version that does). Brave should definitely enable delta updates on Windows though, it would save them a lot of bandwidth |
Did you search for similar issues before submitting this one?
Of course.
Describe the issue you encountered:
Observe network traffic while downloading Brave update.
Expected behavior:
Small Update package using an efficient format like 7z/lzma
Actual: Zip file (nupkg) which is not optimally compressed; even a good .ZIP compressor can save a few megabytes.
Win7
Latest
The text was updated successfully, but these errors were encountered: