Cataclysm-dda: Don't use "Stable" subtitle in our versions naming system

Created on 9 Aug 2020  路  13Comments  路  Source: CleverRaven/Cataclysm-DDA

This could reduce confusing, especially for newer players. I guess it's not good for the project when players download "Stable" version and get a segfault right after the start.
Practice shows that our "Stable" versions are often non-stable at all, or at least less stable than "Experimental" version released the next day, despite our best efforts of intensive bugfixing right prior the next stable. We also know that "Stable" version we use simply as a milestone. So I suggest to not use (not always reliable) subtitle "Stable" in our naming system at all, and don't even position these versions as stable.
As a substitute we could use a perfectly fitting subtitle "Milestone". This way "latest stable 0.E - Ellison" could be converted to "latest milestone 0.E - Ellison" or something like that. Or just don't use subtitle for milestones at all.

<Suggestion / Discussion> Organization

Most helpful comment

So let's say we call 0.F a milestone instead of stable, then what? No one complains about the bugs anymore? And won't some confused players used to stable start wondering where the new stable went and why we've stop making them?

Admitng that stable is not bug free because the game is too big is nice and honest but I'm not sure it helps a lot, plus most of the time stable has less bug than experimental. And the fact that we can backport major bugfixes means that we can make it even more bug free even after release.

All 13 comments

As a player, I'd much prefer to have a stable version, and experimentals are usually not at all.

Removing the "Stable" from the name would leave me without choice - I'd be able to get either old unstable, or new unstable. What's the point then?

If the concern is that the initial(!) "stable" release is less stable than desired, it can be fixed by releasing a "preview" stable version first, that would receive bugfixes over the coming days, and eventually mature into just "Stable" that's now true to its name.

Alternatively, if the concern is less with the initial shaping of the release, and more with the fact that it never reaches stability at all - then I'm not sure that's true? I'm playing on 0.E-2 and have never encountered a segfault (nor even a red error screen!) so far.

But the point of this https://github.com/CleverRaven/Cataclysm-DDA/issues/42658 is to make at some point version that more stable than usual experimental, i mean adding new features suspended and only bugfix PR merged - it make each next build more stable because more and more bugs fixed and no new features(which usually add new bugs) added, eventually it should boil down to more or less stable version without critical bugs.
I guess "stable" here means "more stable than some random experimental build", "relatively stable".

Most "stable" version should be indeed more stable than experimentals, but the problem is many players have misunderstood "stable" as bug-free.

I don't agree with this at all. If we have missed our mark in the previous stable and left in seg faults on world creation, that's something to be improved upon for next time, not rearranging the goalposts and lowering the bar.

As a player, I'd much prefer to have a stable version

This is fully understandable desire. But the point, as @Zireael07 correctly stated, is that people expect bug- and crash-free experience from stable versions. I personally have seen posts like "I'm playing on 0.C/D/E, and I've encountered a bug. Why it's called 'stable' if there are bugs in this version?" several times.

I'm playing on 0.E-2 and have never encountered a segfault (nor even a red error screen!) so far.

Never wondered why our current most stable version has such strange name, with a suffix in the end? Because initial 0.E has several major bugs and even crashes IIRC, and it required two sub-versions to achieve acceptable "stability". That's essentially what I'm talking about - our latest stable without suffixes (0.E) wasn't stable enough to call it "stable".

But the point of this #42658 is to make at some point version that more stable than usual experimental, i mean adding new features suspended and only bugfix PR merged - it make each next build more stable because more and more bugs fixed and no new features(which usually add new bugs) added, eventually it should boil down to more or less stable version without critical bugs.

We did extensive bugfixing prior to 0.D and prior to 0.E, and unfortunately there were bugs (some of them were major ones) even after that. Subsequent bugfixing eventually made stable versions less stable than experimental ones, and because of that I found it hardly justified to recommend using stable.

I'm a fan of semantic versioning https://semver.org/ but this is geared towards developers, so the relation is tenuous. Especially when we're trying to communicate that data to a player.
Your 0.E, 0.E-1, and 0.E-2 would be a lot like 0.14.0, 0.14.1, and 0.14.2. I'm going to skip over a whole lot of detail, and call this a "release" ... but how do we tell the player that they should be playing 0.E-2? After thinking about a suitable single-word moniker, Milestone does sound ok, but as a player, I'm ok with Stable too. Up to you guys.

but how do we tell the developer that they should be playing 0.E-2?

We don't, the developers should be on experimental to be making changes to the game

@KorGgenT: I think "developer" in that sentence is a typo for "player"

So let's say we call 0.F a milestone instead of stable, then what? No one complains about the bugs anymore? And won't some confused players used to stable start wondering where the new stable went and why we've stop making them?

Admitng that stable is not bug free because the game is too big is nice and honest but I'm not sure it helps a lot, plus most of the time stable has less bug than experimental. And the fact that we can backport major bugfixes means that we can make it even more bug free even after release.

i still approve the usage of stable, and be realistic nothing is free of bugs, take in account other games and you'll agree with me, major bugs in stable version can happen too we're all humans.

I accepted the consequences too, I started playing on experimental, most because i want to bug report and I'm aware of the consequences, i do backups of my world if something bad happens i can always rollback.
I'm sure that when the version 0.F be released i'll stay on it, so i can play for real in a place where the chances of crashing is less prone to happen, and things will stop to change.

I always thought stable was more about a version line no longer having large changes to how it works, not that it's necessarily bug free. So if I'm playing a stable version and there's an update to it, it shouldn't break save compatibility or config compatibility and in general behave identically except with (hopefully) less bugs.

Unstable/experimental doesn't necessarily mean buggy, but it does mean there's going to be changes to functionality that could regularly break compatibility.

Korg pretty much hit the nail on the head here. "Stable" is aspirational, that's the goal. If we aren't able to deliver on that, we need to fix our process, not declare defeat after a single release with bad bugs.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Nioca picture Nioca  路  49Comments

Maplevalley47 picture Maplevalley47  路  46Comments

MrHrulgin picture MrHrulgin  路  55Comments

railmonkey picture railmonkey  路  43Comments

nexusmrsep picture nexusmrsep  路  64Comments