Can I make differential (incremental) updates where only the changed files are downloaded?

Asked by Thomas Tempelmann

My last update to my freeware "Find Any File" did cost me almost $20 in web serving fees, and I'm already using Amazon S3 which appears to have one of the lowest, yet reliable, fees in regards to data transmission volume.

Since the bigger part of the app is not changing during minor updates, I would like to avoid the download of the entire app each time an update is performed by Sparkle. Instead, exchanging just the subset of changed files is desired

How can I accomplish that? Sparkle doesn't appear to have an "incremental update" mode.

Is something like that planned? Is that something I could add myself in a few hours (and share with the codebase), or does the design of Sparkle's updater mechanisms not allow such a procedure?

Question information

Language:
English Edit question
Status:
Answered
For:
Sparkle Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Andy Matuschak (andymatuschak) said :
#1

This has been implemented in a branch (http://github.com/bdash/sparkle/commits/delta-updates) but hasn't been integrated into the master branch yet.

Revision history for this message
Thomas Tempelmann (tempelmann) said :
#2

Andy, thanks for your quick response.

I had a look at the branch, comparing it to the 1.5b6 source.

While it appears to handle deltas in some way, there's no documentation on how to use it - even the sample appcast doesn't show it. "Reading the source" is not my understanding of proper documentation. Boo to the author for that!

Before I dig further into the source to, can you tell me why this hasn't been integrated into main? Lack of time/interest on your part, or is there a technical reason (untested, unsure, unstable, ...)?

I can also see that it also fixes a few minor bugs, such as leaks and getting rid of deprecation warnings for 10.6 (apparently). Have those been integrated into the main branch as well?

Revision history for this message
Andy Matuschak (andymatuschak) said :
#3

Lack of time. It's not untested: it's what WebKit nightlies use.

Sorry, no docs yet.

Can you help with this problem?

Provide an answer of your own, or ask Thomas Tempelmann for more information if necessary.

To post a message you must log in.