Please make SUConstants.h, SUScheduledUpdateDriver.h checkForUpdatesWithDriver "Public" again.

Bug #251858 reported by dwood

This bug report was converted into a question: question #40253: Please make SUConstants.h, SUScheduledUpdateDriver.h checkForUpdatesWithDriver "Public" again..

2
Affects Status Importance Assigned to Milestone
Sparkle
Invalid
Undecided
Unassigned

Bug Description

I've updated to the latest "bzr clone lp:sparkle" (since it looks like a whole bunch of bugfixes were just landed, and I want a pretty stable version before you re-architect things) and I found that several header files are no longer public. This must be a mistake, yes? Our app (and I'm sure many other apps) need to make use of the various keys. We need, for example:

SUEnableAutomaticChecksKey -- to know whether to put up our dialog asking if we should check for updates; to use in preferences window, etc.

SUFeedURLKey -- we use this to modify and turn into an online release notes

Also, we were doing this per your advice to just do a check right away:
[[[NSApp delegate] sparkleUpdater] checkForUpdatesWithDriver:[[[SUScheduledUpdateDriver alloc] init] autorelease]];

The problem is that SUScheduledUpdateDriver are no longer exposed in the headers. (In fact, the method checkForUpdatesWithDriver is now a *private* method!)

Revision history for this message
dwood (dwood-karelia) wrote :

Ah I see you already merged in the big experimental branch you were tweeting about. I was trying to get the code *before* you did that merge. Well I will look at the code diffs for revision 0x0100 and see if I can figure out if there are workarounds what you did, or if there is really a problem of things being missing.

Revision history for this message
Andy Matuschak (andymatuschak) wrote :

I decided that the client shouldn't directly know about things like pref keys and drivers.

For SUEnableAutomaticChecksKey, SUUpdater is KVC/KVO-compliant for automaticallyChecksForUpdates.

For SUFeedURLKey, SUUpdater is KVC/KVO-compliant for feedURL.

For [[[NSApp delegate] sparkleUpdater] checkForUpdatesWithDriver:[[[SUScheduledUpdateDriver alloc] init] autorelease]], use SUUpdater's -checkForUpdatesInBackground.

Revision history for this message
Andy Matuschak (andymatuschak) wrote :

I thought this answer might be useful to others.

Changed in sparkle:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.