Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified src/MacVim/Sparkle_2.framework/Versions/B/Autoupdate
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

#import <Foundation/Foundation.h>

#ifdef BUILDING_SPARKLE_DOWNLOADER_SERVICE
#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,16 @@
//

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,18 @@
//

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SPUUserDriver.h"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SPUUserDriver.h>
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,15 @@
//

#import <Foundation/Foundation.h>
#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down Expand Up @@ -42,6 +50,19 @@ SU_EXPORT @protocol SPUStandardUserDriverDelegate <NSObject>
*/
- (_Nullable id <SUVersionDisplay>)standardUserDriverRequestsVersionDisplayer;

/**
Decides whether or not the standard user driver should provide an option to show full release notes to the user.

When a user checks for new updates and no new update is found, Sparkle by default will offer to show the application's version history to the user
by providing a "Version History" button in the no new update available alert.

If this delegate method is implemented to return `NO`, then Sparkle will not provide an option to show full release notes to the user.

@param item The appcast item corresponding to the latest version available.
@return @c YES to allow Sparkle to show full release notes to the user, otherwise @c NO to disallow this.
*/
- (BOOL)standardUserDriverShouldShowVersionHistoryForAppcastItem:(SUAppcastItem *)item;

/**
Handles showing the full release notes to the user.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,16 @@
//

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down
86 changes: 71 additions & 15 deletions src/MacVim/Sparkle_2.framework/Versions/B/Headers/SPUUpdater.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,18 @@
//

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#import "SPUUserDriver.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#import <Sparkle/SPUUserDriver.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down Expand Up @@ -100,15 +110,17 @@ SU_EXPORT @interface SPUUpdater : NSObject
You usually do not need to call this method directly. If `automaticallyChecksForUpdates` is @c YES,
Sparkle calls this method automatically according to its update schedule using the `updateCheckInterval`
and the `lastUpdateCheckDate`. Therefore, you should typically only consider calling this method directly if you
opt out of automatic update checks.
opt out of automatic update checks. Calling this method when updating your own bundle is invalid if Sparkle is configured
to ask the user's permission to check for updates automatically and `automaticallyChecksForUpdates` is `NO`.
If you want to reset the updater's cycle after an updater setting change, see `resetUpdateCycle` or `resetUpdateCycleAfterShortDelay` instead.

This is meant for programmatically initating a check for updates in the background without the user initiating it.
This check will not show UI if no new updates are found.

If a new update is found, the updater's user driver may handle showing it at an appropriate (but not necessarily immediate) time.
If you want control over when and how a new update is shown, please see https://sparkle-project.org/documentation/gentle-reminders/

Note if automated updating is turned on, either a new update may be downloaded in the background to be installed silently,
Note if automated downloading/installing is turned on, either a new update may be downloaded in the background to be installed silently,
or an already downloaded update may be shown.

This will not find updates that the user has opted into skipping.
Expand Down Expand Up @@ -206,10 +218,14 @@ SU_EXPORT @interface SPUUpdater : NSObject

By default, updates are not automatically downloaded.

By default starting from Sparkle 2.4, users are provided an option to opt in to automatically downloading and installing updates when they are asked if they want automatic update checks enabled.
The default value for this option is based on what the developer sets `SUAutomaticallyUpdate` in their Info.plist.
This is not done if `SUEnableAutomaticChecks` is set in the Info.plist however. Please check `automaticallyChecksForUpdates` property for more details.

Note that the developer can disallow automatic downloading of updates from being enabled (via `SUAllowsAutomaticUpdates` Info.plist key).
In this case, this property will return NO regardless of how this property is set.

Prefer to set SUAutomaticallyUpdate directly in your Info.plist for setting the initial value.
Prefer to set `SUAutomaticallyUpdate` directly in your Info.plist for setting the initial value.

Setting this property will persist in the host bundle's user defaults.
Hence developers shouldn't maintain an additional user default for this property.
Expand All @@ -222,32 +238,59 @@ SU_EXPORT @interface SPUUpdater : NSObject
The URL of the appcast used to download update information.

If the updater's delegate implements `-[SPUUpdaterDelegate feedURLStringForUpdater:]`, this will return that feed URL.
Otherwise if the feed URL has been set before, the feed URL returned will be retrieved from the host bundle's user defaults.
Otherwise if the feed URL has been set before using `-[SPUUpdater setFeedURL:]`, the feed URL returned will be retrieved from the host bundle's user defaults.
Otherwise the feed URL in the host bundle's Info.plist will be returned.
If no feed URL can be retrieved, returns nil.

For setting a primary feed URL, please set the `SUFeedURL` property in your Info.plist.
For setting an alternative feed URL, please prefer `-[SPUUpdaterDelegate feedURLStringForUpdater:]` over `-setFeedURL:`
For setting an alternative feed URL, please prefer `-[SPUUpdaterDelegate feedURLStringForUpdater:]` over `-setFeedURL:`.
Please see the documentation for `-setFeedURL:` for migrating away from that API.

This property must be called on the main thread; calls from background threads will return nil.
*/
@property (nonatomic, readonly, nullable) NSURL *feedURL;

/**
Set the URL of the appcast used to download update information. Using this method is discouraged.
Set the URL of the appcast used to download update information. This method is deprecated.

Setting this property will persist in the host bundle's user defaults.
To avoid this, you should consider implementing
To avoid this undesirable behavior, please consider implementing
`-[SPUUpdaterDelegate feedURLStringForUpdater:]` instead of using this method.

Passing nil will remove any feed URL that has been set in the host bundle's user defaults.
Calling `-clearFeedURLFromUserDefaults` will remove any feed URL that has been set in the host bundle's user defaults.
Passing nil to this method can also do this, but using `-clearFeedURLFromUserDefaults` is preferred.
To migrate away from using this API, you must clear and remove any feed URLs set in the user defaults through this API.

If you do not need to alternate between multiple feeds, set the SUFeedURL in your Info.plist instead of invoking this method.

For beta updates, you may consider migrating to `-[SPUUpdaterDelegate allowedChannelsForUpdater:]` in the future.

Updaters that update other developer's bundles should not call this method.

This method must be called on the main thread; calls from background threads will have no effect.
*/
- (void)setFeedURL:(nullable NSURL *)feedURL;
- (void)setFeedURL:(nullable NSURL *)feedURL __deprecated_msg("Please call -[SPUUpdater clearFeedURLFromUserDefaults] to migrate away from using this API and transition to either specifying the feed URL in your Info.plist, using channels in Sparkle 2, or using -[SPUUpdaterDelegate feedURLStringForUpdater:] to specify the dynamic feed URL at runtime");

/**
Clears any feed URL from the host bundle's user defaults that was set via `-setFeedURL:`

You should call this method if you have used `-setFeedURL:` in the past and want to stop using that API.
Otherwise for compatibility Sparkle will prefer to use the feed URL that was set in the user defaults over the one that was specified in the host bundle's Info.plist,
which is often undesirable (except for testing purposes).

If a feed URL is found stored in the host bundle's user defaults (from calling `-setFeedURL:`) before it gets cleared,
then that previously set URL is returned from this method.

This method should be called as soon as possible, after your application finished launching or right after the updater has been started
if you manually manage starting the updater.

Updaters that update other developer's bundles should not call this method.

This method must be called on the main thread.

@return A previously set feed URL in the host bundle's user defaults, if available, otherwise this returns `nil`
*/
- (nullable NSURL *)clearFeedURLFromUserDefaults;

/**
The host bundle that is being updated.
Expand All @@ -258,7 +301,7 @@ SU_EXPORT @interface SPUUpdater : NSObject
The user agent used when checking for updates.

By default the user agent string returned is in the format:
$(BundleDisplayName)/$(BundleDisplayVersion) Sparkle/$(SparkleDisplayVersion)
`$(BundleDisplayName)/$(BundleDisplayVersion) Sparkle/$(SparkleDisplayVersion)`

BundleDisplayVersion is derived from the main application's Info.plist's CFBundleShortVersionString.

Expand Down Expand Up @@ -292,15 +335,28 @@ SU_EXPORT @interface SPUUpdater : NSObject
@property (nonatomic, readonly, copy, nullable) NSDate *lastUpdateCheckDate;

/**
Appropriately schedules or cancels the update checking timer according to the settings for the time interval and automatic checks.

If you change the `updateCheckInterval` or `automaticallyChecksForUpdates` properties, the update cycle will be reset automatically after a short delay.
The update cycle is also started automatically after the updater is started. In all these cases, this method should not be called directly.
Appropriately re-schedules the update checking timer according to the current updater settings.

This method should only be called in response to a user changing updater settings. This method may trigger a new update check to occur in the background if an updater setting such as the updater's feed or allowed channels has changed.

If the `updateCheckInterval` or `automaticallyChecksForUpdates` properties are changed, this method is automatically invoked after a short delay using `-resetUpdateCycleAfterShortDelay`. In these cases, manually resetting the update cycle is not necessary.

This call does not change the date of the next check, but only the internal timer.
See also `-resetUpdateCycleAfterShortDelay` which gives the user a short delay before triggering a cycle reset.
*/
- (void)resetUpdateCycle;

/**
Appropriately re-schedules the update checking timer according to the current updater settings after a short cancellable delay.

This method calls `resetUpdateCycle` after a short delay to give the user a short amount of time to cancel changing an updater setting.
If this method is called again, any previous reset request that is still inflight will be cancelled.

For example, if the user changes the `automaticallyChecksForUpdates` setting to `YES`, but quickly undoes their change then
no cycle reset will be done.

If the `updateCheckInterval` or `automaticallyChecksForUpdates` properties are changed, this method is automatically invoked. In these cases, manually resetting the update cycle is not necessary.
*/
- (void)resetUpdateCycleAfterShortDelay;

/**
The system profile information that is sent when checking for updates.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,20 @@
//

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#import "SPUUpdateCheck.h"
#import "SPUUserUpdateState.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#import <Sparkle/SPUUpdateCheck.h>
#import <Sparkle/SPUUserUpdateState.h>
#endif

@protocol SUVersionComparison;
@class SPUUpdater, SUAppcast, SUAppcastItem, SPUUserUpdateState;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,16 @@
//

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,17 @@

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SPUUserUpdateState.h"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SPUUserUpdateState.h>
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,15 @@

#import <Foundation/Foundation.h>

#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand Down
10 changes: 9 additions & 1 deletion src/MacVim/Sparkle_2.framework/Versions/B/Headers/SUAppcast.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,15 @@
#define SUAPPCAST_H

#import <Foundation/Foundation.h>
#if defined(BUILDING_SPARKLE_SOURCES_EXTERNALLY)
// Ignore incorrect warning
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wquoted-include-in-framework-header"
#import "SUExport.h"
#pragma clang diagnostic pop
#else
#import <Sparkle/SUExport.h>
#endif

NS_ASSUME_NONNULL_BEGIN

Expand All @@ -28,7 +36,7 @@ SU_EXPORT @interface SUAppcast : NSObject

These `SUAppcastItem` items are in the same order as specified in the appcast XML feed and are thus not sorted by version.
*/
@property (readonly, copy) NSArray<SUAppcastItem *> *items;
@property (readonly, nonatomic, copy) NSArray<SUAppcastItem *> *items;

@end

Expand Down
Loading