Commit Graph

76 Commits

Author SHA1 Message Date
Cœur d9d87eddd8
Bumping MACOSX_DEPLOYMENT_TARGET to 11.0 (#6911)
* Bumping MACOSX_DEPLOYMENT_TARGET to 11.0

* removing obsolete code and resources

* Add a build action for Transmission.xcodeproj

* removing obsolete code
2024-08-22 15:07:17 -05: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
Yat Ho 1f10c50979
ci: bump `clang-tidy` from 14 to 18 (#6923)
* ci: bump `clang-tidy` from 14 to 18

`clang-tidy-14` has been crashing when being run on `peer-mgr.cc` since 96de1706af.

According to https://github.com/llvm/llvm-project/issues/95631, upgrading to `clang-tidy-18` fixes this.

* chore: workaround clang-tidy false positives

* fix: limit nolint comment scope

* code review: try avoiding false positive without nolint
2024-06-15 21:06:37 +01:00
Dzmitry Neviadomski b565e076a9
chore: update older macos build verification workflow to macos-12 (#6883)
* chore: update older macos build verification workflow to macos-12

Manually set Xcode to the version was used in macos-11 runner.

See:
https://github.com/actions/runner-images/blob/main/images/macos/macos-12-Readme.md#xcode
https://github.com/actions/runner-images/blob/main/images/macos/macos-11-Readme.md#xcode

* chore: re-enable macos-12 build verification action

* chore: disable gtk and qt clients explicitly with macos build verification

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-06-03 21:47:51 +01:00
Charles Kerr c465575dab
build: temporarily disable macos-11 sanity checks (#6858)
re-enable when brew is fixed
2024-05-25 15:59:52 -05:00
Cœur 1be53ac139
removing temporary workaround for sanitizer crashes (#6802) 2024-05-24 10:16:46 -05:00
Cœur ded869974c
ci: support macos-14 universal builds (#6626)
* support macos-14 universal builds

* Apply suggestions from code review

Co-authored-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* add the arch to the job's name

* revert support macos-14 universal builds

---------

Co-authored-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-03-31 16:31:30 -05:00
Cœur 764f2ad85a
ci: re-enable ubuntu tests (#6715)
* re-enabling ubuntu tests

* official GitHub workaround
2024-03-31 15:32:58 -05:00
Cœur 2917374159
add macos-11 to actions.yml (#6617) 2024-03-25 20:46:11 -05:00
Yat Ho 0c466b4137
ci: trigger CI when changing CI definitions (#6688)
* fix: build tests for `ubuntu-20-04-from-tarball`

* fix: build tests for `macos-12`

* feat: build apps when `actions.yml` changed

* Revert "fix: build tests for `ubuntu-20-04-from-tarball`"

This reverts commit 2925e9fa72.
2024-03-16 13:17:31 -05:00
Cœur 6a9727efc7
build: run sanitizer-tests on macOS in CI 2024-03-15 17:18:27 -05:00
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
Mike Gelfand 1de6e93fec
Bump CodeQL to v3 (v2 is to be deprecated) (#6521) 2024-01-12 14:00:10 +00:00
Charles Kerr b9d1b33939
build: use esbuild to bundle the web app (#6280) 2023-11-27 19:23:40 -06:00
Charles Kerr 036725df42
refactor: prefer css vars over sass (#6287)
* chore: prefer calc() over sass math module

* chore: remove unused mixins

* refactor: use css variables for symbolic color names

* refactor: use range syntax for media queries

* refactor: use css variables for symbolic dimensions, units

* refactor: use css variables for symbolic url names

* refactor: use css variables for mime icon urls

* fixup! refactor: use css variables for symbolic dimensions, units

* refactor: replace mime-icon mixin with css variables

* ci: run apt-update before apt-install
2023-11-24 11:01:00 -06:00
Julien 69ab6a07de
chore: automated copyright update with GitHub Actions (#6195) 2023-11-10 14:24:16 -06: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
Dzmitry Neviadomski d273e0f90e
chore: fix warnings in CodeQL workflow (#6106)
- Use separate init config for JavaScript.
 - Update checkout action to v3 for node16 support.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2023-10-14 21:05:30 -05: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
Gary Elshaw 13ae244eed
docs: warn users about bannable actions in the issue template (#5059) 2023-02-26 21:42:53 -06: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
Berbe 065facc07c
fix: Prevent lengthy compilation workflows to run needlessly (#4804) 2023-02-10 18:51:37 -06:00
Mike Gelfand 44546674d9
Include libb64 and libutp as subprojects (#4762)
* Include libb64 and libutp as subprojects

* Build 3rd-party subprojects before CodeQL analysis
2023-02-09 19:12:25 +00:00
Charles Kerr 23bb8fa32e
fix: detect NPM version for ENABLE_WEB in cmake (#4669) 2023-01-25 22:17:24 -06:00
Charles Kerr f24368efb7
build: add webapp github actions (#4658) 2023-01-25 13:22:11 -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