[Releasing] [Development] Qt 5.3 Feature freeze is coming quite soon...

Knoll Lars Lars.Knoll at digia.com
Fri Jan 17 09:12:50 CET 2014

Ok, that's around 10% of Qt Network. From my side, I'm ok to simply add it there (and the QML component to qtdeclarative), but I'd like to hear an opinion from Peter and Rich.


On 17/01/14 09:07, "Kurt Pattyn" <pattyn.kurt at gmail.com<mailto:pattyn.kurt at gmail.com>> wrote:

On 17 Jan 2014, at 08:54, Knoll Lars <Lars.Knoll at digia.com<mailto:Lars.Knoll at digia.com>> wrote:

>From a feature point of view it would fit best into Qt Network. But it's a sizeable piece of code added to Qt Network. Do you have any numbers on how this changes the size of Qt Network?

The binary release library on OSX is 197 KB (against 1.5MB for the QtNetwork library). There are around 7000 lines of code, 16 header files, 13 source files (these include the QML module), 3 public C++ classes and 1 public QML component.



Peter and Rich, and comments from your side?


On 16/01/14 19:41, "Steve Gold" <steveg2357 at gmail.com<mailto:steveg2357 at gmail.com>> wrote:

I recommend that it be included in Qt 5.3 as part of the QtNetwork module.



From: Kurt Pattyn<mailto:pattyn.kurt at gmail.com>
Sent: Thursday, January 16, 2014 6:51 AM
To: development at qt-project.org<mailto:development at qt-project.org>
Cc: Heikkinen Jani<mailto:Jani.Heikkinen at digia.com> ; mailto:thiago.macieira at intel.com ; richmoore44 at gmail.com<mailto:richmoore44 at gmail.com> ; releasing at qt-project.org<mailto:releasing at qt-project.org>
Subject: Re: [Development] Qt 5.3 Feature freeze is coming quite soon...

I would like to propose the QtWebSockets module as a new feature for Qt 5.3 (seehttps://qt.gitorious.org/qtplayground/websockets/source/master)

There are a number of requests in Jira: https://bugreports.qt-project.org/issues/?jql=labels%20%3D%20websockets asking to include web socket functionality in Qt, so maybe it is a good time to include it now.
Besides that, EnginIo could make use of this module as well (currently it uses an own implementation of web sockets).

QtWebSockets is fully RFC6455 compliant (see http://tools.ietf.org/html/rfc6455) and is successfully tested against the latest Autobahn TestSuite. Performance is OK as well (test report is not included because of too big).

There is a C++ interface as well as a QML module.
The C++ API consists of the following classes:

The QML API consists of the following component:
WebSocket (included in the Qt.WebSockets 1.0 module).

I see 2 options: either add the functionality to the QtNetwork module, or add it as a Qt add-on.
Maybe adding it to QtNetwork would be a ‘natural’ place: QWebSocket would then live besides QTcpSocket, QWebSocketServer would live besides QTcpServer.

The module compiles on all reference platforms, has automated unit tests and manual unit tests (against Autobahn TestSuite), is fully documented, and has a number of examples.
The module is included in the CI system of Qt (see http://testresults.qt-project.org/ci/WebSockets_master_Integration/).

Please raise your votes.



On 16 Jan 2014, at 09:28, Heikkinen Jani <Jani.Heikkinen at digia.com<mailto:Jani.Heikkinen at digia.com>> wrote:

Hi all,

I want to remind you all that Qt 5.3 feature freeze is coming pretty soon. Feature freeze for Qt 5.3 is 14th Feb 2014 so there is only 4 weeks left for implementing new features.

Qt 5.3 schedule can be found here: http://qt-project.org/wiki/Qt-5.3-release . There is also link to the Qt 5.3 new features page (http://qt-project.org/wiki/New-Features-in-Qt-5.3). You can start collecting list of new features there…

Note: Let’s keep the feature freeze date! If your feature isn’t ready at that point let’s then move it to Qt 5.4 release instead of taking in it in Qt 5.3 and fighting with it whole release time…
This is also action point for each maintainer: Make sure your component is ready for feature freeze at that date.

Just a reminder:
In the feature freeze all new functionality must

- Compile 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, there must be clarification 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

- Follow the branching scheme. dev/stable/release should be there. A new module can be ok to only have dev, with stable being created at branching time.
- Have a CI system. New modules that are going to be part of Qt releases need to have a CI system set up

Development mailing list
Development at qt-project.org<mailto:Development at qt-project.org>

Development mailing list
Development at qt-project.org<mailto:Development at qt-project.org>
_______________________________________________ Development mailing list Development at qt-project.org<mailto:Development at qt-project.org> http://lists.qt-project.org/mailman/listinfo/development

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/releasing/attachments/20140117/93ce757e/attachment.html>

More information about the Releasing mailing list