Commit graph

181 commits

Author SHA1 Message Date
Chocobo1
431860482c
GHA CI: specify a category for CodeQL analysis 2023-08-01 15:27:04 +08:00
xavier2k6
5b0706df65
GHA CI: Bump Qt version to 6.5.2
PR #19378.
2023-07-27 17:45:26 +03:00
Vladimir Golovnev
dbe79484d2
Drop support of Qt 5
Also remove usage of some deprecated stuff.

PR #19338.
2023-07-20 11:17:27 +03:00
Chocobo1
060466e326
GHA CI: fix environment variable not being used
Related issue: https://github.com/Wandalen/wretry.action/issues/106
A workaround was suggested in https://github.com/Wandalen/wretry.action/issues/106#issuecomment-1631860467

PR #19303.
2023-07-13 13:26:47 +08:00
Chocobo1
045b4f0a06
GHA CI: retry flaky steps automatically
PR #19270.
2023-07-03 21:19:01 +08:00
Chocobo1
6680fdda18
Fix typos 2023-06-26 16:45:44 +08:00
Chocobo1
88bd4f270f
GHA CI: add spelling check (typos) 2023-06-26 16:45:41 +08:00
Chocobo1
11ac4e7620
GHA CI: upload macOS bundles
Hopefully those bundles will be runnable on users machine.

PR #19023.
2023-05-29 12:24:12 +08:00
Chocobo1
3fb4e4d293
GHA CI: build libtorrent as a static library
Since appimage is bundling the libraries it make sense to embed libtorrent statically into qbt binary.
Another side effect is now qbt binary includes debug symbols from libtorrent too (which I consider a good thing for debugging). Previously appimage seems to (unnecessarily) strip the libtorrent debug symbols.

PR #19014.
2023-05-25 13:08:53 +08:00
xavier2k6
ba93d55a6d
GHA CI: Bump libtorrent version(s)
PR #19006.
2023-05-24 05:10:57 +03:00
Chocobo1
df895cb2a7
Improve script compatibility
Now the script is conforms to POSIX shell script which is universal on
all linux.
Also make it executable.
2023-04-24 13:31:19 +08:00
Chocobo1
3b72859980
Bump various action versions 2023-04-24 13:18:17 +08:00
Chocobo1
69df85f564
Move script into its own subfolder 2023-04-24 13:18:10 +08:00
Chocobo1
1f1da32371
Rename CI script
See: https://stackoverflow.com/questions/22268952/what-is-the-difference-between-yaml-and-yml-extension
2023-04-24 13:18:08 +08:00
xavier2k6
cddf8c199c
GHA CI: Update some dependencies
PR #18870.
2023-04-24 13:15:46 +08:00
Chocobo1
40e28930a4
GHA CI: add missing dll
Closes #18383.
PR #18792.
2023-04-02 13:30:26 +08:00
Chocobo1
6fd522472c
GHA CI: drop needless syntax
https://docs.github.com/en/actions/learn-github-actions/expressions#about-expressions
>When you use expressions in an if conditional, you may omit the
>expression syntax (${{ }}) because GitHub automatically evaluates the if conditional as an expression.
2023-03-12 14:27:10 +08:00
Chocobo1
0f32de9d8c
GHA CI: add CodeQL scanning
This enable codebase scanning for C++ and JavaScript languages.

https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql
https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/customizing-code-scanning
2023-03-12 14:27:10 +08:00
brvphoenix
8df80b67f9
GHA CI: Add missing dependencies
PR #18596.
2023-02-19 17:02:59 +03:00
Chocobo1
7ae83df5a5 GHA CI: compress debug symbols
The result binary is smaller.
2023-02-17 13:00:10 +08:00
Chocobo1
19f55512c1 GHA CI: don't overwrite system default compile flags
System might have some default compile flags which are crucial for security hardening so we
should append our flags instead of overwriting them.
2023-02-17 13:00:10 +08:00
Chocobo1
6e25db444e GHA CI: revert "[CI Ubuntu] Strip installed components"
For tester convenience, the binaries should ship with debug symbols.
This reverts commit b8aa9e5609.
2023-02-17 13:00:10 +08:00
Chocobo1
d2c4b69f47 GHA CI: use least permission level
`actions: write` is required by Chocobo1/setup-ccache-action.
`pull-requests: write` is required by actions/stale.
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
2023-02-17 13:00:10 +08:00
Chocobo1
4170b4e21b GHA CI: speed up package installation on macOS
Setup time is shortened by cutting down unnecessary operations.

