Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make the auto-updater more user friendly so people don't brick their installation with the latest incompatible version #179

Open
jarofgreen opened this issue Jul 15, 2022 · 4 comments

Comments

@jarofgreen
Copy link

I have MacOS 10.12

I just updated the app to v1.20.3-1 as prompted to by the app.

It's now broken - it won't start.

I see in the readme - https://github.com/syncthing/syncthing-macos#macos-version-support - that the latest version now needs 10.13.

Can the app not upgrade on older MacOS? Or can the app check if the version is to old and pop up a user friendly message if so?

ps. Also this section - https://github.com/syncthing/syncthing-macos#installation - still says 10.12 and so is out of date.

@jarofgreen
Copy link
Author

I've downgraded to 1.19.2-1 from https://github.com/syncthing/syncthing-macos/releases and it works fine, for anyone else reading. Just uninstall and reinstall the old version. Your config should still be there.

@xor-gate
Copy link
Member

Hi @jarofgreen, yes I'm aware of this. And have thought multiple times for a solution people don't brick their installation. From a user perspective it should be nice to have a notice things are incompatible and the update will not pop-up. Sorry for this!

@jarofgreen
Copy link
Author

I'm not a MacOS programmer so I can't help with details and forgive me if I'm being obvious, but it seems to me a 2 step fix would be best here:

  1. Have a file on-line with details of version required, and don't prompt people to upgrade if it would break. Ideally, maybe add a message to the menu saying "this version is now unsupported"? However, that won't do anything for old installs already out there, so -
  2. Write in a check on app start-up - if the version of MacOS is too old put a message in the menu. This would catch the user story we are talking about here. I don't know MacOS details, but would it also catch the user story that someone just downloads the latest binary and installs it on an old mac? People's installs will still be broken, but at least they will know why straight away and what to do to fix them. (I only noticed the version requirements by chance because I was looking at the readme to see if it said anything about where to find logs.)

In both cases, I'm saying "put in menu" not "just pop up a message" because some people have the app set to start automatically and this could end up annoying them.

And thanks for your work on this app generally! 😄

@xor-gate
Copy link
Member

xor-gate commented Jul 16, 2022

The update mechanism of the tray icon uses a opensource library. And I would rather not touch old releases and add something to the menu. I know the Sparkle Update library has a mechanism to check for macOS versions and compatibility but I never had to dig into the workings of that until this incompatibility showed up some time ago. It is realistic to say incompatibility will happen again in the future, like the upcoming macOS Ventura (v13) will drop support for a whole range of devices. I will rename this issue as this has been reported for a few times now with people breaking their installations with incompatible versions which is not nice. We should look into this if we can make it more user friendly. Last but not least, it is documented in the FAQ of the README so people can help themselves.

To be specific about the details. The tray application polls (or on user request) the XML appcast file on the update server where all releases are described. It now always tries to update to the latest release and "the latest" always shifts of course, so if we add a notice for every release on compatibility would be odd.

@xor-gate xor-gate changed the title MacOS versions Make the auto-updater more user friendly so people don't brick their installation with the latest incompatible version Jul 16, 2022
@xor-gate xor-gate added the bug label Jul 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants