@ilmat192 ilmat192 released this Jul 9, 2018 · 20 commits to master since this release

  • Singleton objects are frozen after creation, and shared between threads
  • String and primitives types are frozen by default
  • Common stdlib with Kotlin/JVM and Kotlin/JS
  • Implemented kotlin.random.* and Collection.shuffle
  • Implemented atomic integers and atomic references
  • Multiple bugfixes in compiler (coroutines, inliner)
  • Support 32-bit iOS (target ios_arm32)
  • New experimental Gradle plugin
  • Support XCode 9.4.1
  • Optimizations (switch by enum, memory management)


@alexander-gorshenev alexander-gorshenev released this Jun 8, 2018 · 112 commits to master since this release

  • Bugfixes in the runtime (indexOf, GC for kotlin.Array, enum equality) and the compiler
  • Fix NSBlock problem, preventing upload of binaries to the AppStore
  • Create primitive type boxes and kotlin.String as frozen by default
  • Support Gradle 4.7, provide separate run task for each executable
  • Support XCode 9.4 and CoreML and ClassKit frameworks on Apple platforms
  • Improved runtime Kotlin variable examination
  • Minor performance optimizations in compiled code and runtime
  • Add disableDesignatedInitializerChecks definition file support


@olonho olonho released this Apr 27, 2018 · 205 commits to master since this release

  • Interop with Objective-C/Swift changes:
    • Uniform direct and reverse interops (values could be passed in both directions now)
    • Interop by exceptions
    • Type conversion and checks (as, is) for interop types
    • Seamless interop on numbers, strings, lists, maps and sets
    • Better interop on constructors and initializers
  • Switched to Xcode 9.3 on Apple platforms
  • Introduced object freezing API, frozen object could be used from multiple threads
  • Kotlin enums are frozen by default
  • Switch to Gradle 4.6
  • Use Gradle native dependency model, allowing to use .klib as Maven artifacts
  • Introduced typed arrays API
  • Introduced weak references API
  • Activated global devirtualization analysis
  • Performance improvements (box caching, bridge inlining, others)
  • Static library generation


@ilmat192 ilmat192 released this Mar 23, 2018 · 382 commits to master since this release

  • Support several expectedBy-dependencies in Gradle plugin.
  • Improved interaction between Gradle plugin and IDE.
  • Various bugfixes


@olonho olonho released this Mar 2, 2018 · 382 commits to master since this release

  • Various bugfixes
  • Support total ordering in FP comparisons
  • Interop generates string constants from string macrodefinitions
  • STM32 blinky demo in pure Kotlin/Native
  • Top level variables initialization redesign (proper dependency order)
  • Support kotlin.math on WebAssembly targets
  • Support embedded targets on Windows hosts


@olonho olonho released this Feb 14, 2018 · 465 commits to master since this release

  • Support multiplatform projects (expect/actual) in compiler and Gradle plugin
    • Support first embedded target (STM32 board)
    • Support Kotlin 1.2.20
    • Support Java 9
    • Support Gradle 4.5
    • Transparent Objective-C/Kotlin container classes interoperability
    • Produce optimized WebAssembly binaries (10x smaller than it used to be)
    • Improved APIs for object transfer between threads and workers
    • Allow exporting top level C function in reverse interop with @cname annotation
    • Supported debugging of code with inline functions
    • Multiple bugfixes and performance optimizations


@ilmat192 ilmat192 released this Dec 28, 2017 · 645 commits to master since this release

  • Reverse interop allowing to call Kotlin/Native code compiled as framework from Objective-C/Swift programs
  • Reverse interop allowing to call Kotlin/Native code compiled as shared object from C/C++ programs
  • Support generation of shared objects and DLLs by the compiler
  • Migration to LLVM 5.0
  • Support WebAssembly target on Linux and Windows hosts
  • Make string conversions more robust
  • Support kotlin.math package
  • Refine workers and string conversion APIs


@ilmat192 ilmat192 released this Nov 4, 2017 · 852 commits to master since this release

  • Objective-C frameworks interop for iOS and OSX targets
  • Platform API libraries for Linux, iOS, OSX and Windows
  • Kotlin 1.2 supported
  • val and function parameters can be inspected in debugger
  • Experimental support for WebAssembly (wasm32 target)
  • Linux MIPS support (little and big endian, mips and mipsel targets)
  • Gradle plugin DSL fully reworked
  • Support for unit testing annotations and automatic test runner generation
  • Final executable size reduced
  • Various interop improvements (forward declaration, better handling of unsupported types)
  • Workers object subgraph transfer checks implemented
  • Optimized low level memory management using more efficient cycle tracing algorithm