- Made greater use of smart pointers, eliminating many instances of manual memory management
- Do not use pointers at all for many non-polymorphic classes
- Assorted other code cleanup
Install and validate integration with as many optional dependencies on all testing platforms when doing CI build tests.
- For windows-latest, use vcpkg to install zlib, libqrencode, and zint.
- For macos-latest, use brew to install zlib, qrencode, and zint.
- Made zint version detection more robust across platforms.
- Simplify creation of build matrix.
- Added macos-latest build
- Renamed VERSION to VERSION.txt, this was problematic on macos build
- Added placeholders for installing optional dependencies for windows and macos builds in the future.
- New baseline minimum platform is Ubuntu 22.04
- Qt6 requires at least 6.2
- some deprecations may be flagged on later versions (e.g. 6.8)
- CMake requires at least 3.22
- Include build-tests.yml github action to validate builds on mulitple platforms
- QtTest is no longer optional since it easily comes along for the ride with Qt
- Replaced QStringRef in model::SubstitutionField with simple ParserState class
- Removed deprecations up to Qt 6.2