https://docs.brew.sh/Manpage#environment
2023-02-17 13:00:10 +08:00
xavier2k6
3f39bd9f35
GHA CI: Bump Boost version to 1.81.0 on Windows/macOS
PR #18279.
2022-12-24 20:03:12 +03:00
sledgehammer999
ad2be39c33
[CI Ubuntu] Build AppImage
Upload an AppImage artifact on CI builds. This AppImage is a
simplified version of the official one. It is meant to help
with debugging PRs that fix issues.
2022-12-14 03:28:05 +02:00
sledgehammer999
b8aa9e5609
[CI Ubuntu] Strip installed components 2022-12-10 16:53:42 +02:00
xavier2k6
9fb8f765e8
GHA CI: Bump libtorrent version(s)
* https://github.com/arvidn/libtorrent/releases/tag/v2.0.8
* https://github.com/arvidn/libtorrent/releases/tag/v1.2.18

PR #17924.
2022-10-25 12:44:57 +08:00
Chocobo1
7eb97348de
GHA CI: add missing Qt module 2022-10-09 15:24:30 +08:00
Chocobo1
d9af207a11
GHA CI: add missing cmake flag for Qt6 2022-10-05 13:17:54 +08:00
Chocobo1
8b4a0da235
GHA CI: bump Qt version to 6.4.0 2022-10-03 13:04:28 +08:00
Chocobo1
dcc5206e3d
GHA CI: only install required Qt components
So it won't waste time download/install unused Qt components.
2022-10-03 13:04:24 +08:00
xavier2k6
d96ed5f4a4
GHA CI: Bump Windows/macOS Qt6 version to 6.4.0
Suppressed gnu-zero-variadic-macro-arguments warning on macOS (Qt6 only).
PR #17801.
2022-10-03 11:56:08 +08:00
Chocobo1
3061f6cf5b
GHA CI: treat compile warnings as errors
PR #17651.
2022-09-02 13:09:43 +08:00
Chocobo1
df5ea9b675
GHA CI: bump setup-python to v4 2022-08-19 12:59:13 +08:00
Chocobo1
ff7fe7c107
GHA CI: bump "Install Qt" action version 2022-08-18 12:26:26 +08:00
Chocobo1
c924fe7950
GHA CI: update boost to 1.80 2022-08-11 15:20:25 +08:00
Chocobo1
908f345e22
GHA CI: switch to Ubuntu latest stable version 2022-08-11 12:11:20 +08:00
summer
0e3ce019e4
Update libtorrent to 2.0.7 & 1.2.17 in GHA CI
PR #17385.
2022-07-19 11:13:47 +08:00
Chocobo1
03da68b1cf
Add support for unit testing
* Downgraded macOS CI to Qt 6.2.0 due to a bug in Qt Test module
* Revised cmake build scripts
* For now, only building via cmake is supported

PR #17338.
2022-07-10 13:20:27 +08:00
xavier2k6
d0b13f0eb0
GHA CI: "file health" update pre-commit action to v3.0.0
* Update `pre-commit` action to `v3.0.0`
  https://github.com/pre-commit/action/releases
* Bump pre-commit-hooks to `v4.3.0`
  https://github.com/pre-commit/pre-commit-hooks.git

PR #17195.
2022-06-11 12:25:12 +08:00
sledgehammer999
63cdfa2d85
Update CIs to correctly regenerate translations files 2022-05-29 02:49:57 +03:00
xavier2k6
b740cc23d3
GHA CI: Update dependencies
Update `libtorrent` version(s) to `2.0.6` & `1.2.16` in `GHA CI`
- https://github.com/arvidn/libtorrent/releases/tag/v2.0.6
- https://github.com/arvidn/libtorrent/releases/tag/v1.2.16

Update `Boost` version to `1.79.0`
- https://www.boost.org/users/history/version_1_79_0.html

Bump `pre-commit-hooks` version to `4.2.0`
- https://github.com/pre-commit/pre-commit-hooks/releases/tag/v4.2.0

Update `Qt6` version to `6.3.0`
- https://www.qt.io/blog/qt-6.3-released
- https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.3.0/release-note.md

Note: used `aqtinstall 2.1.0` with `jurplel/install-qt-action` for support of `Qt 6.2.1+`
(this requirement can be removed on official release of `jurplel/install-qt-action v3`)

