Skip to content

Releases: JetBrains/kotlin

Kotlin 1.2.40 EAP 1

23 Mar 18:19
6fd4b0d

Choose a tag to compare

Kotlin 1.2.40 EAP 1 Pre-release
Pre-release

Compiler

New Features

  • KT-22703 Allow expect/actual annotation constructors to have default values
  • KT-19159 Support crossinline lambda parameters of suspend function type
  • KT-21913 Support default arguments for expected declarations
  • KT-19120 Provide extra compiler arguments in ScriptTemplateDefinition

Performance Improvements

  • KT-10057 Use lcmp instruction instead of kotlin/jvm/internal/Intrinsics.compare
  • KT-14258 Suboptimal codegen for private fieldaccess to private field in companion object
  • KT-18731 == between enums should use reference equality, not Intrinsics.areEqual().
  • KT-22714 Unnecessary checkcast to array of object from an array of specific type

Fixes

  • KT-16424 Fix broken bytecode for nullable generic method
  • KT-17171 Fix ClassCaseException in case of SAM conversion with out variance
  • KT-19399 Incorrect bytecode generated for inline functions in some complex cases
  • KT-21696 Incorrect warning for use-site target on extension function
  • KT-22031 Non-abstract expect classes should not have abstract members
  • KT-22260 Never flag inline suspend fun with NOTHING_TO_INLINE
  • KT-22352 Expect/actual checker can't handle properties and functions with the same name
  • KT-22652 Interface with default overrides is not perceived as a SAM
  • KT-22904 Incorrect bytecode generated for withIndex iteration on Array<Int>
  • KT-22906 Invalid class name generated for lambda created from method reference in anonymous object
  • KT-23044 Overriden public property with internal setter cannot be found in runtime
  • KT-23104 Incorrect code generated for LHS of an intrinsified in operator in case of generic type substituted with Character
  • KT-23309 Minor spelling errors in jvm internal error message

IDE

New Features

  • KT-10368 Run Action for Kotlin Scratch Files
  • KT-16892 Shortcut to navigate between header and impl
  • KT-23005 Support prefix/suffix attributes for language injection in Kotlin with annotations and comments

Performance Improvements

  • KT-19484 KotlinBinaryClassCache retains a lot of memory
  • KT-23183 ConfigureKotlinNotification.getNotificationString() scans modules with Kotlin files twice
  • KT-23380 Improve IDE performance when working with Spring projects

Fixes

  • KT-15482 KotlinNullPointerException in IDE from expected class with nested class
  • KT-15739 Internal visibility across common and platform-dependent modules
  • KT-19025 Not imported build.gradle.kts is red
  • KT-19165 IntelliJ should suggest to reload Gradle projects when Kotlin build scripts change
  • KT-20282 'Move statement up' works incorrectly for statement after 'finally' block if 'try' block contains closure
  • KT-20521 Kotlin Gradle script: valid build.gradle.kts is red and becomes normal only after reopening the project
  • KT-20592 KotlinNullPointerException: nested class inside expect / actual interface
  • KT-21013 "Move statement up/down" fails for multiline declarations
  • KT-21420 .gradle.kts editor should do no semantic highlighting until the first successful dependency resolver response
  • KT-21683 Language injection: JPAQL. Injection should be present for "query" parameter of @NamedNativeQueries
  • KT-21745 Warning and quickfix about kotlin-stdlib-jre7/8 -> kotlin-stdlib-jdk7/8 in Maven
  • KT-21746 Warning and quickfix about kotlin-stdlib-jre7/8 -> kotlin-stdlib-jdk7/8 in Gradle
  • KT-21753 Language injection: SpEL. Not injected for key in @Caching
  • KT-21771 All annotations in Annotations.kt from kotlin-test-js module wrongly have ACTUAL_MISSING
  • KT-21831 Opening class from kotlin-stdlib-jdk8.jar fails with EE: "Stub list in ... length differs from PSI"
  • KT-22229 Kotlin local delegated property Import auto-removed with "Java: Optimize imports on the fly"
  • KT-22724 ISE: "psiFile must not be null" at KotlinNodeJsRunConfigurationProducer.setupConfigurationFromContext()
  • KT-22817 Hitting 'Propagate Parameters' in Change Signature throws UnsupportedOperationException
  • KT-22851 Apply button is always active on Kotlin compiler settings tab
  • KT-22858 Multiplatform: String constructor parameter is reported in Java file of jvm module on creation of a new instance of a class from common module
  • KT-22865 Support multiple expectedBy dependencies when importing project from gradle or maven
  • KT-22873 Common module-based light classes do not see JDK
  • KT-22874 Exception on surround with "if else" when resulting if should be wrapped with ()
  • KT-22925 Unable to view Type Hierarchy from constructor call in expression
  • KT-22926 Confusing behavior of Type Hierarchy depending on the caret position at superclass constructor
  • KT-23097 Enhance multiplatform project wizard
  • KT-23271 Warn about using kotlin-stdlib-jre* libs in dependencyManagement section in Maven with eap and dev Kotlin versions

IDE. Gradle. Script

  • KT-23228 Do not highlight .gradle.kts files in non-Gradle projects

IDE. Inspections and Intentions

New Features

  • KT-16382 Intention to convert expr.unsafeCast<Type>() to expr as Type and vice versa
  • KT-20439 Add intentions to add/remove labeled return to last expression in a lambda
  • KT-22011 Inspection to report the usage of Java Collections methods on immutable Kotlin Collections
  • KT-22933 Add intention/inspection to convert Pair constructor to to function

