QtReleasing: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
(40 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}


[[Category:Release]]
[[Category:Release]]


= Qt 5 releasing gearbox =
==Qt releasing gearbox==


We are targeting to release new minor Qt release twice/year and some patch releases between those minor ones. Target is to release minor releases on April and October. Patch releases are done pretty much need bases: Those can be done immediately when some brown paper bag issue is found & fixed (e.g. security fix) or when there is enough critical issues fixed for next Minor release.
We are targeting to release new minor Qt release twice/year and some patch releases between those minor ones. Target is to release minor releases on April and October. Patch releases are done pretty much need bases: Those can be done immediately when some brown paper bag issue is found & fixed (e.g. security fix) or when there is enough critical issues fixed for next Patch release.


Most of releasing related issues are decided in virtual release team meetings. Meetings are led by release manager and everyone can join to those meetings by informing willingness to release manager. Meetings are held in irc, #qt-releases channel. To get invitation to these meetings please sent request to the release manager.
Most of releasing related issues are decided in virtual release team meetings. Meetings are led by release manager and everyone can join to those meetings by informing willingness to release manager. Meetings are held in irc, #qt-releases channel. To get invitation to these meetings please sent request to the release manager.


= Qt 5 release phases =
==Qt release phases==


Patch release doesn't have official release phases; It is released when needed and when quality is good enough.
Patch release doesn't have official release phases; It is released when needed and when quality is good enough.


Minor releases are going through following phases:
Minor releases are going through following phases & initial timing:
|''. '''Phase'''|''. '''Timing''' |
{|
| [http://wiki.qt.io/Qt5_feature_freeze Feature freeze] | T-10 weeks |
!'''Phase'''
| Alpha release| T-9 weeks |
!'''Timing'''
| Beta release, soft string freeze| T-6 weeks |
|-
| Hard string freeze| T-3+ weeks |
|[http://wiki.qt.io/Qt5_feature_freeze Feature freeze]
| Release candidate| T-2 weeks |
|T-13 weeks
| Final release| T |
|-
|Alpha release
|T-12 weeks
|-
|Beta release
|T-10 weeks
|-
|Soft string freeze
|T-6 weeks
|-
|Hard string freeze
|T-5 weeks
|-
|Release candidate
|T-2 weeks
|-
|Final release
|T
|}


Timings are more or less suggestive and will be fine-tuned for each release to take care of holiday seasons etc.
Timings are more or less suggestive and will be fine-tuned for each release to take care of holiday seasons etc.


= Qt releases =
==Qt releases==


In the table below is high level schedule. Detailed schedule & patch releases can be found from subpages, links in the each release.
In the table below is high level schedule. Detailed schedule & patch releases can be found from subpages, links in the each release.
Line 32: Line 49:
!'''Planned schedule'''
!'''Planned schedule'''
!'''Actual schedule'''
!'''Actual schedule'''
!Commercial Support
|-
|-
|[[Qt-5.1-release]]
|[[Qt 5.1 Release]]
|May 2013
|May 2013
|July 2013
|July 2013
|Ended
|-
|-
|[[Qt-5.2-release]]
|[[Qt 5.2 Release]]
|Nov 2013
|Nov 2013
|Dec 2013
|Dec 2013
|Ended
|-
|-
|[[Qt-5.3-release]]
|[[Qt 5.3 Release]]
|Apr 2014
|Apr 2014
|May 2014
|May 2014
|Ended
|-
|-
|[[Qt-5.4-release]]
|[[Qt 5.4 Release]]
|Oct 2014
|Oct 2014
|Dec 2014
|Dec 2014
|Ended
|-
|-
|[[Qt-5.5-release]]
|[[Qt 5.5 Release]]
|Apr 2015
|Apr 2015
|July 2015
|July 2015
|Ended
|-
|-
|[[Qt-5.6-release]]
|[[Qt 5.6 Release]]
|Dec 2015
|Dec 2015
|March 2016
|Ended
|-
|[[Qt 5.7 Release]]
|May 2016
|June 2016
|Ended
|-
|[[Qt 5.8 Release]]
|Dec 2016
|Jan 2017
|Ended
|-
|[[Qt 5.9 Release]]
|May 2017
|May 2017
|Ended
|-
|[[Qt 5.10 Release]]
|Nov 2017
|Dec 2017
|Ended
|-
|[[Qt 5.11 Release]]
|May 2018
|May 2018
|Ended
|-
|[[Qt 5.12 Release]]
|Nov 2018
|Dec 2018
|Ended
|-
|[[Qt 5.13 Release]]
|May 2019
|June 2019
|Ended
|-
|[[Qt 5.14 Release]]
|Nov 2019
|Dec 2019
|Ended
|-
|[[Qt 5.15 Release]]
|May 2020
|May 2020
|May 2023
|-
|[[Qt 6.0 Release]]
|Nov 2020
|Dec 2020
|Ended
|-
|[[Qt 6.1 Release]]
|April 2021
|May 2021
|May 2022
|-
|[[Qt 6.2 Release]]
|September 2021
|September 2021
|September 2024
|-
|[[Qt 6.3 Release]]
|March 2022
|April 2022
|April 2023
|-
|[[Qt 6.4 Release]]
|September 2022
|<tbs>
|<tbs>
|
|-
|-
|[[Qt-5.7-release]]
|[[Qt 6.5 Release]]
|Apr 2016
|?
|<tbs>
|<tbs>
 
|
|}
|}


= Branches & Qt versions =
==Branches & Qt versions==


