Commit graph

151 commits

Author SHA1 Message Date
Chocobo1
9ecb3874d8 GHA CI: use parallel downloading
Also clean up other commands.
2023-12-05 02:39:24 +08:00
Chocobo1
137df132e8 GHA CI: link to C libraries dynamically
The C libraries is now updated by the OS and therefore  there is no
reason to bundle static versions which might be outdated later.
Also enable Control Flow Guard for 3rd party libraries.
2023-11-21 13:49:10 +08:00
Chocobo1
b2c51a5b9e GHA CI: use built-in ninja
`choco install` is slow: A basically simple download and extract operation takes 20sec compared to ~3sec
when done manually. So we add a conditional for it.
2023-11-21 13:49:10 +08:00
Chocobo1
e99a012bb4 GHA CI: only store compile cache on stable branches
Given the amount of PR and compile matrix, the CI cache size limit is
easy to hit. So for now on, only store compile cache for stable branches
to avoid cache thrashing.
2023-11-21 13:49:10 +08:00
Chocobo1
75feacb213 GHA CI: enable caching for Qt library 2023-11-21 13:49:10 +08:00
Chocobo1
bcfa251290
GHA CI: speed up boost installation
Here is some benchmark for various archive formats:
```
gz
  0m11.384s
  0m11.495s
  0m11.193s

zip
  0m14.159s
  0m14.416s
  0m13.917s

7z
  0m17.569s
  0m17.295s
  0m18.496s

bz2
  0m31.519s
  0m28.885s
  0m29.510s
```

Looking by compressed size, bz2 is the best. However its decompressing
speed is the slowest. bz2 and gz file size only differs by ~20MB
and this difference is neglectable given the network speed on
Github. So switch to gz format to speed up CI build time.

PR #19867.
2023-11-06 14:10:51 +08:00
dependabot[bot]
7f57324655
GHA CI: Bump github actions versions
PR #19784 

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2023-11-05 13:31:06 +08:00
Chocobo1
de2ba53f08 GHA CI: don't override cmake default CXXFLAGS 2023-10-29 17:40:02 +08:00
Vladimir Golovnev
9de32a78f1
Improve NSIS scripts
* Improve NSIS scripts
* CI: Create installer for Windows build artifacts

PR #19728.
2023-10-20 09:04:56 +03:00
Vladimir Golovnev
116b05009d
CI: Use dynamic MSVC run-time library
Otherwise, there is a conflict of run-time libraries used (since Qt DLLs are still use dynamic MSVCRT) that leads to strange errors.

PR #19718.
Closes #19701.
2023-10-17 21:31:55 +03:00
xavier2k6
cacae42e5e
Bump OpenSSL requirement to 3.0.2
Addresses:
* [CVE-2022-0778](https://github.com/advisories/GHSA-x3mh-jvjw-3xwx)
* [OpenSSL 1.1.1 End of Life](https://www.openssl.org/blog/blog/2023/09/11/eol-111/)

PR #19638.
2023-09-26 06:51:53 +03:00
Chocobo1
88d32d57ab
GHA CI: enable run-time checks in C++ library
Those have minimal impact on run-time:
https://www.gnu.org/software/libc/manual/html_node/Source-Fortification.html
https://bugs.launchpad.net/kicad/+bug/1838448/comments/40

PR #19608.
2023-09-19 00:25:02 +08:00
Chocobo1
d19f4c2e1f GHA CI: bump versions 2023-09-07 15:30:01 +08:00
Chocobo1
22f63468a2 GHA CI: introduce dependabot updates
https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
2023-09-07 15:30:01 +08:00
Chocobo1
479639162d GHA CI: simplify vcpkg commands 2023-09-07 15:30:01 +08:00
Chocobo1
5b57abc7d8 GHA CI: add checking for doc
And also regenerate man pages with latest pandoc
2023-09-07 15:28:43 +08:00
Victor Chernyakin
44763d3e15
Fix duplicated text in GitHub's SUPPORT.md
PR #19508.
2023-08-28 13:52:34 +03:00
xavier2k6
21b77cb4f8
GHA CI: Bump Windows/macOS Boost version to 1.83.0
PR #19453.
2023-08-15 14:04:44 +03:00
Chocobo1
4d98761e99
GHA CI: remove redundant conditionals 2023-08-08 23:56:04 +08:00
Chocobo1
da4f2c2439
GHA CI: install boost from upstream 2023-08-08 23:55:30 +08:00
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