Kotlin 1.2.40 EAP


#1

We’re happy to announce the Early Access Preview (EAP) build for Kotlin 1.2.40!

Getting the EAP build

For IntelliJ IDEA

You can configure Early Access Preview channel in ToolsKotlinConfigure Kotlin Plugin Updates. Change the update channel to ‘Early Access Preview 1.2.x’ and press Check for updates now.

For Maven or Gradle

Add the https://dl.bintray.com/kotlin/kotlin-eap repository URL to the list of project repositories. Here is how to do this in Gradle:

buildscript {
    ext.kotlin_version = '1.2.40-eap-16'

    repositories {
        maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

apply plugin: "kotlin"

repositories {
    maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib"
}

Change the version of Kotlin dependencies (compiler and stdlib) to 1.2.40-eap-16.

Please provide feedback and report issues to our issue tracker. Please don’t forget to specify your IDE/build system Kotlin plugin versions.


#2

#3

For all the others like me looking for the release notes, here they are: https://github.com/JetBrains/kotlin/releases/tag/v1.2.40-eap-16 :slight_smile:


#4

On the point about “Restricting visibility of classifiers inside companion objects”, I’m quite surprised that you were allowed in the first place to access nested classes in companions of direct super-types etc by their short names.

As the diagrams in KT-21515 clearly show, this can lead to some horrendous resolution issues.

I’m therefore pleased to hear that this is going to be outlawed in future. Access will still be permitted via fully qualified names, of course.


#5

It would be nice, if the EAP release would be linked on the homepage (kotlinlang.org).


#6

1.2.40 RC is available!

The complete list of changes is available here.

Highlights:

Compiler:
  • @JvmDefault annotation which makes interface methods default (Java interoperability);
  • Support crossinline lambda parameters of suspend function type;
  • Support default arguments for expected declarations;
  • Multiple performance improvements;
IDE:
  • Run action for Kotlin Scratch files;
  • Inspection to report the usage of Java Collections methods on immutable Kotlin Collections;
Tools:
  • Fix incremental compilation failures for kapt.

Getting the RC build

The instructions are the same as with 1.2.40 EAP.
Change the artifact versions to 1.2.40-eap-51.

Please provide feedback and report issues to our issue tracker. Please don’t forget to specify your IDE/build system Kotlin plugin versions.


#7

We will discuss this internally. Thank you for the advice!


#8

Spring Framework tests are green with 1.2.40-eap-51.