The released aqtinstall 3.3.0 resolves Qt 6.11.3 but cannot read its Windows repository layout, so CI fails before building. Pin the Windows job to Qt 6.10.3, whose MSVC 2022 packages remain discoverable with that installer.
Update checkout, cache, artifact upload, and CPU core detection to released Node 24 action versions to remove their Node 20 deprecation warnings. Keep the existing MSVC setup action, which has no newer release.
Validation: actionlint and git diff --check passed. Verified Windows Qt 6.10.3 architecture and archive discovery with aqtinstall 3.3.0. A hosted Windows build remains to be run.
Provide a single qmake test executable with named Qt Test cases and a standard make check entry point. Cover object-history compaction, cancellation, merging, and property-key comparisons with checks that remain active in release builds, and document how to add tests.
Build and run the tests in Linux and macOS CI and add a Windows x64 job using MSVC 2022 and Qt 6. Enable pull request and manual runs alongside master pushes, preserve JUnit reports on failures, and update existing checkout and cache actions.
Validation: macOS Qt 6.10 release tests and actionlint passed. Confirmed a failing assertion produces a nonzero check result and a JUnit failure.
Closes#1050
• Replace legacy union/char* profile storage with std::variant<int,uint,float,QString,QStringList,QByteArray> and QString for section/key; remove LC_PROFILE_ENTRY_TYPE/mType.
• Update getters/setters to use std::get_if defaults; add lcProfileInit() and fix a "Settgins" typo.
• Convert color profile accessors to unsigned (lcGet/SetProfileUInt) where appropriate.
• Add LC_PROFILE_PARTS_LIST_COLOR_LOCKED and migrate PartsList color logic (preserves legacy -1 behavior).