Qt Feature Freeze: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
(Generalized Qt 5)
 
(8 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Category:Release]]
[[Category:Release]]


= Feature Freeze =
All new features/modules targeting an upcoming major or minor Qt release must:
* Be merged into the 'dev' git branch well before feature freeze date.
* Be added to a Wiki page that list all new features (for example, [[New Features in Qt 5.5]]).
** Note: The Wiki page must list reference platforms too.
** Add the Wiki page to [[:Category:Release]] and [[:Category:Developing with Qt::Qt 5]] (adapting for version if needed).
* Fulfill criteria for new features/modules:
** Compiles on all reference platforms. (If a module/feature is only for one platform, make sure qmake/make does nothing on the other platforms.)
** Have tests. Automated tests should cover as much as possible of the new functionality. If certain areas are not covered by automated tests, agree with the Chief Maintainer on how to test those.
** Have documentation. No undocumented public API. Basic docs have to be there, only polishing should still be required after the feature freeze.
** Have examples. Have some examples showing how to use the API. Examples need to be linked to from documentation.


* All new features/modules targeted to coming Qt 5.x release must be in ‘dev’ –branch well before feature freeze date
In addition, new modules must have a CI system well before actual feature freeze date. Contact CI team (qt.ci@qt.io) as early as possible.
* All new features/modules targeted to coming Qt 5.x release must be added in Qt 5.x new features -page (wiki.qt.io/New-Features-in-Qt-5.x)
'''''' Reference platforms must be visible there as well
* All new features/modules targeted to coming Qt 5.x release must fulfill criteria for new features/modules:
'''''' Compiles on all reference platforms (If a module/feature is only for one platform, make sure qmake/make does nothing on the other platforms)
'''''' Have tests. Automated tests should cover as much as possible of the new functionality. If certain areas are not covered by automated tests, Agree with Lars how testing will be done for those
'''''' Have documentation. No undocumented public API. Basic docs have to be there, only polishing should still be required after the freeze
'''''' Have examples. Have some examples showing how to use the API. Examples need to be linked to from documentation.
 
* In addition, new modules need to
'''''' Have a CI system
- New modules that are going to be part of Qt releases need to have a CI system set up well before actual feature freeze date. Contact CI team (qt-ci@digia.com) as early as possible.

Latest revision as of 08:14, 17 June 2020


All new features/modules targeting an upcoming major or minor Qt release must:

  • Be merged into the 'dev' git branch well before feature freeze date.
  • Be added to a Wiki page that list all new features (for example, New Features in Qt 5.5).
  • Fulfill criteria for new features/modules:
    • Compiles on all reference platforms. (If a module/feature is only for one platform, make sure qmake/make does nothing on the other platforms.)
    • Have tests. Automated tests should cover as much as possible of the new functionality. If certain areas are not covered by automated tests, agree with the Chief Maintainer on how to test those.
    • Have documentation. No undocumented public API. Basic docs have to be there, only polishing should still be required after the feature freeze.
    • Have examples. Have some examples showing how to use the API. Examples need to be linked to from documentation.

In addition, new modules must have a CI system well before actual feature freeze date. Contact CI team (qt.ci@qt.io) as early as possible.