Commit Graph

134 Commits

Author SHA1 Message Date
Chris Thrasher
c89c32d7ba Allow more GitHub Actions runners to run the audio tests. 2024-05-16 15:14:44 -06:00
Chris Thrasher
9722fb3724 Add tests for Audio module types 2024-05-16 12:06:21 -06:00
Chris Thrasher
c0f9c78308 Remove redundant cache var assignment 2024-05-14 16:51:23 -06:00
Chris Thrasher
67fae8a301 Work around stalled Android CI job 2024-05-07 08:13:34 +02:00
Chris Thrasher
2d9cc54242 Work around failing network test on Android x86_64 API 24 2024-05-06 03:16:05 +00:00
binary1248
2386653bd3 Add GitHub actions support for running x86, x86_64 and arm64-v8a Android tests using an Android emulator. 2024-05-04 17:22:12 +00:00
trustytrojan
ca0a231b35 Add operator bool() to sf::Event for checking if the event type is not Empty 2024-05-03 22:50:59 +00:00
Chris Thrasher
59447dd8e5 Rewrite sf::Event API to improve type safety
This new API is built on top of std::variant. This allows us to
store many different event types in a space-efficient way and access
the active event type in a type-safe manner that eliminates the
categories of UB that are possible with unions.

Co-authored-by: kimci86 <kimci86@hotmail.fr>
2024-05-01 18:00:58 +00:00
binary1248
34fde883b9 Replaced OpenAL with miniaudio.
Co-authored-by: Chris Thrasher <chrisjthrasher@gmail.com>
Co-authored-by: kimci86 <kimci86@hotmail.fr>
Co-authored-by: vittorioromeo <mail@vittorioromeo.com>
2024-04-25 10:24:11 +02:00
Chris Thrasher
7bb97a85b1 Compile unit tests for iOS and Android
While you can't easily run these unit tests, it's easy enough to
still compile them so we don't need to go out of way to prohibit
this. CMake has some support for running tests on the target OS
so perhaps in the future we find a compelling way to run the test
suite on a mobile OS.
2024-04-13 11:49:45 -06:00
Lukas Dürrenberger
8ccf534993 Revert disabling brew update 2024-04-12 10:25:35 -06:00
binary1248
7e1765717a Fixed coverage data not being collected for MinGW builds because OpenCPPCoverage relies on pdb data being available. 2024-04-11 17:32:24 -06:00
Chris Thrasher
b17150d3c0 Disable code coverage upload in forks 2024-04-11 16:08:32 -06:00
binary1248
90fb07066b Replaced Codecov with Coveralls. 2024-04-11 10:46:27 -06:00
Lukas Dürrenberger
a742b2158f Allow failure of coverage uploads due to rate limits 2024-04-10 23:40:32 +02:00
Lukas Dürrenberger
2b6194a632 Switch back to Codecov GitHub Action with our own token 2024-04-10 23:40:32 +02:00
Chris Thrasher
544a9a8a79 Remove redundant line 2024-03-29 09:58:44 -05:00
Chris Thrasher
2a48b34386 Upgrade CI actions to fix deprecation warnings 2024-02-20 14:28:18 -07:00
Lukas Dürrenberger
e50f7b9759 Add a macOS arm64 build to CI pipeline 2024-02-17 01:38:33 +00:00
Chris Thrasher
32a5440bb8 Fix CI deprecation warnings 2024-02-16 02:08:34 +00:00
Chris Thrasher
1e6eaa5d91 Disable display tests in OpenGL ES CI jobs 2024-02-15 23:40:46 +00:00
vittorioromeo
f3d5762a17 Add static PCH CI jobs for Windows/Linux 2024-02-09 12:52:37 +01:00
Bruno Van de Velde
9cd703aa10 Update location of sdkmanager for Android builds 2024-01-14 15:34:14 -07:00
Bruno Van de Velde
4665d5554a Build the android example in CI 2023-11-14 16:04:30 -07:00
Chris Thrasher
39ba64cfc6 Upgrade to Android NDK r24 2023-11-08 17:13:55 -07:00
binary1248
4fce7e4991 Embed MSVC debugging information when building using a compiler launcher in order to allow ccache to cache compiler output when running a CI workflow. 2023-11-07 10:31:00 -07:00
Chris Thrasher
9b223b45a5 Remove references to C compilers 2023-11-06 11:57:47 -07:00
binary1248
2a8a01ca6c Perform the majority of GitHub Actions workflow MSVC building using Ninja with the exception of ClangCL+MSBuild. 2023-11-05 21:53:58 +01:00
binary1248
ea6cf002b6 Added support for running the GitHub actions workflow using CCache. 2023-11-04 00:37:18 -06:00
Chris Thrasher
9a8ca3227f Add UBsan to CI 2023-10-27 16:36:38 -06:00
Chris Thrasher
0512748fce Run clang-tidy on OpenGL ES codepaths 2023-10-26 22:11:59 -06:00
Lukas Dürrenberger
e45628e2eb Add a support file 2023-10-23 11:41:04 -05:00
Lukas Dürrenberger
7d0fa3c3fa Add new versions of the issue templates 2023-10-23 11:41:04 -05:00
Lukas Dürrenberger
326ccf8f81 Ignore description text in the PR template 2023-10-23 11:41:04 -05:00
Chris Thrasher
0de21b8ce3 Promote Windows Unity build jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
4ff0dabba3 Promote Windows OpenGL ES jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
12439919c7 Promote Linux OpenGL ES jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
bdd6ad5145 Promote DRM jobs to main CI matrix 2023-10-16 13:45:01 -05:00
Chris Thrasher
fb88d1a8b3 Set Bash as the default shell 2023-10-09 00:22:34 -06:00
binary1248
25bb6637eb Cache packages downloaded when GitHub actions workflow is run. 2023-10-08 16:48:53 -06:00
binary1248
90ebf68ba3 Added GitHub Actions jobs to build with OpenGL ES on Linux GCC. 2023-10-08 12:13:41 -06:00
Chris Thrasher
e638d7a5e9 Simplify how tests are automatically re-ran in CI
The flakiness is theoretically limited to Linux where we have to
use xvfb-run in CI. Because the tests are ran on Linux via ctest
we can more easily use CTest's built-in support for rerunning
failed tests. We have yet to actually observe this flakiness after
the other changes added in #2474 so it's possible the flakiness
has been entirely addressed.

