Releases: EasyRPG/Player
0.8 "Paralyze"
Full release notes
https://blog.easyrpg.org/2023/04/easyrpg-player-0-8-paralyze/
For Developers/Maintainers
Do not forget to update liblcf to 0.8.
Because of the new font support, it is highly recommended to link against FreeType now. For optional shaping support FreeType must be linked against HarfBuzz. We have supported FreeType before, but now we are fully using its potential.
Our version number is now without trailing zeros. Instead of 0.8.0 it is now 0.8. We will change this policy again later in 1.0 ;).
When using CMake the minimum supported version is now 3.13.
Building of the manual page requires now asciidoctor. (#2840)
Our code now compiles when using the g++13 compiler. g++13 cleaned up the system headers a bit and they no longer pull in other system headers indirectly. This was fixed by manually adding the missing headers includes. (#2881)
Autotools no longer fails the configure step if ALSA is missing. (#2676)
This did not make the cut for this release as we still need to get some stuff sorted out but we are currently working on Flatpak and AppImage Linux packages. We also plan to submit to FlatHub soon. When this all works (likely later in May/June) we will tell you about it. (#2192)
All our platforms now compile using the autotools or CMake build systems. Autotools will only work reliably if you are targeting a Unix-based system. For everything else, please use CMake. By all platforms we mean even the homebrew platforms (Wii, 3DS, Switch and PS Vita). If you have a fork of EasyRPG Player, please stop using the Makefiles. Migrate to one of the supported build systems! (#296, #2627) This change finally made it possible to move platform-specific files to a subdirectory. We plan to move even more files in a later release. (#2781)
CMake:
- OBJECT libraries are now used in CMake to make linking faster. (#2913)
- We fixed a build error in CMake with SDL2 when targeting the Raspberry Pi. (#2719)
- CMake presets are now supported to make building of the Player on our different platforms easier. No need to remember long build lines anymore. (#2878)
Most compiler warnings reported by -Wall -Wextra
are now resolved. We resolve the remaining ones after switching to C++17 and upgrading to the Visual Studio 2022 compiler. (#2913)
When building from the git repository, version information is automatically embedded in the Player. (#87, #2774)
Our code now compiles when using C++17. We still target C++14. This just means that enabling the C++17 standard after this release will no longer cause compiler errors. (#2745)
On Windows we support now mpg123 1.28.1 and newer. (#2749)
Newer versions of SDL2 are now supported when building for emscripten. (#2856)
0.7.0 "Sword"
Full release notes
See https://blog.easyrpg.org/2021/10/easyrpg-player-0-7-0-sword
For Developers/Maintainers
Do not forget to update liblcf to 0.7.
This is the last version supporting C++14. Right after this release we will move to C++17. The compiler support is good enough by now.
libfmt is a new required dependency that makes it much easier for us to fulfill all our text formatting needs. Every ancient version down to 5.0 will work. (#2181)
SDL2_mixer was removed and is not supported anymore because the API was too limited for our audio requirements.
libxmp (a recommended dependency for playing MOD/Tracker files) requires now 4.5.0 or newer because the previous versions did not support providing custom IO callback functions. (#2595)
For native MIDI playback on Linux (through a MIDI daemon) the recommended dependency ALSA/libasound is required.
For playing custom soundfonts (SF2) libfluidsynth is a new, recommended dependency.
Deprecation of Makefiles: Except for 3DS, Wii and Switch we build now all supported platforms using autotools or CMake. We will completely drop building through custom Makefiles with 0.7.1. We ask all maintainers using custom Makefiles to migrate to a supported buildsystem. Right now there are still some Makefiles e.g. for Amiga or Dingoo in the repository that are not maintained by us: These will be deleted before 0.7.1!
Building for Android is always a bit special because of Gradle. Instead of using the deprecated ndk-build, Gradle invokes now CMake making building much easier. (#621, #2475)
Further CMake improvements:
- The minimum supported CMake version was increased to 3.10 (#2532)
- The unit tests compile now when targeting Emscripten or macOS (#2303)
- The bash completion scripts were not installed on Linux when using CMake. (#2396)
- Multiple fixes for CMake to ensure the libretro core builds on all platforms. (#2400)
EasyRPG Player is now available on the snap store. This package is not maintained by us. Use at your own risk! (#2413)