Version lifecycle

From MediaWiki.org
Jump to: navigation, search

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎日本語 • ‎Lëtzebuergesch • ‎occitan • ‎polski • ‎português • ‎português do Brasil • ‎русский • ‎中文

MediaWiki operates on a "continuous integration" development model, where software changes are pushed live to Wikimedia web sites such as Wikipedia on a regular basis.

In theory, new major releases are issued on a half-year basis, and release branches continue to receive security updates for up to a year as of first release. Due to time constraints and rapid refactoring of the code base, we cannot support obsolete releases forever, and security and critical updates are not applied to releases which have reached their end of life status.

The release manager strongly recommends that wiki operators subscribe to the mediawiki-announce mailing list, which receives notification of all releases, and ensure that their wiki runs the most up to date version of the software possible. These announcements are also posted to mediawiki-l and wikitech-l.

Versions and their end-of-life[edit | edit source]

Version Status Release End-of-life
1.25.x future version May 27, 2015 June 2016
1.24.x future version November 26, 2014 November 2015
1.23.x (LTS) current version June 5, 2014 May 2017
1.22.x legacy version December 6, 2013 December 2014
1.21.x obsolete version May 25, 2013 June 2014
1.20.x obsolete version November 7, 2012 November 2013
1.19.x (LTS) legacy version May 2, 2012 May 2015
1.18.x obsolete version November 28, 2011 November 2012

Versions included in the above table that are marked as obsolete will not receive any security fixes. They may contain critical security vulnerabilities and other major bugs, including the threat of possible data loss and/or corruption. The release manager has also issued a strong recommendation that only versions listed above as current version or legacy version should be used in a production environment.

Important dates for future versions[edit | edit source]

This table sets out the plan for future MediaWiki releases, including the date the branch will be made.

Dates are based on the schedule from the release timeline.

Version Branch date Release date End-of-life
1.24.x Oct 15, 2014
(Sep 19, 2014 was the off-schedule branch point)
Nov 26, 2014 Nov 2015
1.25.x Apr 15, 2015 May 27, 2015 May 2016
1.26.x Oct 14, 2015 Nov 25, 2015 Nov 2016

Release policy[edit | edit source]

  • Point releases will be made at least monthly, on the last Wednesday of the month. Every point release will include updated i18n files as well as any bug fixes. No new features will be back-ported to point releases and support doesn't include extensions in general, see below (e.g. Extension:UniversalLanguageSelector doesn't support current LTS).
  • A major release will be made every six months.
  • A long term support release (LTS) will be made every two years. There will be a one-year overlap in LTS support. For example, 1.19 is supported until May 2015. 1.23 will be released the year before that so that people will have 1.23 available as an LTS to move to and a year to make the transition.
  • Release notes will continue to be the basis for seeing what has changed. Because of the nature of a volunteer-driven project, it isn't possible to say with any certainty what will happen in the next 6-12 months.
  • To mitigate the problem of release notes, we will publish a list of new features in the upcoming LTS relative to the last LTS six months before it comes out. This means that about the time when 1.22 comes out, we'll have an announcement for 1.19 users letting them know what changes they can expect in 1.23.

Version timeline[edit | edit source]

Special:MyLanguage/MediaWiki 1.16 Special:MyLanguage/MediaWiki 1.17 Special:MyLanguage/MediaWiki 1.18 Special:MyLanguage/MediaWiki 1.19 Special:MyLanguage/MediaWiki 1.20 Special:MyLanguage/MediaWiki 1.21 Special:MyLanguage/MediaWiki 1.22 Special:MyLanguage/MediaWiki 1.23 Special:MyLanguage/MediaWiki 1.24


Extension lifecycle management[edit | edit source]

Most MediaWiki installation include a significant number of extensions (WMF MediaWikis often around 80 extensions). Managing the maintenance bug fixing of extensions and choosing the right version of an extension in cases where the HEAD development version relies on features not yet available in stable or oldstable MediaWiki core, is a major challenge for all maintainers of MediaWiki installations.

Extension maintainers are therefore strongly encouraged to maintain a git tag or branch for their version corresponding to the release tag the stable and oldstable version. An initial version, that simply points to the state of the code at the time of the release may be created centrally. However, it is the responsibility of the extension maintainer to fix bugs not only in HEAD but also in the oldstable and stable versions. If the extension works with all of oldstable, stable and HEAD, this requires only to update the tags. However, if some changes are specific to later versions, the lifecycle rule require that branches are created and individual merges of the bugfix to each branch be made.

The goal of these rules is that people or organizations installing MediaWiki can rely on installing the newest release of a version and matching extensions by a simple method, e.g. for 1.20.x core by referring to REL1_20 in git.

External Links[edit | edit source]