Snap distribution for 0.4.8, 0.4.9 and in future

Discussion about the project in general, organization, website, or any other details that aren't directly about the game.
Message
Author
Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Snap distribution for 0.4.8, 0.4.9 and in future

#1 Post by Ophiuchus »

I am looking for some input. I distribute the freeorion 0.4.8 snap currently to the latest/stable track channel. I think there are almost 200 installed living systems using that channel.

If 0.4.9 gets stable and I would push 0.4.9 to the stable channel, all those people would without warning have the new version installed. Would not be able to load there savegames etc.

That does not sound too good, so I am currently asking snapcraft.io to create tracks v0.4.8 and v0.4.9 and I would push stable versions to v0.4.8/stable and v0.4.9/stable as soon as that is ready.

But what should I do with latest/stable channel? I was thinking of adding a nag screen or actually removing the game instead with a note like: Please use a stable release from channel v0.4.8 or v0.4.9.

Also should I stop to support v0.4.8 somewhen in the future or just leave it "forever"?

What do you think?
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#2 Post by Geoff the Medio »

Does continuing support for v0.4.8 require substantial effort or time for you?

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#3 Post by Ophiuchus »

Geoff the Medio wrote: Wed Dec 18, 2019 4:01 am Does continuing support for v0.4.8 require substantial effort or time for you?
No, not at all. I only ship the official version(s).
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#4 Post by Vezzra »

@Ophiuchus, I need you to update the latest/stable track channel on snapcraft.io to the 0.4.9 stable release version. It's particularly important because it's probably going to be the main means of obtaining FO on Linux for the time being, until we manage to get out the next release with Python3 support. All the distros which are dropping or have already dropped Python2 support are going to remove FO from their repos.

Edit: Or create 0.4.8/stable and 0.4.9/stable channels as you suggested. Whatever seems the best practice here...

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#5 Post by Ophiuchus »

Vezzra wrote: Sun Feb 09, 2020 4:54 pm @Ophiuchus, I need you to update the latest/stable track channel on snapcraft.io to the 0.4.9 stable release version. It's particularly important because it's probably going to be the main means of obtaining FO on Linux for the time being, until we manage to get out the next release with Python3 support. All the distros which are dropping or have already dropped Python2 support are going to remove FO from their repos.

Edit: Or create 0.4.8/stable and 0.4.9/stable channels as you suggested. Whatever seems the best practice here...
0.4.8 and 0.4.9 tracks were created a while ago and 0.4.8/stable has freeorion 0.4.8.

I just published 2020-02-02.db5347183 to the 0.4.9/stable track

The problem with latest/stable is not solved. If I change it to 0.4.9 potentially 270 players suddenly loose compatibility with their current savegames and I have currently no way to communicate that to the players.

So 0.4.9 released I guess.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#6 Post by adrian_broher »

> The problem with latest/stable is not solved. If I change it to 0.4.9 potentially 270 players suddenly loose compatibility with their current savegames and I have currently no way to communicate that to the players.

What's the point? They can install 0.4.8 if they want to. latest is latest, not please-dont-break-my-stuff-because-i-cant-read.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#7 Post by Ophiuchus »

adrian_broher wrote: Sun Feb 09, 2020 9:32 pm > The problem with latest/stable is not solved. If I change it to 0.4.9 potentially 270 players suddenly loose compatibility with their current savegames and I have currently no way to communicate that to the players.

What's the point? They can install 0.4.8 if they want to. latest is latest, not please-dont-break-my-stuff-because-i-cant-read.
This mostly depends on the expectations of the snap users. So it also depends what the snap ecosystem promises.

So I went again to see what that might be. At least they are working on solving the case I am talking about sticky and default tracks.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#8 Post by adrian_broher »

> So it also depends what the snap ecosystem promises.

Ecosystem promises my arse. The semantic is clear: latest is latest, not an arbitary version from some time ago.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#9 Post by Vezzra »

Although I wouldn't put it quite so bluntly, Marcel is right - "latest/stable" is quite clear and unambiguous, especially once dedicated channels for specific releases are provided (which is the case now).

So I think providing the latest stable release under the "latest/stable" is reasonable - actually, the only reasonable option. Think of new subscribers to the channel - when they see channels for 0.4.8 and 0.4.9, they will naturally assume that "latest/stable" provides, well, the latest stable release - which is 0.4.9 currently. Providing 0.4.8 under "latest/stable" will most certainly create confusion.

And if there really are some people among the existing subscribers of "latest/stable" which are surprised by getting 0.4.9 now, they will most likely go to the FO page on snapcraft.io and either figure out rather quickly how to switch back to 0.4.8, or they will ask on the forum. A link to the FO homepage is present, so I do not see anything to be concerned about.

Should there really be someone who is actually surprised by getting an update through "latest/stable" to the latest stable release, is not capable of figuring out how to switch back using the 0.4.8 channel, and also can't be bothered to go to our forums and ask - well, there is only so much you can do to help people along. There is a certain minimum I expect from users/players to do/figure out by themselves, we can't babysit everyone... ;)

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#10 Post by Vezzra »

Ophiuchus wrote: Tue Dec 17, 2019 1:34 pmAlso should I stop to support v0.4.8 somewhen in the future or just leave it "forever"?
Hm, I'd support at least a few versions back, not delete a channel for a specific release immediately after a new one is out. This way people who need older releases to use old savegames can switch back to the corresponding version.

I guess providing channels for 2-3 old releases should be more than enough, given the average length of our release cycles.

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#11 Post by Ophiuchus »

Vezzra wrote: Mon Feb 10, 2020 6:43 pm Although I wouldn't put it quite so bluntly, Marcel is right - "latest/stable" is quite clear and unambiguous, especially once dedicated channels for specific releases are provided (which is the case now).
I guess 95% of users don't even know they are on latest.
That track is usually hidden, so ppl usually install 'stable' version (which is actually latest/stable)

