Bumping QML Module Versions: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
m (Move to new Process sub-category)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
This page documents the process for bumping a QML module in Qt, using Qt Quick Controls 2 as an example.
[[Category:Developing Qt::Process]]
== Bumping Qt Quick Controls 2 ==
This section documents the process for bumping Qt Quick Controls 2.


== Bump MODULE_VERSION, qmldirs and docs ==
=== Bump MODULE_VERSION, qmldirs and docs ===
[https://codereview.qt-project.org/#/c/221809/2/src/imports/controls/controls.pro MODULE_VERSION] determines the module version used by "make qmltypes" (which runs qmlplugindump, a tool used to create [http://code.qt.io/cgit/qt/qtquickcontrols2.git/tree/src/imports/controls/plugins.qmltypes plugins.qmltypes]).
[https://codereview.qt-project.org/#/c/221809/2/src/imports/controls/controls.pro MODULE_VERSION] determines the module version used by "make qmltypes" (which runs qmlplugindump, a tool used to create [http://code.qt.io/cgit/qt/qtquickcontrols2.git/tree/src/imports/controls/plugins.qmltypes plugins.qmltypes]).


[http://code.qt.io/cgit/qt/qtquickcontrols2.git/tree/src/imports/controls/qmldir qmldir] files are explained [http://doc.qt.io/qt-5/qtqml-modules-qmldir.html here]. In the case of Qt Quick Controls 2, it has a dependency to Qt Quick Templates, hence why it must be bumped.
[http://code.qt.io/cgit/qt/qtquickcontrols2.git/tree/src/imports/controls/qmldir qmldir] files are explained [http://doc.qt.io/qt-5/qtqml-modules-qmldir.html here]. In the case of Qt Quick Controls 2, it has a dependency to Qt Quick Templates, hence why it must be bumped.
Any documentation files that mention the version number should be bumped as well. For example:
https://codereview.qt-project.org/#/c/221809/2/src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc


This patch bumps all three at once:
This patch bumps all three at once:
Line 10: Line 16:
https://codereview.qt-project.org/#/c/221809/
https://codereview.qt-project.org/#/c/221809/


== Bump imports of QML files using the module itself ==
=== Bump imports of QML files using the module itself ===


For example:
For example:
Line 16: Line 22:
https://codereview.qt-project.org/#/c/221211/
https://codereview.qt-project.org/#/c/221211/


== Bump plugins.qmltypes ==
=== Bump plugins.qmltypes ===


For example:
For example:
Line 22: Line 28:
https://codereview.qt-project.org/#/c/221397/
https://codereview.qt-project.org/#/c/221397/


== Bump any imported versions of QML files that follow the Qt version ==
=== Bump any imported versions of QML files that follow the Qt version ===


Qt's version is bumped by increasing MODULE_VERSION in qtbase/.qmake.conf:
Qt's version is bumped by increasing MODULE_VERSION in qtbase/.qmake.conf:
Line 39: Line 45:


https://codereview.qt-project.org/#/c/220052/
https://codereview.qt-project.org/#/c/220052/
[[Category:Developing Qt]]

Latest revision as of 12:17, 25 July 2018

Bumping Qt Quick Controls 2

This section documents the process for bumping Qt Quick Controls 2.

Bump MODULE_VERSION, qmldirs and docs

MODULE_VERSION determines the module version used by "make qmltypes" (which runs qmlplugindump, a tool used to create plugins.qmltypes).

qmldir files are explained here. In the case of Qt Quick Controls 2, it has a dependency to Qt Quick Templates, hence why it must be bumped.

Any documentation files that mention the version number should be bumped as well. For example:

https://codereview.qt-project.org/#/c/221809/2/src/imports/controls/doc/src/qtquickcontrols2-qmltypes.qdoc

This patch bumps all three at once:

https://codereview.qt-project.org/#/c/221809/

Bump imports of QML files using the module itself

For example:

https://codereview.qt-project.org/#/c/221211/

Bump plugins.qmltypes

For example:

https://codereview.qt-project.org/#/c/221397/

Bump any imported versions of QML files that follow the Qt version

Qt's version is bumped by increasing MODULE_VERSION in qtbase/.qmake.conf:

https://github.com/qt/qtbase/commit/df9de3e4543b8f8bf4ec4c53921700133e37f051

QT_VERSION is then deduced from that:

http://code.qt.io/cgit/qt/qtbase.git/tree/configure#n343

After that, the Qt version bump in qtbase will need to integrate to qt5.git. For example, in the case of the commit above, that was done here:

https://codereview.qt-project.org/#/c/204113/

Once all of that has happened, any imports of a module whose version follows the Qt version (such as QtQuick) can be bumped:

https://codereview.qt-project.org/#/c/220052/