Fixes

  • KT-12226 "Convert concatenation to template" does not process dollar sign as a Char
  • KT-15858 "Replace with a 'foreach' function call" intention breaks code
  • KT-16332 Add braces to 'if' statement intention does not put end-of-line comment properly into braces
  • KT-17058 Create implementations from headers: each implementation gets own file
  • KT-17306 Don't report package name mismatch if there's no Java code in the module
  • KT-19730 Quickfix for delegated properties boilerplate generation doesn't work on locals
  • KT-21005 Missing KDoc inspection seems to have broken in 1.1.60 EAP
  • KT-21082 Create actual declaration of top-level subclass of expected sealed class in the same file as actual declaration of sealed class present
  • KT-22110 "Can be joined with assignment" inspection underlining extends into comment
  • KT-22329 "Create class" quickfix is not suggested in when branch
  • KT-22428 Create member function from usage shouldn't present type par...
Read more

Kotlin 1.2.31

23 Mar 11:47
3f71d36

Choose a tag to compare

Compiler

  • Support nullability annotations in androidx package

IDE. Inspections and Intentions

  • KT-22804 "Remove redundant backticks" inspection reports all names and quick fix fails for non-applicable names

Tools. Gradle

  • KT-23192 Issue with experimental mode in Android Extensions and Android Gradle plugin 3.2.0-alpha05

Bugfixes

  • KT-22205 Hitting breakpoints in Kotlin sometimes doesn't work
  • Fix compatibility with LivePlugin

1.2.30

01 Mar 16:11

Choose a tag to compare

CHANGELOG

1.2.30

Android

  • KT-19300 [AS3.0] Android extensions, Parcelable: editor shows warning about incomplete implementation on a class with Parcelize annotation
  • KT-22168 "Kotlin Android | Illegal Android Identifier" inspection reports non-instrumentation unit tests
  • KT-22700 Android Extensions bind views with dot in ID

Compiler

New Features

  • KT-17336 Introduce suspendCoroutineUninterceptedOrReturn coroutine intrinsic function
  • KT-22766 Imitate "suspend" modifier in 1.2.x by stdlib function

Performance Improvements

  • KT-5177 Optimize code generation for 'for' loop with withIndex()
  • KT-16880 Smarter detection of tail-suspending unit invocations

Fixes

  • KT-10494 IAE in CheckMethodAdapter.checkInternalName when declaring classes inside method with non-standard name
  • KT-16079 Internal error when using suspend operator plus
  • KT-17091 Converting to SAM Java type appends non-deterministic hash to class name
  • KT-18522 Internal compiler error with IndexOutOfBoundsException, "Exception while analyzing expression"
  • KT-18578 Compilation failure with @JsonInclude and default interface method
  • KT-19786 Kotlin — unable to override a Java function with @nullable vararg argument
  • KT-20466 JSR305 false positive for elvis operator
  • KT-20705 Tail suspend call optimization doesn't work in when block
  • KT-20708 Tail suspend call optiomization doesn't work in some branches
  • KT-20855 Unnecessary safe-call reported on nullable type
  • KT-21165 Exception from suspending function is not caught
  • KT-21238 Nonsensical warning "Expected type does not accept nulls in Java, but the value may be null in Kotlin"
  • KT-21258 Raw backing field value exposed via accessors?
  • KT-21303 Running on JDK-10-ea-31 leads to ArrayIndexOutOfBoundsException
  • KT-21642 Back-end (JVM) Internal error: Couldn't transform method node on using open keyword with suspend for a top-level function
  • KT-21759 Compiler crashes on two subsequent return statements in suspend function
  • KT-22029 Fold list to pair with destructuring assignment and inner when results in Exception
  • KT-22345 OOM in ReturnUnitMethodReplacer
  • KT-22410 invalid compiler optimization for nullable cast to reified type
  • KT-22577 Compiler crashes when coroutineContext is used inside of inlined lambda

IDE

New Features

  • KT-8352 Pasting Kotlin code into package could create .kt file
  • KT-16710 Run configuration to run main() as a Node CLI app
  • KT-16833 Allow mixing Java and Kotlin code in "Analyze Data Flow..."
  • KT-21531 JS: add support for running specific test from the gutter icon with Jest testing framework

Performance Improvements

  • KT-21450 Add caching for Module.languageVersionSettings
  • KT-21517 OOME during find usages

Fixes

  • KT-7316 Go to declaration in Kotlin JavaScript project navigates to JDK source in some cases
  • KT-8563 Refactor / Rename inserts line breaks without reason
  • KT-11467 Editor: var property in primary constructor is shown not underscored, same as val
  • KT-13509 Don't show run line markers for top-level functions annotated with @test
  • KT-13971 Kotlin Bytecode tool window: Decompile is available for incompilable code, CE at MemberCodegen.genFunctionOrProperty()
  • KT-15000 Do not spell check overridden declaration names
  • KT-15331 "Kotlin not configured" notification always shown for common module in multiplatform project
  • KT-16333 Cannot navigate to super declaration via shortcut
  • KT-16976 Introduce special SDK for Kotlin JS projects to avoid using JDK
  • KT-18445 multiplatform project: provide more comfortable way to process cases when there are missed method implemenation in the implementation class
  • KT-19194 Some Live Templates should probably be enabled also for "expressions" not only "statements"
  • KT-20281 multiplatform:Unresolved service JavaDescriptorResolver on a file with several header declarations and gutters not shown
  • KT-20470 IntelliJ indent guide/invisible brace matching hint tooltip doesn't show context
  • KT-20522 Add "Build" action in "Before launch" block when create new JS run configuration (for test)
  • KT-20915 Add quickfix for ‘Implicit (unsafe) cast from dynamic type’
  • KT-20971 Cannot navigate to sources of compiled common dependency
  • KT-21115 Incomplete actual class should still have navigation icon to expect class
  • KT-21688 UIdentifier violates JvmDeclarationElement contract
  • KT-21874 Unexpected IDE error "Unknown type [typealias ...]"
  • KT-21958 Support "Alternative source available" for Kotlin files
  • KT-21994 Collapsed comments containing * get removed in the summary line.
  • KT-22179 For properties overridden in object literals, navigation to inherited properties is missing indication of a type they are overridden
  • KT-22214 Front-end Internal error: Failed to analyze declaration
  • KT-22230 Reformatting code to Kotlin style indents top-level typealiases with comments
  • KT-22242 Semantic highlighting uses different colors for the same 'it' variable and same color for different 'it's
  • KT-22301 Don't require space after label for lambda
  • KT-22346 Incorrect indentation for chained context extension functions (lambdas) when using Kotlin style guide
  • KT-22356 Update status of inspection "Kotlin JVM compiler configured but no stdlib dependency" after pom file update, not on re-import
  • KT-22360 MPP: with "Create separate module per source set" = No expectedBy dependency is imported not transitively
  • KT-22374 "Join lines" works incorrectly in case of line containing more than one string literal
  • KT-22473 Regression in IntelliJ Kotlin Plugin 1.2.20, settings.gradle.kts script template is wrong
  • KT-22508 Auto-formatting should insert an indentation for default parameter values
  • KT-22557 Dead 'Apply' button, when setting code style
  • KT-22565 Cant do PsiAnchor.create on annotation in annotation
  • KT-22570 Can't add import in "Packages to Use Import with '*'" section on "Import" tab in Code Style -> Kotlin
  • KT-22641 Auto-formatting adds extra indent to a closing square bracket on a separate line
  • KT-22734 LinkageError: "loader constraint violation: when resolving method PsiTreeUtilKt.parentOfType()" at KotlinConverter.convertPsiElement$uast_kotlin()

