Plan De Version

From The Document Foundation Wiki
Jump to navigation Jump to search
This page is a translated version of the page ReleasePlan and the translation is 46% complete.
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎dansk • ‎español • ‎français • ‎italiano • ‎português do Brasil • ‎română • ‎русский • ‎العربية • ‎فارسی • ‎日本語

Introduction

La sortie de nouvelles versions à date fixe permet de produire des logiciels libres de meilleure qualité. Une sortie à date fixe n'attend pas de nouvelles fonctionnalités, ni de corrections de bogues, mais se produit (autant que possible) toujours à la même date. Cela renforce la rigueur dans l'intégration des corrections, donne de la visibilité au projet, et permet un rythme de sortie plus régulier. Il en découle également que les mises à jour mineures de corrections de bogues, basées sur la dernière version stable, sortiront plus vite. Par conséquent, si vous recherchez la version de la plus haute qualité possible, il est préférable d'attendre la première ou la deuxième mise à jour mineure avant de changer de version.

LibreOffice publie des versions semestrielles prévisibles qui sont en phase avec d'autres projets de logiciels libres (par exemple Gnome) et qui ont au moins un mois d'avance sur les versions majeures des distributions Linux.

La synchronisation du calendrier de diffusion avec l'écosystème du logiciel libre présente également d'énormes avantages, car elle permet de mettre nos nouvelles fonctionnalités à la disposition des utilisateurs le plus rapidement possible - avec un minimum de décalage dans le cycle de distribution. En conséquence, nous visons des versions semestrielles, et au fil du temps, nous les poussons pour qu'elles s'alignent bien sur les normes de mars/septembre.

Il a été démontré que les trains de diffusion basés sur le temps produisent des logiciels libres de la meilleure qualité. Une version basée sur le temps est une version qui n'attend ni fonctionnalités, ni corrections de bogues - mais qui est basée (aussi purement que possible) sur le temps. Cela renforce la discipline dans l'introduction des corrections, donne de la prévisibilité et permet des mises à jour plus régulières. Il est également vrai que nous publierons nécessairement plus tôt, et ensuite rapidement, des versions de correction de bogues basées sur la version stable précédente. Ainsi, si vous avez besoin d'une version de la plus haute qualité, il peut être judicieux de reporter un mouvement jusqu'à la première ou peut-être la deuxième version de points mineurs.

Il y a deux branches : Fresh (la dernière version) et Still (la version majeure précédente), qui sont respectivement destinées aux utilisateurs de fonctionnalités grand public (qui peuvent accepter des bugs mineurs) et aux déploiements conservateurs des entreprises (qui doivent avoir une version la plus stable possible).

En conséquence, les utilisateurs reçoivent une nouvelle version majeure tous les six mois avec un large éventail de fonctionnalités, de corrections et d'améliorations. En outre, ils reçoivent de nombreuses micro versions de correction de bogues. La première version X.Y.0 est destinée aux utilisateurs précoces. Il est conseillé aux utilisateurs plus conservateurs d'attendre une version X.Y.Z. déboguée ultérieure.

Notez que les dates mentionnées dans le calendrier peuvent être décalées en cas de sérieux problèmes techniques ou autres problèmes liés à la diffusion. Une version RC (Release Candidate) supplémentaire peut être nécessaire si le candidat final à la libération ne correspond pas aux Critères de libération. Un tel problème décalerait la version finale d'une semaine, voire plus.

7.1 release

Basic dates for the initial and bugfix releases
Release Freeze Publishing
7.1.0 (freeze: week 02) Week 43 , oct. 19, 2020 - oct. 25, 2020 Week 05 , fév. 1, 2021 - fév. 7, 2021
7.1.1 Week 06 , fév. 8, 2021 - fév. 14, 2021 Week 09 , mars 1, 2021 - mars 7, 2021
7.1.2 Week 10 , mars 8, 2021 - mars 14, 2021 Week 13 , mars 29, 2021 - avr. 4, 2021
7.1.3 Week 15 , avr. 12, 2021 - avr. 18, 2021 Week 18 , mai 3, 2021 - mai 9, 2021
7.1.4 Week 20 , mai 17, 2021 - mai 23, 2021 Week 23 , juin 7, 2021 - juin 13, 2021
7.1.5 Week 26 , juin 28, 2021 - juill. 4, 2021 Week 29 , juill. 19, 2021 - juill. 25, 2021
7.1.6 Week 33 , août 16, 2021 - août 22, 2021 Week 36 , sept. 6, 2021 - sept. 12, 2021
7.1.7 Week 41 , oct. 11, 2021 - oct. 17, 2021 Week 44 , nov. 1, 2021 - nov. 7, 2021
End of Life November 30, 2021

