1
1
# Changelog
2
2
3
- ## SFML 2.5
3
+ ## SFML 2.5.0
4
4
5
- Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.5
5
+ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.5.0
6
6
7
7
### General
8
8
9
+ * Replaced FindSFML.cmake with SFMLConfig.cmake (#1335 )
9
10
* Markdown'd and updated readme, changelog, contributing and license files (#1196 , #1368 , #1317 )
10
11
* Improve packaging support (#1173 )
11
12
* Added Tagfile generation and search (#1327 )
12
- * Set policy CMP0042 if cmake version > 3.0 (#1206 )
13
- * Added CMake variables to select the modules to be built (#800 )
14
- * Updated the binary libs from exlibs/libs-ios in order to work with Xcode 8 and iOS 10 (#1209 )
15
- * Do not install extlibs if ` SFML_USE_SYSTEM_DEPS ` is true (#1237 )
16
- * Updated stb_image to v2.16 and stb_image_write to v1.07 (#1270 )
13
+ * Added CMake variables to select the modules to be built (#798 , #800 )
14
+ * Do not install extlibs if ` SFML_USE_SYSTEM_DEPS ` is true (#1236 , #1237 )
17
15
* Fixed various type conversion/comparison warnings (#1325 )
18
- * [ macOS] Fixed launch of cocoa examples (#1334 )
19
- * [ macOS] Improved application signing process (#1194 )
20
- * [ macOS] Improve cmake script (#1215 )
21
- * [ macOS] Use ` -stdlib=libc++ ` (#1361 )
22
- * [ macOS] Fix CMake warning since CMake 3.9 (#1371 )
23
- * [ iOS] Use a CMake toolchain file for iOS build (#1269 )
16
+ * [ Android] Increased minimum API version to 14 (#1362 )
17
+ * [ Android] Removed custom toolchain and added support for the newest NDK version and Gradle (#1350 , #1393 )
18
+ * [ iOS] Updated the binary libs from exlibs/libs-ios (#1207 , #1209 )
19
+ * [ iOS] Use a CMake toolchain file for iOS build (#1268 , #1269 )
24
20
* [ iOS] Install extlibs if needed (#1348 )
25
21
* [ iOS] Drop 32 bit support (#1374 )
26
- * [ iOS] Force correct iOS architecture for cmake (#1377 )
27
- * [ iOS] Find OpenAL correctly (#1376 )
28
- * [ Android] Increased minimum API version to 14 (#1362 )
29
- * [ Android] Removed custom toolchain and added support for the newest NDK version (#1350 )
22
+ * [ iOS] Force correct iOS architecture for cmake (#1373 , #1377 )
23
+ * [ iOS] Added iOS example (#1378 )
24
+ * [ macOS] Fixed launch of cocoa examples (#1334 )
25
+ * [ macOS] Improved application signing process (#1020 , #1036 , #1194 )
26
+ * [ macOS] Improved CMake script (#1215 , #1371 )
27
+ * [ macOS] Use ` -stdlib=libc++ ` (#1361 )
28
+ * [ OpenBSD] Added support for OpenBSD (#1330 )
30
29
31
30
### System
32
31
33
32
** Bugfixes**
34
33
34
+ * Added protected destructor to ` sf::NonCopyable ` to prevent possible resource leaks (#1125 , #1161 )
35
35
* Fixed crash when ` sf::Clock ` is constructed in a global scope (#1258 )
36
36
37
37
### Window
38
38
39
39
** Features**
40
40
41
- * Implemented Cursor API (#827 )
42
- * Implemented Clipboard API (#1221 )
43
- * [ Windows] Added support for interfacing with joysticks via DirectInput when it is available (#1326 )
41
+ * Implemented Cursor API (#269 , #784 , #827 )
42
+ * Implemented Clipboard API (#715 , #1204 , #1221 )
43
+ * Renamed a few key codes (#1395 )
44
+ * Added joystick example (#1363 )
45
+ * [ Windows] Added support for interfacing with joysticks via DirectInput when it is available (#1251 , #1326 )
46
+ * [ Windows] Fix discrete GPU preference symbols being exported from the wrong place (#1192 , #1406 )
44
47
45
48
** Bugfixes**
46
49
47
- * Updated documentation (#1255 , #1310 )
48
- * [ macOS] Fixed window menu not working (#1193 )
49
- * [ macOS] Removed unused variable (#1276 )
50
- * [ macOS] Fixed crash with application messing hardware detection e.g. TeamViewer (#1323 )
51
- * [ macOS] Added support for (some) Hat/POV axis (#1248 )
50
+ * [ Android] Return correct key code for delete/backspace (#1309 , #1362 )
51
+ * [ iOS] Don't need to find vorbisfile or vorbisenc (#1347 )
52
52
* [ Linux] Fixed ` sf::Window::getPosition() ` returning incorrect position because of differences in window managers (#1228 , #1266 )
53
- * [ Linux] Fix X11 key repeat handling not filtering out events from other windows (#1291 , #1223 , #1230 )
53
+ * [ Linux] Fix X11 key repeat handling not filtering out events from other windows (#1223 , #1230 , #1291 )
54
54
* [ Linux] Restore fullscreen of a non-visible window (#1339 )
55
- * [ iOS] Fix build error when using @import (#1272 )
56
- * [ iOS] Don't need to find vorbisfile or vorbisenc (#1347 )
55
+ * [ macOS] Fixed window menu not working (#1091 , #1180 , #1193 )
56
+ * [ macOS] Fixed crash with application messing hardware detection e.g. TeamViewer (#1323 )
57
+ * [ macOS] Added support for (some) Hat/POV axis (#1248 )
57
58
* [ Windows] Prevent uninitialized read by zeroing memory (#1264 )
58
59
* [ Windows] Fixed modifier keys handling (#1357 )
59
- * [ Android] Return correct key code for delete/backspace (#1362 )
60
60
61
61
### Graphics
62
62
63
63
** Features**
64
64
65
65
* Implemented additional line spacing and letter spacing in ` sf::Text ` (#928 , #1366 )
66
66
* Added ` sf::VertexBuffer ` class (#1308 )
67
- * Added GPU local texture copying support, allowing performance optimizations and texture swapping (#1119 , #1320 )
67
+ * Added GPU local texture copying support, allowing performance optimizations and texture swapping (#1119 , #1319 , # 1320 )
68
68
* Optimize performance by skipping ` glTexCoordPointer() ` call if not needed (#1015 )
69
- * Generate shape outline vertices only if necessary (#1356 )
70
- * Removed dependency to libjpeg, stb_image_write now supports writing JPEG files (#1279 )
69
+ * Generate shape outline vertices only if necessary (#925 , # 1356 )
70
+ * Removed dependency to libjpeg, stb_image_write now supports writing JPEG files (#1278 , # 1279 )
71
71
* Enable comparing ` sf::Transform ` and optimize resetting OpenGL back to the identity matrix (#1298 )
72
+ * Added missing ` setActive() ` virtual method to ` sf::RenderTarget ` (#1157 )
73
+ * Updated stb_image to v2.16 and stb_image_write to v1.07 (#1270 )
74
+ * Added ` sf::RenderTexture ` stencil and multisampling support (#1274 , #1285 )
75
+ * Added example demonstrating ` sf::VertexBuffer ` , ` sf::Shader ` and ` sf::Thread ` usage (#1352 )
76
+ * Optimized ` sf::RenderTexture ` performance (#1379 )
72
77
73
78
** Bugfixes**
74
79
75
- * Fixed typo in assert in ` sf::Texture::update() ` (#1210 )
76
80
* Properly free memory in ` sf::Font::cleanup() ` (#1119 )
77
81
* Fixed memory leak in ` sf::Font ` (#1216 )
78
82
* Fix OpenGL texture coordinate pointer not being updated correctly under certain conditions (#1297 )
79
83
* Fix for broken text when the font is reloaded (#1345 )
80
- * Fix memory leak in ` sf::Text ` (#1360 )
81
- * Refactoring of ` sf::Text ` ( # 928 )
82
- * Updated documentation ( # 1197 )
83
- * [ Windows ] Replaced time-based joystick poll with a hardware event handler ( # 1195 , #1179 )
84
- * [ macOS ] Worked around render target bug ( # 1342 )
84
+ * Fix memory leak in ` sf::Text ` (#1233 , # 1360 )
85
+ * Fixed strict aliasing punning warning when generating the key of a glyph in Font.cpp ( # 1187 , # 1396 )
86
+ * Fixed OpenGL version string being parsed incorrectly on some platforms ( # 1249 , # 1390 )
87
+ * [ macOS ] Worked around render target bug ( # 1132 , #1342 )
88
+ * [ Windows ] Replaced time-based joystick poll with a hardware event handler ( # 1179 , # 1195 , # 1198 , # 1199 , # 1421 )
85
89
86
90
### Audio
87
91
88
92
** Features**
89
93
90
- * Added loop point support to ` sf::Music ` (#629 )
91
- * Added support for extensible format PCM wave files (#1296 )
94
+ * Added loop point support to ` sf::Music ` (#177 , # 629 )
95
+ * Added support for the extensible PCM wave file format (#1296 )
92
96
* [ iOS] Enable audio module (#1338 )
93
97
94
98
** Bugfixes**
95
99
100
+ * Fixed inconsistent seek behavior in ` sf::SoundStream ` (#1118 )
101
+ * Fixed stack overflow in ` sf::SoundStream::fillAndPushBuffer() ` (#1154 )
102
+ * Fixed seeking quirks in the FLAC reader (#966 , #1162 )
96
103
* Allow polymorphism with ` sf::SoundSource ` (#1185 )
97
- * Fixed WAV file writer writing wrong header values (#1281 )
98
- * Small bugfix to argument of ` alcCaptureOpenDevice() ` (#1305 )
99
- * Removed dead code (#1261 )
100
- * Updated documentation (#1321 , #1353 )
101
- * [ Windows] Updated OpenAL Soft to 1.18.1 (#1260 )
104
+ * Fixed WAV file writer writing wrong header values (#1280 , #1281 )
105
+ * Small bugfix to argument of ` alcCaptureOpenDevice() ` (#1304 , #1305 )
106
+ * [ iOS] Find OpenAL correctly (#1263 , #1376 )
107
+ * [ Windows] Updated OpenAL Soft to 1.18.1 fixing crashes (#1247 , #1260 )
102
108
103
109
### Network
104
110
111
+ ** Features**
112
+
113
+ * Add append/overwrite parameter to Ftp::upload (#1072 , #1399 )
114
+
105
115
** Bugfixes**
106
116
107
117
* Fixed wrong condition for building network support (#1253 )
118
+ * Changed TCP listen backlog from 0 to SOMAXCONN (#1369 , #1407 )
119
+ * Fixed socket reuse not conforming to documentation (#1346 , #1408 )
108
120
109
121
## SFML 2.4.2
110
122
@@ -122,7 +134,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.4.2
122
134
123
135
* Fixed bug where TransientContextLock would hang (#1165 , #1172 )
124
136
* [ Linux] Fixed GLX extensions being loaded too late (#1183 )
125
- * [ Linux] Fix wrong types passed to XChangeProperty (#1168 #1171 )
137
+ * [ Linux] Fix wrong types passed to XChangeProperty (#1168 , #1171 )
126
138
* [ Windows] Make context disabling via wglMakeCurrent more tolerant of broken drivers (#1186 )
127
139
128
140
### Graphics
@@ -153,7 +165,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.4.1
153
165
* [ Linux] Fixed an issue where GNOME flags window unresponsive (#1089 , #1138 )
154
166
* [ Linux] Fixed leak of XVisualInfo objects during GlxContext creation (#1135 )
155
167
* [ Linux] Fixed possible hang when setting visibility if external window sources (#1136 )
156
- * [ OS X ] Fixed inconsistency between doc and impl on OS X for the grab feature (#1133 , #1148 , #1150 )
168
+ * [ macOS ] Fixed inconsistency between doc and impl on macOS for the grab feature (#1133 , #1148 , #1150 )
157
169
* [ Windows] Fixed context memory leaks (#1143 , #1002 )
158
170
159
171
### Graphics
@@ -183,7 +195,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.4.0
183
195
* Updated/fixed string comparisons in Config.cmake (#1102 )
184
196
* Added the missing -s postfix for the RelWithDebInfo config (#1014 )
185
197
* [ Android] Fixed current Android compilation issues (#1116 , #1111 , #1079 )
186
- * [ OS X ] Update Xcode template material (#976 , #968 )
198
+ * [ macOS ] Update Xcode template material (#976 , #968 )
187
199
* [ Windows] Added support for VS 2015 (#972 )
188
200
* [ Windows] Create and install PDB debug symbols alongside binaries (#1037 )
189
201
@@ -225,10 +237,10 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.4.0
225
237
* [ Android] Accept touch events from "multiple" devices (#954 , #953 )
226
238
* [ Android] Copy the selected EGL context's settings to SFML (#1039 )
227
239
* [ Linux] Fixed modifiers causing sf::Keyboard::Unknown being returned (#1022 , #1012 )
228
- * [ OS X ] Improved memory management on OS X (#962 , #790 )
229
- * [ OS X ] Fixed crash when resizing a window to a zero-height/width size (#986 , #984 )
230
- * [ OS X ] Use the mouse button constant instead of 0 to avoid a compiler error on OSX (#1035 )
231
- * [ OS X ] OS X improvement: warnings + bugfix + refactoring, the lot! (#1042 )
240
+ * [ macOS ] Improved memory management on macOS (#962 , #790 )
241
+ * [ macOS ] Fixed crash when resizing a window to a zero-height/width size (#986 , #984 )
242
+ * [ macOS ] Use the mouse button constant instead of 0 to avoid a compiler error on macOS (#1035 )
243
+ * [ macOS ] macOS improvement: warnings + bugfix + refactoring, the lot! (#1042 )
232
244
233
245
### Graphics
234
246
@@ -256,7 +268,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.4.0
256
268
** Bugfixes**
257
269
258
270
* Added an assignment operator to SoundSource (#864 )
259
- * [ OS X ] Updates OpenAL-soft for OS X to version 1.17.2 (#1057 , #900 , #1000 )
271
+ * [ macOS ] Updates OpenAL-soft for macOS to version 1.17.2 (#1057 , #900 , #1000 )
260
272
* Fixed a bug where vorbis can't handle large buffers (#1067 )
261
273
* Added support for 24-bit .wav files (#958 , #955 )
262
274
* Fixed threading issue in sf::SoundRecorder (#1011 )
@@ -347,7 +359,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.3
347
359
* Added missing includes in the general headers (#851 )
348
360
* [ Android] Updated toolchain file and dependencies (#791 )
349
361
* [ Linux] Fixed missing pthread dependency (#794 )
350
- * [ OS X ] Relaxed CMake installation rules regarding framework dependencies (#767 )
362
+ * [ macOS ] Relaxed CMake installation rules regarding framework dependencies (#767 )
351
363
352
364
### Deprecated API
353
365
@@ -370,8 +382,8 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.3
370
382
* [ iOS] Fixed inconsistency between sf::Touch::getPosition and touch events (#875 )
371
383
* [ Linux] Fixed Alt+F4 not getting triggered in window mode (#274 )
372
384
* [ Linux] Fixed Unix joystick stuff (#838 )
373
- * [ OS X ] Fixed typo in JoystickImpl.cpp to prevent a crash (#762 , #765 )
374
- * [ OS X ] Fixed an issue in InputImpl::getSFOpenGLViewFromSFMLWindow (#782 , #792 )
385
+ * [ macOS ] Fixed typo in JoystickImpl.cpp to prevent a crash (#762 , #765 )
386
+ * [ macOS ] Fixed an issue in InputImpl::getSFOpenGLViewFromSFMLWindow (#782 , #792 )
375
387
376
388
### Graphics
377
389
@@ -399,7 +411,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.3
399
411
** Bugfixes**
400
412
401
413
* Fixed access violation error in the destructor of sf::AudioDevice (#30 , #602 )
402
- * [ OS X ] Fixed threading issue with sf::SoundStream and OpenAL (#541 , #831 )
414
+ * [ macOS ] Fixed threading issue with sf::SoundStream and OpenAL (#541 , #831 )
403
415
404
416
### Network
405
417
@@ -425,15 +437,15 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.2
425
437
* Slight adjustments to the examples (#737 )
426
438
* [ FreeBSD] Various configuration fixes (#577 , #578 )
427
439
* [ Linux] Updated FindSFML.cmake to add UDev to SFML's dependencies (#728 , #729 , #734 , #736 )
428
- * [ OS X ] Fixed incorrect symlink in freetype.framework (#519 )
429
- * [ OS X ] CMake module for correct dependencies (#548 )
430
- * [ OS X ] Fixed SFML target for Xcode (#595 , #596 )
431
- * [ OS X ] Updated implementation, mainly reverting to non-ARC (#601 )
432
- * [ OS X ] Fixed memory leaks and dead store (#615 )
433
- * [ OS X ] Improved event handling and performance (#617 )
434
- * [ OS X ] Reduced memory usage (#672 , #698 )
435
- * [ OS X ] OS X 10.10 support (#691 , #699 )
436
- * [ OS X ] Improve flexibility of dependencies' locations (#713 )
440
+ * [ macOS ] Fixed incorrect symlink in freetype.framework (#519 )
441
+ * [ macOS ] CMake module for correct dependencies (#548 )
442
+ * [ macOS ] Fixed SFML target for Xcode (#595 , #596 )
443
+ * [ macOS ] Updated implementation, mainly reverting to non-ARC (#601 )
444
+ * [ macOS ] Fixed memory leaks and dead store (#615 )
445
+ * [ macOS ] Improved event handling and performance (#617 )
446
+ * [ macOS ] Reduced memory usage (#672 , #698 )
447
+ * [ macOS ] macOS 10.10 support (#691 , #699 )
448
+ * [ macOS ] Improve flexibility of dependencies' locations (#713 )
437
449
* [ Windows] Removed the hack that copied external libraries into SFML static libraries (dbf01a7)
438
450
439
451
### System
@@ -458,10 +470,10 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.2
458
470
* Added window methods to request and to check focus (#518 , #525 , #613 , #723 , #735 )
459
471
* Provide name, manufacturer ID and product ID via sf::Joystick (#152 , #528 )
460
472
* [ FreeBSD] Joystick support (#477 )
461
- * [ OS X ] Improved integration with menus and dock actions (#11 )
462
- * [ OS X ] Support for OpenGL 3.2 (#84 )
463
- * [ OS X ] Improved fullscreen support (#343 )
464
- * [ OS X ] Added support for retina displays (#353 , #388 )
473
+ * [ macOS ] Improved integration with menus and dock actions (#11 )
474
+ * [ macOS ] Support for OpenGL 3.2 (#84 )
475
+ * [ macOS ] Improved fullscreen support (#343 )
476
+ * [ macOS ] Added support for retina displays (#353 , #388 )
465
477
* [ Windows] Removed support for Windows 9x (#469 )
466
478
* [ Windows] Fixed typo in Windows keyboard implementation (#516 )
467
479
@@ -474,14 +486,14 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.2
474
486
* [ Linux] Output error message when XOpenDisplay() fails (#508 , #616 )
475
487
* [ Linux] Resize window with setSize when sf::Style::Resize is set (#466 )
476
488
* [ Linux] Fixed broken key repeat on window recreation (#564 , #567 )
477
- * [ OS X ] Fixed KeyReleased not being fired in fullscreen mode (#465 )
478
- * [ OS X ] Fixed an issue where disconnecting the keyboard would cause a crash (#467 )
479
- * [ OS X ] Fixed unexpected resizing behavior (#468 )
480
- * [ OS X ] Improved resizing windows (#474 )
481
- * [ OS X ] Fixed memory leak with sf::Window::create() (#484 )
482
- * [ OS X ] Fixed menu shortcuts in fullscreen on OS X (#527 )
483
- * [ OS X ] Improved cursor hiding (#703 )
484
- * [ OS X ] Fixed right click not detected with trackpads (#716 , #730 )
489
+ * [ macOS ] Fixed KeyReleased not being fired in fullscreen mode (#465 )
490
+ * [ macOS ] Fixed an issue where disconnecting the keyboard would cause a crash (#467 )
491
+ * [ macOS ] Fixed unexpected resizing behavior (#468 )
492
+ * [ macOS ] Improved resizing windows (#474 )
493
+ * [ macOS ] Fixed memory leak with sf::Window::create() (#484 )
494
+ * [ macOS ] Fixed menu shortcuts in fullscreen on macOS (#527 )
495
+ * [ macOS ] Improved cursor hiding (#703 )
496
+ * [ macOS ] Fixed right click not detected with trackpads (#716 , #730 )
485
497
* [ Windows] Fixed joystick POV values (ef1d29b)
486
498
* [ Windows] Fixed Unicode inconsistency (#635 )
487
499
* [ Windows] Fixed Alt+F4 and mouse clicks issues (#437 , #457 )
@@ -568,12 +580,12 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.1
568
580
** Features**
569
581
570
582
* Now using inotify on Linux to avoid constantly polling joystick connections (#96 )
571
- * Add keypad return, equal and period keys support for OS X
572
- * Improved mouse events on OS X regarding fullscreen mode
573
- * Improved mouse events on OS X (#213 , #277 )
574
- * Improved reactivity of setMousePosition on OS X (#290 )
575
- * Added support for right control key on OS X
576
- * Improved TextEntered for OS X (#377 )
583
+ * Add keypad return, equal and period keys support for macOS
584
+ * Improved mouse events on macOS regarding fullscreen mode
585
+ * Improved mouse events on macOS (#213 , #277 )
586
+ * Improved reactivity of setMousePosition on macOS (#290 )
587
+ * Added support for right control key on macOS
588
+ * Improved TextEntered for macOS (#377 )
577
589
* Improved the performances of Window::getSize() (the size is now cached)
578
590
* Added the WM_CLASS property to SFML windows on Linux
579
591
* Fake resize events are no longer sent when the window is moved, on Linux
@@ -586,7 +598,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.1
586
598
* Fixed ContextSettings ignored on Linux when creating a window (#35 )
587
599
* Fixed windows bigger than the desktop not appearing on Windows (#215 )
588
600
* Fixed KeyRelease events sometimes not reported on Linux (#404 )
589
- * Fixed mouse moved event on OS X when dragging the cursor (#277 )
601
+ * Fixed mouse moved event on macOS when dragging the cursor (#277 )
590
602
* Fixed KeyRelease event with CMD key pressed (#381 )
591
603
* Fixed taskbar bugs on Windows (#328 , #69 )
592
604
* Fixed Window::getPosition() on Linux (#346 )
@@ -615,7 +627,7 @@ Also available on the website: https://www.sfml-dev.org/changelog.php#sfml-2.1
615
627
616
628
** Bugfixes**
617
629
618
- * Added a workaround for a bug in the OS X implementation of OpenAL (unsupported channel count no properly detected) (#201 )
630
+ * Added a workaround for a bug in the macOS implementation of OpenAL (unsupported channel count no properly detected) (#201 )
619
631
* Fixed SoundBuffer::loadFromStream reading past the end of the stream (#214 )
620
632
621
633
### Network
0 commit comments