Chris Thrasher
068ae6f575
Return std::optional<Event>
from sf::WindowBase::pollEvent
2023-11-09 21:47:53 -07:00
Chris Thrasher
1c873112ec
Return std::optional<Event> from sf::WindowImpl::popEvent
2023-11-09 16:52:56 -07:00
Chris Thrasher
bff2977f13
Remove unhelpful return value
2023-11-09 16:52:56 -07:00
Chris Thrasher
df284acefe
Remove declaration of unimplemented function
2023-11-09 16:52:56 -07:00
Chris Thrasher
5735fd09d9
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>
2023-11-09 00:19:38 -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
Chris Thrasher
d672b3504e
Add more tests for sf::Shape
2023-11-05 15:46:49 -07:00
Chris Thrasher
133bcda6cb
Add more readability-identifier-naming
rules
2023-11-05 15:05:25 -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
Lukas Dürrenberger
4faff85629
Merge 2.6.x to master
2023-11-01 23:25:16 +01:00
Chris Thrasher
0b3de0d8e2
Merge branch '2.6.x' to master
2023-11-01 11:08:57 -06:00
Chris Thrasher
7c8d1b5332
Use more sf::Vector
operations
...
When dealing with calculations that are fundamentally two dimensional
it's helpful to use a 2D data type as much as possible rather than
decomposing the calculations into x and y components. The more we use
vector operations the better chance we have of easiliy reasoning about
what the code is doing.
2023-10-31 19:45:13 -06:00
André Polomat
9a4929c844
Fixed sockets not closing before being moved into
2023-10-31 19:43:40 -06:00
Chris Thrasher
7e927c488b
Manage memory with std::unique_ptr
2023-10-31 19:37:59 -06:00
Chris Thrasher
4ec85b932e
Unify SocketImpl headers
...
The two headers only differed in their inclusions and two type
aliases. It's easier to use the preprocessor than the maintain two
nearly identical files.
2023-10-31 17:09:20 -06:00
binary1248
8c9c5c5b99
Added missing SFML_USE_STATIC_STD_LIBS checks to CMake configuration.
2023-10-31 23:22:28 +01:00
Chris Thrasher
5d0996906b
Manually inline all of sf::priv::ImageLoader
...
This layer of indirection was unnecessary. All of its functions
were only used once somewhere inside of Image.cpp. The code is shorter
and simpler and easier to reason about if we put the implementations
of these functions directly in Image.cpp.
2023-10-31 15:54:07 -06:00
Chris Thrasher
13dd9f59cf
Manage memory with higher level constructs
2023-10-31 15:05:26 -06:00
Chris Thrasher
69ea0cd863
Update changelog
2023-10-29 18:03:26 -06:00
Chris Thrasher
7f57bb4fe6
Update version to 2.6.1
2023-10-29 18:03:26 -06:00
Chris Thrasher
5cf740fd93
Remove output parameter from sf::Image::saveToMemory
2023-10-28 17:58:21 -06:00
Chris Thrasher
0fcd1dd0f1
Add tests for sf::Image::loadFromFile
failure
2023-10-27 19:21:36 -06:00
Chris Thrasher
fd2c42c7d1
Add tests for sf::Image::saveToMemory
2023-10-27 19:21:36 -06:00
Chris Thrasher
9a8ca3227f
Add UBsan to CI
2023-10-27 16:36:38 -06:00
André Polomat
014366b84a
Updated the test for the maximum antialiasing level of render texture
...
it returns 32 on my system, 64 should still be a reasonable value
2023-10-27 12:46:27 -06:00
Chris Thrasher
0512748fce
Run clang-tidy on OpenGL ES codepaths
2023-10-26 22:11:59 -06:00
Chris Thrasher
e2e0f36d98
Fix warnings in Linux OpenGL ES codepaths
...
Because CI didn't cover this code we didn't know there were
warnings in these codepaths to address.
Not sure why GCC's -Wduplicated-branches is being emitted or how
exactly to fix it. It's easier to simply ignore it in this one
particular file.
2023-10-24 08:44:42 -05: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
2cbcd60a45
Remove redundant link library
...
Clang was warning about this
ld: warning: ignoring duplicate libraries: 'lib/libsfml-system-s-d.a'
2023-10-23 13:07:27 +02:00
Chris Thrasher
6fa330d077
Prefer C++ standard lib over C standard lib
2023-10-22 22:57:04 -05:00
Chris Thrasher
6aabb75bcf
Fix sf::Image
tests
...
Bitten by a copy pasta error. We can't test for exact pixel values
since jpeg compression changes pixel values slightly.
2023-10-21 12:44:51 -05:00
Chris Thrasher
1c037e1cba
Add tests for sf::Image::saveToFile
2023-10-20 23:53:18 -05:00
Chris Thrasher
9b92e2e68e
Assert that sf::Image::{set|get}Pixel
coordinates are within bounds
...
Yay catching more UB :)
2023-10-20 23:53:18 -05:00
Chris Thrasher
fb873548b6
Print file extension when not recognized
2023-10-20 23:53:18 -05:00
Chris Thrasher
bb1a465e50
Add cppcoreguidelines-pro-type-member-init
clang-tidy check
...
This marks another good step towards systematically rooting out
undefined behavior in the form of reading uninitialized memory.
2023-10-17 21:41:36 -05:00
Chris Thrasher
63eff96581
Add cppcoreguidelines clang-tidy checks
...
The following checks have been added:
cppcoreguidelines-avoid-capturing-lambda-coroutines
cppcoreguidelines-avoid-goto
cppcoreguidelines-avoid-reference-coroutine-parameters
cppcoreguidelines-c-copy-assignment-signature
cppcoreguidelines-explicit-virtual-functions
cppcoreguidelines-interfaces-global-init
cppcoreguidelines-misleading-capture-default-by-value
cppcoreguidelines-missing-std-forward
cppcoreguidelines-noexcept-destructor
cppcoreguidelines-noexcept-move-operations
cppcoreguidelines-noexcept-swap
cppcoreguidelines-pro-type-cstyle-cast
cppcoreguidelines-slicing
cppcoreguidelines-use-default-member-init
cppcoreguidelines-virtual-class-destructor
2023-10-17 12:36:49 -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
Bruno Van de Velde
13c8a1de4e
Fixed texture being upside down on Android when copying the texture of a RenderTexture
2023-10-12 15:22:37 -05:00
Bruno Van de Velde
67c9019eda
Fixed texture being upside down on Android when copying the texture of a RenderTexture
2023-10-09 09:59:33 -06:00
Chris Thrasher
fb88d1a8b3
Set Bash as the default shell
2023-10-09 00:22:34 -06:00
Chris Thrasher
f98ff0d26a
Assert against division by zero in public APIs
...
Yet another class of UB we can eliminate in debug builds.
2023-10-08 20:02:38 -06:00
binary1248
25bb6637eb
Cache packages downloaded when GitHub actions workflow is run.
2023-10-08 16:48:53 -06:00