PR #16888.
2022-04-19 10:32:56 +08:00
Yurii Kolesnykov
2b17838820
Remove outdated info about nightly builds
Closes #16790.
PR #16791.
2022-04-02 13:59:35 +08:00
Chocobo1
a24f2ae884
GHA CI: bump "setup vcpkg" action version 2022-04-01 15:49:21 +08:00
Chocobo1
3951b891c1
GHA CI: work around error when installing Qt
This is to (temporarily) work around CI errors at jurplel/install-qt-action.
Upstream issue: https://github.com/jurplel/install-qt-action/issues/130
2022-03-29 11:26:57 +08:00
Chocobo1
f58eed13d0
GHA CI: use Qt6 for Windows builds
PR #16696.
2022-03-24 12:19:07 +08:00
xavier2k6
074cbdad28 GHA CI: Update upload-artifact action to v3 2022-03-04 23:13:36 +00:00
xavier2k6
a63515b8f4 GHA CI: Update stale action to v5 2022-03-02 19:44:46 +00:00
xavier2k6
4dcd6df136 GHA CI: Update setup-python action to v3 2022-03-02 19:41:43 +00:00
xavier2k6
cea1bbde23 GHA CI: Update checkout action to v3 2022-03-02 19:39:35 +00:00
Chocobo1
116664285d
GHA CI: Don't cancel CI builds on non-pull-request branches
Fix up 2652c73a4f.
PR #16558.
2022-03-02 13:26:13 +08:00
Chocobo1
36c14ca587
Merge pull request #16539 from Chocobo1/ci
GHA CI: install boost library manually
2022-02-28 12:43:58 +08:00
Chocobo1
0c118bed61
GHA CI: disable uploading built artifacts for macOS
The binary aren't usable universally because users are required to
install related libraries.
2022-02-27 15:45:27 +08:00
Chocobo1
6c6474291e
GHA CI: install boost library manually
libtorrent 2.0.5 has build issues with boost >= 1.78.
2022-02-27 15:45:26 +08:00
xavier2k6
7fa89c9ba4
GHA CI: Update "WebUI" setup-node action to v3
PR #16532.
2022-02-27 12:49:38 +08:00
Chocobo1
2652c73a4f
GHA CI: cancel outdated in-progress workflow runs
This will only cancel outdated workflow runs on PR branches and won't affect other normal repo
branches.
PR #16511.
2022-02-25 13:34:28 +08:00
Chocobo1
c05dbc451a
GHA CI: build libtorrent with /guard:cf flag
qbt cmake script enables that flag already, so it make sense to build
dependencies with it too.
PR #16083.
2022-01-14 14:43:22 +08:00
Chocobo1
cc13f3e10d
GHA CI: Don't upload built artifacts for dynamic linking builds
As those won't work on testers system unless they install *all* and
same version of the dependent libraries too.

PR #15870.
2021-12-21 12:26:50 +08:00
Chocobo1
35c31906b7
GHA CI: don't let lupdate scan boost library
As it produces superflous warnings.
2021-12-13 15:08:36 +08:00
xavier2k6
9d2bb67834
GHA CI: Update libtorrent version(s)
PR #15819.
2021-12-09 12:32:52 +08:00
Chocobo1
0ee303789a
GHA CI: include translation file generation in test
PR #15814.
2021-12-07 12:17:15 +08:00
Chocobo1
67c45efff7
GHA CI: Use prebuilt Qt library 2021-11-20 14:33:12 +08:00
Chocobo1
7150d05399
GHA CI: Simplify commands 2021-11-18 00:20:58 +08:00
Chocobo1
e33c4086b9
GHA CI: Revise artifact folder layout
Now qbittorrent binaries will be placed in its own folder and cmake
related artifacts will be in another.

PR #15683.
2021-11-06 11:11:47 +08:00
Chocobo1
559a979536
GHA CI: Add Qt6 builds
PR #15610.
2021-10-24 00:57:50 +08:00
xavier2k6
fb2fbc875d
GHA CI: Use macOS-latest VM image
PR #15589.
2021-10-22 12:16:11 +08:00
Chocobo1
3467358663
GHA CI: Switch to pre-commit framework for checking file health
Now users are able to run the same checks on their local development
environment.
https://pre-commit.com/
2021-10-11 22:17:10 +08:00
Chocobo1
89ca0c537d
Fix filename extension 2021-10-10 02:55:59 +08:00
Chocobo1
9a3d560d9e
GHA CI: use larger cache for compiling
Previous default was 500MB and it couldn't fit all compile results in
it, enlarge it to 2GB. Note that 2GB isn't the actual size stored on the
server, it will be compressed again by zstd and will be a lot smaller.
2021-10-03 16:38:34 +08:00
Chocobo1
4924fb95f8
GHA CI: build dependencies manually
Now it builds boost, libtorrent manually and we have control over its
version.
Enable build matrix for libtorrent versions.
Reorganized the folder/file layout in built artifact.
2021-10-03 16:07:03 +08:00
Chocobo1
763b9fc1da
Put PR template into action 2021-10-02 15:04:23 +08:00
Chocobo1
982133d9b6
CI: Clean up scripts
* Remove redundant dependencies
* Replace ccache action provider
* Let coverity-scan script build with libtorrent v2.0.4.

