Kotlin 1.0.3 Is Here!

We are delighted to present Kotlin 1.0.3. This update is not full of brand new and shiny features, it is more about bug fixes, tooling improvements and performance boosts. That’s why you’ll like it 😉 Take a look at the full change log and issues stats by subsystem:

Kotlin 1.0.3. Fixed issues

Specifically we want to express our gratitude to our contributors whose commits are included in 1.0.3 namely Yaroslav Ulanovych, Jake Wharton and Kirill Rakhman. Kirill has done more than a dozen improvements to formatter and submitted 20+ commits — great job, Kirill, we really appreciate it. Here we also want to thank each and every one of our EAP users who tested and provided their priceless feedback on 1.0.3 prerelease builds.

Although this update is not feature-rich, there are several important improvements and features which are worth highlighting here:

What’s new in the compiler:

  • New option -jdk-home to specify the JDK against which the code is compiled
  • Options to specify Kotlin language version (-language-version) and target Java version (-jvm-target) (will have effect in 1.1, added now for forward compatibility)
  • More efficient bytecode (no more iterator in indices loop, avoid unnecessary operations with Unit)
  • Various improvements to diagnostic messages

What’s new in the IDE:

  • Autosuggestion for Java to Kotlin conversion for Java code copied from browser and other sources outside of the IDE

  • Language injection for strings passed to parameters annotated with @Language. Also predefined Java injections applied in Kotlin code. Read more about using language injections in the documentation

  • Completion now always shows non-imported classes and methods and adds imports automatically when they are selected

  • Smart completion works after ‘by’ and ‘in’

  • Move Element Left/Right actions work for Kotlin

  • Decompile button is now available in Kotlin bytecode toolwindow and for .class files compiled with Kotlin

  • Now you can navigate from stacktrace to the call site of an inline function

  • Inspections and intentions to check and adjust Kotlin configuration in pom.xml files
  • Various Spring support improvements

How to update

To update the plugin, use Tools | Kotlin | Configure Kotlin Plugin Updates and press the “Check for updates now” button. Also, don’t forget to update the compiler and standard library version in your Maven and Gradle build scripts.

As usual, if you run into any problems with the new release, you’re welcome to ask for help on the forums, on Slack (get an invite here), or to report issues in the issue tracker.

Let’s Kotlin!

Comments below can no longer be edited.

9 Responses to Kotlin 1.0.3 Is Here!

  1. Avatar

    simophin says:

    July 1, 2016

    Great to hear this, trying it out today!!

    Just wondering if there are any plans to support creating Android xml resources on the fly? Like typing a R.string.message that doesn’t exist and you can quick fix it by creating an xml resource. This would be very helpful. Thanks.

    • Avatar

      Dmitry Jemerov says:

      July 1, 2016

      Yes, we eventually plan to support the full set of Android code insight features for Kotlin.

  2. Avatar

    Roberto Carlos Gonzalez Flores says:

    July 2, 2016

    Importing a java awt project brought my attention to think on a different platform, non-Android related like Swing, or JavaFX.
    Is there any experiment to use JavaFx and Kotlin?

  3. Avatar

    Tomasz Czura says:

    July 4, 2016

    I tried to update Kotlin plugin in Android studio to 1.0.3, and after that gradle (2.1.2) stucks (not ending) at assembleDebug task. On version 1.0.1-2 everything works well. What might be wrong?

    • Avatar

      Alexey Tsvetkov says:

      July 4, 2016

      Can you add “–debug” to gradle CLI options (in AS: Settings|Build, Execution, Deployment|Compiler|Command-line Options) and send us log (ideally create a youtrack issue
      Thread dump would be useful too. The easiest way is to use jvisualvm that comes with jdk:
      1. find GradleDaemon process in Applications;
      2. right click on it;
      3. click Thread Dump (when process presumably stucked).

  4. Avatar

    Justin says:

    July 7, 2016

    Will IDEA 14 be getting any further Kotlin plugin updates or is it deprecated? It seems that 1.0.3 only supports 15 and up. I’ll probably switch to Community Edition for my OSS project, but I’m wondering if I should abandon the idea of doing commercial projects in Kotlin with 14 in the future. My employer only has 13 and 14 licenses.

  5. Avatar

    Fabian Zeindl says:

    July 9, 2016

    Will there be code-rearrangement with section-lines for kotlin as well?

  6. Avatar

    Jørund Vier Skriubakken says:

    July 10, 2016

    Thanks for improving the performance of JS maps and sets!!!

    It speeded up our front JS application a lot!