software has a very standardized version numbering system actually. It’s not required (eg dwarf fortress), but a lot of programmers like to use it. 0.18.1-RC.1 is actually super useful for version tracking. Friendliness is actually not the goal at all, it’s to be completely unambiguous about the stages of development.
The 0 is the major version number. Usually it reaches 1 when it’s reached a certain milestone or a change intentionally breaks compatibility with 0
.18 is the minor version number. This increases when a big patch comes through. Sometimes this can break compatibility, but there’s no real standard to decide between major and minor versions. In general, the major and minor version numbers are the only important ones for users.
The .1 is called a point version. It’s meant to indicate minor patches to the minor version. There’s almost never a risk for compatibility to break, and generally it’s unnecessary to update for a new point version.
RC.1 is very uncommon for users to know about. It stands for ‘Release Candidate’, so since it’s attached to 0.18.1 that means that the version is about to be released. It also means that the version is in active development and not ready to be released yet. Every time there’s a new RC, that means there was a bug that caused major issues.
As others have mentioned there’s a standardized versioning scheme that most developers use and that standard is semantic versioning: https://semver.org. There are other standards too and not every development team uses a standard that is externally recognized standard.
Using rc for release candidates is pretty standard. A lot of times they would have 18.1b1, 18.2b2, etc. for betas, the when they are close to releasing, it would become 18.1rc1, 18.1rc2, etc. And once no one finds any more issues with your release candidates, you rename it 18.1 and you are done.
why don’t they use a friendlier naming scheme? such as 0.18.1a 0.18.1b 0.18.2 ?
Because rc means release candidate. It’s the step after beta testing but before release, and (normally) isn’t meant for use by the general public.
I see, thanks for explaining
software has a very standardized version numbering system actually. It’s not required (eg dwarf fortress), but a lot of programmers like to use it. 0.18.1-RC.1 is actually super useful for version tracking. Friendliness is actually not the goal at all, it’s to be completely unambiguous about the stages of development.
The 0 is the major version number. Usually it reaches 1 when it’s reached a certain milestone or a change intentionally breaks compatibility with 0
.18 is the minor version number. This increases when a big patch comes through. Sometimes this can break compatibility, but there’s no real standard to decide between major and minor versions. In general, the major and minor version numbers are the only important ones for users.
The .1 is called a point version. It’s meant to indicate minor patches to the minor version. There’s almost never a risk for compatibility to break, and generally it’s unnecessary to update for a new point version.
RC.1 is very uncommon for users to know about. It stands for ‘Release Candidate’, so since it’s attached to 0.18.1 that means that the version is about to be released. It also means that the version is in active development and not ready to be released yet. Every time there’s a new RC, that means there was a bug that caused major issues.
You’re mostly spot on, but point updates are usually patches for security and bugs. You SHOULD take all point updates.
You know they are desperate for patches when their version is BE: 0.18.1-rc.9-14-ge71951309
the backend is powered by glorious eggroll? :O
As others have mentioned there’s a standardized versioning scheme that most developers use and that standard is semantic versioning: https://semver.org. There are other standards too and not every development team uses a standard that is externally recognized standard.
Using rc for release candidates is pretty standard. A lot of times they would have 18.1b1, 18.2b2, etc. for betas, the when they are close to releasing, it would become 18.1rc1, 18.1rc2, etc. And once no one finds any more issues with your release candidates, you rename it 18.1 and you are done.