QtCS2018 Conclusions
Notes from Summary Session
Sessions
We went to all sessions and collected conclusions and action points.
2.1 Keynote: Path towards Qt 6
2.2 Plenary: Graphics Vision 2020
See session notes.
2.3 Plenary: Qt 6 development process and desired changes
We have decided on branching scheme and development model: We'll create a "next" branch for Qt 6. Problem is that, with the current setup with different submodules and CI, it is very hard to do any bigger changes.
AP Lars: Consider how to mitigate this.
2.4 Plenary: Leveraging C++17
There doesn't seem to be that much in C++2020 that is really interesting for us. Target C++17 for Qt 6.
2.6 Qt 3D Studio (application, runtime, APIs)
2.7 Qt + unique_ptr
Yes, we are interested in using unique_ptr. To be studied more.
2.8 Remote Objects
We need to figure out all the details for making it a proper module in Qt 5.12.
2.9 Serialization
Action point for 5.12: Finding out whether we can deduplicate JSON_VALUE and CBOR_value .
2.10 CI status
Accessing CI from external: Externals can access CI machines too, just needs a bit of paper work ;)
2.11 Qt for Python
Technical Preview will be released tomorrow
2.12 Dates, Times, Zones and Calendars
We will see whether it's possible to reimplement QDateTime on top of C++20 proposal, give feedback to this. Meanwhile we will also implement a new backend for QTimeZone. QAbstractCalendar API in review, please review it!
2.13 Third Party Sources Policy
vcpackage might be our solution for providing libraries. Needs to be investigated. We should really not fork/ship any maintained external libraries anymore for Qt 6.
2.14 Qt for WebAssembly
Didn't happen
2.15 Widgets
Qt Widgets: Module is feature complete, we'll look into sharing implementation of QStyle between Qt Quick and Qt Widget
2.16 Qt Quick
2.17 Pointer Handlers Update
Will be named "Input Handlers". Some stuff needs to be still done for Qt 5.12.
2.18 clang-qdoc
It works, but is not very pretty. We should find ways to unify our different clang usage. Needs documentation ;)
2.19 Code Review Tool and Workflow
We decided that we really, really want to update gerrit to a modern version. _Then_ we can look into alternatives, if at all. Also, we should accept contributions from github (bridge).
2.20 Qt 3D use cases in automotive
We need to teach people better what Qt 3D - and what it is not. Documentation and marketing materials.
2.21 Clang tooling and code model
2.22 JIRA/bug reports
Open requirements management coming. Streamlining of existing visibility issues. Components will be renamed, platform fields added ... JIRA filters will break! Update will happen next week.
We will add scripting to JIRA infrastructure to close stale 'need more info' states etc. We'll see how it goes and whether we should also do it as 'in progress'.
We won't close bugs automatically, even if a patch with the Task-number is merged.
2.23 Qt Wayland Future Directions
We're going to deprecate old shell's. We'll change the import name in Qt 6 from "QtWayland.Compositor" to "QtWaylandCompositor". See also Session Notes.
2.24 Intents for embedded Linux
Robert presented some ideas.
2.25 A peek at the Qbs port of Qt
Work is happening in qtbase/wip2 branch. Suggestion was to also experiment with porting some leaf modules (qtspeech?). Anyway, we need a decision soon.
2.26 QDebug vs other tracing facilities
QDebug is actually not bad in terms of performance. New static tracing in 5.11 is warmly welcomed - there should be more trace points. There's a place for a structured dynamic/tracing too though.
2.27 Code/Repository management
code.qt.io should allow externals to contribute, too.
2.28 Nurturing the Qt community
We should make it easier to contribute (technical/social barriers).
2.29 Refactoring QPA, Support multiple QPA plugins
Goal is to have an application that uses multiple QPA plugins at the same time (e.g. mirroring use case). Stateless variables will be moved from QGuiApplicationPrivate to QPlatformWindowInterface. We can do this without breaking source compatibility!
2.30 Text in Qt
Discussed optimizations for text rendering.
2.31 Improving SW testing
We will establish a cross-site virtual QA team in TQtC. Backlog will be in public JIRA. Community will be involved :)
Auxiliary Stuff
We will reformat the Qt sources with clang-format. Needs to be enforced from there on. QtC should run clang-format on save. Third-Party code should be excluded.
Please move notes, presentation slides, into wiki page! Actionable items should go into JIRA!!!