5
  • Investigating why Sparkle delta updates don't seem to be working

  • BugsDesktopDone

Steps to reproduce:
Some users (including myself) have noticed Orion tends to download both the delta, then the full update, via Sparkle. This doesn't appear to be a one-off occurence, but it is not clear if it affects everyone.

Some logs from an update (from 122.4 RC to 122.5 RC) - nothing really seems to opint to a direct cause though:

kernel	AMFI: constraint violation /Applications/Orion RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Sparkle has entitlements but is not a main binary

Orion RC	OK: EdDSA signature is correct

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “PlugIns” couldn’t be opened because there is no such file." UserInfo={NSURL=PlugIns/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/PlugIns, NSUnderlyingError=0x12f72ad10 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “Extensions” couldn’t be opened because there is no such file." UserInfo={NSURL=Extensions/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/Extensions, NSUnderlyingError=0x14001c840 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “PlugIns” couldn’t be opened because there is no such file." UserInfo={NSURL=PlugIns/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/PlugIns, NSUnderlyingError=0x12f641b10 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “Extensions” couldn’t be opened because there is no such file." UserInfo={NSURL=Extensions/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Extensions, NSUnderlyingError=0x13f73ac60 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “PlugIns” couldn’t be opened because there is no such file." UserInfo={NSURL=PlugIns/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/PlugIns, NSUnderlyingError=0x13f735060 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “Extensions” couldn’t be opened because there is no such file." UserInfo={NSURL=Extensions/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Extensions, NSUnderlyingError=0x140027e90 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	- 45683955: Checking whether application is managed at file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Autoupdate.app/org.sparkle-project.Sparkle.Autoupdate

lsd	org.sparkle-project.Sparkle.Autoupdate/(null):5:5:1:1:Building bundle record for app

lsd	org.sparkle-project.Sparkle.Autoupdate/(null):5:5:2:1:Built bundle record for app

lsd	org.sparkle-project.Sparkle.Autoupdate/(null):5:4:2:1:_LSServerRegisterItemInfo result = 0

dmd	Received xpc stream event (distributed notification matching) with name: com.apple.LaunchServices.applicationRegistered user info: {
    bundleIDs =     (
        "org.sparkle-project.Sparkle.Autoupdate"
    );
    isForcedUpdate = 1;
    isPlaceholder = 0;
}

lsd	Non-fatal error enumerating at <private>, continuing: Error Domain=NSCocoaErrorDomain Code=260 "The file “Extensions” couldn’t be opened because there is no such file." UserInfo={NSURL=Extensions/ -- file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/Contents/, NSFilePath=/Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion RC 122.5/Orion RC.app/Contents/Extensions, NSUnderlyingError=0x12f6426f0 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

lsd	- 45683955: Checking whether application is managed at file:///Users/usr/Library/Caches/com.kagi.kagimacOS.RC/org.sparkle-project.Sparkle/PersistentDownloads/glb2VCbg2/Orion%20RC%20122.5/Orion%20RC.app/com.kagi.kagimacOS.RC

Orion, OS version; hardware type:

Version 0.99.122.4-rc (WebKit 615.1.16.1)
Ventura 13.1 build 22C65)

    9 months later

    @Vlad I think this is resolved now for a few months so can be closed. I didn't see a double-download with today's RC at least.

    No one is typing