IDE. Debugger

  • KT-20351 Stepping over a line with ...
Read more

1.2.30-eap-47

15 Feb 10:36

Choose a tag to compare

1.2.30-eap-47 Pre-release
Pre-release

CHANGELOG

1.2.30 EAP-2

Android

  • KT-19300 [AS3.0] Android extensions, Parcelable: editor shows warning about incomplete implementation on a class with Parcelize annotation
  • KT-22168 "Kotlin Android | Illegal Android Identifier" inspection reports non-instrumentation unit tests
  • KT-22700 Android Extensions bind views with dot in ID

Compiler

New Features

  • KT-17336 Introduce suspendCoroutineUninterceptedOrReturn coroutine intrinsic function
  • KT-22766 Imitate "suspend" modifier in 1.2.x by stdlib function

Performance Improvements

  • KT-5177 Optimize code generation for 'for' loop with withIndex()
  • KT-16880 Smarter detection of tail-suspending unit invocations

Fixes

  • KT-10494 IAE in CheckMethodAdapter.checkInternalName when declaring classes inside method with non-standard name
  • KT-16079 Internal error when using suspend operator plus
  • KT-17091 Converting to SAM Java type appends non-deterministic hash to class name
  • KT-18522 Internal compiler error with IndexOutOfBoundsException, "Exception while analyzing expression"
  • KT-18578 Compilation failure with @JsonInclude and default interface method
  • KT-19786 Kotlin — unable to override a Java function with @nullable vararg argument
  • KT-20466 JSR305 false positive for elvis operator
  • KT-20705 Tail suspend call optimization doesn't work in when block
  • KT-20708 Tail suspend call optiomization doesn't work in some branches
  • KT-20855 Unnecessary safe-call reported on nullable type
  • KT-21165 Exception from suspending function is not caught
  • KT-21238 Nonsensical warning "Expected type does not accept nulls in Java, but the value may be null in Kotlin"
  • KT-21258 Raw backing field value exposed via accessors?
  • KT-21303 Running on JDK-10-ea-31 leads to ArrayIndexOutOfBoundsException
  • KT-21642 Back-end (JVM) Internal error: Couldn't transform method node on using open keyword with suspend for a top-level function
  • KT-21759 Compiler crashes on two subsequent return statements in suspend function
  • KT-22029 Fold list to pair with destructuring assignment and inner when results in Exception
  • KT-22345 OOM in ReturnUnitMethodReplacer
  • KT-22410 invalid compiler optimization for nullable cast to reified type
  • KT-22577 Compiler crashes when coroutineContext is used inside of inlined lambda

IDE

New Features

  • KT-8352 Pasting Kotlin code into package could create .kt file
  • KT-16710 Run configuration to run main() as a Node CLI app
  • KT-16833 Allow mixing Java and Kotlin code in "Analyze Data Flow..."
  • KT-21531 JS: add support for running specific test from the gutter icon with Jest testing framework

Performance Improvements

  • KT-21450 Add caching for Module.languageVersionSettings
  • KT-21517 OOME during find usages