See also the detailed schedule and the release notes.


Version 7.0

Date de sortie initiale et versions correctives
Version Développement Publication
7.0.0 (gel : semaine 29) Week 19 , mai 4, 2020 - mai 10, 2020 Week 32 , août 3, 2020 - août 9, 2020
7.0.1 Week 33 , août 10, 2020 - août 16, 2020 Week 36 , août 31, 2020 - sept. 6, 2020
7.0.2 Week 38 , sept. 14, 2020 - sept. 20, 2020 Week 41 , oct. 5, 2020 - oct. 11, 2020
7.0.3 Week 43 , oct. 19, 2020 - oct. 25, 2020 Week 46 , nov. 9, 2020 - nov. 15, 2020
7.0.4 Week 48 , nov. 23, 2020 - nov. 29, 2020 Week 51 , déc. 14, 2020 - déc. 20, 2020
7.0.5 Week 07 , fév. 15, 2021 - fév. 21, 2021 Week 10 , mars 8, 2021 - mars 14, 2021
7.0.6 Week 16 , avr. 19, 2021 - avr. 25, 2021 Week 19 , mai 10, 2021 - mai 16, 2021
Fin de vie 31 mai 2021

Jetez aussi un oeil sur le calendrier détaillé et les notes de version.

Version 6.4

Date de sortie initiale et versions correctives
Version Développement Publication
6.4.0 (gel : semaine 02) Week 42 , oct. 14, 2019 - oct. 20, 2019 Week 05 , janv. 27, 2020 - fév. 2, 2020
6.4.1 Week 06 , fév. 3, 2020 - fév. 9, 2020 Week 09 , fév. 24, 2020 - mars 1, 2020
6.4.2 Week 09 , fév. 24, 2020 - mars 1, 2020 Week 12 , mars 16, 2020 - mars 22, 2020
6.4.3 Week 13 , mars 23, 2020 - mars 29, 2020 Week 16 , avr. 13, 2020 - avr. 19, 2020
6.4.4 Week 18 , avr. 27, 2020 - mai 3, 2020 Week 21 , mai 18, 2020 - mai 24, 2020
6.4.5 Week 24 , juin 8, 2020 - juin 14, 2020 Week 27 , juin 29, 2020 - juill. 5, 2020
6.4.6 Week 30 , juill. 20, 2020 - juill. 26, 2020 Week 33 , août 10, 2020 - août 16, 2020
6.4.7 Week 39 , sept. 21, 2020 - sept. 27, 2020 Week 42 , oct. 12, 2020 - oct. 18, 2020
Fin de vie 30 novembre 2020

Jetez aussi un oeil sur le calendrier détaillé et les notes de version.

Version 6.3

Date de sortie initiale et versions correctives
Version Développement Publication
6.3.0 (gel : semaine 29) Week 19 , mai 6, 2019 - mai 12, 2019 Week 32 , août 5, 2019 - août 11, 2019
6.3.1 Week 32 , août 5, 2019 - août 11, 2019 Week 35 , août 26, 2019 - sept. 1, 2019
6.3.2 Week 36 , sept. 2, 2019 - sept. 8, 2019 Week 39 , sept. 23, 2019 - sept. 29, 2019
6.3.3 Week 41 , oct. 7, 2019 - oct. 13, 2019 Week 44 , oct. 28, 2019 - nov. 3, 2019
6.3.4 Week 47 , nov. 18, 2019 - nov. 24, 2019 Week 50 , déc. 9, 2019 - déc. 15, 2019
6.3.5 Week 05 , janv. 27, 2020 - fév. 2, 2020 Week 08 , fév. 17, 2020 - fév. 23, 2020
6.3.6 Week 15 , avr. 6, 2020 - avr. 12, 2020 Week 18 , avr. 27, 2020 - mai 3, 2020
Fin de vie 29 mai 2020

