Improvements in Java 9 support: we now recognize module-info files and report compilation errors on access to non-exported packages or non-required modules
Support for JSR 305 meta-annotations for nullability qualifiers (enabled by the -Xjsr305-annotations=enable compiler argument)
Dead code elimination tool for JS backend (more info)
Better support for JavaScript Unit Testing frameworks (more info)
Many improvements in generation of JS source maps; distribute kotlin.js library with source maps
New ‘Inline Property’ and ‘Copy Class’ refactorings
Bunch of new inspections and intentions
Improvements in Lint
Improvements in the performance of generated bytecode
You can configure Early Access Preview channel in Tools → Kotlin → Configure Kotlin Plugin Updates. Change the update channel to “Early Access Preview 1.1.x” and press Check for updates now.
Why is there no JavaFX support in the Kotlin REPL? Would be great to do some JavaFX prototyping using TornadoFX and the Kotlin REPL if the option was there. Does the EAP fix all the serious issues relating to IntelliJ freezing when Gradle Kotlin DSL is used?
kotlin compiler is using special generator for “suite” output in test compilation and actually using js lambdas
Can we expect kotlin lambdas be compiled to js ones, that will greatly simplify js debugging in browser?
The problem is debugging experience in browser is pathetic compared to IDEA.
Watching js code is simpler since kotlinjs is very strait forward translator and output is very readable most of the times. But any non trivial lambda usage emits multi page worth of “main$lambda5$lambda7”
Also currently js map shows empty kt files in chrome, but module structure is ok no idea why
Also currently js map shows empty kt files in chrome, but module structure is ok no idea why
That’s because browser can’t find sources. You should either setup browser properly (Sources tab → right click inside source tree → Add folder to workspace) or embed sources into source maps (install 1.1.4 EAP, then either open Kotlin facet in project structure or Kotlin compiler settings and choose corresponding inlining option).
I don’t think comiler will translate Kotlin lambdas to JavaScript lambdas in the near future, may be it’ll never do.
Are any improvements planned to sort out concurrency in the Kotlin REPL? Right now with the EAP you can run a TornadoFX program only ONCE per REPL session, and while the program is running it BLOCKS the main thread (can’t do other stuff in the REPL).