Open main menu

Жизненный цикл версий

This page is a translated version of the page Version lifecycle and the translation is 69% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎Lëtzebuergesch • ‎dansk • ‎español • ‎français • ‎italiano • ‎magyar • ‎occitan • ‎polski • ‎português • ‎português do Brasil • ‎suomi • ‎čeština • ‎русский • ‎українська • ‎العربية • ‎සිංහල • ‎中文 • ‎日本語 • ‎한국어

Contents

MediaWiki действует согласно модели развития «непрерывной интеграции», где изменения программного обеспечения на регулярной основе разворачиваются на веб-сайтах Wikimedia, таких, как Википедия.

В теории, новые крупные релизы выпускаются на ежеквартальной основе, и побочные ответвления и наследуемые версии продолжают получать обновления безопасности в течение года с первого релиза следующей версии. Из-за нехватки времени и быстрого рефакторинга базы кода, мы не можем бесконечно поддержать устаревшие релизы, обновления безопасности и критические обновления не применяются к версиям, которые достигли завершения жизненного цикла.

Релиз-менеджер настоятельно рекомендует операторам вики-проектов подписаться на список рассылки mediawiki-announce, чтобы получать уведомления обо всех релизах, и обеспечить свои вики-проекты самой свежей версией программного обеспечения. Эти объявления также размещаются в mediawiki-l и wikitech-l.

Текущие версии и их жизненный цикл

Special:MyLanguage/MediaWiki 1.17Special:MyLanguage/MediaWiki 1.18Special:MyLanguage/MediaWiki 1.19Special:MyLanguage/MediaWiki 1.20Special:MyLanguage/MediaWiki 1.21Special:MyLanguage/MediaWiki 1.22Special:MyLanguage/MediaWiki 1.23Special:MyLanguage/MediaWiki 1.24Special:MyLanguage/MediaWiki 1.25Special:MyLanguage/MediaWiki 1.26Special:MyLanguage/MediaWiki 1.27Special:MyLanguage/MediaWiki 1.28Special:MyLanguage/MediaWiki 1.29Special:MyLanguage/MediaWiki 1.30Special:MyLanguage/MediaWiki 1.31Special:MyLanguage/MediaWiki 1.32Special:MyLanguage/MediaWiki 1.33Special:MyLanguage/MediaWiki 1.34 
MediaWiki Release Timeline
  •   Альфа-версия
  •   Разработка (с точка ветвления)
  •   Stable release
  •   Long-term support release

Версия Состояние Релиз Окончание
жизн. цикла
1.35.x (LTS) будущая версия июнь 2020 июнь 2023
1.34.x future version ноябрь 2019 ноябрь 2020
1.33.x будущая версия июнь 2019 июнь 2020
1.32.x текущая версия 2019-01-11 январь 2020
1.31.x (LTS) long-term support 2018-06-14 июнь 2021
1.30.x устаревшая версия 2017-12-12 декабрь 2018
1.29.x устаревшая версия 2017-07-13 июль 2018
1.28.x устаревшая версия (obsolete) 2016-11-28 ноябрь 2017
1.27.x (LTS) long-term support 2016-06-28 июнь 2019
1.26.x устаревшая версия (obsolete) 2015-11-25 ноябрь 2016

Версии, включенные в таблицу выше, которые помечены как устаревшими (obsolete) и версии, которые не перечислены в таблице, не получают каких-либо исправлений по безопасности. В них могут быть критические уязвимости безопасности и другие большие ошибки, включая угрозу возможности потери данных и/или повреждения. Менеджер по выпускам также строго рекомендовал использовать в работе (production) только версии, перечисленные выше как текущая версия или наследуемая версия (legacy).

Политика выхода релизов

  • 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 does not neccessarily include bundled extensions and skins in general.
  • Большой (major) релиз делается каждые шесть месяцев.
  • Версия с долгосрочной поддержкой (LTS) будет делаться каждые два года. Так получается перекрытие в один год в LTS поддержке. Например, 1.23 поддерживалась до мая 2017 года. 1.27 выпущена за год до этого. Таким образом у людей есть год для перехода на новую версию LTS и 1 год чтобы сделать переход.
  • 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. Это означает, что примерно в то время, когда выходит 1.26, делается объявление для 1.23 пользователей о том, какие изменения ожидаются в 1.27.

График релизов

Этот график является задачами, что должно произойти перед выпуском новой версии. Дата фактического выпуска дается здесь как T (для "времени" релиза) и суффикс -# (для “количества недель до выпуска”).

Относительная задача Задачи
T - 7 Announce that the release branch will be created in one week. Ask people to make sure that anything needed to complete in-progress features is merged before then. Create "MW-X.XX-release" in Phabricator.
T - 6 Создать ветку для ядра и всех расширений в Gerrit.
T - 5 Применить метку X.XX-rc.0 и выпустить первоначальный релиз-кандидат.
T - 4 Собрать любые сообщения об ошибках и обобщить их в почтовой рассылке.
T - 3 Применить метку X.XX-rc.1 и выпустить второй релиз-кандидат. Любые новые расширения, которые предлагались для добавления в архив релиза, должны быть уже в нем к этому моменту. С этого момента никаких изменений в расширениях не производится.
T - 2 Собрать любые сообщения об ошибках, применить (merge) исправления, отменить новые, неполные возможности, которые были случайно включены. Применить метку X.XX-rc.2 и выпустить третий релиз-кандидат.
T - 1 Повторить предыдущие шаги. Использовать метку X.XX-rc.final для выпуска финального релиза. С этого момента не принимаются бэкпорты.
T Отметить (TAG) репозиторий меткой X.XX и сделать релиз.

Управление жизненным циклом расширений

Most MediaWiki installations include a significant number of extensions (Wikimedia wikis often have around 140). 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, can be challenging.

Поэтому разработчикам расширений настоятельно рекомендуется для каждой версии MediaWiki делать соответствующую версию расширения. (Для более подробной информации смотрите [[Special:MyLanguage/Compatibility#MediaWiki extensions|]] .) For extensions hosted in Wikimedia's git repos, such branches (with names such as REL1_30 for MediaWiki 1.30) are created automatically from master when a new MediaWiki version is branched (on the assumption that the extension master is compatible with MediaWiki master at all times). However, it's preferable for the extension maintainer to fix bugs not only in HEAD but also in the oldstable and stable versions (by backporting the fix to the old branches if necessary).

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.

Ссылки

  • Generators on WikiApiary - статистика использования различных версий версий MediaWiki.