While I was at it I de-duplicated some code for printing OpenGL
information.
2023-10-05 16:56:05 -06:00
binary1248
e1fe3fdb06 Manually install MinGW when running GitHub Actions workflows. 2023-10-04 18:31:38 +02:00
Chris Thrasher
793ee75873 Only install MinGW when necessary
Installing MinGW 11 takes way too long to tolerate doing this in
all Windows jobs.
2023-10-03 02:42:22 +02:00
Chris Thrasher
9d1d9cde33 Remove Intel oneAPI CI jobs
These started spontaneously failing due to some Debian package
repository key issues.

https://github.com/SFML/SFML/actions/runs/6365368228/job/17282319034#step:6:40
2023-10-01 21:39:58 +02:00
Chris Thrasher
cc147e5827 Install an older version of MinGW
Version 12 changes to URCT instead of MSVCRT which causes linker
issues with all the prebuilt MinGW binaries. This is still a liability
that will have to eventually be fixed.
2023-09-30 18:50:10 -06:00
Chris Thrasher
732115820b Revert "Disable MinGW jobs until linker errors are addressed"
This reverts commit 3acb69e347.
2023-09-30 18:50:10 -06:00
Chris Thrasher
3acb69e347 Disable MinGW jobs until linker errors are addressed
See https://github.com/SFML/SFML/issues/2700
2023-09-22 14:46:27 -06:00
Chris Thrasher
739129d009 Install Ninja in CI
https://github.com/actions/runner-images/issues/8343#issuecomment-1727810519

Ninja's presence in the Windows images was due to it being a
transitive dependency of another packages. It was never guaranteed
to be present. The actions/runner-images devs do not plan on adding
it so we're forced to install it ourselves.
2023-09-22 14:46:27 -06:00
Chris Thrasher
3a0d074b2f Remove trailing whitespace
Some of these files either aren't processed by clang-format or the
trailing whitespace existed within blocks of code where we disabled
clang-format.
2023-09-19 13:30:27 -06:00