Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

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

Closed
grouchal opened this Issue · 3 comments

2 participants

Al Briggs Andy Matuschak
Al Briggs

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?

Al Briggs

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

Al Briggs

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.

Andy Matuschak

Your version numbers overflowed an int!

Scott Little lksoft referenced this issue from a commit in lksoft/Sparkle
Scott Little lksoft 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.
  ...

Conflicts:
	SUHost.m
	Sparkle.xcodeproj/project.pbxproj
	Sparkle.xcodeproj/xcshareddata/xcschemes/Sparkle.xcscheme
8d9a1ac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.