Versioning - hjake123/reactive GitHub Wiki

Current

This mod uses a system very similar to semantic versioning. Version numbers take this form:

MC_VERSION-MAJOR.MINOR(.PATCH)

MC_VERSION is the version of the game (the 'game version' below) that the mod works with (as in most mods).

MAJOR is the major release version. The major release is advanced when I add some substantial new content to the mod, such as new blocks, items, or mechanics.

The major release version might seem high, since I chose not to reserve it for complete rewrites like some projects do. You can imagine an invisible 1. in front of the given version number if you're used to the first number being a total project rewrite version.

MINOR is the minor release version. The minor version is advanced by any change that could impact modpack developers, such as changes to the KubeJS integration system, the command syntax, or other changes that significantly impact gameplay.

PATCH is the patch version. This is advanced by bug fixes and internal changes. This part of the version might not be synchronized between different game version branches of the mod, as some game versions may need to be updated faster then others. This suffix is optional, so if absent assume the PATCH version is .0.

Before 9.13

This mod used to use a custom version numbering scheme. In general, past version numbers took the form:

MC_VERSION-Mm.x

MC_VERSION is the version of the game (the 'game version' below) that the mod works with (as in most mods).

M is the major release version. The major release is advanced when I add some substantial new content to the mod, such as new blocks, items, or mechanics. A few months ago, I increased this number more frequently then I do now, which reflects the change in general development pace the mod has experienced.

m is the minor version as a letter. The minor version is advanced by every non-major update. In 1.20.1 and later, you can expect that the mod's features will be very similar between two releases if the Mm component of the version number is the same.

x is a game-version-specific patch marker. Different branches of the mod for different game versions might have different game-version-specific patch numbers while having the same general content if, for example, a bug affecting only one game version is found and patched. If absent, this component can be considered to be 0.

In this scheme, 9.13.0 would have been named 9m.0 (noting that m is the 13th letter).