Kotlin 1.2.70 已发布,这是 Kotlin 1.2 的一个新的 bug 修复和工具更新版本。包括:
Kotlin/JS 增量编译改进
Kotlin/JS 增量编译得到了极大的改进。根据新的项目结构,这可以将开发速度提高 7 倍甚至更多。此外,Kotlin/JS Gradle builds 现在支持跨模块增量编译。
需注意的是,增量编译支持目前仍处于实验阶段,默认禁用,体验前需手动启用:
- 在 Gradle 项目中,添加
kotlin.incremental.js=true
到gradle.properties
或local.properties
- 在使用 IntelliJ IDEA 构建的项目中,转到 Settings | Build, Execution, Deployment | Compiler| Kotlin Compiler | Kotlin to JavaScript 并检查 Enable incremental compilation (experimental) 。
多平台项目更新
kotlin-stdlib-common 引入了许多新的特定于平台(platform-specific)的注释:
@JsName
,@JvmOverloads
,@JvmStatic
,@JvmName
,@JvmMultifileClass
,@JvmField
,@JvmSuppressWildcards
,@JvmWildcard
,@Volatile
,@Transient
,@Strictfp
, 和@Synchronized
IntelliJ IDEA 支持改进
快速修复改进
There’s a new inspection with a quick fix for converting a non-lazy collection transformations chain into a sequence equivalent. Using sequences helps avoid unnecessary temporary allocations overhead and, may significantly improve performance of complex processing pipelines:
IntelliJ IDEA 插件的其他改进
- Intentions to replace an
if
null-check with?.let
and the other way around - Inspection to detect unnecessary
with
calls - Intention to convert a property getter to initializer
- Inspection and quickfix to replace
assertTrue(a == b)
withassertEquals(a, b)
- “Redundant return label” inspection
- Quick-fix for default parameter value removal
- “
forEach
parameter unused” inspection - Lots of bug fixes and performance improvements
更多详情可查阅发行说明:
转自 https://www.oschina.net/news/99947/kotlin-1-2-70-released