PR #15483.
2021-09-23 12:38:52 +08:00
xavier2k6
8518333406
Replace GitHub markdown templates with GitHub forms
PR #15330.
2021-09-17 12:51:33 +08:00
Chocobo1
c701379a2e
Fix typo 2021-09-11 12:07:52 +08:00
Chocobo1
70573eba2c
GHA CI: Use preinstalled vcpkg (#15355)
This will save maintenance work on the vcpkg version.

Also a few other improvements:
* Add quotes to path
* Sort command flags
* Avoid switching shell, always use powershell (the default shell)
2021-08-22 12:29:17 +08:00
Chocobo1
a9feae6110
GHA CI: Split "main CI" to multiple workflows 2021-08-19 11:54:58 +08:00
Chocobo1
c12e486f59
GHA CI: Use prebuilt library packages on macOS 2021-08-19 11:08:19 +08:00
Chocobo1
8799321312
GHA CI: Use ccache 2021-08-18 23:06:02 +08:00
Chocobo1
00d2997971
GHA CI: Move global environment variables out 2021-08-18 23:06:02 +08:00
Chocobo1
69f7f233fd
GHA CI: Remove OS variable from build matrix
It is meaningless to build on multiple linux versions as we only depend
on library versions, not OS versions.
Also remove redundant "shell default" section.
2021-08-18 23:06:02 +08:00
Chocobo1
793e8643bf
GHA CI: Support libtorrent v2.0.4 2021-08-18 23:05:23 +08:00
Chocobo1
7433d85418
Revise workflow steps name/description 2021-08-14 15:08:31 +08:00
Chocobo1
ba1cf12817
Capitalize workflow step names 2021-08-14 14:58:16 +08:00
Chocobo1
59352e4ca7
Use nodejs lts version for CI
The exact nodejs version isn't critical here, just make sure it isn't
too outdated.
2021-08-13 12:23:16 +08:00
Chocobo1
011d026d76
Rename jobs 2021-08-13 12:23:16 +08:00
Chocobo1
89a8184ad2
Avoid using legacy backticks
https://github.com/koalaman/shellcheck/wiki/SC2006
2021-08-13 12:23:16 +08:00
Chocobo1
a23e10dff5
Split commands to multiple lines properly 2021-08-13 12:23:16 +08:00
Chocobo1
535603fac4
Use latest Ubuntu images
Jobs in those workflows has little to do with specific OS version, so
just use the latest.
2021-08-13 12:23:16 +08:00
Chocobo1
fb6282da57
Add proper indention to steps section
Following the style from the examples in https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idsteps
2021-08-13 12:23:15 +08:00
Chocobo1
23766cd01d
Clean up Github workflows' name 2021-08-13 12:23:04 +08:00
sledgehammer999
44b2afb218
Merge pull request #15310 from Chocobo1/stale
Stale bot: Handle more PR per run
2021-08-11 17:29:45 +03:00
Chocobo1
9d9f774dad
Handle more PR per run
Previously only about ~27 PR are scanned per run, this commit attempt
to handle all open PR at once.
2021-08-10 13:14:25 +08:00
sledgehammer999
671eff324d
Merge pull request #15298 from sledgehammer999/coverity_workflow
Run Coverity once per month
2021-08-09 21:18:12 +03:00
Chocobo1
4ed99ba851
Introduce stale bot for PR (#15211)
Stale bot will mark stale PR with a tag and close them after a specified
interval of time.

* Draft PRs are not subject to this marking.
* PR with an assignee or milestone is not subject to this marking.
2021-08-09 11:26:04 +08:00
sledgehammer999
c6c8f6563d
Run Coverity once per month 2021-08-08 12:24:19 +03:00
Chocobo1
9f9c4d6ed0
Ignore file heath for 3rd party libraries 2021-08-05 16:03:19 +08:00
xavier2k6
5d151cca9d
GitHub Actions CI: update workflow (#15245)
- update vcpkg to latest commit (includes updated BOOST)
2021-07-30 15:18:38 +08:00
FranciscoPombal
1e1d55b26d
CI: Use Qt 5.15.2 from third-party PPA on Linux 2021-07-15 10:56:50 +03:00
FranciscoPombal
ccb7c0d579 Raise minimum libtorrent version to 1.2.14 (2.0.4)
- Also update vcpkg to latest commit: includes libtorrent 1.2.14,
Qt 5.15.2, and Qt 6.1.1
2021-06-28 23:04:47 +01:00