Fixes

  • KT-7316 Go to declaration in Kotlin JavaScript project navigates to JDK source in some cases
  • KT-8563 Refactor / Rename inserts line breaks without reason
  • KT-11467 Editor: var property in primary constructor is shown not underscored, same as val
  • KT-13509 Don't show run line markers for top-level functions annotated with @test
  • KT-13971 Kotlin Bytecode tool window: Decompile is available for incompilable code, CE at MemberCodegen.genFunctionOrProperty()
  • KT-15000 Do not spell check overridden declaration names
  • KT-15331 "Kotlin not configured" notification always shown for common module in multiplatform project
  • KT-16333 Cannot navigate to super declaration via shortcut
  • KT-16976 Introduce special SDK for Kotlin JS projects to avoid using JDK
  • KT-18445 multiplatform project: provide more comfortable way to process cases when there are missed method implemenation in the implementation class
  • KT-19194 Some Live Templates should probably be enabled also for "expressions" not only "statements"
  • KT-20281 multiplatform:Unresolved service JavaDescriptorResolver on a file with several header declarations and gutters not shown
  • KT-20470 IntelliJ indent guide/invisible brace matching hint tooltip doesn't show context
  • KT-20522 Add "Build" action in "Before launch" block when create new JS run configuration (for test)
  • KT-20915 Add quickfix for ‘Implicit (unsafe) cast from dynamic type’
  • KT-20971 Cannot navigate to sources of compiled common dependency
  • KT-21115 Incomplete actual class should still have navigation icon to expect class
  • KT-21688 UIdentifier violates JvmDeclarationElement contract
  • KT-21874 Unexpected IDE error "Unknown type [typealias ...]"
  • KT-21958 Support "Alternative source available" for Kotlin files
  • KT-21994 Collapsed comments containing * get removed in the summary line.
  • KT-22179 For properties overridden in object literals, navigation to inherited properties is missing indication of a type they are overridden
  • KT-22214 Front-end Internal error: Failed to analyze declaration
  • KT-22230 Reformatting code to Kotlin style indents top-level typealiases with comments
  • KT-22242 Semantic highlighting uses different colors for the same 'it' variable and same color for different 'it's
  • KT-22301 Don't require space after label for lambda
  • KT-22346 Incorrect indentation for chained context extension functions (lambdas) when using Kotlin style guide
  • KT-22356 Update status of inspection "Kotlin JVM compiler configured but no stdlib dependency" after pom file update, not on re-import
  • KT-22360 MPP: with "Create separate module per source set" = No expectedBy dependency is imported not transitively
  • KT-22374 "Join lines" works incorrectly in case of line containing more than one string literal
  • KT-22473 Regression in IntelliJ Kotlin Plugin 1.2.20, settings.gradle.kts script template is wrong
  • KT-22508 Auto-formatting should insert an indentation for default parameter values
  • KT-22557 Dead 'Apply' button, when setting code style
  • KT-22565 Cant do PsiAnchor.create on annotation in annotation
  • KT-22570 Can't add import in "Packages to Use Import with '*'" section on "Import" tab in Code Style -> Kotlin
  • KT-22641 Auto-formatting adds extra indent to a closing square bracket on a separate line
  • KT-22734 LinkageError: "loader constraint violation: when resolving method PsiTreeUtilKt.parentOfType()" at KotlinConverter.convertPsiElement$uast_kotlin()

IDE. Debugger

Read more

1.2.30-eap-16

01 Feb 14:20

Choose a tag to compare

1.2.30-eap-16 Pre-release
Pre-release

CHANGELOG

1.2.30 EAP

Compiler

New Features

  • KT-17336 Introduce suspendCoroutineUninterceptedOrReturn coroutine intrinsic function

Performance Improvements

  • KT-5177 Optimize code generation for 'for' loop with withIndex()
  • KT-16880 Smarter detection of tail-suspending unit invocations

Fixes

  • KT-10494 IAE in CheckMethodAdapter.checkInternalName when declaring classes inside method with non-standard name
  • KT-16079 Internal error when using suspend operator plus
  • KT-20705 Tail suspend call optimization doesn't work in when block
  • KT-20708 Tail suspend call optiomization doesn't work in some branches
  • KT-21165 Exception from suspending function is not caught
  • KT-21258 Raw backing field value exposed via accessors?
  • KT-21303 Running on JDK-10-ea-31 leads to ArrayIndexOutOfBoundsException
  • KT-21642 Back-end (JVM) Internal error: Couldn't transform method node on using open keyword with suspend for a top-level function
  • KT-21759 Compiler crashes on two subsequent return statements in suspend function
  • KT-22029 Fold list to pair with destructuring assignment and inner when results in Exception
  • KT-22345 OOM in ReturnUnitMethodReplacer

IDE

New Features

  • KT-16833 Allow mixing Java and Kotlin code in "Analyze Data Flow..."

Performance Improvements

  • KT-21450 Add caching for Module.languageVersionSettings
  • KT-21517 OOME during find usages

Fixes

  • KT-7316 Go to declaration in Kotlin JavaScript project navigates to JDK source in some cases
  • KT-11467 Editor: var property in primary constructor is shown not underscored, same as val
  • KT-13509 Don't show run line markers for top-level functions annotated with @test
  • KT-13971 Kotlin Bytecode tool window: Decompile is available for incompilable code, CE at MemberCodegen.genFunctionOrProperty()
  • KT-15000 Do not spell check overridden declaration names
  • KT-16333 Cannot navigate to super declaration via shortcut
  • KT-16976 Introduce special SDK for Kotlin JS projects to avoid using JDK
  • KT-19194 Some Live Templates should probably be enabled also for "expressions" not only "statements"
  • KT-20470 IntelliJ indent guide/invisible brace matching hint tooltip doesn't show context
  • KT-20915 Add quickfix for ‘Implicit (unsafe) cast from dynamic type’
  • KT-21688 UIdentifier violates JvmDeclarationElement contract
  • KT-21958 Support "Alternative source available" for Kotlin files
  • KT-21994 Collapsed comments containing * get removed in the summary line.
  • KT-22179 For properties overridden in object literals, navigation to inherited properties is missing indication of a type they are overridden
  • KT-22214 Front-end Internal error: Failed to analyze declaration
  • KT-22230 Reformatting code to Kotlin style indents top-level typealiases with comments
  • KT-22242 Semantic highlighting uses different colors for the same 'it' variable and same color for different 'it's
  • KT-22356 Update status of inspection "Kotlin JVM compiler configured but no stdlib dependency" after pom file update, not on re-import
  • KT-22374 "Join lines" works incorrectly in case of line containing more than one string literal
  • KT-22473 Regression in IntelliJ Kotlin Plugin 1.2.20, settings.gradle.kts script template is wrong

IDE. Debugger

  • KT-20351 Stepping over a line with two inline stdlib functions steps into the second function
  • KT-21945 Double stop on same line during step over if inline call is present

IDE. Inspections and Intentions

New Features

  • KT-22038 Inspection to replace the usage of Java Collections methods on subtypes of MutableList with the methods from Kotlin stdlib
  • KT-22171 Add Intention for single character substring
  • KT-22409 Intention for changing property setter accessibility

