[Development] Regarding QML cache strict version compatibility

Fatih Uzunoğlu fuzun54 at outlook.com
Tue Mar 4 16:34:37 CET 2025


Hello,

According to `Unit::verifyHeader()` @ `qv4compileddata.cpp`, the version 
needs to strictly match:

```
     if (qtVersion != quint32(QT_VERSION)) {
         *errorString = QString::fromUtf8("Qt version mismatch. Found %1 
expected %2")
                                .arg(qtVersion, 0, 16).arg(QT_VERSION, 
0, 16);
         return false;
     }
```

1) Is there a particular reason that this exists, considering that there 
is already a data structure check before?

2) Can this check be limited to major and minor version checks, similar 
to MOC? (`Q_MOC_OUTPUT_REVISION` does not contain patch version)

3) If we patch this already in Qt 6.8 to consider only the major and 
minor versions, should we expect problems if we use output of different 
patch version `qmlcachegen` (such as, Qt is version 6.8.1 but 
`qmlcachegen` is version 6.8.2)?

Thanks in advance,
Fatih Uzunoğlu

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4676 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.qt-project.org/pipermail/development/attachments/20250304/f4def8e8/attachment.bin>


More information about the Development mailing list