Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Long version ids (12 digits based on reverse date) cause update to work no longer #222

grouchal opened this Issue Nov 5, 2012 · 3 comments


None yet
2 participants

grouchal commented Nov 5, 2012

We have switched to using a longer version id that is based on a reverse date and have found that updates are no longer recognised.

So we have installed version 201210251627 and try to update to 201211051041 and this version is not recognised as a new version.

Is there a maximum length of a version number?

grouchal commented Nov 5, 2012

I have tried setting the new version to 999999999999 and even this is not recognised as newer than 201210251627

grouchal commented Nov 5, 2012

I added a test to the SUVersionComparisionTest.m to just check this was a problem with the framework:

- (void)testVersionsWithReverseDateBasedNumbers
    SUAssertAscending(@"201210251627", @"201211051041");

This code fails.

To solve this problem we have implemented our own comparison using a delegate - but I think this behaviour should be expected in the default comparator too.


andymatuschak commented Nov 16, 2012

Your version numbers overflowed an int!

lksoft added a commit to lksoft/Sparkle that referenced this issue Jul 3, 2013

Merge remote-tracking branch 'matuschak/master'
* matuschak/master: (46 commits)
  Fixing issue with update as non admin user where the quarantine flag did not get correctly removed from new application
  Release notes referenced by URL in updates item description field can be delivered via https://
  Fix stuffing unsigned int into int variable, causing build warning
  Update Project file/Scheme to recommended Xcode settings
  Fix "corrupted" turkish strings file
  update .gitignore
  Fixed warnings in xibs, switched to lldb and fixed occasional copy phase error from incorrect text encoding
  Add explicit method return types in header to supress warnings when including framework in projects with more exacting warnings such as -Wextra.
  Fall back on DSA-only installation checks for .pkg installations
  Fixes #222: Long version ids (12 digits based on reverse date) cause update to work no longer
  Fixed unit tests for 10.8
  Fixes #221: char *oldDestinationString
  Updates to Turkish localization courtesy Emir Sarı
  Update remaining english straight single ' quotes to curly ’ quotes
  Update strings files to standardize ellipsis character (…) instead of three dots (…) Also change don't to curly quote don’t in dialog.
  Adding Arabic localization, courtesy Muhammad Azmi Al-Hashemi
  Disable row selection in the system profile table by implementing the table delegate and turning off "Avoid Empty Selection", "Preserve Selection" and "Select Inserted Objects" on the array controller in the nib.
  Fixes #198: Problem with 10.5
  Fixes #133: Sparkle deleting/replacing the wrong executable when it unpacks
  Adding Thai localizations to the project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment