SU_EXPORT @interface SUAppcast : NSObject
@property (copy, nullable) NSString *userAgentString;
-
-#if __has_feature(objc_generics)
@property (copy, nullable) NSDictionary<NSString *, NSString *> *httpHeaders;
-#else
-@property (copy, nullable) NSDictionary *httpHeaders;
-#endif
- (void)fetchAppcastFromURL:(NSURL *)url inBackground:(BOOL)bg completionBlock:(void (^)(NSError *_Nullable))err;
- (SUAppcast *)copyWithoutDeltaUpdates;
--- /dev/null
+//
+// SUCodeSigningVerifier.h
+// Sparkle
+//
+// Created by Andy Matuschak on 7/5/12.
+//
+//
+
+#ifndef SUCODESIGNINGVERIFIER_H
+#define SUCODESIGNINGVERIFIER_H
+
+#import <Foundation/Foundation.h>
+#import "SUExport.h"
+
+SU_EXPORT @interface SUCodeSigningVerifier : NSObject
++ (BOOL)codeSignatureAtBundleURL:(NSURL *)oldBundlePath matchesSignatureAtBundleURL:(NSURL *)newBundlePath error:(NSError **)error;
++ (BOOL)codeSignatureIsValidAtBundleURL:(NSURL *)bundlePath error:(NSError **)error;
++ (BOOL)bundleAtURLIsCodeSigned:(NSURL *)bundlePath;
++ (NSDictionary *)codeSignatureInfoAtBundleURL:(NSURL *)bundlePath;
+@end
+
+#endif
The keys of this dictionary are HTTP header fields (NSString) and values are corresponding values (NSString)
*/
-#if __has_feature(objc_generics)
@property (copy) NSDictionary<NSString *, NSString *> *httpHeaders;
-#else
-@property (copy) NSDictionary *httpHeaders;
-#endif
/*!
A property indicating whether or not the user's system profile information is sent when checking for updates.
\return An array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user.
*/
-#if __has_feature(objc_generics)
- (NSArray<NSDictionary<NSString *, NSString *> *> *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile;
-#else
-- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile;
-#endif
/*!
Returns a custom appcast URL.
*/
- (void)updater:(SUUpdater *)updater willDownloadUpdate:(SUAppcastItem *)item withRequest:(NSMutableURLRequest *)request;
+/*!
+ Called immediately after succesfull download of the specified update.
+
+ \param updater The SUUpdater instance.
+ \param item The appcast item corresponding to the update that has been downloaded.
+ */
+- (void)updater:(SUUpdater *)updater didDownloadUpdate:(SUAppcastItem *)item;
+
/*!
Called after the specified update failed to download.
*/
- (void)userDidCancelDownload:(SUUpdater *)updater;
+/*!
+ Called immediately before extracting the specified downloaded update.
+
+ \param updater The SUUpdater instance.
+ \param item The appcast item corresponding to the update that is proposed to be extracted.
+ */
+- (void)updater:(SUUpdater *)updater willExtractUpdate:(SUAppcastItem *)item;
+
+/*!
+ Called immediately after extracting the specified downloaded update.
+
+ \param updater The SUUpdater instance.
+ \param item The appcast item corresponding to the update that has been extracted.
+ */
+- (void)updater:(SUUpdater *)updater didExtractUpdate:(SUAppcastItem *)item;
+
/*!
Called immediately before installing the specified update.
#import "SPUDownloaderProtocol.h"
#import "SPUDownloaderSession.h"
#import "SPUURLRequest.h"
+#import "SUCodeSigningVerifier.h"
#endif
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
- <string>17F35e</string>
+ <string>18A326h</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
- <string>1.19.0</string>
+ <string>1.20.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleSupportedPlatforms</key>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
- <string>1.19.0</string>
+ <string>1.20.0</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
- <string>9C34b</string>
+ <string>10L176w</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
- <string>17C67a</string>
+ <string>18A293s</string>
<key>DTSDKName</key>
- <string>macosx10.13</string>
+ <string>macosx10.14</string>
<key>DTXcode</key>
- <string>0920</string>
+ <string>1000</string>
<key>DTXcodeBuild</key>
- <string>9C34b</string>
+ <string>10L176w</string>
<key>LSBackgroundOnly</key>
<string>1</string>
<key>LSMinimumSystemVersion</key>
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
- <string>17F35e</string>
+ <string>18A326h</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
- <string>1.19.0</string>
+ <string>1.20.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleSupportedPlatforms</key>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
- <string>1.19.0</string>
+ <string>1.20.0</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
- <string>9C34b</string>
+ <string>10L176w</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
- <string>17C67a</string>
+ <string>18A293s</string>
<key>DTSDKName</key>
- <string>macosx10.13</string>
+ <string>macosx10.14</string>
<key>DTXcode</key>
- <string>0920</string>
+ <string>1000</string>
<key>DTXcodeBuild</key>
- <string>9C34b</string>
+ <string>10L176w</string>
</dict>
</plist>