Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on May 8, 2012
  1. @andymatuschak
Commits on Oct 10, 2011
  1. @andymatuschak
Commits on May 2, 2011
  1. @uliwitness
Commits on Jan 1, 2010
  1. renamed all methods that start with underscore, since that's reserved…

    Sean McBride authored
    … by Apple. Similiar for global variable that started with double underscore
Commits on Dec 4, 2009
  1. @uliwitness

    Merge of changes from SVN repository:

    uliwitness authored
    - Changed NTSynchronousTask to also give the status return value and direct stderror output to the outputData.
    - Changed includes so this builds as part of an app, too, not just as a framework
    - Made sure SUAppcast's dealloc releases some leaked ivars.
    - Added infoURL, extracted from link, that can point to a "more Info" page for download-less URLs
    - Added support for version attribute on item so we can support update notifications that don't include an enclosure (e.g. paid upgrades, or upgrades that would require a system update)
    - Added/improved a few description methods to ease debugging.
    - Added SULog so one can ask for a special log with additional information when there are update issues.
    - Added mayUpdateAndRestart for apps that absolutely, positively can't restart right now (e.g. cuz they're burning a CD and would produce a coaster).
    - Added updaterWillRelaunchApplication delegate method, analogous to the notification. Useful to have app delegate quit helper apps during installation.
    - Made SUBasicUpdateDriver's abortUpdate implicitly retain/autorelease the update driver, because the notification center otherwise releases it and it goes away, causing crashes in superclass's abortUpdate.
    - Merge of SUKeepDownloadOnFailedInstallKey and SUFixedHTMLDisplaySizeKey.
    - Avoid a few warnings about missing prototypes
    - Be paranoid, hdiutil can verify the download again, so let it. Better for internal apps where we turn off DSA checks, too.
    - SUHost has an -installationPath now, independent from the bundlePath, so one can normalize the app name from "MyApp 1.1b4" back to "MyApp" Users assume the file name contains the correct version number when there is one in it. Saves support a few round-trips each time.
    - Be better at threading: Try calling non-thread-safe methods on main thread only, and don't assume delegates know when they need to be thread-safe, call them on main thread where possible.
    - Added a method to put the old copy of the app in the trash. 1.5git changed in this spot, so I didn't actually merge the code that uses it back in yet.
    - Fix version comparison so it doesn't get confused by bracketed build numbers in version strings
    - Make sure cancel button is disabled during extraction, otherwise user would crash.
    - Don't put auto-update window at floating window level. It's huge and can't be switched to background! If you're an NSBGOnly where you need that, turn it on only in that case, but don't generally do such nonsense.
    - Hide release notes view if there aren't any.
    - Test whether we are on dial-up before checking for updates in background. It's not nice to cause (possibly expensive) dial-up periodically.
    - Temporarily comment out DSA complaints for easier testing.
    - Don't store (possibly already invalidated) one-shot NSTimers in an ivar. It's bad style. Retain it instead.
    - Decompress some monster expressions with nested method calls in ternary operators and nested in method calls again.
    - Don't use implicit "id" for params or return types.
    - finish_installation now puts up a progress window, so user knows update is still not finished.
    - Use ThreadSafePreferences (included dummy version that uses regular prefs for projects that don't use ThreadSafePreferences).
    - Todo later: Change finish_installation to be prettier.
Commits on Nov 1, 2009
  1. performed a code review, specifically:

    Sean McBride authored
    - changed some #include to #import
    - fixed some NULL -> nil Cocoa coding conventions
    - added new compiler warnings and fixed some warnings they generated
    - check for nil from NSTemporaryDirectory
    - added missing files to unit test and test app targets
    - added xcconfig files for unit test target
    - added @private to some ivars
    - changes some variables from signed to unsigned as appropriate
    - changed from base 2 to base 10 measurements of file size, consistent with both the actual meaning of metric prefixes and Apple's new policy as of 10.6
    - reduced some unneeded copy-paste of code
    - fixed failure to check for null from malloc and unneeded check against null before calling free
    - OSErr was incorrectly used instead of OSStatus
    - added some consts & statics to global strings
    - fixed some issues discovered by static analysis
    - fixed some 64bit issues, mostly related to casting and the use of slightly incorrect types/sizes
    - some dealloc methods were using accessors, changed to access ivars directly, as per Apple guidelines
    - removed old NS_DURING, NS_HANDLER, NS_ENDHANDLER macros
    - fixed a bug where immutable data was being mutated
    - removed all instance of "== YES" as they are dangerous
    - removed some redundant nil checks
    - fixed some leaks
    - conditionally replaced deprecated method usage
    - cleanup CF/NSMakeCollectable usage
    - fixed bug in GC where memory could be collected too early due to lack of strong references when using UTF8String
    - prevent passing null to CFRelease
Commits on Sep 2, 2009
  1. Change availability checks so that they build on 10.4

    Stuart Morgan authored
Commits on Aug 21, 2009
  1. @andymatuschak

    Fixing Bug #398921: Sparkle should detect read/write errors on archiv…

    andymatuschak authored
    …e extraction
    Thanks to Jim Turner for the patch.
Commits on Jun 20, 2009
  1. @andymatuschak

    Removed SL-deprecated NSFileManager methods. Left the old ones around…

    andymatuschak authored
    … #if'd for 10.4 support; I look forward to removing them. :)
    Thanks for the patch, August.
Commits on Jun 15, 2009
  1. added #ifdef's for Tiger support

    August Joki authored
  2. Fixed deprecated APIs to use replacements.

    August Joki authored
Commits on Jul 24, 2008
  1. @andymatuschak

    Added a guard to the piped unarchiver to fail more gracefully for bad…

    andymatuschak authored
    … filenames of very short length.
Commits on Jul 17, 2008
  1. @andymatuschak

    Fixes 243533 (for real this time, I hope)

    andymatuschak authored
    I've undone all the UTI nonsense: I don't see any reason to use it if the underlying frameworks are just going to do dumber path extension comparison that what I'm already doing. I've switched back to the tried-and-true method.
    I also made SUUnarchiver* path-based instead of NSURL-based because I realized that the latter didn't make any sense given that we're only unarchiving local files.
Commits on Jul 5, 2008
  1. @andymatuschak

    Fixed 245874

    andymatuschak authored
    This was indicative of a much greater problem! A missing comma totally broke piped unarchiving, and somehow neither the compiler nor I caught it before the release. 1.5b4, here we come...
Commits on Jul 4, 2008
  1. @andymatuschak

    More work on 243533; Sparkle should now work with bzips made by Stuff…

    andymatuschak authored
    …it. Thanks for the detective work, Peter Hosey!
Commits on Jul 3, 2008
  1. @andymatuschak

    Fixed 243533

    andymatuschak authored
    This should fix the .tar.bz2 and .tar.gz cases. Basically, Launch Services isn't smart enough to see both parts of the extension. When it sees a .bz2 or a .gz, I assume it's a .tar.bz2 or a .tar.gz, because that's what makes sense. Don't use plain .bz2 or .gzs!
  2. @andymatuschak

    Fixes 244675

    andymatuschak authored
    Arrrgh, Apple changed the .zip UTI between Tiger and Leopard. Now making the unarchiver recognize a UTI which both conform to.
Commits on Jun 21, 2008
  1. @andymatuschak

    Replaced UTF8String with fileSystemRepresentation and [NSString initW…

    andymatuschak authored
    …ithUTF8String] with [NSFileManager stringWithFileSystemRepresentation:length:] as appropriate.
Commits on Jun 20, 2008
  1. @andymatuschak
Commits on Jun 19, 2008
  1. @andymatuschak

    Fixes 236695

    andymatuschak authored
    Refactored Sparkle's unarchiving system into SUUnarchiver, a factory for SUPipedUnarchiver and SUDiskImageUnarchiver. I removed that nasty cleanUp call by now copying out the contents of the DMG into the /tmp directory and unmounting. Nice!
    This changed a fair amount so please test with your build and let me know if it explodes things. Works in my tests, though.
Something went wrong with that request. Please try again.