Note: You are currently viewing documentation for Moodle 1.9. Up-to-date documentation for the latest stable version is available here: Moodle versions.

Moodle versions

From MoodleDocs
Revision as of 20:57, 29 March 2011 by David Mudrak (talk | contribs) (Major and minor versions, version and branch)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Understanding Moodle versioning scheme may help you to choose a correct place to fetch source code from for upgrade. Also, referring to a correct version is important when reporting a bug in the tracker.

Major and minor versions

Moodle version number consists of three numbers separated by dot, for example 1.9.11 or 2.0.2. The first two numbers, like 1.9 or 2.0, represent so called major version. The third number distinguishes minor versions within the same major version. When a new major version is released, it starts with the minor version set to 0 (zero). So Moodle 2.0.1 was the first minor update of Moodle 2.0.0. Generally, Moodle HQ team maintains the two most recent major versions of Moodle (with some exceptions - like there is a longer term support promised for Moodle 1.9).

Versions and branches

Moodle developers use source code management (SCM) system Git to track changes in the code. As in many SCMs, the history of changes in Git is represented via so called branches. You can consider a branch as a labeled sequence of source code changes.

There is a branch created for every major version of Moodle. All Moodle 1.9 versions come from MOODLE_19_STABLE branch and all Moodle 2.0 versions come from MOODLE_20_STABLE branch. There is also a main development branch called master that holds the changes for the next future version. At the moment, the changes on the master branch will be included in Moodle 2.1 release.

Schema of Moodle source code branches, versions and maturity levels


Source code branches

Git repositories (moodle.git and integration.git) and CVS repository, master branch, STABLE branches, version releases and weekly releases

Source code maturity levels

Alpha, beta, release candidate, stable

See also