5

Some application developers who use the Sparkle framework keep old versions in their appcast (by using multiple <item> tags).

I think this practice would make sense if Sparkle showed the release notes of the intermediate releases when multiple updates took place since the last update (e.g. the user upgrades from version 4.0.0 to 4.0.5). However, Sparkle does not do that for some reason.

So why would you keep old versions in the appcast?

Mumunka
  • 3
  • 1
aaronk6
  • 2,701
  • 1
  • 19
  • 28
  • I have the same question. I'm about to replace our manual update process for production deployments with something that is automated and noticed the same thing. Did you ever figure out if there's any down side to it? – André Morujão Jul 06 '18 at 12:17
  • We just kept the versions in the feed because that’s what most people were doing. However, the project doesn’t exist anymore and I haven’t looked into this for almost thee years now. – aaronk6 Jul 10 '18 at 06:27
  • Ok, thanks for the feedback anyway. I've already ran some tests where I'm no longer keeping the old versions, and everything appears to be working as expected, so I'll most likely be using only the latest one. – André Morujão Jul 10 '18 at 14:21

2 Answers2

7

One motivation for keeping old appcast items around is to support older macOS versions as the required macOS version creeps up for updates over time. The latest item would have too high a <sparkle:minimumSystemVersion> but some older ones would still be applicable. Then users on legacy versions of macOS would still be prompted to download the newest update that their macOS allows, even though it's not the most current update.

Kelly
  • 1,096
  • 12
  • 22
0

You can implement your own version comparison mechanism, just return an own SUVersionComparisonProtocol for delegate callback

- (id<SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater;
Mumunka
  • 3
  • 1
  • This is true, and potentially useful. But, the question was really about the structure of the appcast xml file, not version comparisons. – Mattie Dec 12 '18 at 14:44