Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Regressions after updating to Qt 6.3.0 #1

Open
stdevCrow opened this issue May 2, 2022 · 5 comments
Open

Regressions after updating to Qt 6.3.0 #1

stdevCrow opened this issue May 2, 2022 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@stdevCrow
Copy link

stdevCrow commented May 2, 2022

The view is the following:
image_2022-05-02_14-36-11
As you can see there are many elements overlaping others.

With the release of Qt 6.3.0, major changes to the QML engine were introduced, with the most important ones being the Qt Quick Compiler (see here, here and here), which compiles QML into native C++.
However, that comes with some drawback: not everything can be compiled into C++ (details here again), and so the QML code must be adapted following some guidelines, mainly for QML type compilation.

So, although the project compiles fine with Qt 6.2 series, doing so with Qt 6.3 gives the following warnings just by opening the executable:

Binding on background is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
Binding on contentItem is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
Binding on background is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.
qrc:/ui/qml/Components/Delegates/DelegateDestinationList.qml:94:5: QML TextField: Binding loop detected for property "text"
@stdevCrow stdevCrow added the bug Something isn't working label May 2, 2022
@stdevCrow stdevCrow self-assigned this May 2, 2022
@stdevCrow
Copy link
Author

UPDATE: Also, the executable now does not close when you click the X, at least on Windows. It remains opened in the background.

@stdevCrow
Copy link
Author

After diving a little more, I found that the problem is precisely related to the new QML Type Compilation (qmltc) (see Bug Report #98439).

@stdevCrow
Copy link
Author

🚨 IMPORTANT UPDATE: As of Qt 6.3.0, the Qt 6 official documentation regarding the QMLTC says the following:

Warning: qmltc is currently in a Tech Preview stage and might not compile an arbitrary QML program (see Known Limitations for more details). When qmltc fails, nothing is generated as your application cannot sensibly use the qmltc output. If your program contains errors (or unsolvable warnings), they should be fixed to enable the compilation. The general rule is to adhere to the best practices and follow qmllint advice.

@olemis
Copy link
Collaborator

olemis commented May 2, 2022

@stdevCrow What's qmllint advice in our particular case ?

@stdevCrow
Copy link
Author

Binding on background is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id. 
Binding on contentItem is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id. 
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id. 
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id. 
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id. 
Binding on popup is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id. 
Binding on background is not deferred as requested by the DeferredPropertyNames class info because one or more of its sub-objects contain an id.

As u can see there's no indication of where the error is, but the list grows when I open more pages (and related bindings are resolved). So I'm just naming all parent objects of there's at least a child with an id explicitly set.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants