Changes since 3.3.4:
Bindings
- Assimp: Updated to 5.4.3 (up from 5.4.2)
- bgfx: Updated to API version 129 (up from 128)
- FMOD: Updated to 2.03.04 (up from 2.02.21)
- freetype: Updated to 2.13.3 (up from 2.13.2)
- harfbuzz: Updated to 10.1.0 (up from 9.0.0)
- hwloc: Updated to 2.11.2 (up from 2.11.1)
- libdivide: Updated to 5.1 (up from 5.0)
- Added
MathUtil
multi-release support forLong.divideUnsigned
/Long.remainderUnsigned
andMath.unsignedMultiplyHigh
.
- Added
- liburing: Updated to 2.8 (up from 2.6)
- LLVM/Clang: Updated to 19.1.0 (up from 18.1.7)
- lmdb: Updated to 0.9.33 (up from 0.9.32)
- lz4: Updated to 1.10.0 (up from 1.9.4)
- meshoptimizer: Updated to 0.22 (up from 0.21)
- NativeFileDialog: Update to 1.2.1 (up from 1.2.0)
- Nuklear: Updated to 4.12.3 (up from 4.12.1)
- OpenAL Soft: Updated to 1.24.1 (up from 1.23.1)
- Added
ALC_SOFT_system_events
extension. - Added
AL_EXT_debug
extension. - Added
AL_EXT_direct_context
extension. - macOS: 10.15+ is now required (up from 10.11).
- Added
- OpenXR: Updated to 1.1.43 (up from 1.1.38)
- Shaderc: Updated to 2024.4 (up from 2024.2)
- SPIRV-Cross: Updated to 0.64.0 (up from 0.61.0)
- stb
- Updated
stb_image_resize
to 2.12 (up from 2.09)
- Updated
- Vulkan: Updated to 1.4.303 (up from 1.3.289)
- Includes MoltenVK 1.2.11 (up from 1.2.10)
- Yoga: Updated to 3.2.0 (up from 3.1.0)
Improvements
- Core: Migrated jsr305 nullability annotations to JSpecify (https://jspecify.dev). (#1008)
- The
org.jspecify:jspecify
dependency remains optional.
- The
- Core: Added
Configuration.DISABLE_HASH_CHECKS
, a dynamic option that disables shared library hash checks. (#1007) - FreeBSD: LWJGL now requires FreeBSD 13.3 or later. (up from 13.2)
- OpenGL: Added
Configuration.OPENGL_CONTEXT_API
option to control the default OpenGL context management API. - OpenGL: The
Configuration.OPENGL(ES)_CONTEXT_API
options now support"OSMesa"
as a value.- Similar to
GLFW_OSMESA_CONTEXT_API
, LWJGL will try to load libOSMesa when enabled, without having to changeConfiguration.OPENGL_LIBRARY_NAME
.
- Similar to
- OpenGL: The default context management API is now EGL when Wayland is detected.
- msdfgen: Added support for glyph index based msdfgen-ext APIs. (#1002)
Fixes
- Core: Fixed support for
va_list
parameters.
Breaking Changes
- Core: Replaced thread-local storage of
errno/GetLastError()
with virtual output parameters. (#1003)- The
LibCErrno.getErrno()
andWinBase.getLastError()
methods have been removed. - System calls in
org.lwjgl.system.linux.*
,org.lwjgl.system.windows.*
andorg.lwjgl.opengl.WGL
now take an optional output parameter for the error code. - This approach is similar to
Linker.Option.CaptureCallState
in Project Panama's FFM API.
- The
- Core: Dropped support for non-LTS JDK versions earlier than the latest LTS version.
- Supported JDK versions: 8, 11, 17, 21+
- The
module-info
class and the first batch of multi-release overrides now live underMETA-INF/versions/11
instead ofMETA-INF/versions/9
.