v5.1.0
Major changes
- Major: Improved audio stability. Added NewPlatformAudioOutput, providing a callback-based audio generator that is much more stable by @soywiz in #1983
- Kotlin 1.9.20 in #2001
What's Changed
- Support packing win32 (x64) and linux apps by @soywiz in #1947
- Provide Closeable extending AutoCloseable on KDS and typealias on korio by @soywiz in #1948
- Precise thread sleeping by busy-waiting and improve NativeThread by @soywiz in #1949
- Implement Lock.notify + Lock.wait + Lock.waitPrecise by @soywiz in #1950
- Added SyncEventLoop by @soywiz in #1951
- Some preparations for a new GameWindow implementation on the JVM by @soywiz in #1952
- Some GameWindow and dispatcher cleanups by @soywiz in #1954
- Update gradle to 8.4 to support JDK 21 by @soywiz in #1956
- Enabled WindowsRegistryTest and added WindowsRegistryVfs.HKEY_CURRENT_USER/HKEY_LOCAL_MACHINE by @soywiz in #1955
- Try to circumvent an error on windows arm when configuring esbuild (error on Kotlin side trying to call uname on windows) by @soywiz in #1957
- Prepare new GameWindow by @soywiz in #1958
- Fixes esbuild task input that prevented regeneration when updating dependant submodules by @soywiz in #1964
- Use UseZGC on Java 17 or greater by @soywiz in #1966
- Fixes and improves android gradle tasks by @soywiz in #1965
- Some iOS gradle tasks fixes by @soywiz in #1967
- Gradle task runJs runs the debug build by @soywiz in #1963
- Move DeprecatedParameter to korlibs.annotations.* by @soywiz in #1969
- Make FastRandom global instance thread-safe by @soywiz in #1968
- Adds Pauseable interface + improves EventLoop by @soywiz in #1970
- NativeThread: pass the thread to itself. Adds NativeThread.threadSuggestRunning. Adds NativeThread.Companion.sleepWhile by @soywiz in #1971
- Added arraycopyStride & *Array.getSampled by @soywiz in #1972
- Bumps to Kotlin 1.9.20-RC2 by @soywiz in #1973
- Make Extra Thread Safe by @soywiz in #1974
- Lock on K/N sleep instead of spin on wait. Check that Lock.notify is in the right thread and locked + Tests by @soywiz in #1976
- Removed some unused ThreadLocal by @soywiz in #1978
- Adds Logger.logTime. Make Logger.invoke() threadSafe. Improved Logger on the JVM to display colors by @soywiz in #1977
- Moved TimedCache to korlibs.time package & add IntTimedCache + tests by @soywiz in #1975
- Cleanup some ThreadLocal by @soywiz in #1979
- Removed SDL2 code by @soywiz in #1980
- Moved FFI and JVM Cocoa code to korge-core and convert Cocoa from JNA to common FFI by @soywiz in #1981
- Proper implementation of ThreadLocal on K/N new memory model + tests by @soywiz in #1982
- Major: Improved audio stability. Added NewPlatformAudioOutput, providing a callback-based audio generator that is much more stable by @soywiz in #1983
- Unified GamePad controllers for all JVM platforms. Converts MacOS gamepad from JVM JNA to Common FFI by @soywiz in #1985
- Moved WindowsRegistry to common korlibs.io.file.registry by @soywiz in #1986
- Optimize some UI components to avoid repaining if not required by @soywiz in #1991
- Some misc minor improvements by @soywiz in #1992
- GameWindow.Cursor -> Cursor typealias by @soywiz in #1993
- Improved EventLoop by @soywiz in #1994
- Try to proper detect Android SDK by @soywiz in #1995
- Fixes readBitmapSlice not preserving the name by @soywiz in #2013
- Backport supporting undecorated AWT window by @soywiz in #2002
- Add and support preferSyncIo in tests & KorGE by @soywiz in #2015
- Adds FAKE Image Format + proper redirect ImageFormats methods by @soywiz in #2014
- Simplify readImage/Bitmap* signatures by providing a common interface BaseImageDecodingProps by @soywiz in #2016
Full Changelog: v5.0.6...v5.1.0