Performance Improvements

  • KT-21137 Kotlin instantiates something expensive via reflection when highlighting Java file

Fixes

  • KT-18007 Inspection doesn't suggest Maven Plugin for kotlin-stdlib-jre8
  • KT-18308 'Remove braces from else statement' intention breaks code
  • KT-18912 multiplatform project: Convert to enum class: header sealed class cannot convert nested objects to enum values
  • KT-21600 suspend modifier should go after override in overridden suspend functions
  • KT-21881 Replace "If" with safe access intention false positive
  • KT-22054 Replace '!=' with 'contentEquals' should be replace '==' with 'contentEquals'
  • KT-22159 "Replace return with 'if' expression" should not place return before expressions of type Nothing
  • KT-22221 QuickFix to remove unused constructor parameters shouldn't delete parenthesis
  • KT-22335 IOE from KotlinUnusedImportInspection.scheduleOptimizeImportsOnTheFly
  • KT-22339 Remove setter parameter type: error while creating problem descriptor

IDE. Refactorings

  • KT-17047 Refactorings for related standard "scoping functions" conversion: 'let' <-> 'run', 'apply' <-> 'also'
  • KT-22200 Overriden function generated from completion is missing suspend modifier
  • KT-22359 Refactor / Rename file: Throwable at RenameProcessor.performRefactoring()
  • KT-22461 Rename doesn't work on private top-level members of multi-file parts

JavaScript

  • KT-20735 JS: kotlin.test-js integration tests terminate build on failure

Libraries

  • KT-16661 Performance overhead in string splitting in Kotlin versus Java?
  • KT-22042 Suboptimal Strings#findAnyOf

Tools

  • KT-22196 kotlin-compiler-embeddable bundles outdated kotlinx.coroutines since 1.1.60

Tools. CLI

  • KT-19051 Suppress Java 9 illegal access warnings

Tools. Gradle

  • KT-18462 Add 'org.jetbrains.kotlin.platform.android' plugin.

Tools. J2K

  • KT-21635 J2K: create "inspection based post-processing"

1.2.21

23 Jan 14:45
@4u7 4u7

Choose a tag to compare

Fixes

  • KT-22349 Android: creating new Basic activity fails with Throwable: "Inconsistent FILE tree in SingleRootFileViewProvider" at SingleRootFileViewProvider.checkLengthConsistency()
  • KT-22459 Remove .proto files from kotlin-reflect.jar

Full changelog

1.2.20

17 Jan 10:47
@4u7 4u7

Choose a tag to compare

CHANGELOG

Android

  • KT-20085 Android Extensions: ClassCastException after changing type of view in layout XML
  • KT-20235 Error, can't use plugin kotlin-android-extensions
  • KT-20269 Mark 'kapt.kotlin.generated' as a source root automatically in Android projects
  • KT-20545 Parcelable: Migrate to canonical NEW-DUP-INVOKESPECIAL form
  • KT-20742 @serializable and @parcelize do not work together
  • KT-20928 @parcelize. Verify Error for Android Api 19

Binary Metadata

  • KT-11586 Support class literal annotation arguments in AnnotationSerializer

Compiler

New Features

  • KT-17944 Allow 'expect' final member be implemented by 'actual' open member
  • KT-21982 Recognize Checker Framework declaration annotations
  • KT-17609 Intrinsic suspend val coroutineContext

Performance Improvements

  • KT-21322 for-in-char-sequence loop improvements
  • KT-21323 Decreasing range loop improvements

Fixes

  • KT-4174 Verify error on lambda with closure in local class super call
  • KT-10473 Inapplicable diagnostics for mixed JS / JVM projects
  • KT-12541 VerifyError: Bad type on operand stack for local variable captured in local class
  • KT-13454 VerifyError on capture of outer class properties in closure inside inner class constructor
  • KT-14148 VerifyError: Bad type on operand stack for anonymous type inheriting inner class
  • KT-18254 enumValueOf and enumValues throw UnsupportedOperationException when used within a non-inline function block
  • KT-18514 IllegalStateException on compile object that inherits its inner interface or class
  • KT-18639 VerifyError: Bad type on operand stack
  • KT-19188 Nondeterministic method order in class files using DefaultImpls
  • KT-19827 Strange VerifyError in simple Example
  • KT-19928 Analyze / Inspect Code: ISE "Concrete fake override public final fun ()" at BridgesKt.findConcreteSuperDeclaration()
  • KT-20433 NPE during JVM code generation
  • KT-20639 Obsolete term "native" used in error message
  • KT-20802 USELESS_CAST diagnostic in functions with expression body
  • KT-20873 False CAST_NEVER_SUCCEEDS when upcasting Nothing
  • KT-20903 Method reference to expect function results in bogus resolution ambiguity
  • KT-21105 Compiler incorrectly optimize the operator in with a floating point type range with NaN bound.
  • KT-21146 ArrayIndexOutOfBoundsException at org.jetbrains.kotlin.codegen.MemberCodegen.generateMethodCallTo(MemberCodegen.java:841)
  • KT-21267 Report pre-release errors if pre-release compiler is run with a release language version
  • KT-21321 for-in-array loop improvements
  • KT-21343 Compound assignment operator compiles incorrectly when LHS is a property imported from object
  • KT-21354 Inconsistent behavior of 'for-in-range' loop if range is an array variable modified in loop body
  • KT-21532 Enum constructor not found
  • KT-21535 SAM wrapper is not created for a value of functional type in delegating or super constructor call in secondary constructor
  • KT-21671 Inline sam wrapper during inline in another module
  • KT-21919 Invalid MethodParameters attribute generated for "$DefaultImpls" synthetic class with javaParameters=true
  • KT-20429 False-positive 'Unused return value of a function with lambda expression body' in enum constant constructor
  • KT-21827 SMAP problem during default lambda parameter inline

IDE

