Difference between revisions of "Version number"

From Luanti Wiki
Jump to navigation Jump to search
(tidy up)
(rename Minetest to Luanti)
Line 1: Line 1:
 
{{Languages|nocat=1}}
 
{{Languages|nocat=1}}
  
The '''version number''' of [[Minetest]] is used to keep different versions of Minetest apart.
+
The '''version number''' of [[Luanti]] is used to keep different versions of Luanti apart.
  
 
== Stable releases ==
 
== Stable releases ==
A stable release is any publicly released version of Minetest where we uploaded [https://www.minetest.net/downloads/ downloadable packages].
+
A stable release is any publicly released version of Luanti where we uploaded [https://www.minetest.net/downloads/ downloadable packages].
  
The version number of a stable release is a sequence of 3 natural numbers (including 0). The leftmost number is the most significant number, denoting more and more significant changes. The full version number of Minetest is always displayed in the window title.
+
The version number of a stable release is a sequence of 3 natural numbers (including 0). The leftmost number is the most significant number, denoting more and more significant changes. The full version number of Luanti is always displayed in the window title.
  
 
     MAJOR.MINOR.PATCH
 
     MAJOR.MINOR.PATCH
Line 23: Line 23:
 
     ZERO.MAJOR.MINOR
 
     ZERO.MAJOR.MINOR
  
* <code>ZERO</code> is the first number, which was always 0 (before 5.0.0). The meaning of it is a great mystery that even well-versed scholars in Minetestology haven't uncovered yet, but it is of great importance and must not be left out in the old version numbers. However, because it's so strange (some might even say "pointless"), it is no longer used since version 5.0.0.
+
* <code>ZERO</code> is the first number, which was always 0 (before 5.0.0). The meaning of it is a great mystery that even well-versed scholars in Luantology haven't uncovered yet, but it is of great importance and must not be left out in the old version numbers. However, because it's so strange (some might even say "pointless"), it is no longer used since version 5.0.0.
 
* The meaning of <code>MAJOR</code> and <code>MINOR</code> is unchanged.
 
* The meaning of <code>MAJOR</code> and <code>MINOR</code> is unchanged.
  
Line 30: Line 30:
 
     ZERO.MAJOR.MINOR.PATCH
 
     ZERO.MAJOR.MINOR.PATCH
  
The first public version of Minetest was version 0.0.1. The last version using the old format was version 0.4.17.1.
+
The first public version of Luanti was version 0.0.1 (back then it was still called “Minetest-c55”. The last version using the old format was version 0.4.17.1.
  
 
== Developer versions ==
 
== Developer versions ==
A so-called "developer version" (or "unstable version" if you're pessimistic) of Minetest is any state of Minetest that has not had a public, official, tested release with a stable version number. This is the case when you downloaded a daily build or compiled Minetest from source code.
+
A so-called "developer version" (or "unstable version" if you're pessimistic) of Luanti is any state of Luanti that has not had a public, official, tested release with a stable version number. This is the case when you downloaded a daily build or compiled Luanti from source code.
  
 
=== The short (and lazy) format ===
 
=== The short (and lazy) format ===
Line 54: Line 54:
 
     &lt;FUTURE_VERSION&gt;-dev-&lt;COMMIT&gt;&lt;DIRTY&gt;
 
     &lt;FUTURE_VERSION&gt;-dev-&lt;COMMIT&gt;&lt;DIRTY&gt;
  
* <code>&lt;COMMIT&gt;</code> are the first 8 characters of a hash of the Git commit that Minetest was compiled with. In simpler terms: This is just a bunch of letters and digits that probably uniquely identify your development version. Note this is not neccessarily in increasing order.
+
* <code>&lt;COMMIT&gt;</code> are the first 8 characters of a hash of the Git commit that Luanti was compiled with. In simpler terms: This is just a bunch of letters and digits that probably uniquely identify your development version. Note this is not neccessarily in increasing order.
* <code>&lt;DIRTY&gt;</code> is literally <code>-dirty</code> when your Minetest is said to be "dirty". It becomes dirty when you have fiddled with any of the relevant files of the Minetest source code without committing them with Git. If you didn't touch anything, this should be empty.
+
* <code>&lt;DIRTY&gt;</code> is literally <code>-dirty</code> when your Luanti is said to be "dirty". It becomes dirty when you have fiddled with any of the relevant files of the Luanti source code without committing them with Git. If you didn't touch anything, this should be empty.
  
For example, the version number "5.0.0-dev-a18c310a" means that this is a developer version of Minetest with the Git commit hash "a18c310a" and we believe this state of Minetest will (likely after many more changes) eventually become version 5.0.0.
+
For example, the version number "5.0.0-dev-a18c310a" means that this is a developer version of Luanti with the Git commit hash "a18c310a" and we believe this state of Luanti will (likely after many more changes) eventually become version 5.0.0.
  
 
An example for a "dirty" version would be "5.0.0-dev-a18c310a-dirty".
 
An example for a "dirty" version would be "5.0.0-dev-a18c310a-dirty".
Line 64: Line 64:
  
 
== Minetest Game versioning ==
 
== Minetest Game versioning ==
The releases of Minetest and [[Games/Minetest Game|Minetest Game]] are always in sync. They both share the same stable version numbers.
+
The releases of [[Games/Minetest Game|Minetest Game]] are independent from Luanti.
  
 
[[Category:About Minetest]]
 
[[Category:About Minetest]]

Revision as of 20:35, 22 October 2024

Languages Language: English • Bahasa Indonesia

The version number of Luanti is used to keep different versions of Luanti apart.

Stable releases

A stable release is any publicly released version of Luanti where we uploaded downloadable packages.

The version number of a stable release is a sequence of 3 natural numbers (including 0). The leftmost number is the most significant number, denoting more and more significant changes. The full version number of Luanti is always displayed in the window title.

   MAJOR.MINOR.PATCH
  • MAJOR is increased by 1 for very significant (and usually gigantic) releases that change a lot of things (likely to be in a compability-breaking manner).
  • MINOR is increased by 1 for regular releases that contain features and/or bugfixes. These releases can be large or small. Developers try to keep backwards-compability, but this is not always guaranteed.
  • PATCH is increased by 1 for releases that only contain bugfixes. Usually these releases only change a few things and are usually very small and simple. These releases should be backwards-compatible.

When a new version is released, one of the numbers is increased, depending on the complexity of the release. The less-significant numbers are reset to 0. For example, if the current version is 5.1.2, and we want to make a MINOR release, the next version will be 5.2.0.

Old format (before 5.0.0)

This section is only for historic interest.

Before version 5.0.0, the version number was slightly different:

   ZERO.MAJOR.MINOR
  • ZERO is the first number, which was always 0 (before 5.0.0). The meaning of it is a great mystery that even well-versed scholars in Luantology haven't uncovered yet, but it is of great importance and must not be left out in the old version numbers. However, because it's so strange (some might even say "pointless"), it is no longer used since version 5.0.0.
  • The meaning of MAJOR and MINOR is unchanged.

For patch releases, the PATCH number was appended:

   ZERO.MAJOR.MINOR.PATCH

The first public version of Luanti was version 0.0.1 (back then it was still called “Minetest-c55”. The last version using the old format was version 0.4.17.1.

Developer versions

A so-called "developer version" (or "unstable version" if you're pessimistic) of Luanti is any state of Luanti that has not had a public, official, tested release with a stable version number. This is the case when you downloaded a daily build or compiled Luanti from source code.

The short (and lazy) format

Long story short: If there's a -dev in the version number, it's a developer version.

The easiest way to mark a particular version as a "developer version" is to take the stable version number we expect to see in future and, then we append a -dev to it:

   <FUTURE_VERSION>-dev
  • <FUTURE_VERSION> is the stable version number we expect to release in future.
  • -dev is literally the text -dev which stands for, you guessed it, "development".

For example, version 5.0.0-dev refers to a "developer version" that we expect to become (after changes, possibly) version 5.0.0 eventually.

But note this "short and lazy format" can be ambigious. It could refer to ANY "developer version" that exists between version 5.0.0 and 0.4.17.1 (the previous "stable" version), and is not specific. Your version 5.0.0-dev could be entirely different from the version 5.0.0-dev of your friend.

The full format

The full developer version number is a bit longer and is written in the window title:

   <FUTURE_VERSION>-dev-<COMMIT><DIRTY>
  • <COMMIT> are the first 8 characters of a hash of the Git commit that Luanti was compiled with. In simpler terms: This is just a bunch of letters and digits that probably uniquely identify your development version. Note this is not neccessarily in increasing order.
  • <DIRTY> is literally -dirty when your Luanti is said to be "dirty". It becomes dirty when you have fiddled with any of the relevant files of the Luanti source code without committing them with Git. If you didn't touch anything, this should be empty.

For example, the version number "5.0.0-dev-a18c310a" means that this is a developer version of Luanti with the Git commit hash "a18c310a" and we believe this state of Luanti will (likely after many more changes) eventually become version 5.0.0.

An example for a "dirty" version would be "5.0.0-dev-a18c310a-dirty".

If you want to report bugs, please always give us the full version number which you see in the window title.

Minetest Game versioning

The releases of Minetest Game are independent from Luanti.