Kotlin v1.3.5 released, JVM-based programming language

Kotlin JVM-based programming language

Kotlin is a statically typed, cross-platform, general-purpose programming language with type inference. Kotlin is designed to interoperate fully with Java, and the JVM version of its standard library depends on the Java Class Library, but type inference allows its syntax to be more concise. Kotlin mainly targets the JVM but also compiles to JavaScript or native code (via LLVM). Kotlin is sponsored by JetBrains, a software development company based in Prague, and is also backed by Google under the Kotlin Foundation.

Kotlin is officially supported by Google for mobile development on Android. Since the release of Android Studio 3.0 in October 2017, Kotlin is included as an alternative to the standard Java compiler. The Android Kotlin compiler lets the user choose between targeting Java 6 or Java 8 compatible bytecode.

Changelog v1.3.5

Compiler

  • KT-12787 Debugger: Generate line number at end of function (to set a breakpoint on the last line of the block)
  • KT-23675 “Parameter specified as non-null is null: method org.jetbrains.kotlin.codegen.FrameMapBase.getIndex, parameter descriptor” when classes are defined inside an anonymous extension function and access a field of the extension function’s this instance
  • KT-24596 Refactor / Inline const property does not insert its value into usage in annotation
  • KT-25497 kotlinx.serialization – throws Backend Internal error exception during code generation of sealed classes
  • KT-28927 “IllegalStateException: Arrays of class literals are not supported yet” in AnnotationDeserializer.resolveArrayElementType
  • KT-31070 IndexOutOfBoundsException in Analyzer with @JvmOverloads constructor with 34+ parameters
  • KT-31265 FIR: experimental compiler
  • KT-31535 False positives from compiler warning IMPLICIT_NOTHING_AS_TYPE_PARAMETER
  • KT-31969 NI: false positive USELESS_ELVIS with multiple elvis calls
  • KT-32044 For loop over full UByte range terminates at UInt bound.
  • KT-25432 No smartcast on qualifier expression of captured type
  • KT-30796 psi2ir generates IrErrorType for elvis with generic type having nullable upper-bound when expected type is not nullable
  • KT-31242 “Can’t find enclosing method” proguard compilation exception with inline and crossinline
  • KT-31347 “IndexOutOfBoundsException: Insufficient maximum stack size” with crossinline and suspend
  • KT-31367 IllegalStateException: Concrete fake override public open fun (…) defined in TheIssue[PropertyGetterDescriptorImpl@1a03c376] should have exactly one concrete super-declaration: []
  • KT-31734 Empty parameter list required on Annotations of function types
  • KT-32434 New type inference fails for Caffeine Cache
  • KT-32452 Kotlin 1.3.40 – problem in IDE with new type inference and suspending method reference
  • KT-32407 NI: “use property access syntax” intention causes freezes in editor
  • KT-33127 Script result value is not calculated properly for the last expression
  • KT-33157 Inline class with generic method is considered bad class by javac

More

Download