ucam-department-of-psychiatry / camcops

Cambridge Cognitive and Psychiatric Test Kit (CamCOPS)
Other
12 stars 8 forks source link

Update client to Qt6.5 #302

Closed martinburchell closed 6 months ago

martinburchell commented 1 year ago

Qt version is now 6.5.3. The 6.5 branch is now commercial-only so we might need to move to 6.6 (not LTS) for further fixes, or wait a year for later 6.5 releases to be made open source.

Most of the C++ code changes relate to QMetaType and QVariant in line with https://www.qt.io/blog/whats-new-in-qmetatype-qvariant QMetaTypes are now created with:

QMetaType newWay = QMetaType::fromType<MyType>();

Some methods rewritten to pass constructed QMetaTypes as arguments rather than QVariant::Type.

Qt now builds with FFmpeg for multimedia on all platforms except iOS (reflecting official Qt releases). The photo question (QuPhoto class) reverts to the QCamera method (C++ implementation) because of multiple issues with the QML method. See https://github.com/ucam-department-of-psychiatry/camcops/blob/qt6.5/tablet_qt/widgets/cameraqcamera.h . MacOS now needs permission for using the camera.

There are a few other API changes, mostly related to multimedia and layout margins.

We no longer seed the random number generator. qrand() and qsrand() have gone. QUuid now uses QRandomGenerator::system() and we can't seed that. In fact this has been the case since Qt5.10.

OpenSSL version is now 3.0.12. 1.1.1x has reached end-of-life. SQL Cipher version is now 4.5.5. Eigen version is now 3.4.0.

Fixes #173, #310, #315, #298

RudolfCardinal commented 6 months ago

Automatic C++ tests failing, though (I don't think I touched those!). I'm guessing tests/auto/db/field/testfield.cpp needs to #include "......./lib/version.h" so I've tried that. Now it passes though I can't see testfield.cpp in the output! Is it running, do you think? I'm not sure of the standard process for running the tests locally, though.

martinburchell commented 6 months ago

One other question: I'm getting some pixellation of icons (e.g. top right of main screen/questionnaires), which doesn't seem to be in the source PNG files. I've tried overriding physical DPI or not though (not surprisingly) that had no effect (in retrospect I think only for the sliders). Have you seen that, Martin?

No, do you have a screenshot?