Qt contributors summit 2018 Program: Difference between revisions
(Add Intents discussion) |
Arnaud Clere (talk | contribs) (Added page on QDebug session) |
||
(63 intermediate revisions by 20 users not shown) | |||
Line 9: | Line 9: | ||
{| class="wikitable" | {| class="wikitable" | ||
! Time | ! Time | ||
! Room | ! Room A2 - 075 | ||
! Room | ! Room A2 - 070 | ||
! Room | ! Room A2 - 010 | ||
|- | |- | ||
! 9:00 - 10: | !9:00 - 9:20 | ||
!Introduction and sponsors | |||
! | |||
! | |||
|- | |||
! 9:20 - 10:45 | |||
| Keynote: Path towards Qt 6 | | Keynote: Path towards Qt 6 | ||
| colspan="2" | <hr> | | colspan="2" | <hr> | ||
|- | |- | ||
! | ! 11:00 - 11:50 | ||
| | | Qt 3D Studio | ||
| | | [[QtCS2018 Serialisation|Serialisation (JSON, CBOR, QDataStream)]] | ||
| | | [[QtCS 2018 Code Repository Management|Code/Repository management (Not Qt's source tree, blog related code, etc)]] | ||
| | |||
| Qt | |||
|- | |- | ||
! 12:00 - 13:00 | ! 12:00 - 13:00 | ||
| colspan="3" style="text-align:center;" | Lunch | | colspan="3" style="text-align:center;" | Lunch | ||
|- | |- | ||
! 13:00 - | ! 13:00 - 13:50 | ||
| Plenary session: Graphics vision 2020 | | [[QtCS2018 Graphics Vision 2020|Plenary session: Graphics vision 2020]] | ||
| colspan="2" |<hr /> | | colspan="2" |<hr /> | ||
|- | |- | ||
! 14:00 - | ! 14:00 - 14:50 | ||
| Qt Widgets | | [[QtCS2018 QtWidgets|Qt Widgets]] | ||
| [[Qt contributors summit 2018 Program#Dates.2C Times.2C Zones and Calendars|Dates, Times, Zones and Calendars]] | | [[Qt contributors summit 2018 Program#Dates.2C Times.2C Zones and Calendars|Dates, Times, Zones and Calendars]] | ||
| | |Free | ||
|- | |||
! | |||
! colspan="3" |Coffee | |||
|- | |- | ||
! 15:00 - | ! 15:00 - 15:50 | ||
| Qt Quick (and qml and controls) | | [[QtCS2018 QtQuick|Qt Quick (and qml and controls)]] | ||
| | | [[QtCS2018 Third-Party Sources Policy and Security|Third-party sources policy and security]] | ||
| | |[[Qt3D use cases in automotive and the problems with it]] | ||
|- | |- | ||
! 16:00 - 17:00 | ! 16:00 - 17:00 | ||
| Plenary session: | | [[QtCS2018 Qt 6|Plenary session: Qt 6 development process and desired changes]] | ||
| colspan="2" | <hr> | | colspan="2" | <hr> | ||
|} | |} | ||
=== Evening meet === | |||
Starting after 18:00 | |||
The Shamrock Pub at Schleppegrellsgate 32, 0556 Oslo | |||
* On google maps: https://goo.gl/maps/fNtgT5iG9jQ2 | |||
* Walking about 30 minutes, or bus 30 from the side of the BI building to Dælenenga stop, about 10 minutes ride time. | |||
* No food served, you can get something there or on the way. | |||
=== Day 2 === | === Day 2 === | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |||
! Time | ! Time | ||
! Room | ! Room A2 - 075 | ||
! Room | ! Room A2 - 070 | ||
! Room | ! Room A2 - 010 | ||
|- | |- | ||
! 9:00 - | ! 9:00 - 9:50 | ||
| Plenary session: Leveraging C++17 | | Plenary session: Leveraging C++17 | ||
| colspan="2" | <hr> | | colspan="2" | <hr> | ||
|- | |- | ||
! 10:00 - | ! 10:00 - 10:50 | ||
| Code Review Tool and Workflow | | Code Review Tool and Workflow | ||
| | | Improving SW testing | ||
| | |[[QtCS2018 RemoteObjects|Qt Remote Objects]] | ||
|- | |- | ||
! 11:00 - | ! 11:00 - 11:50 | ||
| CI status and ruminations about flaky tests | | CI status and ruminations about flaky tests | ||
| BOF Clang tooling and code model | | BOF Clang tooling and code model | ||
Line 72: | Line 84: | ||
|- | |- | ||
! 12:00 - 13:00 | ! 12:00 - 13:00 | ||
| colspan="3" style="text-align:center;" | Lunch | | colspan="3" style="text-align:center;" | '''Lunch''' | ||
|- | |||
! 13:00 - 13:50 | |||
| [[QtCS2018 Nurturing the Qt community|Nurturing the Qt community]] | |||
|[[Refactoring QPA. Support multiple QPA plugins]] | |||
|[[QtCS2018 Text in Qt|Text in Qt]] | |||
|- | |- | ||
! | ! 14:00 - 14:50 | ||
| | | [[QtCS2018 Pointer Handlers|Pointer Handlers Update]] | ||
| | | [[QDebug and other tracing facilities|QDebug <s>vs</s> <u>and</u> other tracing facilities]] | ||
| Documentation with Clang-QDoc | |||
|- | |- | ||
! | ! | ||
| | ! colspan="3" |Coffee | ||
|- | |- | ||
! 15:00 - 15: | ! 15:00 - 15:25 | ||
| A | | A peek at the Qbs port of Qt | ||
| [http://pyside.org Qt for Python] | | [http://pyside.org Qt for Python] | ||
| Intents for embedded Linux | | Intents for embedded Linux | ||
|- | |- | ||
! 15: | !15:25 - 15:50 | ||
| | | '''Free''' | ||
| Jira/bugreports | | Jira/bugreports | ||
| | | Qt + unique_ptr | ||
|- | |- | ||
! 16:00 - 17:00 | ! 16:00 - 17:00 | ||
| Final session: Conclusions | | [[QtCS2018 Conclusions|Final session: Conclusions]] | ||
| colspan="2" | <hr> | | colspan="2" | <hr> | ||
|} | |} | ||
Line 107: | Line 123: | ||
=== Plenary: Graphics Vision 2020 === | === Plenary: Graphics Vision 2020 === | ||
'' | ''Laszlo/Andy + various people'' | ||
Towards a unified 2D-3D world. Let's discuss the direction for Qt Quick, the scenegraph, Qt 3D Studio with Qt 3D underneath, and the related tools like Qt 3D Studio and Qt Design Studio. | Towards a unified 2D-3D world. Let's discuss the direction for Qt Quick, the scenegraph, Qt 3D Studio with Qt 3D underneath, and the related tools like Qt 3D Studio and Qt Design Studio. | ||
=== Plenary: | See [[QtGraphics2020]] and [[QtCS2018 Graphics Vision 2020|session notes]]. | ||
=== Plenary: Qt 6 development process and desired changes === | |||
''Lars Knoll'' | ''Lars Knoll'' | ||
Summarizing the findings during the first day and previously identified needs for larger changes in various Qt modules. | Discussion about different alternatives for development process of Qt 6 features (branches etc). Summarizing the findings during the first day and previously identified needs for larger changes in various Qt modules. | ||
=== Plenary: Leveraging C++17 === | === Plenary: Leveraging C++17 === | ||
Line 120: | Line 137: | ||
Discussion on how we could and should leverage capabilities of C++14 and C++17 in Qt framework - considering possibility of setting C++17 as the minimum compiler requirement for Qt 6. Look into areas where we can provide interoperability between Qt types and C++ standards types (especially as we can have a binary break with a major version of Qt). Identifying possible items to help improving performance (e.g. allocators), adding functionality and reducing maintenance load. What about upcoming C++20? | Discussion on how we could and should leverage capabilities of C++14 and C++17 in Qt framework - considering possibility of setting C++17 as the minimum compiler requirement for Qt 6. Look into areas where we can provide interoperability between Qt types and C++ standards types (especially as we can have a binary break with a major version of Qt). Identifying possible items to help improving performance (e.g. allocators), adding functionality and reducing maintenance load. What about upcoming C++20? | ||
=== Final session: Conclusions === | === Final session: Conclusions === | ||
Line 128: | Line 143: | ||
Summarizing the findings during the summit. | Summarizing the findings during the summit. | ||
=== Qt 3D Studio | [[QtCS2018 Conclusions|Session notes]]. | ||
'' | |||
=== Qt 3D Studio (application, runtime, APIs) === | |||
''László Agócs, Andy Nichols, Pasi Keränen, Soili Väinämö, Sami Makkonen, Ilya Gluschenko'' | |||
Let's discuss the present and future of the Qt 3D Studio application. | |||
Let's take a look at what ships in Qt 3D Studio 2.0 when it comes to C++ and QML APIs, and how these - and the underlying engine - will evolve in H2/2018 and beyond. Also serves as an intro to the Graphics Vision session that follows afterwards. | Let's take a look at what ships in Qt 3D Studio 2.0 when it comes to C++ and QML APIs, and how these - and the underlying engine - will evolve in H2/2018 and beyond. Also serves as an intro to the Graphics Vision session that follows afterwards. | ||
Additional topics: | |||
* Out of the box PBR support | * Out of the box PBR support | ||
* Improving custom materials "user-experience" | * Improving custom materials "user-experience" | ||
* Improving UI usability | * Improving UI usability | ||
=== Qt + unique_ptr === | |||
''Daniel Teske'' | |||
Qt's ownership model is based on the capabilities of C++98, since C++11, standard C++ contains a standard way to transfer ownership. Recently I've investigated how Qt could adopt unique_ptr in its apis. | |||
=== Qt Remote Objects === | |||
''Brett Stottlemyer'' | |||
Discuss the current status of Qt Remote Objects (QtRO) and bringing it out of Tech Preview status for 5.12. Most of the changes needed are internal to QtRO, but there are also opportunities to improve it that would require changes to other modules, and it would be great to see what interest there is in these efforts. | |||
[[QtCS2018 RemoteObjects|Session notes.]] | |||
=== Serialisation (JSON, CBOR, QDataStream) === | |||
''Thiago Macieira'' | |||
Let's discuss what we want of Qt serialisation in Qt 5.12+: | |||
* QJsonDocument support for content larger than 128 MB | |||
* Deprecating binary QJsonDocument | |||
* Expanding Qt supported types in CBOR | |||
* Modernisation of QDataStream, possibly using CBOR | |||
* Any other protocols we should consider, like CapnProto or Protobuf | |||
[[QtCS2018 Serialisation|Session notes.]] | |||
=== CI status and ruminations about flaky tests === | === CI status and ruminations about flaky tests === | ||
''Ville Voutilainen'' | ''Ville Voutilainen'' | ||
Line 152: | Line 195: | ||
=== Dates, Times, Zones and Calendars === | === Dates, Times, Zones and Calendars === | ||
''Edward Welbourne'' | ''Edward Welbourne'' | ||
[[QtCS2018 Date Time|Session notes]] | |||
C++20 is slated to build, on std::'s <chrono>, a coherent (and well-designed) [https://howardhinnant.github.io/date/d0355r7.html date/time system] that does time-zones well and supports a way of doing calendars. | C++20 is slated to build, on std::'s <chrono>, a coherent (and well-designed) [https://howardhinnant.github.io/date/d0355r7.html date/time system] that does time-zones well and supports a way of doing calendars. | ||
Line 158: | Line 203: | ||
* What should we do for Qt6 to prepare the way for that future transition ? | * What should we do for Qt6 to prepare the way for that future transition ? | ||
=== Qt for WebAssembly === | === Third party sources policy and security === | ||
''Thiago Macieira'' | |||
Qt ships quite a few bundled sources for third-party code, which require constant maintenance and attention. Many of those are also subject to security attacks and have CVEs reported to them on several times a year. This session intends to discuss the Qt Project's policy going forward on accepting new third-party sources, the required actions for the maintainer of those sources and configure system. We should also discuss when to re-issue binary releases of Qt and Qt Creator when security issues are found. | |||
[[QtCS2018 Third-Party Sources Policy and Security|Session notes]]. | |||
=== <s>Qt for WebAssembly</s> === | |||
''Morten Sørvig'' | ''Morten Sørvig'' | ||
The Qt for WebAssembly platform port is currently in Tech Preview and is scheduled for inclusion in Qt 5.12. In this session we'll discuss what the Qt support for this platform should look like. | The Qt for WebAssembly platform port is currently in Tech Preview and is scheduled for inclusion in Qt 5.12. In this session we'll discuss what the Qt support for this platform should look like. ''(Cancelled due to illness)'' | ||
=== Qt Widgets === | === Qt Widgets === | ||
Line 168: | Line 220: | ||
What is new with Qt Widgets, where do we need updates and development, are the styles up to date? | What is new with Qt Widgets, where do we need updates and development, are the styles up to date? | ||
Whither QStyleSheetStyle in Qt 6? | Whither QStyleSheetStyle in Qt 6? (See [https://bugreports.qt.io/browse/QTBUG-68671 QTBUG-68671] for a discussion starter) | ||
=== Qt Quick === | === Qt Quick === | ||
Line 183: | Line 235: | ||
* Implement missing functionality | * Implement missing functionality | ||
* Drag & Drop | * Drag & Drop | ||
=== Documentation with Clang-QDoc === | |||
''Topi Reiniö, others'' | |||
Since Qt 5.11, the documentation generation tool (QDoc) uses libclang to parse C++ source. In this session we'll | |||
discuss what this means for creating Qt module docs, what are the current challenges and how to best improve the | |||
tool going forward. | |||
=== Code Review Tool and Workflow === | === Code Review Tool and Workflow === | ||
Line 189: | Line 250: | ||
We have been wanting to update Gerrit, but progress seems slow. Let's discuss our workflow and consider the pros and cons of other tools. | We have been wanting to update Gerrit, but progress seems slow. Let's discuss our workflow and consider the pros and cons of other tools. | ||
=== Qt3D use cases in automotive and the problems with it === | === [[Qt3D use cases in automotive and the problems with it]] === | ||
''Vladimir Minenko'', ''Ilya Gluschenko'', ''Nikita Krupitska'', ''Volker Krause'', others | ''Vladimir Minenko'', ''Ilya Gluschenko'', ''Nikita Krupitska'', ''Volker Krause'', others | ||
Line 207: | Line 268: | ||
''Johan Helsing'' | ''Johan Helsing'' | ||
Let's discuss the future of Qt Wayland. Important topics: deprecation of old shells, client-side APIs, window decorations, important bugs, pain points with the current compositor API. | Let's discuss the future of Qt Wayland. Important topics: deprecation of old shells, client-side APIs, window decorations, important bugs, pain points with the current compositor API. [[QtCS 2018: Wayland topics|More details]] | ||
=== Intents for embedded Linux === | === Intents for embedded Linux === | ||
Line 213: | Line 274: | ||
Large, extendable multi-process projects on embedded Linux are lacking an IPC mechanism to loosely couple apps, especially on the input side (mostly touch and voice). Let's discuss what Qt could provide to the developers to prevent re-inventing the wheel for each project. | Large, extendable multi-process projects on embedded Linux are lacking an IPC mechanism to loosely couple apps, especially on the input side (mostly touch and voice). Let's discuss what Qt could provide to the developers to prevent re-inventing the wheel for each project. | ||
=== A peek at the Qbs port of Qt === | |||
''Kai Köhne'' | |||
We're working on porting the build system of Qt to qbs since a while. I'd like to share the current state & how to try things out. | |||
=== QDebug vs other tracing facilities === | |||
''Arnaud Clère'' | |||
QDebug tracepoints are very convenient to troubleshoot code but less adequate for systematic tracing: | |||
* they are too slow to use permanently in performance-critical code | |||
* extracting data from their messages is tedious | |||
I will show of benchmark of QDebug vs High-perf tracing (LTTng, Win ETL) vs our structured tracing library ([https://gricad-gitlab.univ-grenoble-alpes.fr/modmed/modmedLog MODMED]) as a starting point to discuss what could be done to improve Qt in that area | |||
=== Code/Repository management (Not Qt's source tree, blog related code, etc) === | |||
''Kai Köhne / Samuel Gaist'' | |||
During this session, we'll talk about code and repositories management. What would be the best way to organise this when dealing, for example, with code related to a blog post that is using Qt or could benefit Qt but doesn't enter in any module ? | |||
[[QtCS 2018 Code Repository Management|Session notes.]] | |||
=== Nurturing the Qt Community === | |||
''Kai Köhne / Samuel Gaist'' | |||
It feels the number of Qt contributors stagnates. Forums etc are active, but we don't succeed in getting new contributors to the project itself. Let's discuss what we can do about this. | |||
[[QtCS2018 Nurturing the Qt community|Session notes]]. | |||
=== [[Refactoring QPA. Support multiple QPA plugins]]. === | |||
''Mikhail Svetkin'' | |||
Let's discus how we can improve our QPA plugins and allow our customers to do screen mirroring and remote control out of box. | |||
=== Text in Qt === | |||
''Eskil Abrahamsen Blomfeldt'' | |||
What are the challenges for getting good performance out of text? | |||
What exists for text in Qt right now, what should we add in the future and what should we drop. | |||
[[QtCS2018 Text in Qt|Session notes]]. | |||
=== Improving SW testing === | |||
''Asmo Saarela'' | |||
Effectiveness: What improvements should be made in testing area to make Qt even better (fewer bugs and better testing coverage). | |||
Efficiency: How to reduce manual regression testing. |
Latest revision as of 09:51, 15 June 2018
Back to Qt contributors summit 2018
Table of topics
Please add a longer session description with topic owner in the lower part of the page!
Day 1
Time | Room A2 - 075 | Room A2 - 070 | Room A2 - 010 |
---|---|---|---|
9:00 - 9:20 | Introduction and sponsors | ||
9:20 - 10:45 | Keynote: Path towards Qt 6 | ||
11:00 - 11:50 | Qt 3D Studio | Serialisation (JSON, CBOR, QDataStream) | Code/Repository management (Not Qt's source tree, blog related code, etc) |
12:00 - 13:00 | Lunch | ||
13:00 - 13:50 | Plenary session: Graphics vision 2020 | ||
14:00 - 14:50 | Qt Widgets | Dates, Times, Zones and Calendars | Free |
Coffee | |||
15:00 - 15:50 | Qt Quick (and qml and controls) | Third-party sources policy and security | Qt3D use cases in automotive and the problems with it |
16:00 - 17:00 | Plenary session: Qt 6 development process and desired changes |
Evening meet
Starting after 18:00
The Shamrock Pub at Schleppegrellsgate 32, 0556 Oslo
- On google maps: https://goo.gl/maps/fNtgT5iG9jQ2
- Walking about 30 minutes, or bus 30 from the side of the BI building to Dælenenga stop, about 10 minutes ride time.
- No food served, you can get something there or on the way.
Day 2
Time | Room A2 - 075 | Room A2 - 070 | Room A2 - 010 |
---|---|---|---|
9:00 - 9:50 | Plenary session: Leveraging C++17 | ||
10:00 - 10:50 | Code Review Tool and Workflow | Improving SW testing | Qt Remote Objects |
11:00 - 11:50 | CI status and ruminations about flaky tests | BOF Clang tooling and code model | Qt Wayland future directions |
12:00 - 13:00 | Lunch | ||
13:00 - 13:50 | Nurturing the Qt community | Refactoring QPA. Support multiple QPA plugins | Text in Qt |
14:00 - 14:50 | Pointer Handlers Update | QDebug |
Documentation with Clang-QDoc |
Coffee | |||
15:00 - 15:25 | A peek at the Qbs port of Qt | Qt for Python | Intents for embedded Linux |
15:25 - 15:50 | Free | Jira/bugreports | Qt + unique_ptr |
16:00 - 17:00 | Final session: Conclusions |
Session descriptions
Please give a quick over-view and say who'll be getting the discussion going.
Keynote: Path towards Qt 6
Lars Knoll
Look into the currently ongoing development items in Qt and intended timeline and practicalities for development of Qt 6.
Plenary: Graphics Vision 2020
Laszlo/Andy + various people
Towards a unified 2D-3D world. Let's discuss the direction for Qt Quick, the scenegraph, Qt 3D Studio with Qt 3D underneath, and the related tools like Qt 3D Studio and Qt Design Studio.
See QtGraphics2020 and session notes.
Plenary: Qt 6 development process and desired changes
Lars Knoll
Discussion about different alternatives for development process of Qt 6 features (branches etc). Summarizing the findings during the first day and previously identified needs for larger changes in various Qt modules.
Plenary: Leveraging C++17
Ville Voutilainen
Discussion on how we could and should leverage capabilities of C++14 and C++17 in Qt framework - considering possibility of setting C++17 as the minimum compiler requirement for Qt 6. Look into areas where we can provide interoperability between Qt types and C++ standards types (especially as we can have a binary break with a major version of Qt). Identifying possible items to help improving performance (e.g. allocators), adding functionality and reducing maintenance load. What about upcoming C++20?
Final session: Conclusions
Lars Knoll, Tuukka Turunen
Summarizing the findings during the summit.
Qt 3D Studio (application, runtime, APIs)
László Agócs, Andy Nichols, Pasi Keränen, Soili Väinämö, Sami Makkonen, Ilya Gluschenko
Let's discuss the present and future of the Qt 3D Studio application.
Let's take a look at what ships in Qt 3D Studio 2.0 when it comes to C++ and QML APIs, and how these - and the underlying engine - will evolve in H2/2018 and beyond. Also serves as an intro to the Graphics Vision session that follows afterwards.
Additional topics:
- Out of the box PBR support
- Improving custom materials "user-experience"
- Improving UI usability
Qt + unique_ptr
Daniel Teske
Qt's ownership model is based on the capabilities of C++98, since C++11, standard C++ contains a standard way to transfer ownership. Recently I've investigated how Qt could adopt unique_ptr in its apis.
Qt Remote Objects
Brett Stottlemyer
Discuss the current status of Qt Remote Objects (QtRO) and bringing it out of Tech Preview status for 5.12. Most of the changes needed are internal to QtRO, but there are also opportunities to improve it that would require changes to other modules, and it would be great to see what interest there is in these efforts.
Serialisation (JSON, CBOR, QDataStream)
Thiago Macieira
Let's discuss what we want of Qt serialisation in Qt 5.12+:
- QJsonDocument support for content larger than 128 MB
- Deprecating binary QJsonDocument
- Expanding Qt supported types in CBOR
- Modernisation of QDataStream, possibly using CBOR
- Any other protocols we should consider, like CapnProto or Protobuf
CI status and ruminations about flaky tests
Ville Voutilainen
Brief look at what the CI task force has done, with focus on flaky tests, how to find them, and what to do about them going forward.
Qt for Python
Cristián Maureira-Fredes
The technical preview of this new project is almost here, and we would like to give a brief overview of Qt for Python. We are focusing this discussion on a couple of crucial points of the current and future development aspects.
- Code generation,
- API compatibility (Qt and Python),
- Features,
- etc
Dates, Times, Zones and Calendars
Edward Welbourne
C++20 is slated to build, on std::'s <chrono>, a coherent (and well-designed) date/time system that does time-zones well and supports a way of doing calendars. We have a QAbstractCalendar contribution in the pipe-line.
- What becomes of that, QTimeZone and Q(Date|Time)+ once (most of a decade from now) Qt is able to use C++20's shiny new library features ?
- What should we do for Qt6 to prepare the way for that future transition ?
Third party sources policy and security
Thiago Macieira
Qt ships quite a few bundled sources for third-party code, which require constant maintenance and attention. Many of those are also subject to security attacks and have CVEs reported to them on several times a year. This session intends to discuss the Qt Project's policy going forward on accepting new third-party sources, the required actions for the maintainer of those sources and configure system. We should also discuss when to re-issue binary releases of Qt and Qt Creator when security issues are found.
Qt for WebAssembly
Morten Sørvig
The Qt for WebAssembly platform port is currently in Tech Preview and is scheduled for inclusion in Qt 5.12. In this session we'll discuss what the Qt support for this platform should look like. (Cancelled due to illness)
Qt Widgets
Richard Gustavsen, Frederik Gladhorn, Gabriel de Dietrich
What is new with Qt Widgets, where do we need updates and development, are the styles up to date?
Whither QStyleSheetStyle in Qt 6? (See QTBUG-68671 for a discussion starter)
Qt Quick
Frederik Gladhorn
What is the direction for QML, Qt Quick and Qt Quick Controls 2? Where do we have gaps and what is the most important goal to achieve?
Pointer Handlers Update
Shawn Rutledge
Discussion of how it has gone with the 5.10-5.11 Tech Preview and what is left to be done before transition to supported API in 5.12.
- Renaming: Gesture Handlers?
- Make sure API is sustainable
- Implement missing functionality
- Drag & Drop
Documentation with Clang-QDoc
Topi Reiniö, others
Since Qt 5.11, the documentation generation tool (QDoc) uses libclang to parse C++ source. In this session we'll
discuss what this means for creating Qt module docs, what are the current challenges and how to best improve the
tool going forward.
Code Review Tool and Workflow
Frederik Gladhorn
We have been wanting to update Gerrit, but progress seems slow. Let's discuss our workflow and consider the pros and cons of other tools.
Qt3D use cases in automotive and the problems with it
Vladimir Minenko, Ilya Gluschenko, Nikita Krupitska, Volker Krause, others
There are a few typical cases for the use 3D in the automotive projects. Most of them are about visualisation of cars, parts of interior, dials and gauges in a retro styles. Assets for those 3D models are usually developed in 3rd party tools (like Maya or Blender) or even converted from CAD data, then composited in scene manually (for now, in absence of a released version of Qt 3D Studio). These use cases expose multiple problems or a lack of features in Q3D.
BOF Clang tooling and code model
Ivan Donchevskii
ClangCodeModel is finally the default code model starting with Qt Creator 4.7. Other Clang-based tooling is also on it's way. Let's discuss what is good, what requires polishing and what are we missing.
Jira/bugreports
Alex Blasche
Quite a few changes are ongoing to streamline Jira usage. This includes things like open requirements mgmt, automatic handling of "Need more info" bugs and general project adjustments. The session should also give opportunity to bring up personal issues from the audience which may have been creeping up.
Qt Wayland Future Directions
Johan Helsing
Let's discuss the future of Qt Wayland. Important topics: deprecation of old shells, client-side APIs, window decorations, important bugs, pain points with the current compositor API. More details
Intents for embedded Linux
Vladimir Minenko, Robert Griebl, Volker Krause
Large, extendable multi-process projects on embedded Linux are lacking an IPC mechanism to loosely couple apps, especially on the input side (mostly touch and voice). Let's discuss what Qt could provide to the developers to prevent re-inventing the wheel for each project.
A peek at the Qbs port of Qt
Kai Köhne
We're working on porting the build system of Qt to qbs since a while. I'd like to share the current state & how to try things out.
QDebug vs other tracing facilities
Arnaud Clère
QDebug tracepoints are very convenient to troubleshoot code but less adequate for systematic tracing:
- they are too slow to use permanently in performance-critical code
- extracting data from their messages is tedious
I will show of benchmark of QDebug vs High-perf tracing (LTTng, Win ETL) vs our structured tracing library (MODMED) as a starting point to discuss what could be done to improve Qt in that area
Kai Köhne / Samuel Gaist
During this session, we'll talk about code and repositories management. What would be the best way to organise this when dealing, for example, with code related to a blog post that is using Qt or could benefit Qt but doesn't enter in any module ?
Nurturing the Qt Community
Kai Köhne / Samuel Gaist
It feels the number of Qt contributors stagnates. Forums etc are active, but we don't succeed in getting new contributors to the project itself. Let's discuss what we can do about this. Session notes.
Refactoring QPA. Support multiple QPA plugins.
Mikhail Svetkin
Let's discus how we can improve our QPA plugins and allow our customers to do screen mirroring and remote control out of box.
Text in Qt
Eskil Abrahamsen Blomfeldt
What are the challenges for getting good performance out of text? What exists for text in Qt right now, what should we add in the future and what should we drop.
Improving SW testing
Asmo Saarela
Effectiveness: What improvements should be made in testing area to make Qt even better (fewer bugs and better testing coverage).
Efficiency: How to reduce manual regression testing.