Sparkle icon indicating copy to clipboard operation
Sparkle copied to clipboard

Help with "Update Error!" on macOS 10.13

Open jessegrosjean opened this issue 6 years ago • 6 comments

Little background:

  1. I'm not seeing this error when updating on macOS 10.12, only 10.13
  2. The sparkle feed URL is https://www.taskpaper.com/assets/app/TaskPaper-Preview.rss
  3. I click "Check for Update".
  4. I see that a new update is available and I click "Install Update"
  5. I see "Downloading update..." and then immediately after I see a new alert saying "Update Error!"
  6. When I click "Cancel Update" I then see the following in the console.
2017-10-26 17:24:57.769277-0400 TaskPaper[2243:153265] [Sparkle] Error: An error occurred while downloading the update. Please try again later. (null) (URL https://www.taskpaper.com/assets/app/TaskPaper-3.7.5-Preview.dmg)
2017-10-26 17:24:57.769312-0400 TaskPaper[2243:153265] [Sparkle] Error: The requested URL was not found on this server. (null) (URL https://www.taskpaper.com/assets/app/TaskPaper-3.7.5-Preview.dmg)
2017-10-26 17:24:57.769375-0400 TaskPaper[2243:153265] [Sparkle] Error: The operation couldn’t be completed. (kCFErrorDomainCFNetwork error -1100.) (null) (URL (null))

Any ideas?

Thanks, Jesse

jessegrosjean avatar Oct 26 '17 21:10 jessegrosjean

The URL looks fine. Maybe it's a problem with your machine? Do you have override in /etc/hosts or such?

The error comes from macOS and -1100 is kCFURLErrorFileDoesNotExist, so it really is getting 404 in this case.

kornelski avatar Oct 26 '17 23:10 kornelski

Thanks for your response. I don't think so. I've certainly not done anything like that myself, and don't have little snitch of something similar installed. Plus if I just paste the URL https://www.taskpaper.com/assets/app/TaskPaper-3.7.5-Preview.dmg into Safari then it downloads fine. I'm a little confused by the last (I think lowest down error) which reports as (kCFErrorDomainCFNetwork error -1100.) (null) (URL (null)) is that correct, reporting URL as null?

jessegrosjean avatar Oct 26 '17 23:10 jessegrosjean

Also if I do this within my app:

if let url = NSURL(string: "https://www.taskpaper.com/assets/app/TaskPaper-3.7.5-Preview.dmg") {
  let data = try? NSData(contentsOf: url as URL, options: [])
  Swift.print(data?.length)
}

I get Optional(8663381). So I think the file is downloadable from my computer and from within my app. Just somehow now making connection with sparkle.

jessegrosjean avatar Oct 26 '17 23:10 jessegrosjean

One more data point.

I've been reproducing this problem in the current version of my app by temporarily editing the version number to be and old version so that I can update. Now I've just updated Sparkle from 1.18 to 1.18.1 in my local dev version, and that seems to fix the problem. The update downloads.

But unfortunately all the apps out in the field that I do want to update are still using Sparkle 1.18 which still doesn't work for me.

jessegrosjean avatar Oct 27 '17 00:10 jessegrosjean

I know this doesn't help Jesse or TaskPaper users to update right now, but can developers subscribe to update error result notifications somehow and offer a manual download link as fallback in these cases?

DivineDominion avatar Nov 14 '17 07:11 DivineDominion

There's an issue open for the fallback #345

kornelski avatar Nov 14 '17 13:11 kornelski

This may have been when we were using NSURLDownload and not NSURLSession. In general to reproduce Sparkle's environment I would try to reproduce the user agent and http headers sent too.

I'm assuming this still isn't an issue.

zorgiepoo avatar Dec 26 '22 05:12 zorgiepoo