New Features

  • KT-4001 Allow to set arguments indent to 1 tab (currently two and not customized)
  • KT-13378 Provide ability to configure highlighting for !! in expressions and ? in types
  • KT-17928 Support code folding for primary constructors
  • KT-20591 Show @StringRes/@IntegerRes annotations in parameter info
  • KT-20952 "Navigate | Related symbol" should support expect/actual navigation
  • KT-21229 Make it possible to explicitly select "latest" language/API version
  • KT-21469 Wrap property initializers after equals sign
  • KT-14670 Support kotlinPackageName() macro in live templates
  • KT-14951 Editor: navigate actions could be available in intention menu (as done in Java)
  • KT-15320 Live templates: Add function which returns the "outer" class name
  • KT-20067 Return label hints
  • KT-20533 Show "this" and "it" type hints in lambdas.
  • KT-20614 Change location of initial parameter type hint when parameters are on multiple lines
  • KT-21949 Please add a separate Color Scheme settings for properties synthesized from Java accessors
  • KT-21974 Editor color scheme option for Kotlin typealias names

Performance Improvements

  • KT-17367 Rebuild requested for index KotlinJavaScriptMetaFileIndex
  • KT-21632 Freezing on typing
  • KT-21701 IDEA 2017.3 high CPU usage

Fixes

  • KT-9562 Wrong indent after Enter after an annotation
  • KT-12176 Formatter could reformat long primary constructors
  • KT-12862 Formatting: Weird wrapping setting for long ?: operator
  • KT-15099 Odd code formatting when chaining lambdas and splitting lines on operators
  • KT-15254 Use Platform icons for "Run" icon in gutter
  • KT-17254 Remove obsolete unfold-icons in structure view
  • KT-17838 Can't report exceptions from the Kotlin plugin 1.1.4-dev-119 in IDEA #IU-171.4424.37
  • KT-17843 Don't show parameter name hints when calling Java methods with unknown parameter names
  • KT-17964 Local variable type hints in editor for anonymous object
  • KT-17965 Do not shown argument name hints for assert
  • KT-18829 Do not show parameter name hints for mapOf
  • KT-18839 Semantic highlighting not work for local variables in init
  • KT-19012 Data Flow from here: doesn't find template usages
  • KT-19017 Data Flow from here doesn't find usage in range position of for cycle
  • KT-19018 Data Flow from here doesn't find any usages of for-variable
  • KT-19036 Data Flow from here: please find calls of extension too
  • KT-19039 Data Flow from here: please find cases when an investigated variable is transferred as a parameter into a library function
  • KT-19087 Data flow to here: usages with explicit receiver are not found
  • KT-19089 Data Flow to here: ...
Read more

1.2.20-eap-71

12 Jan 14:06
@4u7 4u7

Choose a tag to compare

1.2.20-eap-71 Pre-release
Pre-release

Changes since 1.2.20-eap-33

Compiler

  • KT-17609 Intrinsic suspend val coroutineContext
  • KT-20864 Provide ReadOnly and Mutable annotations to control java collection mutability in kotlin
  • KT-20429 False-positive 'Unused return value of a function with lambda expression body' in enum constant constructor

IDE

New Features

  • KT-14670 Support kotlinPackageName() macro in live templates
  • KT-14951 Editor: navigate actions could be available in intention menu (as done in Java)
  • KT-15320 Live templates: please add function which returns the "outer" class name
  • KT-20067 Return label hints
  • KT-20533 Show "this" and "it" type hints in lambdas.
  • KT-20614 Change location of initial parameter type hint when parameters are on multiple lines
  • KT-21949 Please add a separate Color Scheme settings for properties synthesized from Java accessors
  • KT-21974 Editor color scheme option for Kotlin typealias names

Fixes

  • KT-11503 cmd+shift+enter action in .kt files does not work on empty lines
  • KT-17217 Navigate to symbol: hard to choose between a lot of extension overloads
  • KT-18674 Join Lines should join strings
  • KT-19524 "Local variable type hints" should respect static imports
  • KT-21010 gutter "Is subclassed by" should show actual subclass from the all platform modules in IDEA 2017.3/2018.1
  • KT-21036 Throwable “Access is allowed from event dispatch thread only.” after creating nine similar classes with functions.
  • KT-21213 multiline kdoc - intellij joins lines together without space
  • KT-21592 -Xjsr305=strict not taken into account during the kotlin files compilation in Idea (maven)
  • KT-22050 Redundant parameter type hint on SAM
  • KT-22071 Formatter insists on increasing indentation in forEach lambda
  • KT-22093 Unnecessary line wrap with new Kotlin code style
  • KT-22111 Error while indexing PsiPlainTextFileImpl cannot be cast to KtFile
  • KT-22121 Enter in empty argument list should apply normal indent if "Continuation indent for argument list" is off

IDE. Inspections and Intentions

New Features

  • KT-16260 Add intention to specify all types explicitly in destructuring assignment
  • KT-21547 Allow separate regex for test class and function names in IDE inspection
  • KT-21741 Inspection to detect is checks for object types
  • KT-21950 Enable quick-fixes for annotator-reported problems in "Inspect Code"
  • KT-22103 SortModifiersInspection should report annotations after modifiers

Fixes

  • KT-12814 Specify type explicitly produces erroneous code when platform type overrides not-null type
  • KT-15180 Incorrect quickfix 'Specify type explicitly'
  • KT-17816 "Replace elvis with if" produce nasty code when safe casts are involved
  • KT-18396 Bad quickfix for wrong nested classes in inner class
  • KT-19073 No-op quick fix for "Convert lambda to reference" IDE suggestion
  • KT-19283 Kotlin KProperty reference cannot be converted to lambda
  • KT-19736 Rephrase text in the unconventional property name inspection
  • KT-19771 Preserve old "Convert to expression body" range
  • KT-20437 Naming convetions inspection: Add separate inspection for top-level and object properties
  • KT-20620 Replace operator with function call breaks code
  • KT-21414 OverridersSearch attempts to create nameless fake light method
  • KT-21780 Wrong redundant setter inspection
  • KT-21837 Don't require documentation on tests and test classes
  • KT-21929 Inappropriate quick fix for a sealed class instantiation
  • KT-21983 Do not suggest to remove explicit Unit type for expression body

