Kacper Michajłow
3cc3c9ced3
Revert "ci/mingw: don't run test on 32-bit binary"
...
Support for 32-bit binaries were restored.
See:
https://github.com/actions/runner-images/issues/9977
https://bugs.launchpad.net/ubuntu/+source/linux-signed-azure/+bug/2071445
https://launchpad.net/ubuntu/+source/linux-azure/6.8.0-1012.14
This reverts commit f47cbcd439 .
2024-08-16 12:57:56 +02:00
Kacper Michajłow
08935d5d21
ci/{mingw,win32}: specify nasm as it seems to be required now by libass
...
Fixes mingw and win32 builds after 1774117b80
2024-08-16 12:57:56 +02:00
Kacper Michajłow
763bcd3e52
ci/freebsd: update to 14.1
2024-08-07 13:09:21 +02:00
Kacper Michajłow
c4b963d775
workflows/fuzz: report OOMs and timeouts
2024-08-07 13:09:21 +02:00
Dudemanguy
06470899df
github/workflows/{build,fuzz}: exclude pr/issue template paths
2024-07-30 14:08:24 +00:00
Kacper Michajłow
7ab6458cf9
github/issue_template: fix paragraph spacing
...
Fixes: 051e2a8b7a
2024-07-29 21:55:25 +02:00
Kacper Michajłow
06da680630
ci/msys2: install cppwinrt
...
Will be useful for future commits.
2024-07-29 21:38:19 +02:00
Kacper Michajłow
051e2a8b7a
github/issue_template: add a note about log file
2024-07-29 15:27:14 +02:00
Kacper Michajłow
481a5c0dc1
workflows/fuzz: run all sanitizers
2024-07-17 20:21:15 +02:00
Kacper Michajłow
202ecc17af
ci: add fuzzing of pull requests for 20 minutes
...
To increase our testing coverage before merging. This uses already build
corpus and coverage info to test the modified code, if possible.
See: https://google.github.io/oss-fuzz/getting-started/continuous-integration
2024-07-14 01:18:51 +02:00
Kacper Michajłow
8a5989628c
meson: add fuzzers alias for all fuzzer targets
...
Makes it easier to build only fuzzer binaries and avoid building
unnecessary targets from subprojects.
2024-06-24 17:36:53 +02:00
Kacper Michajłow
b64521ae10
ci/openbsd: bump to 7.5 and remove libplacebo subproject
...
The available version is enough now.
2024-06-22 16:12:14 +02:00
Kacper Michajłow
2887b2e64c
meson: increase FFmpeg minimum required version to 6.1
2024-06-22 16:12:14 +02:00
Kacper Michajłow
22aa570cf8
ci/mingw: install wine optionally
2024-06-07 21:12:38 +02:00
Kacper Michajłow
9f8b4b38c9
ci/mingw: use Ubuntu 24.04
...
This effectively bumps minimal MinGW-w64 requirement to v11.0.1. As it
is available in the latest Ubuntu LTS.
While at it clean installed packages list.
2024-06-07 21:12:38 +02:00
Kacper Michajłow
de1c0b5464
ci/msys2: re-enable 32-bit builds
...
The 32-bit builds were disabled, because some packages started
disappearing. MSYS2 is slowly phasing out 32-bit support, but since we
still support it we have to test it somehow. Recent brakage with calling
convention mismatch would be spotted a lot quicker. So enable it, but
with some, not available, packages disabled.
This reverts a56d5c7fa1
2024-06-07 21:12:38 +02:00
Kacper Michajłow
f47cbcd439
ci/mingw: don't run test on 32-bit binary
...
Ubuntu 24.04 linux-azure kernel, used on GHA, is compiled with
CONFIG_COMPAT_32BIT_TIME=n. This prevents running any 32-bit binaries
through wine, so disable tests when doing i686 build. 32-bit builds are
still tested on Windows.
See: https://github.com/actions/runner-images/issues/9977
2024-06-07 21:12:38 +02:00
Kacper Michajłow
ac5d27fce5
ci/mingw: enable javascript support
2024-06-07 20:07:29 +02:00
Kacper Michajłow
bec3f606cf
ci/mingw: run meson tests
2024-06-03 19:18:06 +02:00
Kacper Michajłow
bb078b8303
ci/mingw: add exe_wrapper to cross file
...
Allows running complied binaries on build machine.
2024-06-03 19:18:06 +02:00
Kacper Michajłow
772b4fdde2
workflows/comment: more newline fixes to make formatting work
2024-05-20 19:48:18 +02:00
Kacper Michajłow
8fea10502e
workflows/comment: add missing escape fix
...
It hid in local version on script.
2024-05-20 19:29:02 +02:00
der richter
d4eff86330
ci/mac: silence unnecessary reinstall warnings
2024-05-20 18:53:01 +02:00
Kacper Michajłow
b03fa20015
ci: save cache also on failures
...
This makes rebuilds after build failures significantly faster. There is
no reason to discard newly acquired ccache entries.
2024-05-20 18:06:35 +02:00
Kacper Michajłow
7924afcba0
workflows/cleanup_caches: minor cosmetic changes
2024-05-20 18:04:54 +02:00
Kacper Michajłow
2697a8c362
workflows/comment: refactor comment workflow to not use github-script
...
It is not actively maintained, third-party, javascript wrapper for GitHub
API. The v7 version has issues and most importantly, we don't need a
JavaScript interface to create a comment. Use the first-party CLI tool
and jq.
Sort artifacts by name while at it.
2024-05-20 18:04:54 +02:00
Kacper Michajłow
0c85b9915f
ci/cleanup_caches: group by cache prefixes too
...
I've simplified this too much during refactoring, forgot about this. We
need to preserve the latest cache with each prefix.
Fixes: c6b950ae1e
2024-05-19 21:34:37 +02:00
Kacper Michajłow
c6b950ae1e
ci: clear old caches to avoid master branch cache trashing
...
GitHub cache action doesn't allow updating cache with the same key. We
workaround this by saving the cache with a unique key each time (added
timestamp). This works fine, but since there is a limit on cumulative
storage size for all caches, it can force the master branch cache to be
evicted if a lot of PRs are updated. Cache is evicted with LRU policy,
so as long as master branch cache is used it should stay alive, but it
can happen that only PR specifc caches were only used. As a reminder,
PRs can access the master cache, but they are isolated from each other.
Because of this, it is important to keep the master cache, which is
available to all, alive longer.
The solution is to remove all old caches per branch. This is done in a
separate workflow that validates all cache items and removes ones that
would never be used anyway. If PR is closed all caches per branch are
removed. In other cases most recently used one is preserved.
It is done in a separate workflow to limit cache manipulation access.
GitHub workflows triggered by pull_request event are run in the context
of the fork and does not have access to our token, which is good thing.
Also it is quite awkward to get PR number which triggered build
workflow, so just do a full cleanup pass.
2024-05-19 20:35:34 +02:00
Kacper Michajłow
0988ac85b5
ci: don't pin Ubuntu version where it doesn't matter
...
Use ubuntu-latest for all jobs that uses container under the hood
anyway, exact Ubuntu version does not matter, so use latest stable one.
2024-05-19 19:10:19 +02:00
Kacper Michajłow
29388538f3
ci/mingw: clean installed packages
2024-05-19 19:10:19 +02:00
Kacper Michajłow
0125d35954
ci/win32: add Vulkan-Loader
...
vulkan-1.dll is packaged, but is not neccessary in most cases where
Vulkan Loader is already instaled by GPU driver.
2024-05-18 23:22:18 +02:00
Kacper Michajłow
85db6a9f15
ci/win32: use ccache
2024-05-18 23:22:18 +02:00
Kacper Michajłow
a0195d335d
ci/win32: enable all available projects from meson's wrapdb
...
Rubber Band is disabled because it pulls more dependencies and it is not
worth build. Might be reconsidered later.
2024-05-18 23:22:18 +02:00
Kacper Michajłow
281c66a815
ci/win32: remove Strawberry Perl from path
...
It provides broken tools like diff, patch.
Also fix PATH in test stage
2024-05-18 23:22:18 +02:00
der richter
541e00fcdb
github/issue_template: ask for possible sample files on feature request
2024-05-17 20:30:43 +02:00
der richter
ae894d9b9b
github/issue_template: rework system info section and provide commands
2024-05-17 20:30:43 +02:00
der richter
247eac729c
github/issue_template: move mpv information into its own section
2024-05-17 20:30:43 +02:00
der richter
ea66507dd1
github/issue_template: add information on how to create backtraces
2024-05-17 20:30:43 +02:00
der richter
3058028168
github/issue_template: mention (nightly) builds and packages for testing
...
mention our windows and macOS nightly builds and also link to our mpv.io
installation page.
2024-05-17 20:30:43 +02:00
der richter
e9c98c1f2f
github/issue_template: reword file upload instruction
2024-05-17 20:30:43 +02:00
der richter
9f2590b6d1
github/issue_template: reword log file instructions
2024-05-17 20:30:43 +02:00
der richter
704863a016
github/issue_template: be more specific about performance-related issues
2024-05-17 20:30:43 +02:00
der richter
2a68a6cd9e
github/issue_template: add checkboxes as instruction check
2024-05-17 20:30:43 +02:00
der richter
d4d5fa0084
github/issue_template: rework issue templates with github forms
2024-05-17 20:30:43 +02:00
der richter
7fd305d4ea
github/issue_template: mention github Discussions for questions
2024-05-17 20:30:43 +02:00
Kacper Michajłow
0084fbd458
github/workflows: add lua linting
2024-05-12 20:06:39 +02:00
Kacper Michajłow
425c6d03d7
github/workflows: link MSVC artifacts in comments
2024-05-06 22:01:17 +02:00
Kacper Michajłow
0ffabf5d45
ci: add Windows native build
...
x86_64-pc-windows-msvc build without mingw dependency. For now it lacks
some key dependencies like lua or shaderc. Will be extended in the
future.
2024-05-06 22:01:17 +02:00
der richter
cb75ecf19f
github/workflows: add swift linting
2024-05-05 18:30:58 +02:00
Kacper Michajłow
fbfc9d22c7
ci: add fuzzers build test
2024-04-27 02:47:47 +02:00