Releases: korlibs/korge
Releases · korlibs/korge
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
v5.1.0-Beta
Major changes
- Major: Improved audio stability. Added NewPlatformAudioOutput, providing a callback-based audio generator that is much more stable by @soywiz in #1983
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
- 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
Full Changelog: v5.0.6...v5.1.0-Beta
v5.0.6
What's Changed
- docs: Fix getting started description by @soywiz in #1926
- Fix typo in docs by @jhstatewide in #1927
- added tictactoe to tutorial list by @rafi0 in #1928
- Three-argument document.open() by @Bruce0203 in #1925
- Support cylindrical 3D coordinates by @soywiz in #1929
- Fix loading project afterEvaluate by @soywiz in #1930
- Add Container.unaryPlus by @soywiz in #1931
- Make UIMaterialLayer anchorable by @soywiz in #1932
- Deprecate Rectangle.xD, .yD, .widthD, .heightD by @soywiz in #1933
- UISlider, updated tooltip and material layers and lots of UI and geometry improvements by @soywiz in #1934
- Fixes small UIButton clicking issue by @soywiz in #1937
- Adds
DitheringFilter
by @soywiz in #1936 - Kotlin 1.9.20-RC by @soywiz in #1938
- Do not minify esbuild debug builds by @soywiz in #1941
- Fixes JSStackTrace on Safari/Firefox by @soywiz in #1939
- Make worker API more resilient on JS by @soywiz in #1940
- JVM FatJar and Proguard fixes by @soywiz in #1942
- Support JVM >= 19 on MacOS by disabling Metal and using OpenGL instead for now by @soywiz in #1943
- Cleanup JS webpack by @soywiz in #1945
- Supports packing macos app with a bundled Universal (ARM+x64) JRE by @soywiz in #1946
New Contributors
- @jhstatewide made their first contribution in #1927
- @Bruce0203 made their first contribution in #1925
Full Changelog: v5.0.5...v5.0.6
v5.0.5
What's Changed
- docs: List contributors grabbed from github API directly by @soywiz in #1915
- docs: Getting Started redirection by @soywiz in #1918
- Missing Ratio by @soywiz in #1913
- Fixed and tests runJvmAutoreload with configuration cache enabled by @soywiz in #1920
- Supports configuration cache with runJS by @soywiz in #1921
- Avoid kproject creating a test android source set by @soywiz in #1922
- Make Android tasks configuration-cacheable by @soywiz in #1923
- Stack overflow on UITreeView by @soywiz in #1919
Full Changelog: v5.0.4...v5.0.5
v5.0.4
v5.0.3
What's Changed
- docs: some fixes by @soywiz in #1905
- Feature/solidtriangle screenshot test by @rafi0 in #1899
- better solid triangle visual test by @rafi0 in #1907
- Continue when generating typed resources, when finding an invalid .ase file by @soywiz in #1908
- Add korlibs artifact aliases by @soywiz in #1910
- Detect invalid kproject.yaml versions by @soywiz in #1909
- Do not include K/N on Windows or Linux in kproject since it is used only for iOS now. Disable WASM target for now. by @soywiz in #1911
- Go back to Java 8 on Android by @soywiz in #1912
Full Changelog: v5.0.2...v5.0.3
v5.0.2
What's Changed
- add SolidTriangle by @rafi0 in #1894
- WASM: Reduce Android API level from 26 to 21 by using WebView instead of JavaScriptEngine by @soywiz in #1903
- Use Java 11 by default on JVM and Android by @soywiz in #1902
Documentation:
- Revamped documentation by @soywiz in #1898
- Adds documentation feedback by @soywiz in #1896
- docs: Check broken links on PRs by @soywiz in #1901
Full Changelog: v5.0.0...v5.0.2
v5.0.0
Major changes in 5.0.0
- KProject integrated into KorGE. Gradle template will be updated.
- Removed K/N desktop targets.
- Now is is possible to run WASM modules on all the targets, allowing non system-dependant libraries: image formats, physics and other libraries available to the KorGE ecosystem.
TimeSpan
is now a typealias ofkotlin.time.Duration
- Now there is FFI (Foreign Function Interface) available in common code usable in JVM (JNA) and JS (Deno). Experimental Deno support. Enabling support for new integrations. For example Steam in the future (not available yet).
- Integrated WEBP decoding.
- Kotlin 1.9.20-Beta2, will bump to the final version once available.
- Some API unification: some package renames, and some namings for Buffer and other clases.
- 2D geometry now uses Double again instead of Float. 3D geometry classes are still using floats.
- Artifacts restructured. Now we have
korge-foundation
,korge-core
andkorge
. Korlibs libraries not exported individually anymore. For 4.0.x compatibility and bugfixes: https://github.com/korlibs/korlibs4 documentation for korlibs4 here: https://korlibs4.soywiz.com/
Full Changelog: v4.0.10...v5.0.0
v5.0.0-RC
What's Changed
- Update TEST.yml restoring GRADLE_OPTS for windows by @soywiz in #1878
- Moved KStructure and KArena to FFI, removed old KPointer & some simplifications by @soywiz in #1882
- New improved Buffer implementation and remove TypedArrays by @soywiz in #1881
- Simplified directory structure by @soywiz in #1883
- Major restructuring of the documentation by @soywiz in #1885
- Fixes audio playback on JVM windows by @soywiz in #1886
- Fix sound in linux by @soywiz in #1887
- Fix serialization by @soywiz in #1888
- Fix JvmReferenceTest test on non-english locales by @soywiz in #1891
- Make libs.asm.util be available only on tests by @soywiz in #1890
- Some more float -> double changes by @soywiz in #1889
Full Changelog: v5.0.0-alpha...v5.0.0-RC
v5.0.0-alpha
What's Changed
- fix base16 xml entity by @lmvortex4k in #1838
- Add TOML parser by @soywiz in #1840
- Unify modules and folders by @soywiz in #1841
- Remove Watchos & Arm32 targets and unify Number.toCgFloat by @soywiz in #1843
- WASM Executor by @soywiz in #1844
- Disable coverage, and K/N macos, linux and mingw targets keeping tvOS and iOS K/N targets by @soywiz in #1845
- Bump to Kotlin 1.9.20-Beta by @soywiz in #1846
- Enables wasmJs target by @soywiz in #1847
- Some cleanups by @soywiz in #1848
- Try to reduce CI time by @soywiz in #1849
- Use gradle/gradle-build-action instead of actions/cache by @soywiz in #1851
- Convert some build.gradle into build.gradle.kts by @soywiz in #1852
- Remove remaining packs by @soywiz in #1853
- Try to unify JS and WASM workflows by @soywiz in #1854
- Moved some classes to korlibs.platform package by @soywiz in #1855
- Moved classes from korlibs.memory to korlibs.number package by @soywiz in #1856
- Cleanup korlibs.memory package by @soywiz in #1857
- Unify Number.niceStr implementations and move to korlibs.number by @soywiz in #1858
- Simplify korlibs.datastructure by @soywiz in #1859
- Bump to Kotlin 1.9.20-Beta2 by @soywiz in #1860
- Move korlibs.io.serialization to korlibs.serialization by @soywiz in #1862
- FFI on Common usable on JVM and JS/Deno by @soywiz in #1863
- Cleanup math package by @soywiz in #1864
- Fixes flaky tests due to mocha timeout not being set by @soywiz in #1865
- Add common implementation of workers for JVM/JS/Native by @soywiz in #1861
- Replace TimeSpan with Duration by @soywiz in #1866
- Fix warning for empty android test and wasm source sets by @soywiz in #1867
- Update gradle version and testc to use gradle -bin instead of -all by @soywiz in #1869
- Make 2D geometry to use Double again, while keeping Float geometry for 3D by @soywiz in #1868
- Some number constructors by @soywiz in #1870
- Add WEBP decoding support via WASM by @soywiz in #1872
- Added TypedArrays implementations mimicking JS and type-aliasing in that target by @soywiz in #1873
- Some extra TypedArrays additions by @soywiz in #1874
- Prepare deploy for new artifacts by @soywiz in #1876
- Add Spacing, Vector2F, Vector3F and Vector4F to debugger by @soywiz in #1877
- Handle new artifact groups by @soywiz in #1875
Full Changelog: v4.0.10...v5.0.0-alpha