There is few different development branches in Qt 5: Development branch & feature branches (like 5.4, 5.3)
There is few different development branches in Qt: Development branch & feature branches (like 5.4, 5.3)


Development branch has content targeted to next minor release (Qt 5.x). After feature freeze of Qt 5.x code is branched from development branch to 5.x and work for that minor release continues in that new branch. Development branch is again for new minor release Qt 5.(x+1).
Development branch has content targeted to next minor release (Qt 6.x). After feature freeze of Qt x.y code is branched from development branch to x.y and work for that minor release continues in that new branch. Development branch is again for new minor release Qt x.(y+1).


Feature branches (5.x) has content for next release (minor or patch). Alpha and beta releases are done from feature branch. Release branch(5.x.y) is created after (last) beta release, near release candidate phase. After branching work for release candidate & final release continues in release branch and feature branch is for next patch release.
Feature branches (x.y) has content for next release (minor or patch). Alpha and beta releases are done from feature branch. Release branch(x.y.z) is created after (last) beta release, near release candidate phase. After branching work for release candidate & final release continues in release branch and feature branch is for next patch release.


Release branch is for finalizing the release. All final releases are done from release branch. Only really important error corrections are allowed to be integrated to release branch. Release team is approving all changes coming in to release branch.
Release branch is for finalizing the release. All final releases are done from release branch. Only really important error corrections are allowed to be integrated to release branch. Release team is approving all changes coming in to release branch.


More information about branches from [[Branch-Guidelines]]
More information about branches:
 
*[http://quips-qt-io.herokuapp.com/quip-0005.html QUIP 5 | Choosing a Branch]
*[[Branch-Guidelines]]
 
==Change log generation==
Use http://code.qt.io/cgit/qt/qtqa.git/tree/src/createchangelog/ to generate a change log for a module for a given release. See http://code.qt.io/cgit/qt/qtqa.git/tree/src/createchangelog/README for more information.

Revision as of 08:50, 12 April 2022


Qt releasing gearbox

We are targeting to release new minor Qt release twice/year and some patch releases between those minor ones. Target is to release minor releases on April and October. Patch releases are done pretty much need bases: Those can be done immediately when some brown paper bag issue is found & fixed (e.g. security fix) or when there is enough critical issues fixed for next Patch release.

Most of releasing related issues are decided in virtual release team meetings. Meetings are led by release manager and everyone can join to those meetings by informing willingness to release manager. Meetings are held in irc, #qt-releases channel. To get invitation to these meetings please sent request to the release manager.

Qt release phases

Patch release doesn't have official release phases; It is released when needed and when quality is good enough.

Minor releases are going through following phases & initial timing:

Phase Timing
Feature freeze T-13 weeks
Alpha release T-12 weeks
Beta release T-10 weeks
Soft string freeze T-6 weeks
Hard string freeze T-5 weeks
Release candidate T-2 weeks
Final release T

Timings are more or less suggestive and will be fine-tuned for each release to take care of holiday seasons etc.

Qt releases

In the table below is high level schedule. Detailed schedule & patch releases can be found from subpages, links in the each release.

Qt release Planned schedule Actual schedule Commercial Support
Qt 5.1 Release May 2013 July 2013 Ended
Qt 5.2 Release Nov 2013 Dec 2013 Ended
Qt 5.3 Release Apr 2014 May 2014 Ended
Qt 5.4 Release Oct 2014 Dec 2014 Ended
Qt 5.5 Release Apr 2015 July 2015 Ended
Qt 5.6 Release Dec 2015 March 2016 Ended
Qt 5.7 Release May 2016 June 2016 Ended
Qt 5.8 Release Dec 2016 Jan 2017 Ended
Qt 5.9 Release May 2017 May 2017 Ended
Qt 5.10 Release Nov 2017 Dec 2017 Ended
Qt 5.11 Release May 2018 May 2018 Ended
Qt 5.12 Release Nov 2018 Dec 2018 Ended
Qt 5.13 Release May 2019 June 2019 Ended
Qt 5.14 Release Nov 2019 Dec 2019 Ended
Qt 5.15 Release May 2020 May 2020 May 2023
Qt 6.0 Release Nov 2020 Dec 2020 Ended
Qt 6.1 Release April 2021 May 2021 May 2022
Qt 6.2 Release September 2021 September 2021 September 2024
Qt 6.3 Release March 2022 April 2022 April 2023
Qt 6.4 Release September 2022 <tbs>
Qt 6.5 Release ? <tbs>

Branches & Qt versions

There is few different development branches in Qt: Development branch & feature branches (like 5.4, 5.3)

Development branch has content targeted to next minor release (Qt 6.x). After feature freeze of Qt x.y code is branched from development branch to x.y and work for that minor release continues in that new branch. Development branch is again for new minor release Qt x.(y+1).

Feature branches (x.y) has content for next release (minor or patch). Alpha and beta releases are done from feature branch. Release branch(x.y.z) is created after (last) beta release, near release candidate phase. After branching work for release candidate & final release continues in release branch and feature branch is for next patch release.

Release branch is for finalizing the release. All final releases are done from release branch. Only really important error corrections are allowed to be integrated to release branch. Release team is approving all changes coming in to release branch.

More information about branches:

Change log generation

Use http://code.qt.io/cgit/qt/qtqa.git/tree/src/createchangelog/ to generate a change log for a module for a given release. See http://code.qt.io/cgit/qt/qtqa.git/tree/src/createchangelog/README for more information.