Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency org.lwjgl:lwjgl-tinyfd to v3.3.5 (1.8.9-backport) #1393

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 3, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.lwjgl:lwjgl-tinyfd (source) 3.2.2 -> 3.3.5 age adoption passing confidence

Release Notes

LWJGL/lwjgl3 (org.lwjgl:lwjgl-tinyfd)

v3.3.5: LWJGL 3.3.5

Compare Source

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 for Long.divideUnsigned/Long.remainderUnsigned and Math.unsignedMultiplyHigh.
  • 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).
  • 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)
  • 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.
  • 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 change Configuration.OPENGL_LIBRARY_NAME.
  • 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() and WinBase.getLastError() methods have been removed.
    • System calls in org.lwjgl.system.linux.*, org.lwjgl.system.windows.* and org.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.
  • 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 under META-INF/versions/11 instead of META-INF/versions/9.

v3.3.4: LWJGL 3.3.4

Compare Source

Changes since 3.3.3:

Bindings
  • Added msdfgen bindings.
  • Assimp: Updated to 5.4.2 (up from 5.2.5)
  • bgfx: Updated to API version 128 (up from 122)
    • Windows: support for the Direct3D 9 backend has been dropped.
  • CUDA: Updated to 12.5.1 (up from 12.1.0)
  • FMOD: Updated to 2.02.21 (up from 2.02.16)
  • glfw: Updated to 3.4 (up from 3.3.8)
    • Added GLFW_UNLIMITED_MOUSE_BUTTONS, GLFW_SCALE_FRAMEBUFFER, GLFW_WIN32_SHOWDEFAULT.
    • Added glfwGetWindowTitle, glfwGetCocoaView.
  • glfw: Added experimental support for IME. (#​946)
    • Added GLFW_SOFT_FULLSCREEN, GLFW_IME, GLFW_MANAGE_PREEDIT_CANDIDATE and GLFW_X11_ONTHESPOT.
    • Added glfwGetPreeditCursorRectangle, glfwSetPreeditCursorRectangle, glfwResetPreeditText, glfwGetPreeditCandidate.
    • Added glfwSetPreeditCallback, glfwSetIMEStatusCallback, glfwSetPreeditCandidateCallback.
  • harfbuzz: Updated to 9.0.0 (up from 8.2.0)
  • hwloc: Updated to 2.11.1 (up from 2.9.3)
  • KTX: Updated to 4.3.2 (up from 4.3.0-alpha3)
  • libffi: Updated to 3.4.6 (up from 3.4.4)
  • liburing: Updated to 2.6 (up from 2.4)
  • lmdb: Updated to 0.9.32 (up from 0.9.31)
  • LLVM/Clang: Updated to 18.1.7 (up from 16.0.0)
  • meshoptimizer: Updated to 0.21 (up from 0.19)
  • NativeFileDialog: Update to 1.2.0 (up from 1.1.0)
  • Nuklear: Updated to 4.12.1 (up from 4.10.6)
  • OpenVR: Updated to 2.5.1 (up from 1.26.7)
    • Added support for Linux ARM64
  • OpenXR: Updated to 1.1.38 (up from 1.0.29)
  • Opus: Updated to 1.5.2 (up from 1.4.0)
  • rpmalloc: Updated to 1.4.5 (up from 1.4.4)
  • Shaderc: Updated to 2024.2 (up from 2023.6)
  • SPIRV-Cross: Updated to 0.61.0 (up from 0.57.0)
  • stb
    • Updated stb_image to 2.30 (up from 2.28)
    • Updated stb_image_resize to 2.09 (up from 0.97)
  • tinyexr: Updated to 1.0.8 (up from 1.0.7)
  • tinyfiledialogs: Updated to 3.18.1 (up from 3.13.3)
  • vma: Updated to 3.1.0 (up from 3.0.1)
  • Vulkan: Updated to 1.3.289 (up from 1.3.264)
    • Includes MoltenVK 1.2.10 (up from 1.2.5)
  • Yoga: Updated to 3.1.0 (up from 2.0.0)
  • Zstd: Updated to 1.5.6 (up from 1.5.5)
Improvements
  • FreeBSD: Added support for the FreeBSD operating system, x64 architecture. (#​421)
    • Maven classifier: freebsd
  • Linux: Added support for the PowerPC 64 LE architecture. (#​495)
    • Maven classifier: linux-ppc64le
  • Linux: Added support for the RISC-V 64 architecture. (#​890)
    • Maven classifier: linux-riscv64
  • Linux: ARM/PowerPC/RISC-V shared libraries are now built with GCC 11 (up from GCC 7).
  • Windows: Shared libraries are now built with Clang/LLVM (clang-cl toolset) when possible.
  • Vulkan: Made VkMemoryRequirements mutable for the vmaAllocateMemory(Pages) functions. (#​937)
Fixes
  • Core: Fixed callback wrapper memory leak with the CHM closure registry. (#​927)
  • Core: The SharedLibraryLoader will now always test if System::load works before choosing the extract path. (#​987)
  • bgfx: Fixed bgfx_is_frame_buffer_valid to accept BGFXAttachment.Buffer. (#​993)
  • JAWT: Fixed JAWT_MACOSX_USE_CALAYER value.
  • LLVM: Fixed LLVMGetBufferStart to return ByteBuffer instead of String. (#​934)
  • LLVM: Fixed LookupIntrinsicID to return unsigned instead of void. (#​950)
  • Nuklear: Fixed auto-sizing of nk_stroke_polyline, nk_stroke_polygon, nk_fill_polygon buffers. (#​978)
  • tinyfd: The aDefaultPath parameter of tinyfd_selectFolderDialog is now nullable. (#​922)
Breaking Changes
  • Linux: ARM/PowerPC/RISC-V shared libraries now require GLIBC version 2.35 (up from 2.27)
  • macOS: LWJGL now requires macOS 10.11/El Capitan or later (up from 10.9/Mavericks)
  • meshoptimizer: Fixed autosizing issues. (#​981)
    • For consistency across the API, auto-sizing of some parameters was removed and the corresponding count parameters were made explicit.
    • Auto-sizing is now always based on input parameters, the destination buffers are only checked for enough capacity.
  • stb: stb_image_resize2.h replaced stb_image_resize.h with a new API.

v3.3.3: LWJGL 3.3.3

Compare Source

Changes since 3.3.2:

Bindings
  • bgfx: Updated to API version 122 (up from 118)
    • macOS: support for the OpenGL backend has been dropped.
  • EGL: Added latest extensions.
    • EGL_EXT_gl_colorspace_bt2020_hlg
  • FMOD: Updated to 2.02.16 (up from 2.02.13)
  • freetype: Updated to 2.13.2 (up from 2.13.0)
  • harfbuzz: Updated to 8.2.0 (up from 7.1.0)
  • hwloc: Updated to 2.9.3 (up from 2.9.0)
  • KTX: Updated to 4.3.0-alpha3 (up from 4.1.0-rc3)
  • liburing: Updated to 2.4 (up from 2.4-dev)
  • lmdb: Updated to 0.9.31 (up from 0.9.30)
  • meshoptimizer: Updated to 0.19 (up from 0.18)
  • NativeFileDialog: Update to 1.1.0 (up from 1.0.2)
    • Added Configuration.NFD_LINUX_PORTAL which enables the XDG Desktop Portal backend on Linux. (#​893)
  • Nuklear: Updated to 4.10.6 (up from 4.10.5)
  • OpenAL Soft: Updated to 1.23.1 (up from 1.23.0)
    • Added AL_SOFT_buffer_length_query extension.
    • Added AL_SOFT_source_start_delay extension.
    • Added AL_SOFT_UHJ_ex extension.
  • OpenCL: Added latest extensions.
    • cl_ext_image_from_buffer
    • cl_ext_image_requirements_info
    • cl_intel_bfloat16_conversions
    • cl_intel_split_work_group_barrier
    • cl_intel_subgroup_matrix_multiply_accumulate
    • cl_intel_subgroup_split_matrix_multiply_accumulate
  • OpenGL: Added latest extensions.
    • GL_NV_uniform_buffer_std430_layout
  • OpenVR: Updated to 1.26.7 (up from 1.23.7)
  • OpenXR: Updated to 1.0.29 (up from 1.0.27)
  • Opus: Updated to 1.4.0 (up from 1.3.1)
  • Shaderc: Updated to 2023.6 (up from 2023.3)
  • SPIRV-Cross: Updated to 0.57.0 (up from 0.51.0)
  • tinyexr: Updated to 1.0.7 (up from 1.0.2)
  • tinyfiledialogs: Updated to 3.13.3 (up from 3.9.0)
  • Vulkan: Updated to 1.3.264 (up from 1.3.246)
    • Includes MoltenVK 1.2.5 (up from 1.2.3)
  • xxhash: Updated to 0.8.2 (up from 0.8.1)
  • Yoga: Updated to 2.0.0 (up from 1.19.0)
  • Zstd: Updated to 1.5.5 (up from 1.5.4)
Improvements
  • Core: LWJGL is now compatible with GraalVM Native Image. (#​875)
Fixes
  • Core: Java memset/memcpy implementations no longer touch memory outside the target range. (#​892)
  • CUDA: Fixed library name on Linux. (#​884)
  • Nuklear: Fixed the result auto-sizing of nk_font_atlas_bake. (#​903)
  • OpenGL: Added support for libglvnd. (#​880)
    • LWJGL will now try to load libGLX.so.0 before libGL.so.1 on Linux, matching GLFW.
    • Use Configuration.OPENGL_LIBRARY_NAME and GLFWNativeGLX::setPath to override this behavior.

v3.3.2: LWJGL 3.3.2

Compare Source

Changes since 3.3.1:

Bindings
  • Added FMOD bindings. (#​295)
    • Native binaries are not included, because the license does not permit redistribution. They must be downloaded and deployed separately from LWJGL.
  • Added FreeType bindings. (#​611)
    • The default build includes HarfBuzz and exports its full API.
  • Added HarfBuzz bindings. (#​611)
    • The default build works standalone.
    • FreeType interop can be enabled by making HarfBuzz use FreeType's shared library (see Configuration.HARFBUZZ_LIBRARY_NAME).
  • Added hwloc bindings. (#​98)
  • Added KTX (Khronos Texture) bindings. (#​660)
  • Windows: Added bindings to dpapi.h. (#​851)
  • Assimp: Updated to 5.2.5 (up from 5.2.2)
    • KHR_draco_mesh_compression is now supported via the bundled Draco library. (#​773)
  • bgfx: Updated to API version 118 (up from 115)
  • CUDA: Updated to 12.1.0 (up from 11.5.0)
  • glfw: Updated to latest 3.3.8 (up from 3.3.6)
    • Added GLFW_WAYLAND_LIBDECOR, GLFW_WAYLAND_PREFER_LIBDECOR and GLFW_WAYLAND_DISABLE_LIBDECOR.
    • Added GLFW_CURSOR_CAPTURED.
    • Added GLFW_WAYLAND_APP_ID.
    • Added GLFW_POSITION_X, GLFW_POSITION_Y and GLFW_ANY_POSITION.
  • jemalloc: Updated to 5.3.0 (up from 5.2.1)
  • libffi: Updated to 3.4.4 (up from 3.4.2)
  • liburing: Updated to 2.4-dev (up from 2.1)
  • lmdb: Updated to 0.9.30 (up from 0.9.28)
  • lz4: Updated to 1.9.4 (up from 1.9.3)
  • LLVM/Clang: Updated to 16.0.0 (up from 13.0.1)
  • meshoptimizer: Updated to 0.18 (up from 0.17)
  • NativeFileDialog: Switched to Native File Dialog Extended (#​823)
    • This is a fork of the original library with new features and breaking API changes.
  • Nuklear: Updated to 4.10.5 (up from 4.9.6)
    • Added the font baking API.
  • OpenAL Soft: Updated to 1.23.0 (up from 1.21.1)
    • Added ALC_SOFT_loopback_bformat extension.
    • Added ALC_SOFT_output_mode extension.
    • Added ALC_SOFT_reopen_device extension.
    • Added AL_SOFT_callback_buffer extension.
    • Added AL_SOFT_effect_target extension.
    • Added AL_SOFT_events extension. (#​854)
    • Added AL_SOFT_UHJ extension.
    • Added AL_SOFTX_hold_on_disconnect extension. (#​795)
  • OpenGL(ES): Added latest extensions.
    • GL_EXT_framebuffer_blit_layers
    • GL_EXT_fragment_shading_rate
    • GL_EXT_fragment_shading_rate_attachment
    • GL_EXT_fragment_shading_rate_primitive
    • GL_EXT_separate_depth_stencil
    • GL_EXT_shader_samples_identical
  • OpenVR: Updated to 1.23.7 (up from 1.16.8)
  • OpenXR: Updated to 1.0.27 (up from 1.0.22)
  • Remotery: Updated to 1.2.1 (up from 1.0.0)
  • rpmalloc: Updated to 1.4.4 (up from 1.4.3)
  • Shaderc: Updated to 2023.3 (up from 2022.1)
  • SPIRV-Cross: Updated to 0.51.0 (up from 0.48.0)
  • stb
    • Updated stb_image to 2.28 (up from 2.27)
  • tinyexr: Updated to 1.0.2 (up from 1.0.1)
  • tinyfiledialogs: Updated to 3.9.0 (up from 3.8.8)
  • vma: Updated to 3.0.1 (up from 3.0.0-development)
  • Vulkan: Updated to 1.3.246 (up from 1.3.206)
    • Includes MoltenVK 1.2.3 (up from 1.1.7)
  • Zstd: Updated to 1.5.4 (up from 1.5.2)
Improvements
  • Linux: x64 shared libraries are now built with GCC 11.2 (up from GCC 7.5)
    • The minimum GLIBC version is now 2.17. (down from 2.27) (#​842)
  • Windows: Shared libraries are now built with Visual Studio 2022 (up from 2019)
  • Core: Added support for JDK 19 (#​799)
  • Core: Added MemoryUtil::memByteBuffer(Struct). It creates a ByteBuffer view of a struct value.
  • Core: More SharedLibraryLoader improvements. (#​790)
    • The default Configuration.SHARED_LIBRARY_EXTRACT_DIRECTORY is now lwjgl_<trimmed_user_name>.
    • The default Configuration.SHARED_LIBRARY_EXTRACT_PATH now includes the CPU architecture. (<temp_root>/<extract_dir>/<version>/<arch>/)
    • Added Configuration.SHARED_LIBRARY_EXTRACT_FORCE.
  • Core: The string returned by Version::getVersion() now follows the Java version format (M.m.r+B or M.m.r-snapshot+B).
  • Core: Added Configuration.DEBUG_MEMORY_ALLOCATOR_FAST, a dynamic option that dramatically reduces the performance overhead of memory leak detection.
  • Core: Reduced the performance overhead of Configuration.DEBUG_STACK.
  • docs: The LWJGL javadoc is now generated with JDK 19 (up from JDK 10) for improved search functionality.
  • The .sha1 and .git files, used for validating LWJGL artifacts, are now stored under the META-INF folder.
  • glfw: It will now always be patched with the latest SDL_GameControllerDB version.
    • Reminder: glfwUpdateGamepadMappings can be used to update the mappings at runtime.
  • Nuklear: NK_BUTTON_TRIGGER_ON_RELEASE is now also defined on Linux & macOS, not only Windows, for consistency.
  • OpenXR: Added extension class javadoc.
    • Currently, only the overview section is included.
    • Also added a link that opens the OpenXR specification at the corresponding section for the extension.
  • Remotery: Made it easier to get started with Remotery profiling: (#​784)
    • Users can now identify the commit used to build the Remotery bindings in the Remotery class javadoc.
    • A script that quickly clones the Remotery repository at that commit is also included.
      The viewer application at vis/index.html is guaranteed to be compatible with the LWJGL bindings.
    • Ported two simple Remotery samples (modules/samples/src/test/java/org/lwjgl/demo/util/remotery/).
Fixes
  • Core: Fixed Java/native library incompatibility detection. (#​737)
  • Core: Fixed dlerror decoding to use UTF-8. (#​738)
  • Core: Fixed Version::getVersion() when LWJGL is in the module path. (#​770)
  • Core: Fixed handling of unsigned 8/16-bit integer parameters in JNI code. (#​858)
  • Core: Many debug messages can no longer tear under concurrency. (#​825)
  • Build: Fixed offline mode with multiple local architectures. (#​740)
  • NanoSVG: Fixed auto-sizing of NSVGPath::pts buffer.
  • OpenCL: Fixed initialization on macOS 13. (#​861)
  • Opus: Fixed pcm parameter type of opus_decode_float function. (#​785)
  • Remotery: Fixed rmtSettings::free callback signature.
  • stb: Fixed stb_image_resize flag values. (#​857)
  • Vulkan: Fixed definition of the VK_API_VERSION_PATCH macro. (#​743)
  • Vulkan: Fixed EXT_debug_utils function dispatch. (#​755)
Breaking Changes
  • Core: Introduced additional mangling of org.lwjgl.system.JNI method names for 8/16-bit integer parameters. (#​858) (S)
  • NanoVG: The freeData parameters of nvgCreateFontMem* functions are now mapped to Java boolean. (S)
  • NativeFileDialog: Now uses the btzy/nativefiledialog-extended API. (S)
  • Nuklear: Renamed NkConvertConfig::null_texture to tex_null to match the change in the native API. (S)
(B): binary incompatible change
(S): source incompatible change

v3.3.1: LWJGL 3.3.1

Compare Source

Changes since 3.3.0:

Bindings
  • Added liburing bindings.
    • Can be found in the LWJGL core module (package org.lwjgl.system.linux.liburing).
  • Added OpenXR bindings. (#​569)
  • Assimp: Updated to 5.2.2 (up from 5.1.0)
  • glfw: Updated to latest 3.3.6 (up from 3.3.5)
    • Added glfwGetGLXFBConfig.
    • Added glfwGetEGLConfig.
  • meshoptimizer: Updated to 0.17 (up from 0.16)
  • Nuklear: Updated to 4.9.6 (up from 4.09.0)
  • Shaderc: Updated to 2022.1 (up from 2021.3)
  • vma: Updated to latest 3.3.0-development
    • Added virtual allocator API.
    • Added VMA_MEMORY_USAGE_AUTO.
  • Vulkan: Updated to 1.3.206 (up from 1.2.198)
    • Includes MoltenVK 1.1.7 (up from 1.1.5)
  • xxhash: Updated to 0.8.1 (up from 0.8.0)
  • Zstd: Updated to 1.5.2 (up from 1.5.0)
    • Also, the LWJGL memory allocator is now used for internal allocations.
Improvements
  • GLFW: An alternative macOS build now supports Cocoa calls on any thread.
    • A different window toolkit (AWT, JavaFX, etc.) may now run at the same time as GLFW. It must be initialized before glfwInit is called.
    • Enabled with Configuration.GLFW_LIBRARY_NAME.set("glfw_async");.
Fixes
  • Core: Fixed extra NUL in string returned from SharedLibrary::getPath() on Linux & macOS. (#​713)
  • Core: Fixed integer overflow when casting pointers on 32-bit architectures. (#​720)
  • Core: Fixed rare NPE with Configuration.DEBUG_STACK enabled. (#​721)
  • OpenCL: Fixed values of the KERNEL_ARG_ADDRESS_* constants. (#​733)
  • OpenCL: Fixed value of KERNEL_ARG_TYPE_QUALIFIER constant. (#​735)
  • vma: Fixed nullability of VmaVirtualAllocationCreateInfo::pUserData member.
  • Vulkan: All noautovalidity parameters/members are now regarded as nullable. (#​702)

v3.3.0: LWJGL 3.3.0

Compare Source

Changes since 3.2.3:

Bindings
  • Added libffi bindings.
    • Bundled with the LWJGL core, under the org.lwjgl.system package.
  • Added meshoptimizer bindings.
  • Added SPIRV-Cross bindings.
  • Assimp: Updated to 5.1.0 (up from 5.0.0.rc2)
  • bgfx: Updated to API version 115 (up from 100)
  • CUDA: Updated to 11.5.0 (up from 10.1.0)
    • Now includes full API documentation.
  • glfw: Updated to latest 3.3.4 (up from 3.3.1):
    • Added GLFW_WIN32_KEYBOARD_MENU.
    • Added GLFW_CURSOR_UNAVAILABLE.
    • Added GLFW_FEATURE_UNAVAILABLE.
    • Added GLFW_FEATURE_UNIMPLEMENTED.
    • Added GLFW_MOUSE_PASSTHROUGH.
    • Added GLFW_ANGLE_PLATFORM_TYPE.
    • Added GLFW_CONTEXT_DEBUG.
    • Added GLFW_X11_XCB_VULKAN_SURFACE.
    • Added GLFW_PLATFORM, GLFW_PLATFORM_UNAVAILABLE.
    • Added GLFW_ANY_PLATFORM, GLFW_PLATFORM_WIN32, GLFW_PLATFORM_COCOA, GLFW_PLATFORM_WAYLAND, GLFW_PLATFORM_X11, GLFW_PLATFORM_NULL.
    • Added glfwInitAllocator.
    • Added glfwGetPlatform.
    • Added glfwPlatformSupported.
    • Added glfwInitVulkanLoader.
    • Added standard cursors for diagonal and omnidirectional resize/move and operation-not-allowed.
    • Added OSMesa native access functions.
  • LibOVR: Updated to 1.64.0 (up from 1.39.0)
  • libdivide: Updated to 5.0 (up from 2.0)
    • Added support for 16-bit divisions.
  • LLVM/Clang: Updated to 13.0.1 (up from 8.0)
  • lmdb: Updated to 0.9.28 (up from 0.9.24)
  • lz4: Updated to 1.9.3 (up from 1.9.2)
  • NativeFileDialog: Updated to 1.2.0 (up from 1.1.6)
  • Nuklear: Updated to 4.09.0 (up from 4.01.0)
  • OpenAL Soft: Updated to 1.21.1 (up from 1.19.1)
    • Added AL_SOFT_bformat_ex extension.
    • Added AL_SOFT_buffer_samples extension.
    • Added AL_SOFT_buffer_sub_data extension.
    • Added AL_SOFT_direct_channels_remix extension.
  • OpenCL: Added support for OpenCL 3.0.
  • OpenVR: Updated to 1.16.8 (up from 1.6.10)
  • Opus: Added Opusfile & Libopusenc bindings (#​634)
  • par: Added par_octasphere bindings.
  • rpmalloc: Updated to 1.4.3 (up from 1.4.0)
  • Shaderc: Updated to 2021.3 (up from 2019.1)
  • stb
    • Updated stb_dxt to 1.12 (up from 1.08)
    • Updated stb_easy_font to 1.1 (up from 1.0)
    • Updated stb_image to 2.27 (up from 2.23)
    • Updated stb_image_resize to 0.97 (up from 0.96)
    • Updated stb_image_write to 1.16 (up from 1.13)
    • Updated stb_perlin to 0.5 (up from 0.4)
    • Updated stb_rect_pack to 1.01 (up from 1.00)
    • Updated stb_truetype to 1.26 (up from 1.22)
    • Updated stb_vorbis to 1.22 (up from 1.17)
  • tinyexr: Updated to 1.0.1 (up from 1.0.0 pre-release)
  • tinyfiledialogs: Updated to 3.8.8 (up from 3.3.9)
  • vma: Updated to 3.3.0-development (up from 2.2.0)
  • Vulkan: Updated to 1.2.198 (up from 1.1.121)
    • Includes Vulkan Video
    • Includes MoltenVK 1.1.5 (up from 1.0.36)
  • xxhash: Updated to 0.8.0 (up from 0.7.1)
  • Yoga: Updated to 1.19.0 (up from 1.14.0)
  • Zstd: Updated to 1.5.0 (up from 1.4.3)
Improvements
  • macOS/Windows: Added support for ARM builds. (#​601)
    • Maven classifier for macOS: natives-macos-arm64
    • Maven classifier for Windows: natives-windows-arm64
  • Linux: Shared libraries are now built with GCC 7.5 (up from GCC 4.8)
  • Generator: Struct member javadoc moved to the corresponding getter method.
    • There are links to the getter method in the class javadoc (Layout section) and in the javadoc of the corresponding setter and .Buffer accessors.
    • Makes it easier to navigate to the documentation of a particular member.
  • Generator: simplified stack allocation methods in Struct classes.
    • 4 new methods added, named malloc and calloc, without a "Stack" suffix.
    • 8 old methods with the "Stack" suffix are now deprecated, to be removed in LWJGL 3.4.0.
  • Core: Replaced internal usages of dyncall with libffi.
    • This resolves a range of long-standing issues, mainly with upcalls (callbacks).
    • Single native callback handler used for all upcalls, regardless of signature. Arguments and return values handled Java-side (per callback type).
    • Improved upcall performance (before: JNI downcall per argument, after: simple memory accesses)
    • Support for structs returned by-value. (#​283)
  • Core: Implemented overflow protection in text encoding methods.
  • Core: When LWJGL fails to resolve native libraries, it will now attempt to report native JAR files in the classpath with mismatching platform/architecture. (#​587)
  • Core: The SharedLibraryLoader now prefers to extract natives to the working directory, over the user's home directory.
  • Core: Added version information to module descriptors. (#​685)
    • The LWJGL version/build used will now be included in stacktraces of modular applications.
  • docs: The javadoc of callback classes/interfaces now includes a link to the corresponding invoke method, for better IDE navigation.
  • macOS: Shared libraries are now built with Xcode 11.3 (up from 10.0)
  • GLFW: Added overrides for internally loaded shared libraries.
    • Useful when there's a mismatch with the library loaded by LWJGL.
    • GLFWNativeEGL.setEGLPath & GLFWNativeEGL.setGLESPath
    • GLFWNativeGLX.setPath
    • GLFWNativeNSGL.setFramework
    • GLFWNativeWGL.setPath
    • GLFWVulkan.setPath
  • GLFW: There is now a single Linux native that supports both X11 and Wayland.
    • Use glfwPlatformSupported(GLFW_PLATFORM_WAYLAND) to test if Wayland is available.
    • Use glfwInitHint(GLFW_PLATFORM, GLFW_PLATFORM_WAYLAND) to enable the Wayland backend.
  • GL: Added support for OSMesa contexts. (#​595)
  • GL/GLES/AL: Added createCapabilities overloads that accept an IntFunction<PointerBuffer>. Enables explicit management of the off-heap memory used by the capabilities instances.
  • GL/GLES/AL: When capabilities creation fails, the current thread/process capabilities state is no longer reset to null.
  • GL/GLES/AL/CL/EGL: Added Configuration options to forcibly disable specific extensions for debugging purposes. (#​683)
  • OpenAL: Introduced ALC::setCapabilities. Rarely useful when opening multiple devices with different ALC capabilities. (#​582)
  • Vulkan: Struct classes now include an additional sType setter that writes the appropriate struct type value. (#​537)
  • Vulkan: Struct classes now include type-safe pNext setters, one for each struct type that is known to extend them.
    • These setters prepend the struct to the pNext chain, enabling cleaner code when chaining multiple structs.
    • Order does not matter, but do note that structs will be chained in the reverse order of the pNext calls.
    • Also be careful when the base struct is malloced, make sure to call .pNext(NULL) first, otherwise the last struct in the chain will point to invalid memory.
Fixes
  • Generator: Native libraries are now initialized before constants. (#​630)
  • Core: Fixed unsafe field reads in MemoryUtil setup code. (#​632)
  • Core: The SharedLibraryLoader now prepends a . to SHARED_LIBRARY_EXTRACT_DIRECTORY when the target directory is not temporary.
  • Core: The SharedLibraryLoader will now load libraries in the correct ClassLoader when testing for JDK-8195129. (#​648)
  • Core: Changed the encoding of dlopen paths to UTF-8. (#​691)
  • CUDA: Implemented missing cuIpcOpenEventHandle/cuIpcOpenMemHandle using libFFI.
  • EGL: Fixed nullability of eglInitialize arguments.
  • GLFW: Fixed main thread check. Setting GLFW_CHECK_THREAD0 to false is now required for offscreen interop. (#​538)
  • OpenCL: Added missing errcode_ret parameter to clLinkProgram. (#​560)
  • OpenGL: Restored GL_TEXTURE in the core profile. (#​573)
  • OpenGL: Added buffer object offset overloads to GetQueryObject* functions.
  • stb: Removed redundant stb_image_resize overloads. (#​605)
  • Vulkan: Fixed GLFW configuration for MoltenVK. (#​502)
  • Vulkan: Fixed vkGetInstanceProcAddr to work with null instance arguments.
  • Vulkan: Fixed unsigned arithmetic in VK_VERSION_MAJOR and VK_VERSION_MINOR macros.
Breaking Changes
(B): binary incompatible change
(S): source incompatible change
  • Linux: Shared libraries are now built on Ubuntu 18.04 (up from Ubuntu 16.04) (B)
    • GLIBC versions older than 2.14 are no longer supported. Some, but not all, LWJGL natives may require up to GLIBC 2.27.
    • Applications deployed on older systems must now build & bundle custom LWJGL natives. Contact LWJGL developers if you need assistance.
  • Removed deprecated methods that were marked for removal in LWJGL 3.3. (S)
  • Core: Users of the dyncall bindings must migrate to libffi. (S)
  • CUDA: Merged versioned classes into a single class that contains the entire functionality. (S)
    • The bindings still require CUDA 3.2 as the minimum version. There are runtime checks for functions introduced after 3.2.
  • Shaderc: The shaderc_spvc library has been removed since Shaderc 2020.4. Users may migrate to the new SPIRV-Cross bindings. (S)
  • Vulkan: All header boilerplate constants have been moved to VK10. (S)

v3.2.3: LWJGL 3.2.3

Compare Source

Changes since 3.2.2:

Bindings
  • Added Shaderc bindings. (#​77)
  • Added bindings to platform APIs that can be used to programmatically generate input events.
  • Assimp: Updated to 5.0.0rc2 (up from 5.0.0rc1).
  • bgfx: Updated to API version 100 (up from 99)
  • glfw: Updated to 3.4.0 pre-release (up from 3.3.0)
  • EGL: Added EGL_NV_stream_dma.
  • jemalloc: Updated to 5.2.1 (up from 5.2.0)
  • LibOVR: Updated to 1.39.0 (up from 1.35.0)
  • libdivide: Updated to 2.0 (up from 1.0)
  • lz4: Updated to 1.9.2 (up from 1.9.1)
    • Also, the LWJGL memory allocator is now used for internal allocations.
  • nuklear: Updated to 4.01.0 (up from 4.00.2)
  • OpenGL(ES): Added latest extensions.
    • GL_EXT_multiview_tessellation_geometry_shader
    • GL_EXT_multiview_texture_multisample
    • GL_EXT_multiview_timer_query
    • GL_EXT_texture_shadow_lod
    • GL_EXT_texture_sRGB_R8
    • GL_KHR_shader_subgroup
    • GL_NV_shader_subgroup_partitioned
    • GL_NVX_gpu_multicast2
    • GL_NVX_progress_fence
  • OpenVR: Updated to 1.6.10 (up from 1.3.22)
  • par: Updated par_shapes to latest version.
    • Added par_shapes_create_cone.
  • par: Added par_streamlines bindings.
  • rpmalloc: Updated to 1.4.0 (up from 1.3.2)
  • stb
    • Updated stb_image to 2.23 (up from 2.22)
    • Updated stb_truetype to 1.22 (up from 1.21)
    • Updated stb_vorbis to 1.17 (up from 1.16)
  • Vulkan: Updated to 1.1.121 (up from 1.0.107)
    • Includes MoltenVK 1.0.36
  • xxhash: Updated to 0.7.1 (up from 0.7.0)
  • Zstd: Updated to 1.4.3 (up from 1.4.0)
Improvements
  • Linux: Added support for ARM builds.
    • 32-bit: ARMv7/armhf architecture. Maven classifier: linux-arm32
    • 64-bit: ARMv8/AArch64 architecture. Maven classifier: linux-arm64
  • Windows: There is now a separate native JAR file per architecture.
    • The default contains x64 shared libraries only. Maven classifier: windows
    • lwjgl-natives-windows-x86.jar contains x86 shared libraries only. Maven classifier: windows-x86
    • The 32 suffix has been dropped from x86 shared library names.
  • Windows: Shared libraries are now built with Visual Studio 2019 (up from 2017)
  • Maven: LWJGL artifacts now include a Bill of Materials (lwjgl-bom). (#​481)
  • Refactored the layout of native JAR files.
    • Shared libraries have been moved from the root to a <platform>/<arch>/<module>/ subfolder.
      • <platform>: one of linux, macos, windows.
      • <arch>: one of x64, x86, arm64, arm32.
      • <module>: the corresponding Java module name as a package hierarchy.
      • Example: glfw.so in lwjgl-glfw-natives-linux.jar is under the linux/x64/org/lwjgl/glfw folder.
    • The new layout allows multiple native JAR files to be combined for custom deployment.
    • Custom (or the old) layout may be used with newly exposed Configuration options.
  • Core: Added enum Platform.Architecture and Platform.getArchitecture() API.
  • Core: Added relative & absolute apply(Consumer<T>) methods to StructBuffer<T>.
  • Core: Added Consumer<T> setters to structs with nested arrays of structs.
  • Core: Added memByteBuffer overloads that return ByteBuffer views of other buffer types.
  • Core: Added CLongBuffer, a class similar to PointerBuffer but for C long values.
Fixes
  • Core: Removed support for Critical JNI Natives. (#​490)
    • Will be restored in LWJGL 3.3 (disabled by default, enabled with a Configuration option).
  • Core: Fixed buffer attachment offset detection on JDK 12+. (#​491)
  • Core: Fixed ByteBuffer attachments in memSlice & memDuplicate.
  • Generator: Fixed invalid generation of functions with struct parameters passed by value. (#​496)
    • Affected bindings: OpenVR and LLVM/Clang.
  • Generator: Improved javadoc for array and nested struct members.
  • EGL/GLES: Fixed bootstrapping code.
    • Regression caused by org.lwjgl.system.JNI refactoring in 3.2.2.
  • LLVM: Fixed default library names.
  • lmdb: Reverted to the official release. (#​482)
    • Windows: Performance issues are eliminated, but sparse database mappings & incremental file growth are not supported anymore.
  • OpenGL: Fixed signatures of glGetnUniformiv and glGetnUniformuiv.
Breaking Changes
(B): binary incompatible change
(S): source incompatible change
  • Core: The Library.loadSystem & Library.loadNative methods now require a module name parameter. (S)
  • Core: Removed Consumer<T> overloads from read-only structs with nested struct members. (S)
  • Core: MemoryUtil.memFree(PointerBuffer) changed to memFree(CustomBuffer). (B)
  • LZ4: The autoFlush and favorDecSpeed members of LZ4F_preferences_t are now mapped to Java boolean. (S)
  • Vulkan: The descriptorCount member of VkWriteDescriptorSet must now be set explicitly. (S)
    • The semantics of descriptorCount may change via extensions, which invalidates auto-sizing.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@HyCraftHD HyCraftHD closed this Jan 3, 2025
@HyCraftHD HyCraftHD deleted the renovate/1.8.9-backport-org.lwjgl-lwjgl-tinyfd-3.x branch January 3, 2025 20:46
Copy link
Contributor Author

renovate bot commented Jan 3, 2025

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update (3.3.5). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant