Squirrel / Squirrel.Mac

:shipit: Cocoa framework for updating OS X apps :shipit:
MIT License
1.59k stars 128 forks source link

Download progress #200

Closed tborychowski closed 6 years ago

tborychowski commented 7 years ago

Is it possible to get a download progress event of some sort? I'm using electron-builder auto updater, which is using Squirrel.Mac under the hood, and I cannot get the download progress, because apparently Squirrel does not provide it.

develar commented 7 years ago

Some clarification: electron-updater wraps official bundled auto-updater on macOS to get rid of special server requirements. Alongside other features. On Windows NSIS is used and, so, it is very easy to implement progress.

igor-lemon commented 7 years ago

+1

796F commented 7 years ago

+1

thegnuu commented 7 years ago

+1

biroplane commented 7 years ago

@develar can you explain "how easy can be to implement the progress"?! thanks

jessica-pixvana commented 7 years ago

+1

develar commented 7 years ago
  1. Please use reactions instead of comments +1.
  2. electron-builder auto-updater supports progress events — it will be released in 2 weeks. Stay tuned :)
biroplane commented 7 years ago

will you share with the rest of us the implementation, please? :)

ghost commented 7 years ago

https://github.com/atom/atom/issues/9164

ghost commented 7 years ago

For the +1 out there, here's the reason why @develar made his comment so you have some context: https://github.com/dear-github/dear-github

develar commented 7 years ago

@biroplane https://github.com/electron-userland/electron-builder/issues/1167#issuecomment-306252864

Users of electron-builder / electron-updater — you are not affected by this issue anymore.

develar commented 7 years ago

If you for some reasons don't use electron-builder — electron-updater can be used standalone, but you will need to generate sha512 field in the update info file. This requirement can be relaxed if need. Feed url in the electron-updater it is url to dir, where channel update info file is expected (latest channel by default). e.g. feed url https://example.com -> https://example.com/latest-mac.yml file will requested (in case of generic provider).

I decided to not implement this logic on the native side, but in userland, because in this case user can use standard electron net API and customize behaviour (auth, redirect, proxy and so on).

zjfjiayou commented 7 years ago

+1

zjfjiayou commented 7 years ago

Thank you @develar, I find this problem for a long time, thank you have to fix the problem。https://github.com/electron-userland/electron-builder/tree/master/packages/electron-updater

tborychowski commented 6 years ago

I have another way to make it work now, so no need for that.