IDE. Refactorings

  • KT-21508 java.lang.AssertionError: PsiLiteralExpression on property safe delete in Idea 173
  • KT-21536 Rename refactoring sometimes doesn't quite work
  • KT-21604 Rename package missing title
  • KT-21963 Refactor / Inline Property: "null" in place of number of occurrences of local variable references
  • KT-21964 Refactor / Inline: on declaration of element with one usage "Inline and keep" choice is not suggested
  • KT-21965 Refactor / Inline: wording in dialog could be unified

Libraries

  • KT-16348 KotlinJS - String.toBoolean()
  • KT-21191 Can't wrap exceptions in multiplatform projects
  • KT-21861 NumberFormatException in multiplatform project

Tools. Gradle

  • KT-15753 Support cacheable tasks
  • KT-17656 Kotlin and Kotlin Android plugin not using available build caches
  • KT-20017 Support local (non-relocatable) Gradle build cache
  • KT-20598 Missing input annotations on AbstractKotlinCompileTool
  • KT-20604 Kotlin plugin breaks relocatability and compile avoidance for Java compile tasks
  • KT-21203 Kotlin gradle plugin does not create proper Ivy metadata for dependencies
  • KT-21261 Gradle plugin 1.1.60 creates "build-history.bin" outside project.buildDir
  • KT-21805 Gradle plugin does not work with JDK 1.7 (KaptGradleModel)
  • KT-21806 Gradle Plugin: Using automatic dependency versions with 'maven-publish' plugin does not include dependency version in generated publication POMs

Full changelog for 1.2.20

1.2.20-eap-33

28 Dec 17:16
@4u7 4u7

Choose a tag to compare

1.2.20-eap-33 Pre-release
Pre-release

Changes since 1.2.20-eap-11

Compiler

  • KT-21982 Recognize Checker Framework declaration annotations
  • KT-21919 Invalid MethodParameters attribute generated for "$DefaultImpls" synthetic class with javaParameters=true
  • KT-21827 SMAP problem during default lambda parameter inline

IDE

  • KT-4001 Allow to set arguments indent to 1 tab (currently two and not customized)
  • KT-21469 Wrap property initializers after equals sign
  • KT-9562 Wrong indent after Enter after an annotation
  • KT-12176 Formatter could reformat long primary constructors
  • KT-12862 Formatting: Weird wrapping setting for long ?: operator
  • KT-15099 Odd code formatting when chaining lambdas and splitting lines on operators
  • KT-17843 Don't show parameter name hints when calling Java methods with unknown parameter names
  • KT-17964 Local variable type hints in editor for anonymous object
  • KT-17965 Do not shown argument name hints for assert
  • KT-18829 Do not show parameter name hints for mapOf
  • KT-18839 Semantic highlighting not work for local variables in init
  • KT-19727 Code style: New line after '(' with anonymous object or multi-line lambda unexpected behavior
  • KT-19820 Strange highlightning for enum constructor
  • KT-19915 TODO calls not blue highlighted in lambdas/DSLs
  • KT-20314 Kotlin formatter does not respect annotations code style settings
  • KT-20380 Configure Kotlin plugin updates dialog does not open without opened project
  • KT-21214 Fix funcion selection in kotlin
  • KT-21275 Don't show argument name hints in calls of methods on 'dynamic' type
  • KT-21645 weird parameter hint position
  • KT-21833 type hints shown when destructing triple with type parameters
  • KT-11023 Inspection to highlight usages of Collections.sort() and replace them with .sort() method from Kotlin stdlib
  • KT-21510 Add inspection to add/remove this to/from bound callable
  • KT-21573 Code Style Inspection: to -> Pair function used not in infix form
  • KT-21698 Create interface shouldn't suggest to declare it inside a class which implements it
  • KT-17212 Refactor / Inline Function: with 1 occurrence both "Inline all" and "Inline this only" are suggested
  • KT-21288 Change Signature refactoring fails to change signature of overriders

Libraries

  • KT-21868 Data race in SafePublicationLazyImpl
  • KT-21918 toTypedArray() implementation is inefficient and not thread-safe
  • KT-22003 Replace Regex constructor-like functions with secondary constructors

Tools

  • KT-21628 Can't find referenced class kotlin.internal.annotations.AvoidUninitializedObjectCopyingCheck
  • KT-21777 RMI "Connection refused" errors with daemon
  • KT-21992 @transient warning for lazy property
  • KT-21596 Improve Kapt Gradle Plugin to be more friendly for Kotlin-DSL
  • KT-20840 Multiplatform IC fails if expected or actual file is modified separately
  • KT-17561 embedding kotlin-script-utils may cause version conflicts e.g. with guava
  • KT-17921 The JSR 223 scripting engine fails to eval anything after encountering an unresolved reference
  • KT-21075 KotlinJsr223JvmLocalScriptEngineFactory does not well with kotlin-compiler-embeddable
  • KT-21141 Kotlin script: KotlinJsr223JvmLocalScriptEngine.state.history.reset() seems not clearing the compiler cache

Full changelog for 1.2.20

1.2.20-eap-11

20 Dec 15:07
@4u7 4u7

Choose a tag to compare

1.2.20-eap-11 Pre-release
Pre-release

Android

  • KT-20085 Android Extensions: ClassCastException after changing type of view in layout XML
  • KT-20235 Error, can't use plugin kotlin-android-extensions
  • KT-20269 Mark 'kapt.kotlin.generated' as a source root automatically in Android projects
  • KT-20545 Parcelable: Migrate to canonical NEW-DUP-INVOKESPECIAL form
  • KT-20742 @serializable and @parcelize do not work together
  • KT-20928 @parcelize. Verify Error for Android Api 19