And snaps are supposed to auto update. So basically I break everybodys current game without the slightest hint that there is a new "stable".
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#12 Post by Vezzra »

Ophiuchus wrote: Mon Feb 10, 2020 10:13 pmI guess 95% of users don't even know they are on latest.
That track is usually hidden, so ppl usually install 'stable' version (which is actually latest/stable)
First, as long as no specific version number is indicated, people should still expect "stable" to refer to the latest available stable release, not some specific release.

Second, if the fact that the channel/track is actually a channel for "latest/stable" is conveyed so poorly that people get confused about it, then this is a glaring shortcoming of the distribution system in question, and thus needs to be fixed by Canonical, not us. Unless we messed something up when setting up/naming the channel, in which case we need to fix that.
And snaps are supposed to auto update.
In which case people should be aware that their software will be updated whenever an update is available, and not be surprised when that happens, right?
So basically I break everybodys current game without the slightest hint that there is a new "stable".
I don't think you need to worry about that so much. When you acquire games through platforms like Steam, you're often confronted with exact the same issue - if a new update is available, it will be installed, and there are games out there where such updates can break savegame compatibility. And I'm talking about commercial games here like the grand strategy games from Paradox for example.

As I already said, people who have issues with an update breaking savegame compatibility can always switch to the channel for an older version (since we provide them), if they can't figure out by themselves how to do that they can ask on our forums. That should cover all cases we can reasonably expect. I really do not see any reason why we should go to even greater lengths for people who can't even bothered to just ask.

Lets keep in mind that the worst that can happen here is that someone won't be able to finish their current game, but have to start a new one. As annoying as that can be, it's hardly the end of the world.

Your original question was, what to do with the "latest/stable" channel. My recommendation still stands: the release the "latest/stable" channel should provide is the latest stable release, 0.4.9 currently. It does not make sense to provide an older version there, that's just a source for confusion (for obvious reasons). Alternatively you can drop the "latest/stable" channel entirely and only provide channels for specific releases, if you really think that this is a better approach. I'd prefer to keep "latest/stable" as it allows people to always have the latest stable release without having to switch channels, if they do wish so.

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#13 Post by Ophiuchus »

So I reset latest/stable and closed unnecessary channels. Will have a look in march if we lost any players.

What i would wish for next release - a release announcement (including or linking release notes) on the start screen. Would also be nice to mention the canonical snapcraft channel info i.e. "v0.4.9/stable").

If snapcraft ships the default branch feature I will point that to the specific stable branch (e.g. v0.4.9) and if one wants to always have the latest version can install latest/stable. So if v0.5.0 comes out, people who installed stable will still be on v0.4.9 and latest/stable will be on v0.5.0
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#14 Post by Vezzra »

Ophiuchus wrote: Thu Feb 13, 2020 8:22 amWhat i would wish for next release - a release announcement (including or linking release notes) on the start screen.
What "start screen" are you referring to? The wiki main page (news section)?
If snapcraft ships the default branch feature I will point that to the specific stable branch (e.g. v0.4.9) and if one wants to always have the latest version can install latest/stable. So if v0.5.0 comes out, people who installed stable will still be on v0.4.9 and latest/stable will be on v0.5.0
Hm, what would be the point of that "default branch"? You have "latest/stable" for those who always want to stay on the most recent stable release, and the "numbered" channles for the specific releases for those who want to have control over when they switch to the next stable release.

A "default branch" would have the same issues as "latest/stable" - which release does it point to, if not (always) to the latest stable? If it's pointing to the latest stable release, you have the same problem of automatically getting an update that will break your savegames. If it's not pointing to the latest stable release, it will be confusing for new players who want to install the game and naturally expect "default" to be the most recent stable release. It's difficult to avoid the latter issue with channels that are not obviously about a specific release...

Assuming you do not switch "default" to a new stable release when it comes out, but keep pointing it to the previous release - when would you switch (assuming you wouldn't point "default" to the same release forever)?

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Snap distribution for 0.4.8, 0.4.9 and in future

#15 Post by Ophiuchus »

Vezzra wrote: Fri Feb 14, 2020 3:20 pm
Ophiuchus wrote: Thu Feb 13, 2020 8:22 amWhat i would wish for next release - a release announcement (including or linking release notes) on the start screen.
What "start screen" are you referring to? The wiki main page (news section)?
The in-game start screen. Where you start games etc.
Vezzra wrote: Fri Feb 14, 2020 3:20 pm
Ophiuchus wrote: Thu Feb 13, 2020 8:22 amIf snapcraft ships the default branch feature I will point that to the specific stable branch (e.g. v0.4.9) and if one wants to always have the latest version can install latest/stable. So if v0.5.0 comes out, people who installed stable will still be on v0.4.9 and latest/stable will be on v0.5.0
Hm, what would be the point of that "default branch"? You have "latest/stable" for those who always want to stay on the most recent stable release, and the "numbered" channles for the specific releases for those who want to have control over when they switch to the next stable release.

A "default branch" would have the same issues as "latest/stable" - which release does it point to, if not (always) to the latest stable? If it's pointing to the latest stable release, you have the same problem of automatically getting an update that will break your savegames. If it's not pointing to the latest stable release, it will be confusing for new players who want to install the game and naturally expect "default" to be the most recent stable release.
Default branch should point to same release as latest/stable, but the branch is sticky. So if you install "stable" branch (i.e. default/stable) you get the latest version. And if the latest base version (e.g. 0.5.1 instead of 0.5.0) changes you would still have "your" version (e.g 0.5.0).

As a debian user this is what I expect when installing "stable". If i want it to be rolling I install latest/stable instead.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

Post Reply