Cycle de vie des versions

From mediawiki.org
This page is a translated version of the page Version lifecycle and the translation is 94% complete.

MediaWiki utilise le modèle de développement dit d’« intégration continue », dans lequel les modifications du logiciel sont déployées régulièrement sur les sites web Wikimedia tels que Wikipédia.

En théorie, de nouvelles versions majeures sont publiées tous les six mois et les branches de ces versions reçoivent des mises à jour de sécurité jusqu’à un an après la première publication. À cause des contraintes de temps et la restructuration rapide du code de base, nous ne pouvons pas maintenir indéfiniment ; les mises à jour de sécurité et les mises à jour critiques ne sont donc pas disponibles pour les versions ayant atteint le statut de fin de vie.

Le responsable de la publication recommande fortement aux administrateurs de wikis de s’inscrire à mediawiki-announce, qui reçoit des annonces pour toutes les publications, et de s’assurer que leur wiki fonctionne avec la version la plus à jour possible du logiciel. Ces annonces sont aussi envoyées aux listes mediawiki-l et wikitech-l.

Versions et dates de fin de vie

Pour l'historique complet, voir : w:MediaWiki version history.
Version Statut Publication Fin de vie
1.40.x Version future (2023-05) (2024-05)
1.39.x (LTS) version supportée à long terme future (2022-11) (2025-11)
1.38.x version stable (2022-06-02) (2023-06)
1.37.x Version héritée (ancienne mais maintenue) (2021-11-18) novembre 2022
1.36.x version obsolète (2021-05-28) (2022-06-03)
1.35.x (LTS) version supportée à long terme (2020-09-25) septembre 2023
1.34.x version obsolète (2019-12-19) (2020-11-30)

Les versions incluses dans le tableau ci-dessus qui sont marquées comme obsolètes ainsi que les versions qui ne sont pas listées du tout ne recevront pas de correctifs de sécurité. Elles peuvent contenir des vulnérabilités de sécurité critiques et d'autres bogues majeurs, y compris la menace d'une éventuelle perte et/ou corruption de données. Le responsable de la version a également émis une forte recommandation selon laquelle seules les versions listées ci-dessus comme étant la version stable, la version héritée ou la version de support à long terme actuelle doivent être utilisées dans un environnement de production.

Special: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.34Special:MyLanguage/MediaWiki 1.35Special:MyLanguage/MediaWiki 1.36Special:MyLanguage/MediaWiki 1.37Special:MyLanguage/MediaWiki 1.38Special:MyLanguage/MediaWiki 1.39Special:MyLanguage/MediaWiki 1.40
Chronologie de publication de MediaWiki
  •   Développement alpha
  •   Développement de versions
  •   Version stable
  •   Version de support à long terme


Politique de publication

  • Chaque version mineure inclura les mises à jour des fichiers i18n d’internationalisation et les corrections de bugs. Aucune nouvelle fonctionnalité ne sera intégrée dans les versions mineures et la maintenance ne s’étend pas nécessairement aux paquets d'extensions et aux habillages en général.
  • Une version majeure sera créée tous les six mois.
  • A minor release (including security patches, message translation back-ports, and general bugfixes) will be made every quarter.
  • Une version de support à long terme (LTS) sera créée tous les deux ans. Il y aura un recouvrement d’un an entre les périodes de maintenance des LTS. Par exemple, la version 1.23 était maintenue jusqu’à mai 2017 ; la version 1.27 a été publiée un an avant afin d’avoir un an pour faire la transition d’une version LTS à l’autre.
  • Les notes de versions resteront la méthode de base pour voir ce qui a changé. À cause de la nature des projets conduits par des bénévoles, il n’est pas possible de dire avec certitude ce qui arrivera dans les prochains six ou douze mois.

Calendrier des publications

Cette chronologie est un planning de ce qui doit arriver avant la publication d’une nouvelle version. La date de la publication est représentée par T (pour time) et les suffixes -n indiquent une date n semaines avant la publication.

Date Tâches
T - 7 Annoncer la création de la branche de la version la semaine suivante. Demander à tous de s’assurer que toute modification nécessaire pour terminer une fonctionnalité en cours d’écriture a été incluse avant cette date. Créer le projet « MW-X.XX-release » dans Phabricator.
T - 6 Créer la branche de MediaWiki et de toutes les extensions dans Gerrit.
T - 5 Ajouter le marqueur X.XX-rc.0 et publier la version candidate initiale.
T - 4 Collecter les signalements de bogues et les résumer sur la liste de diffusion.
T - 3 Ajouter le marqueur X.XX-rc.1 et publier la seconde version de test. Toutes les nouvelles extensions dont l’ajout à l’archive de distribution est envisagé devraient y être à ce moment. Plus aucune extension n’est modifiée à partir de ce moment.
T - 2 Collecter tous les nouveaux signalements de bogues, fusionner les correctifs, retirer les nouvelles fonctionnalités incomplètes insérées par accident, ajouter le marqueur X.XX-rc.2 et publier la troisième version de test.
T - 1 Répéter l’étape précédente, ajouter le marqueur X.XX-rc.final et publier. Plus aucun rétroportage ne sera accepté passé cet instant.
T Ajouter le marqueur X.XX et effectuer la publication.

Gestion du cycle de vie des extensions

La plupart des installations de MediaWiki incluent un nombre significatif d'extensions (les wikis Wikimedia en ont souvent environ 140). Gérer la correction des bogues de maintenance des extensions et choisir la bonne version d'une extension dans les cas où la version de développement HEAD repose sur des fonctionnalités qui ne sont pas encore disponibles dans le noyau stable ou ancien de MediaWiki, peut être difficile.

Les mainteneurs d'extensions sont donc fortement encouragés à maintenir une branche git pour chaque version d'extension correspondant à une version de MediaWiki. (Voir Compatibility#MediaWiki extensions pour les détails.) Pour les extensions hébergées dans les dépôts git de Wikimedia, de telles branches (avec des noms tels que REL1_30 pour MediaWiki 1.30) sont créées automatiquement à partir du master lorsqu'une nouvelle version de MediaWiki est ramifiée (en supposant que le master de l'extension soit compatible avec le master de MediaWiki tout le temps). Cependant, il est préférable que le mainteneur de l'extension corrige les bogues non seulement dans HEAD, mais aussi dans les versions anciennes et stables (en rétroportant le correctif sur les anciennes branches si nécessaire).

Le but de ces règles est de permettre aux personnes ou organisations installant MediaWiki de pouvoir installer la dernière version et d’y faire correspondre les extensions par une méthode simple, par exemple pour MediaWiki 1.20.x en utilisant REL1_20 dans git. And it avoids tarballs and zip files with non-relevant and unpredictable names.

Since Version 1.36, MediaWiki only commits to supporting upgrades from two major long-term support releases (LTS) ago (see phab:T259771). Upgrades from older versions of MediaWiki will have to be performed in multiple steps.

Voir aussi