Jetez aussi un oeil sur le calendrier détaillé et les notes de version.

Dates

The release is time-based but the schedule defines calendar weeks instead of exact dates. It is because we are always a bit flexible. The release can be delayed by few days because of blocker bugs, build problems, and other technical issues.

The release consists of several beta and release candidate builds. There are needed several actions for each build. The ideal workflow looks like:

  • Monday: commit deadline; reminder is sent to devel, l10n mailing list before it happens
  • Tuesday: the tag is created on a commit that builds and passes unit-, subsequent-, and smoke-tests; tag is announced on the devel and qa mailing lists
  • Wednesday: builds are uploaded on the early pre-release site; they are announced on the devel and qa mailing lists
  • Thursday: builds are uploaded on mirrors. They are announced via many channels, e.g. mailing lists, twitter
  • Friday: builds are available via the official pre-release site

The final release is usually announced on Thursday, few days after the final release candidate is out.

Note that we are very strict about commits to the final release candidate, so full regression test is not needed. It is used as the final build when it passes the needed tests. It is just renamed on mirrors.

Calendrier

The schedule is based on the following rules:

  • do the major release every six months and synchronize it (at least one month ahead) with major Linux distributions; it always comes with a wide range of features, fixes, and enhancements
  • do a pure bugfix release every month after the main release until it is good enough even for the most conservative people; do it less frequently afterwards
  • do pure bugfix releases, including security fixes, until the next release is ready for most conservative people
  • do not do two builds the same week.

The result is the following template:

Interlocking releases
Event Summer Winter
x.y feature freeze Jun(b) Dec(b)
x.y.0 first release Aug(b) Feb(b)
x.y.1 bugfix release Sep(b) Mar(b)
x.y.2 bugfix release Oct(b) Apr(b)
x.y.3 bugfix release Nov(b) May(b)
x.y.4 bugfix release Dec(b) Jun(b)
x.y.5 bugfix release Feb(m) Aug(m)
x.y.6 bugfix release Apr(m) Oct(m)

Where (b) means the beginning of the month, (m) means the middle of the month and (e) means the end of the month.

Gel des phrases

The release plans for the first version of each major release indicate a "hard English string & UI freeze". The idea is to make the lives of translators easier. The translators should be able to trust that no new translatable strings are added into the UI or Help files between the period of the string freeze and release.

After the first version of a major release is out, correcting mistakes in the UI and Help strings is fine. Any completely new content should target the next major release.

Schéma de version

We do several builds around each release. The following versioning scheme is used:

  • X.Y.0.0.alphaZ - Zth alpha version of the initial release
  • X.Y.0.0.betaZ - Zth beta version of the initial release
  • X.Y.0.Z - Zth release candidate of the initial release, last rc is considered as final and put on the main download page
  • X.Y.1.Z - Zth release candidate of the 1st bugfix release, last rc is considered as final and put on the main download page

It seems to be the best compromise with the following advantages:

  • easy to understand for normal users, alpha, beta flags are known from other projects, so they set reasonable expectations
  • correct alphabetical sorting in RPM, Bugzilla
  • “easy” to parse (alpha/beta strings delimited by dot)

There was a long discussion about this scheme on the mailing list.

Accélérer le cycle de version

This acceleration of the release cycle involves some considerable release engineering and QA effort. To reduce the cost of these, we work to provide complete (ie. containing all languages) daily snapshots of the master branch to allow continual testing of code improvements. This works partially already, as can be seen/downloaded from here.

Similarly, we plan to increasingly automate the build process to allow a much lower-touch release flow, and to continue to shrink the footprint of our binaries to allow far more rapid transfer of product-equivalent builds.

Versions en fin de vie (EOL End-Of-Life)

Une version a normalement une durée de vie d'environ neuf mois. Nous considérons qu'une version a atteint sa Fin de vie (EOL) un mois après la dernière sortie prévue.

If you want longer term support for a release, you’re encouraged to engage any certified L3 provider who could provide you with the service.

En raison de la quantité de données, ces versions ont été rangées dans ReleasePlan/Archive.