-
Notifications
You must be signed in to change notification settings - Fork 240
Closed
Milestone
Description
Is your feature request related to a problem? Please describe.
The current version check, which triggers the "update available" message in the UI, has some shortcomings:
- It relies on a single server (anygenre1). Should this ever be down, update checks will stop working.
- Currently it's rather naive and it would false show an update when the reference server would be running a beta release (i.e. 3.7.0beta1 would be considered newer than 3.6.2)
Describe the solution you'd like
I'm suggesting all of the following:
- Decouple the update check role from the dictionary server role. In practice, this could still be the same server, but would gain us some flexibility if we ever were to move. To be specific: use updatecheck1.jamulus.io in the code and make this a CNAME for anygenre1.jamulus.io for now.
- Use a second server to remove the single point of failure. updatecheck2.jamulus.io should be set up as a CNAME for another (maybe already existing) server in another network.
- Also check the version of the server which the user connected to. This would keep the update check working if we ever had some jamulus.io-related issue. It would also keep it working in disconnected, private networks.
- Make the update check ignore "special" versions such as betas. The code uses QVersionNumber which supports detecting suffixes such as "beta" or "dev". The only practical issue I see is that the currently running update reference server by Volkre is using a dev version (3.6.2dev-c1bc4274), so blindly doing this would break it. Either we whitelist dev versions or we add a special command line option for the update reference server which could be used to override what gets sent as the version in the protocol.
Describe alternatives you've considered
- Keep things as they are and rely on our single update reference server to be always available? :)
Additional context
Opinions? Is this something which should partially (1 & 2 maybe) go into 3.7.0?
Reactions are currently unavailable
Metadata
Metadata
Labels
No labels
Type
Projects
Status
Done