Commit Graph

51 Commits

Author SHA1 Message Date
Mike Gelfand 991b0f0d3d
Support WiX toolset versions other than 3.11 (#6689)
Version 3.14 was recently released with security fixes, and GitHub
runners have been updated to use it. Don't hardcode the version in
Program Files directory name to support any 3.x. Since 3.x support will
be dropped within a year, need to plan migration to 5.x when it's
released (4.x isn't suitable because of missing heat replacement).
2024-03-13 16:40:41 +03: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
Cœur 04956c35b4
build: target clang-format version 17 (#6631) 2024-03-04 17:49:39 -06:00
Yat Ho 7a4677ebd2
ci: bump CI actions (#6666)
* chore: bump `peter-evans/create-pull-request`

* chore: bump `actions/checkout`

Breaking changes:
- Bump Node.js runtime to version 20

* chore: bump `actions/*-artifact`

Breaking changes: See https://github.com/actions/download-artifact/releases/tag/v4.0.0

* chore: bump `actions/cache`

Breaking changes:
- Bump Node.js runtime to version 20

* chore: bump `actions/setup-java`

Breaking changes:
- Bump Node.js runtime to version 20

* chore: bump `gradle/gradle-build-action`

Breaking changes:
- Remove the gradle-executable input parameter

* chore: trigger CI

* Revert "chore: trigger CI"

This reverts commit 9f9987f201.
2024-03-04 08:45:37 -06:00
Cœur 7f029acf6e
remove duplicate path: Transmission.xcodeproj (#6625) 2024-02-19 00:11:34 -06:00
Geoffrey Bonneville 7030b53e2e
android patches for ndk (#6024)
* android patches for ndk

* Update libtransmission/file-capacity.cc

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>

* TrMacros: Move common & android vars

* Build android in CI

* Use vcpkg packages for curl & openssl

* Update CI for android

* Fix ndkVersion used with gradle

* Restore actions triggers events

* CMakeLists: Remove cond where curl is not found

* Use vcpkg tag instead of commit hash

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>

* TrMacros.cmake: clean unused variables & add vcpkg cond

* Remove quotes around VcpkgAndroid inclusion

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>

* actions: split steps to install vcpkg packages

* Build for android arm64

* actions: add make-android condition

* Revert "Use vcpkg tag instead of commit hash"

This reverts commit 65819026b1.

* build.gradle: use cmake version 3.22.1

* actions: use vcpkg 2024.01.12

* actions: Add ninja-build dependency

---------

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2024-01-21 15:27:24 +00:00
FX Coudert 9cadcbdb86
ci: update workflow to Qt 6 on macOS (#6206)
* Remove brew lines on Linux

* Switch to Qt 6 on macOS
2023-11-04 14:17:45 -05:00
Charles Kerr 089c438512
ci: bump macos-11 to macos-12 in github actions (#6203) 2023-11-04 12:33:25 -05:00
Mike Gelfand c0ee65578c
Bump 3rd-party deps versions used on Windows (#6192) 2023-11-01 15:09:45 +03:00
Mike Gelfand 586cff9506
Switch to list view for torrents list (GTK 4) (#5858)
* Add compat operator* for RefPtr

* Rename `*_tree_view_*` button handling helpers to `*_item_view_*`

* Move torrent item colors to CSS

* Switch to list view for torrents list (GTK 4)

* Bump Fedora image to 39 (current rawhide) for GTK 4.11

Enable deprecations as there're lots of them in 4.11 and I'm not keen on
fixing them all right now. Disable warnings as errors due to
-Warray-bounds issue somewhere in libfmt.
2023-08-06 04:26:29 +01:00
tearfur ec0567e09f
fix: fix ci web cmake option (#5835) 2023-07-29 10:24:13 -05:00
Dzmitry Neviadomski dae1bb123c
fix: CI: Do not use nproc on macOS hosts. (#5833)
This is not an error, but a warning when building/running tests
with CMake/GoogleTest.
Use `sysctl -n hw.logicalcpu` to get parallelization number.

See: https://github.com/memkind/memkind/issues/33#issuecomment-540614162

No changes affecting users, so no `Notes:` here.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2023-07-29 08:21:30 -05:00
Charles Kerr ed3f6c2ec8
fixup! perf: use small::max_size_vector in tr_torrentGetMetadataPiece (#5830)
* fixup! perf: use small::max_size_vector in tr_torrentGetMetadataPiece() (#5768)

* enable tests for alpine CI

---------

Co-authored-by: tearfur <46261767+tearfur@users.noreply.github.com>
2023-07-28 09:53:10 -05:00
Charles Kerr c8e84f870b
ci: remove "brew update" step (#5606) 2023-06-11 16:28:43 -05:00
Charles Kerr 15c3298211
ci: do not install homebrew libnatpmp on macos 11 (#5461) 2023-04-26 22:10:42 -05:00
Mike Gelfand ac4a793816
Uninstall preinstalled OpenSSL on Windows GHA builder (#5376) 2023-04-12 20:55:49 +01:00
Charles Kerr 74262a65c2
ci: fix Sanity/Windows GitHub Actions (#5371) 2023-04-11 18:16:16 -05:00
Charles Kerr 58ce7bd437
fix: 4.0.2 wishlist CPU perf regression pt. 1 (#5266) 2023-03-20 21:08:16 -05:00
Charles Kerr f5a24862db
fix: FTBFS in Ubuntu 20.04 / Qt 5.13 (#5238) 2023-03-16 18:59:31 -05:00
Charles Kerr b354337720
ci: check for clang tidy errors in libtransmission (#5188) 2023-03-10 00:23:22 -06:00
Mike Gelfand 1f1e614f99
Use bundled deps for GHA build from tarball on Mac (#5126) 2023-03-03 03:30:43 +00:00
Mike Gelfand c5b1df0daa
Support in-source builds (#4955)
* Support in-source builds

Don't copy third-party directories into themselves (actually, don't copy
them at all) by switching from `URL` to `SOURCE_DIR`. Separate build,
source, and install directories for third-party libraries.

* Trigger builds on changes to cmake/

That directory contains TrMacros.cmake which influences build logic in
other places.
2023-02-19 16:10:25 +00:00
Mike Gelfand 605c6bd031
Store percents as integer, with 2 digits of precision (#4933)
* Store percents as integer, with 2 digits of precision

* Fix GHA builds for Mac (missing pkg-config)

* Fix percents formatting
2023-02-18 01:14:01 +00:00
Thomas Weißschuh 4dc836f330
tests: expose libtransmission gtests to ctest (#4731) 2023-02-11 11:27:36 -06:00
Charles Kerr 23bb8fa32e
fix: detect NPM version for ENABLE_WEB in cmake (#4669) 2023-01-25 22:17:24 -06:00
Charles Kerr 49b7478121 fixup! build: minor ci cleanup (#4652)
fix: github action oops in brew update
2023-01-24 15:52:59 -06:00
Charles Kerr b055b98d0f
build: minor ci cleanup (#4652)
* chore: show js webpack stats when building

* chore: use npm ci for code_style to avoid overwriting package-lock.json

* chore: add brew-update to macos ci

* remove webpack-dev-server from deps
2023-01-24 01:02:48 -06:00
Charles Kerr 5fe95ad5b0
fix: out-of-tree build (#4641)
- in cmake, add transmission-web build target

- in cmake, test for `npm` if we're building transmission-web

- add npm to CI install deps; build transmission-web as needed
2023-01-23 15:59:41 -06:00
Charles Kerr e3a577c2d8
chore: pin brew libpsl to 0.21.1 (#4640)
temporary workaround for Homebrew/homebrew-core/issues/121081
2023-01-23 10:38:18 -06:00
progiv 72b6ae0378
Fix GitHub CI actions warning for set-output (#4564)
Closes #4478
2023-01-08 17:49:15 -06:00
Charles Kerr cf8bd14403
test: GH Action should only try pack-msi if making dist or qt (#4563)
* test: only use pack-ms iff making dist or qt

* Update .github/workflows/actions.yml

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2023-01-08 16:34:59 -06:00
Gary Elshaw 84566d42f0
Update qt cmakelists to include support for building svg (#4437) 2022-12-27 17:18:51 +00:00
Charles Kerr bc61565af7
build: fix utils tests on win32 (#4422)
tests depend on utils, so if we unconditionally enable tests we need to do the same for utils
2022-12-20 12:27:02 -06:00
Mike Gelfand 67c4e4081c
Add `ENABLE_WERROR` option for use on CI (#4381)
Defaults to `OFF`. Downstream packagers are advised against enabling it
as we can't guarantee it working on every possible configuration.

Added the actual compile flag in the GTK client subdirectory and not
the top-level CMakeLists.txt file due to other subprojects not being
ready.

Fixed the only GTK client warning reported by Clang on Mac.
2022-12-16 22:38:30 +00:00
Mike Gelfand a937dfc897
Don't include MSVC redist MSM in Windows MSI package (#4339)
* Create Windows MSI package as part of GHA sanity build

* Don't include MSVC redist MSM in Windows MSI package

This approach is deprecated, and was probably never entirely correct to
begin with.
2022-12-09 12:30:43 +00:00
Mike Gelfand 26a8c17187
Use proper working directory (fixup #4337) 2022-12-08 22:48:35 +00:00
Mike Gelfand 32cc726e7d
Detect changes against branch off point, not origin/main (#4337) 2022-12-08 22:41:28 +00:00
Dmitry Antipov bf6c80ae35
refactor, ci: switch clang-format to LLVM 15 (#4297)
Bump required clang-format version to 15
2022-12-02 09:57:50 -06:00
Mike Gelfand 735ea201ea
Fix step id used in what-to-make outputs 2022-11-28 21:09:18 +00:00
Mike Gelfand d91b5ca674
Make "Check State" step of what-to-make job verbose for debugging 2022-11-28 21:00:34 +00:00
Mike Gelfand b2343082b4
Add Windows configuration to GHA sanity builds (#4200) 2022-11-26 16:14:37 +00:00
Mike Gelfand 9e185a17f2
Fix default/minimum `CMAKE_OSX_DEPLOYMENT_TARGET` handling (#4156)
* Fix default/minimum `CMAKE_OSX_DEPLOYMENT_TARGET` handling

* Drop explicit `CMAKE_OSX_DEPLOYMENT_TARGET` in GHA CI

Rely on minimum set in top-level CMakeLists.txt instead.
2022-11-13 12:02:07 +00:00
Mike Gelfand dd4dce36a4
Downgrade Fedora image used in GitHub Actions CI to 36 (#4070)
37 is still "rawhide" and it starts to pull in packages from 38 making
things weird.
2022-11-02 03:15:31 +00:00
Mike Gelfand b0de4b7a89
Add build job based on Fedora 37 (#3921)
This allows to test against GTK 4 and Qt 6.

Changes to CMakeLists.txt files are non-functional and are meant to
trigger the components rebuild, nothing more.
2022-10-09 12:13:02 +03:00
Charles Kerr 988d8ff9ac
test: possibly fix rename-test flakes (#3653)
* test: possibly fix rename-test flakes

* ci: add gettext-dev to alpine workflow

* ci: make utils if tests change, since transmission-show is needed

* ci: add linux-headers to alpine workflow
2022-08-16 17:47:02 -05:00
Charles Kerr 63eab54fd5
refactor: timer pt 2 (#3617)
* feat: add convenience variants of TimerMaker::create()

* refactor: use libtransmission::Timer in peer-mgr

* refactor: use libtransmission::Timer in peer-msgs

* refactor: use libtransmission::Timer in tr-utp

* refactor: use libtransmission::Timer in tr-dht

* refactor: use libtransmission::Timer in port-forwarding

* refactor: use libtransmission::Timer in webseed

* refactor: use libtransmission::Timer in tr-lpd

* refactor: use libtransmission::Timer in rpc-server

* chore: remove unused function tr_timerAdd()

* chore: remove unused function tr_gettimeofday()

* fixup! chore: remove unused function tr_timerAdd()

* fixup! refactor: use libtransmission::Timer in port-forwarding
2022-08-11 12:28:37 -05:00
Charles Kerr 0b75751de3
build: re-fix the naming of workflow triggers (#3374)
I thought I fixed this once before?
2022-06-29 00:36:42 -05:00
Charles Kerr 308ae8487a
fix: code style in macosx/AboutWindowController.mm (#3334)
* build: when code-style fails, try giving a breadcrumb to find the diff

* fix: code style in AboutWindowController.mm

* fix: typo in what-to-make
2022-06-21 12:25:16 -05:00
Charles Kerr eb36788253
build: fix sanity GitHub action (#3316)
* build: fix Sanity GitHub action

* build: CI triggers now look for xcode changes
2022-06-17 16:52:39 -05:00
Charles Kerr 0fa716742a
build: add alpine/musl to github actions sanity (#3300)
* build: add alpine/musl to github actions sanity

* build: sanity build tarball even if the only changes are in submodules
2022-06-15 10:53:50 -05:00