Change Factorio's numeric versionning system
Moderator: ickputzdirwech
-
- Inserter
- Posts: 22
- Joined: Mon Sep 17, 2018 10:42 am
- Contact:
Change Factorio's numeric versionning system
wow, we are already at 0.17.8 version O_O. does this mean 0.18 is around the corner?
Re: Version 0.17.8
Oh yeah. A 2-year long corner.lordaeron1 wrote: βThu Mar 07, 2019 8:03 pmwow, we are already at 0.17.8 version O_O. does this mean 0.18 is around the corner?
- 5thHorseman
- Smart Inserter
- Posts: 1193
- Joined: Fri Jun 10, 2016 11:21 pm
- Contact:
Re: Version 0.17.8
Looks like someone needs the "version numbers aren't regular numbers" talk.lordaeron1 wrote: βThu Mar 07, 2019 8:03 pmwow, we are already at 0.17.8 version O_O. does this mean 0.18 is around the corner?
0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
They change to 0.18.0 when they decide they have it, not when the numbers get that far.
-
- Fast Inserter
- Posts: 134
- Joined: Wed Apr 26, 2017 11:29 pm
- Contact:
Re: Version 0.17.8
And while we are at it: the devs should definitely drop the "0." factorio 16 was an awesome game, so will be factorio 17, once its stable.5thHorseman wrote: βFri Mar 08, 2019 12:06 amLooks like someone needs the "version numbers aren't regular numbers" talk.lordaeron1 wrote: βThu Mar 07, 2019 8:03 pmwow, we are already at 0.17.8 version O_O. does this mean 0.18 is around the corner?
0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
They change to 0.18.0 when they decide they have it, not when the numbers get that far.
I pirated factorio 0.13, because i expected it to be a total unplayable wreck ...
I bought a few copies since then for myself and friends, because its pretty much playable and the 0. prefix just downplays factorios playability and overall progress...
Re: Version 0.17.8
I have a new proposal for version numbering:5thHorseman wrote: βFri Mar 08, 2019 12:06 amLooks like someone needs the "version numbers aren't regular numbers" talk.lordaeron1 wrote: βThu Mar 07, 2019 8:03 pmwow, we are already at 0.17.8 version O_O. does this mean 0.18 is around the corner?
0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
They change to 0.18.0 when they decide they have it, not when the numbers get that far.
Begin with 0.17.0, just like right now.
Continue with the first several versions in the same way.
Once you reach 0.17.9, proceed to 0.17.91, then 0.17.92, etc.
After 0.17.99 would be 0.17.991
And so on.
If we converted major version numbers as well, we would be at 0.98 right now (so close to 1.0! )
This would better facilitate alphabetical version ordering, make more sense mathematically, and represent perceived development progress far better than any established method (keeping in mind the phrase "everything takes longer than expected").
And for those of you who want to know how many versions of something have been released, that can be calculated quite simply by the formula "y = 9x-9+z" (or alternatively "y = 9(x-1)+z+1" or "y = 9x-(8-z)").
There are 10 types of people: those who get this joke and those who don't.
-
- Filter Inserter
- Posts: 292
- Joined: Mon Dec 07, 2015 10:45 pm
- Contact:
Re: Version 0.17.8
Ha ha ha, I too had a Piratebay Factorio version (also v0.13 or so?) before buying it from their website (there was no Steam version then yet). I recommend this game to a lot of people IRL. I even tentatively suggest buying it to IGG-games visitors (a games pirate website).someone1337 wrote: βFri Mar 08, 2019 1:41 amAnd while we are at it: the devs should definitely drop the "0." factorio 16 was an awesome game, so will be factorio 17, once its stable.
I pirated factorio 0.13, because i expected it to be a total unplayable wreck ...
I bought a few copies since then for myself and friends, because its pretty much playable and the 0. prefix just downplays factorios playability and overall progress...
Being a software developer myself, I always stick to strict dictionary sortable version numbers like this: vx.xx.xxJap2.0 wrote: βFri Mar 08, 2019 2:01 amI have a new proposal for version numbering:
Begin with 0.17.0, just like right now.
Continue with the first several versions in the same way.
Once you reach 0.17.9, proceed to 0.17.91, then 0.17.92, etc.
After 0.17.99 would be 0.17.991
And so on.
If we converted major version numbers as well, we would be at 0.98 right now (so close to 1.0! )
This would better facilitate alphabetical version ordering, make more sense mathematically, and represent perceived development progress far better than any established method (keeping in mind the phrase "everything takes longer than expected").
And for those of you who want to know how many versions of something have been released, that can be calculated quite simply by the formula "y = 9x-9+z" (or alternatively "y = 9(x-1)+z+1" or "y = 9x-(8-z)").
Examples:
v0.17.08 -> v0.17.09 -> v0.17.10 -> v0.17.11
v0.18.00 -> v0.18.01
Last edited by Sander_Bouwhuis on Fri Mar 08, 2019 6:50 am, edited 1 time in total.
- thecatlover1996
- Long Handed Inserter
- Posts: 59
- Joined: Sun Sep 18, 2016 12:50 pm
- Contact:
Re: Version 0.17.8
I rather just have them stick with semantic versioning (semver.org), like all regular software should IMO.
And about zero-based versioning: according to SemVer, this means that "Anything may change at any time. The public API should not be considered stable." Which is the case for Factorio
And some people take my last argument to the extreme and say that software is never finished and thus should never reach major version 1 (0ver.org, Factorio is currently also on the list). But that's up to the developers to decide
And about zero-based versioning: according to SemVer, this means that "Anything may change at any time. The public API should not be considered stable." Which is the case for Factorio
And some people take my last argument to the extreme and say that software is never finished and thus should never reach major version 1 (0ver.org, Factorio is currently also on the list). But that's up to the developers to decide
Re: Version 0.17.8
Factorio follows semantic versioning (https://semver.org/) as far as i can tell which is stupid simple to track so why would they convert to a versioning system that is abstract and strange just to please you when they use a tried and true ( see industry standard ) system already?Jap2.0 wrote: βFri Mar 08, 2019 2:01 amI have a new proposal for version numbering:5thHorseman wrote: βFri Mar 08, 2019 12:06 amLooks like someone needs the "version numbers aren't regular numbers" talk.lordaeron1 wrote: βThu Mar 07, 2019 8:03 pmwow, we are already at 0.17.8 version O_O. does this mean 0.18 is around the corner?
0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
They change to 0.18.0 when they decide they have it, not when the numbers get that far.
Begin with 0.17.0, just like right now.
Continue with the first several versions in the same way.
Once you reach 0.17.9, proceed to 0.17.91, then 0.17.92, etc.
After 0.17.99 would be 0.17.991
And so on.
If we converted major version numbers as well, we would be at 0.98 right now (so close to 1.0! )
This would better facilitate alphabetical version ordering, make more sense mathematically, and represent perceived development progress far better than any established method (keeping in mind the phrase "everything takes longer than expected").
And for those of you who want to know how many versions of something have been released, that can be calculated quite simply by the formula "y = 9x-9+z" (or alternatively "y = 9(x-1)+z+1" or "y = 9x-(8-z)").
Re: Version 0.17.8
The max value for each version is 65535,5thHorseman wrote: βFri Mar 08, 2019 12:06 am0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
So technically after 0.17.65535, we really have no choice but to make it 0.18.0 (Or maybe it would overflow back to 0.17.0)
Re: Version 0.17.8
I think that the version numbers should not be our problem. ThatΒ΄s devs part.
We should play the game ....
We should play the game ....
Re: Version 0.17.8
How about negative numbers?Klonan wrote: βFri Mar 08, 2019 10:16 amThe max value for each version is 65535,5thHorseman wrote: βFri Mar 08, 2019 12:06 am0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
So technically after 0.17.65535, we really have no choice but to make it 0.18.0 (Or maybe it would overflow back to 0.17.0)
- 5thHorseman
- Smart Inserter
- Posts: 1193
- Joined: Fri Jun 10, 2016 11:21 pm
- Contact:
Re: Version 0.17.8
Good thing you didn't used signed ints.Klonan wrote: βFri Mar 08, 2019 10:16 amThe max value for each version is 65535,5thHorseman wrote: βFri Mar 08, 2019 12:06 am0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
So technically after 0.17.65535, we really have no choice but to make it 0.18.0 (Or maybe it would overflow back to 0.17.0)
0.17.-32768
Re: Version 0.17.8
from a just crytography/computer POV one can always resort also to letters so at 17.999 to 17.ZZZ the space for versions are factorized by 2,6Klonan wrote: βFri Mar 08, 2019 10:16 amThe max value for each version is 65535,5thHorseman wrote: βFri Mar 08, 2019 12:06 am0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
So technically after 0.17.65535, we really have no choice but to make it 0.18.0 (Or maybe it would overflow back to 0.17.0)
its just as well for the factorio approach of moar MOAR MMOOAARRRRRRR
Re: Version 0.17.8
Except that letters are just numbers as well, and they apparently have chosen unsigned 16 bit integers for each component of the version number. Whether you use numbers and/or letters to display these 16 bit is just a presentation issue.nosports wrote: βSat Mar 09, 2019 8:28 amfrom a just crytography/computer POV one can always resort also to letters so at 17.999 to 17.ZZZ the space for versions are factorized by 2,6Klonan wrote: βFri Mar 08, 2019 10:16 amThe max value for each version is 65535,5thHorseman wrote: βFri Mar 08, 2019 12:06 am0.17.9 + 0.0.1 is not 0.18.0, it's 0.17.10. Same for 0.17.99->0.17.100, and onward forever.
So technically after 0.17.65535, we really have no choice but to make it 0.18.0 (Or maybe it would overflow back to 0.17.0)
its just as well for the factorio approach of moar MOAR MMOOAARRRRRRR
-
- Fast Inserter
- Posts: 134
- Joined: Wed Apr 26, 2017 11:29 pm
- Contact:
Re: Version 0.17.8
semver is garbage for EVERYTHING that is not a webservice or "enterprise".tmzasz wrote: βFri Mar 08, 2019 7:58 am
Factorio follows semantic versioning (https://semver.org/) as far as i can tell which is stupid simple to track so why would they convert to a versioning system that is abstract and strange just to please you when they use a tried and true ( see industry standard ) system already?
Also factorio does not use semver, as semver would require that all 0.x.y savegames are openable with all 0.x.y game versions, which obviously is not the case.
Also (over-hyped) standards are nice, there are so many to choose from.
- BlueTemplar
- Smart Inserter
- Posts: 2421
- Joined: Fri Jun 08, 2018 2:16 pm
- Contact:
Re: Version 0.17.8
They have just shifted it a bit from 017.y.z to 0.17.y...
Please elaborate about the garbage part ?
Please elaborate about the garbage part ?
BobDiggity (mod-scenario-pack)
-
- Fast Inserter
- Posts: 134
- Joined: Wed Apr 26, 2017 11:29 pm
- Contact:
Re: Version 0.17.8
It tries to objectivise something which is purely subjective, leading to the wrong assumption that your understanding of version numbers is the same as everyone else's.BlueTemplar wrote: βSat Mar 09, 2019 5:02 pmThey have just shifted it a bit from 017.y.z to 0.17.y...
Please elaborate about the garbage part ?
The most important part of semver is that it tries to say "if you change publically exposed functionality, bump major", which in reality leads to "basically always bump major".
Otoh you lose the information of how much impact a major bump has ... Was a function that noone ever uses renamed, or will i have to rewrite 90% of my codebase?
Also that bugfixes do not have impact on public functionality is a wrong assumption and often buggy functionality was worked around by others that depend on that functionality...
So do I change patch-level, or major-level when i fix that bug?
And/or ... is a patch-level change in one of my dependencies guiaranteed to not make me change any code in my codebase?
obviously, you do not know and you still need to pin versions to maximal precision.
Basically semver wrongly claims that it solved the version-numbering problem, while in fact the version number alone transports less information than before.
-
- Long Handed Inserter
- Posts: 66
- Joined: Thu Jun 01, 2017 6:52 pm
- Contact:
Re: Version 0.17.8
Weird how you completely missed that the point of 0.x.y verions is that they don't have a stable public API. Especially odd, given that thecatlover1996 quoted it directly earlier; it's almost like you just wanted to go on a weird tirade against semver rather than actually pay attention to the conversation.someone1337 wrote: βSat Mar 09, 2019 4:46 pmAlso factorio does not use semver, as semver would require that all 0.x.y savegames are openable with all 0.x.y game versions, which obviously is not the case.
-
- Fast Inserter
- Posts: 134
- Joined: Wed Apr 26, 2017 11:29 pm
- Contact:
Re: Version 0.17.8
Another thing that i hold against semver: all those dogmatic-religious folks, that will never acknowledge semver's problems, but will angrily explain all over and over again that semver is the only solution to versioning, when you point out its problems. :shrug:
Re: Version 0.17.11
I know this seems like a silly little thing, but when you guys release version, you should start with version .01 or .001. If you start with 0.17.1 and move to 0.17.9. your next release of 0.17.10 will suddenly jump up and throw all the previous releases out of order. I noticed this because it is how Steam categorizes its releases.