Binary Metadata

  • KT-11586 Class literal annotation arguments are not yet supported in AnnotationSerializer

Compiler

New Features

  • KT-17944 Allow 'expect' final member be implemented by 'actual' open member

Performance Improvements

  • KT-21322 for-in-char-sequence loop improvements
  • KT-21323 Decreasing range loop improvements

Fixes

  • KT-4174 Verify error on lambda with closure in local class super call
  • KT-10473 Inapplicable diagnostics for mixed JS / JVM projects
  • KT-12541 VerifyError: Bad type on operand stack for local variable captured in local class
  • KT-13454 VerifyError on capture of outer class properties in closure inside inner class constructor
  • KT-14148 VerifyError: Bad type on operand stack for anonymous type inheriting inner class
  • KT-18254 enumValueOf and enumValues throw UnsupportedOperationException when used within a non-inline function block
  • KT-18514 IllegalStateException on compile object that inherits its inner interface or class
  • KT-18639 VerifyError: Bad type on operand stack
  • KT-19188 Nondeterministic method order in class files using DefaultImpls
  • KT-19827 Strange VerifyError in simple Example
  • KT-19928 Analyze / Inspect Code: ISE "Concrete fake override public final fun ()" at BridgesKt.findConcreteSuperDeclaration()
  • KT-20433 NPE during JVM code generation
  • KT-20639 Obsolete term "native" used in error message
  • KT-20802 USELESS_CAST diagnostic in functions with expression body
  • KT-20873 False CAST_NEVER_SUCCEEDS when upcasting Nothing
  • KT-20903 Method reference to expect function results in bogus resolution ambiguity
  • KT-21105 Compiler incorrectly optimize the operator in with a floating point type range with NaN bound.
  • KT-21146 ArrayIndexOutOfBoundsException at org.jetbrains.kotlin.codegen.MemberCodegen.generateMethodCallTo(MemberCodegen.java:841)
  • KT-21267 Report pre-release errors if pre-release compiler is run with a release language version
  • KT-21321 for-in-array loop improvements
  • KT-21343 Compound assignment operator compiles incorrectly when LHS is a property imported from object
  • KT-21354 Inconsistent behavior of 'for-in-range' loop if range is an array variable modified in loop body
  • KT-21532 Enum constructor not found
  • KT-21535 SAM wrapper is not created for a value of functional type in delegating or super constructor call in secondary constructor
  • KT-21671 Inline sam wrapper during inline in another module

IDE

New Features

  • KT-13378 Provide ability to configure highlighting for !! in expressions and ? in types
  • KT-17928 Support code folding for primary constructors
  • KT-20591 Show @StringRes/@IntegerRes annotations in parameter info
  • KT-20952 "Navigate | Related symbol" should support expect/actual navigation
  • KT-21229 Make it possible to explicitly select "latest" language/API version

Performance Improvements

  • KT-17367 Rebuild requested for index KotlinJavaScriptMetaFileIndex
  • KT-21557 IntelliJ 2017.3 Gradle Performance Regression
  • KT-21632 Freezing on typing
  • KT-21701 IDEA 2017.3 high CPU usage

Fixes

  • KT-15254 Please use Platform icons for "Run" icon in gutter
  • KT-17254 Remove obsolete unfold-icons in structure view
  • KT-17838 Can't report exceptions from the Kotlin plugin 1.1.4-dev-119 in IDEA #IU-171.4424.37
  • KT-19012 Data Flow from here: doesn't find template usages
  • KT-19017 Data Flow from here doesn't find usage in range position of for cycle
  • KT-19018 Data Flow from here doesn't find any usages of for-variable
  • KT-19036 Data Flow from here: please find calls of extension too
  • KT-19039 Data Flow from here: please find cases when an investigated variable is transferred as a parameter into a library function
  • KT-19087 Data flow to here: usages with explicit receiver are not found
  • KT-19089 Data Flow to here: assigned values are not found if an investigated property is a delegated one
  • KT-19104 Data Flow from here: usage of parameter or variable not found when used as lambda receiver/parameter
  • KT-19106 Data Flow from here: show point of call of a function used as a parameter investigated parameter/variable
  • KT-19112 Data Flow to here for a function (or its return value) doesn't find shorten forms of assignments
  • KT-19519 Structure view is not updated properly for function classes
  • KT-19823 Kotlin Gradle project import into IntelliJ: import kapt generated classes into classpath
  • KT-19824 Please provide a separate icon for a common library
  • KT-20096 Kotlin Gradle script: SOE after beginning of Pair definition before some script section
  • KT-20329 multiplatform: gutter "Is subclassed by" should show expect subclass from the common module
  • KT-20521 Kotlin Gradle script: valid build.gradle.kts is red and becomes normal only after reopening the project
  • KT-20603 Facet import: when API version > language version, set API version = language version, not to 1.0
  • KT-20782 Non-atomic trees update
  • KT-20813 SAM with receiver: call with SAM usage is compiled with Gradle, but not with JPS
  • KT-20880 Add documentation quick fix should create multiline comment and place caret in right place
  • KT-20883 Provide more information in "Missing documentation" inspection message
  • KT-20884 Functions with receivers should allow [this] in KDoc
  • KT-20937 Exception thrown on RMB click on folder in Kotlin project
  • KT-20938 IDE: kotlinc.xml with KotlinCommonCompilerArguments/freeArgs: XSE: "Cannot deserialize class CommonCompilerArguments$DummyImpl" at BaseKotlinCompilerSettings.loadState()
  • KT-20953 "Choose actual" popup shows redundant information
  • KT-20985 Additional reimport is required in 2017.3/2018.1 idea after creating or importing mp project
  • [KT-20987](https://you...
Read more