19 Commits

Author SHA1 Message Date
Charles Kerr
d177f9f903 test: add unit tests for Prefs (#8112)
* fix: hicpp-use-auto,modernize-use-auto

* refactor: make Prefs::getKey() a static method

refactor: make Prefs::isCore() a static method

refactor: make Prefs::type() a static method

* refactor: Application takes a Prefs& arg, not a std::unique_ptr<Prefs> arg

* fix: bugprone-exception-escape

save settings by calling prefs.save() from main()

* refactor: load settings by calling prefs.load() from main()

* refactor: use preferred declaration order in Prefs

* fixup! fix: bugprone-exception-escape

* refactor: add Prefs::current_values()

* refactor: clean up namespace use in Prefs.cc

* feat: add QString, QDateTime serializers

* test: add scaffolding for testing Qt code

test: add tests for Prefs

* refactor: remove unused #includes

* build: add clang-tidy rules to tests/qt/

* refactor: clean up the new test code a little

* chore: add missing copyright statement

* ci: ensure Qt6Test is installed

build: check for QTest when ENABLE_TESTS + ENABLE_QT are ON

* fixup! feat: add QString, QDateTime serializers

* fix: Wswitch warning

* build: do not disable tests in release/windows/build-qt5.psl, build-qt6.psl

* ci: set QT_QPA_PLATFORM for running new Qt tests

* test: build cleanly in Qt 5.15

* fixup! fixup! feat: add QString, QDateTime serializers

fix QDateTime serializer on macOS

* fixup! ci: set QT_QPA_PLATFORM for running new Qt tests

install xcb-util-cursor on alpine
2026-01-11 19:23:00 -06:00
namoen0301
398fe70b02 GHA CI: Add support for Windows arm64 (#7758) 2025-12-31 06:25:27 +00:00
Mike Gelfand
887473cade Fix missing Qt client icons on Windows (#7931)
* Enable FreeType and Harfbuzz for Windows release builds

This fixes icon font glyphs rendering in Qt client.

* Bump Qt to 6.10.1

* Use pixel sizes for icon font glyphs rendering on Windows

The glyphs otherwise turn out of a smaller, non-standard size which
makes them less crisp.
2025-12-14 20:39:02 +00:00
Mike Gelfand
2b4803a023 Bump Windows dependencies (#7755) 2025-11-01 18:59:13 +00:00
Mike Gelfand
c21ee87eea Add CI configuration for clang-tidy on Windows (#6997)
* Add CI configuration for clang-tidy on Windows

* Fix issues reported by clang-tidy on Windows

* Workaround clang-tidy defects on Windows

* Fix C-style casts (which clang-tidy didn't report)
2024-07-16 22:13:29 +01:00
Mike Gelfand
52d1c1f34b Support CMake 3.28+ in CI jobs on Windows (#6668)
* Support building Qt using CMake 3.28+

CMake 3.28 dropped support for deriving installation prefix(es) based on
PATH environment variable on Windows. Since all the other built packages
already pass necessary prefix path(s) explicitly via CMAKE_PREFIX_PATH
and it works for them, do the same for Qt 6 as well. Building Qt 5 isn't
affected as it doesn't use CMake.

* Fix environment variable name in `windows` build job

Using wrong name resulted in empty `CMAKE_PREFIX_PATH` CMake setting
value, which showed the effects of CMake 3.28 changes yet again.
2024-03-05 02:53:59 +00:00
Charles Kerr
50dca24f50 refactor: aggregate crypto handles when computing digests (#6662)
* refactor: aggregate per-crypto-pkg fields instead of using inheritance
2024-03-04 16:59:51 -06:00
Mike Gelfand
c0ee65578c Bump 3rd-party deps versions used on Windows (#6192) 2023-11-01 15:09:45 +03:00
Mike Gelfand
dcd7501211 Build additional packages for Qt 5 on Appveyor (#4855)
Bring back old configuration that was using Qt 5 and split Qt build in
two to support both Qt 5 and Qt 6. Last Qt 5 builds were using 5.14.2,
bump that to latest 5.15.8.

Qt 6 only supports Windows 10+, so adjust the system version check
accordingly. Not bumping Qt 6 version (although 6.4.2 is available)
while we're still in patch release mode.

Building a whole new package is not nice since Qt client is only one
part of it, the rest doesn't require newer OS version. Nevertheless,
it's a quick and easy fix.
2023-02-12 22:12:09 +00:00
Mike Gelfand
b8e7b15804 Speed up Appveyor builds with ccache (#4823) 2023-02-11 13:56:08 +00:00
Mike Gelfand
b2343082b4 Add Windows configuration to GHA sanity builds (#4200) 2022-11-26 16:14:37 +00:00
Mike Gelfand
d5cc43355c Bump deps versions used for Windows release builds (#4092) 2022-11-04 18:38:28 +00:00
Mike Gelfand
89b0362bf2 Include SVG support in Windows builds 2021-12-07 08:39:12 +00:00
Mike Gelfand
de7b7a284c Only pack PDBs on master and tags to reduce AppVeyor artifacts size 2021-10-17 14:04:18 +03:00
Mike Gelfand
08996ab4c7 Don't pack PDBs on feature branches to reduce AppVeyor artifacts size (#1972) 2021-10-17 02:23:48 +03:00
Mike Gelfand
c8d0c8db2e Switch from zip to 7z for PDBs archive on AppVeyor
This reduces its size by more than 1.5 times.
2021-10-05 20:33:09 +03:00
Charles Kerr
7026c91797 Appveyor CI is failing due to a 302 redirect. (#1697)
This PR changes the download URL to the new location.

Example of CI failure:
https://ci.appveyor.com/project/transmissionbt/transmission/builds/39088944/job/wy2w6jn6y8cgkjlv#L349
2021-05-18 09:41:17 -05:00
Mike Gelfand
9bc05f3989 Specify correct required PS version (6+ due to Join-Path syntax) 2020-10-13 21:16:18 +03:00
Mike Gelfand
01368932b0 Add AppVeyor configuration for Windows release builds 2020-05-05 13:56:48 +03:00