Planung

Veröffentlichung und Entwicklung von QGIS erfolgt nach einem Zeitplan.

  • Gerade Versionsnummern (2.18, 3.2, usw) sind veröffentliche Ausgaben.
  • Ungerade Versionnummern (3.1, 3.3 usw.) sind Entwicklungsversionen.

Alle vier Monate wird eine neue Version veröffentlicht. In den ersten drei Monaten findet neue Entwicklung statt. Danach wird eine Feature Freeze ausgelöst, in dem keine neuen Funktionen mehr hinzugefügt werden. Der letzte Monat für Tests, Fehlerbehebung, Übersetzung und Freigabevorbereitung verwendet. Wenn die Freigabe stattfindet wird eine Zweig mit einer geraden Zahl erstellt und der Master-Zweig erhält die nächste ungerade Zahl. Nach der Freigabe wird zur Erstellung von Paketen aufgerufen.

Jedes dritte Versionfreigabe (beginnend mit 2.8) ist ein langfristige Versionslinie (engl. Long Term Release; LTR) das bis zur nächsten langfristigen Versionslinie gepflegt wird.

Entwicklungsphase

In der Entwicklungsphase arbeiten die Entwickler an neuen Funktionen für die nächste Version. Frühzeitige Anwender können sich mit den nächtlichen Kompilaten, die wir für die Hauptplattformen haben, einen Eindruck des Entwicklungsfortschritt machen, Vorabtests durchführen und Fehlermeldungen und Ihre Gedanken liefern um die Entwicklung zu unterstützen.

Feature Freeze

In der Feature Freeze Phase sind keine neuen Funktionen mehr erlaubt und der Fokus wechselt vom Erweitern von QGIS auf dessen Stabilisierung. Dies macht die nächtlichen Kompilate auch effektiv zu prereleases.

Anwender sollten nun mit ausgeweitetem Testen dieser Vorabversionen in Ihrer Umgebung beginnen und überprüfen, daß es keine Dinge gibt, die sie nicht im kommenden Versionsfreigabe antreffen wollen. Alle Schwierigkeiten sollten berichtet werden (siehe `Fehler, Funktionen und Probleme`_). Alles was unentdeckt bleibt, wird auch in die nächste Version kommen. Nur im Falle von schwerwiegenden Probleme werden Punktversionen (z.B. 2.4.1) erfolgen. Daher ist das Testen der Vorabversionen sehr wichtig.

Im Feature Freeze beobachten Entwickler den Bugtracker und beginnen mit der Beseitigung der berichteten Fehler und aktualisieren das Visuelle Änderungsprotokoll um die hinzugefügten Funktionen.

Mit dem Beginn des Feature Freezes werden auch die Übersetzungsdateien aktualisiert, damit die Übersetzer mit ihrer Arbeit beginnen können. Beachten Sie, dass dies eine inkrementeller Prozess sein kann, obwohl die Funktionen feststehen. könnten Fehlerkorrekturen immer noch Änderungen an den Übersetzungstexten mit sich bringen.

Zwei Wochen vor dem Release setzt ein harter Freeze ein, nachdem nur noch Reparaturen an ernsthaften Problemen und Regressionen, die nach dem Feature Freeze herauskamen, erlaubt sind.

Der Release Manager verkündet dies beim Feature Freeze.

Version

Bei Major- und Minor-Release-Terminen wird der Release-Branch erstellt, der Release wird getaggt und Pakete werden vorbereitet. Point-Releases werden nur getaggt und Pakete werden erzeugt.

Die Paketersteller werden informiert, dass das Paketieren beginnen kann.

Sobald einige Pakete verfügbar sind kann das Release verkündet werden und die Webseite wird entsprechend aktualisiert.

Freigabe-Zeitplan

Der Zeitplan ist darauf ausgerichtet in jedem Jahr etwa die gleichen Daten für unsere viermonatlichen Releases mit den LTRs im späten Februar zu liefern.

Beginnend nach 2.12 ist die Entwicklungsphase immer 12 Wochen lang und die Feature-Freeze-Phase mindestens 5 Wochen. Restwochen werden der Feature-Freeze-Phase des LTR-Release zugeschlagen.

Punktversionen finden jeden Monat auf dem Releasebranch und dem LTR-Branch statt, wenn es Rückportierungen gibt.

In den ersten vier Monaten nach der Veröffentlichung eines neuen LTR ist es auch das aktuelle LR. In dieser Phase ersetzt es das vorherige LTR noch nicht in den LTR-Repositorien. Dies findet erst statt, wenn ein neues LR freigeben wird.

Der Zeitplan ist außerdem als „iCalendar“ verfügbar.

Zeitplan:

Ereignis Aktuell Langfr. Repos. Freeze Datum Woche Wochen
LTR/PR 3.4.0 2.18.25   2018-10-26 43 4
EPR 3.4.1     2018-11-02 44 4
PR 3.4.2 2.18.26   2018-11-23 47 4
PR 3.4.3 2.18.27   2018-12-21 51 4
PR/FF 3.4.4 2.18.28 3.5 2019-01-18 3 5
LR/PR 3.6.0 3.4.5   2019-02-22 8 4
PR 3.6.1 3.4.6   2019-03-22 12 4
PR 3.6.2 3.4.7   2019-04-19 16 4
PR/FF 3.6.3 3.4.8 3.7 2019-05-17 20 5
LR/PR 3.8.0 3.4.9   2019-06-21 25 4
PR 3.8.1 3.4.10   2019-07-19 29 4
PR 3.8.2 3.4.11   2019-08-16 33 3
FF     3.9 2019-09-06 36 1
PR 3.8.3 3.4.12   2019-09-13 37 4
HF       2019-10-11 41 2
LTR/PR 3.10.0 3.4.13   2019-10-25 43 6
PR 3.10.1 3.4.14   2019-12-06 49 6
PR/FF 3.10.2 3.4.15 3.11 2020-01-17 3 5
LR/PR 3.12.0 3.10.3   2020-02-21 8 4
PR 3.12.1 3.10.4   2020-03-20 12 4
PR 3.12.2 3.10.5   2020-04-17 16 4
PR/FF 3.12.3 3.10.6 3.13 2020-05-15 20 5
LR/PR 3.14.0 3.10.7   2020-06-19 25 4
PR 3.14.1 3.10.8   2020-07-19 29 4
PR 3.14.15 3.10.9   2020-08-14 33 4
PR/FF 3.14.16 3.10.10 3.15 2020-09-11 37 6
LTR/PR 3.16.0 3.10.11   2020-10-23 43 4
PR 3.16.1 3.10.12   2020-11-20 47 4
PR 3.16.2 3.10.13   2020-12-18 51 4
PR/FF 3.16.3 3.10.14 3.17 2021-01-15 3 5
LR/PR 3.18.0 3.16.4   2021-02-19 8 4

Ereignislegende:

Ereignis Beschreibung
LTR Langfristige Version, Beginn der neuen Entwicklungsphase
LR Reguläre Version, Beginn der neuen Entwicklungsphase
FF Feature-Freeze, Ende der Entwicklungsphase
HF Hard-Freeze
SF Soft-Freeze mit zwei Abstimmungen im Monat
PR Point-Release des aktuellen und des LTR-Zweigs
EPR Zusätzliches Point-Release

Ort von Vorabversionen / nächtlichen Kompilaten

Plattform Ort
Windows OSGeo4W
Linux Debian/Ubuntu
MacOS Mac OS