Releases: JetBrains/kotlin
Releases · JetBrains/kotlin
Kotlin 1.2.40 EAP 1
Compiler
New Features
KT-22703Allow expect/actual annotation constructors to have default valuesKT-19159Support crossinline lambda parameters of suspend function typeKT-21913Support default arguments for expected declarationsKT-19120Provide extra compiler arguments in ScriptTemplateDefinition
Performance Improvements
KT-10057Uselcmpinstruction instead ofkotlin/jvm/internal/Intrinsics.compareKT-14258Suboptimal codegen for private fieldaccess to private field in companion objectKT-18731==between enums should use reference equality, notIntrinsics.areEqual().KT-22714Unnecessary checkcast to array of object from an array of specific type
Fixes
KT-16424Fix broken bytecode for nullable generic methodKT-17171FixClassCaseExceptionin case of SAM conversion withoutvarianceKT-19399Incorrect bytecode generated for inline functions in some complex casesKT-21696Incorrect warning for use-site target on extension functionKT-22031Non-abstractexpect classes should not haveabstractmembersKT-22260Never flaginline suspend funwithNOTHING_TO_INLINEKT-22352Expect/actual checker can't handle properties and functions with the same nameKT-22652Interface with default overrides is not perceived as a SAMKT-22904Incorrect bytecode generated for withIndex iteration onArray<Int>KT-22906Invalid class name generated for lambda created from method reference in anonymous objectKT-23044Overriden public property with internal setter cannot be found in runtimeKT-23104Incorrect code generated for LHS of an intrinsifiedinoperator in case of generic type substituted withCharacterKT-23309Minor spelling errors in jvm internal error message
IDE
New Features
KT-10368Run Action for Kotlin Scratch FilesKT-16892Shortcut to navigate between header and implKT-23005Supportprefix/suffixattributes for language injection in Kotlin with annotations and comments
Performance Improvements
KT-19484KotlinBinaryClassCache retains a lot of memoryKT-23183ConfigureKotlinNotification.getNotificationString()scans modules with Kotlin files twiceKT-23380Improve IDE performance when working with Spring projects
Fixes
KT-15482KotlinNullPointerExceptionin IDE from expected class with nested classKT-15739Internal visibility across common and platform-dependent modulesKT-19025Not imported build.gradle.kts is redKT-19165IntelliJ should suggest to reload Gradle projects when Kotlin build scripts changeKT-20282'Move statement up' works incorrectly for statement after 'finally' block if 'try' block contains closureKT-20521Kotlin Gradle script: validbuild.gradle.ktsis red and becomes normal only after reopening the projectKT-20592KotlinNullPointerException: nested class inside expect / actual interfaceKT-21013"Move statement up/down" fails for multiline declarationsKT-21420.gradle.kts editor should do no semantic highlighting until the first successful dependency resolver responseKT-21683Language injection: JPAQL. Injection should be present for "query" parameter of@NamedNativeQueriesKT-21745Warning and quickfix about kotlin-stdlib-jre7/8 -> kotlin-stdlib-jdk7/8 in MavenKT-21746Warning and quickfix about kotlin-stdlib-jre7/8 -> kotlin-stdlib-jdk7/8 in GradleKT-21753Language injection: SpEL. Not injected for key in@CachingKT-21771All annotations in Annotations.kt from kotlin-test-js module wrongly have ACTUAL_MISSINGKT-21831Opening class fromkotlin-stdlib-jdk8.jarfails with EE: "Stub list in ... length differs from PSI"KT-22229Kotlin local delegated property Import auto-removed with "Java: Optimize imports on the fly"KT-22724ISE: "psiFile must not be null" at KotlinNodeJsRunConfigurationProducer.setupConfigurationFromContext()KT-22817Hitting 'Propagate Parameters' in Change Signature throws UnsupportedOperationExceptionKT-22851Apply button is always active on Kotlin compiler settings tabKT-22858Multiplatform: String constructor parameter is reported in Java file of jvm module on creation of a new instance of a class from common moduleKT-22865Support multiple expectedBy dependencies when importing project from gradle or mavenKT-22873Common module-based light classes do not see JDKKT-22874Exception on surround with "if else" when resulting if should be wrapped with ()KT-22925Unable to view Type Hierarchy from constructor call in expressionKT-22926Confusing behavior of Type Hierarchy depending on the caret position at superclass constructorKT-23097Enhance multiplatform project wizardKT-23271Warn about using kotlin-stdlib-jre* libs independencyManagementsection in Maven witheapanddevKotlin versions
IDE. Gradle. Script
KT-23228Do not highlight.gradle.ktsfiles in non-Gradle projects
IDE. Inspections and Intentions
New Features
KT-16382Intention to convertexpr.unsafeCast<Type>()toexpr as Typeand vice versaKT-20439Add intentions to add/remove labeled return to last expression in a lambdaKT-22011Inspection to report the usage of Java Collections methods on immutable Kotlin CollectionsKT-22933Add intention/inspection to convert Pair constructor totofunction
Fixes
KT-12226"Convert concatenation to template" does not process dollar sign as a CharKT-15858"Replace with a 'foreach' function call" intention breaks codeKT-16332Add braces to 'if' statement intention does not put end-of-line comment properly into bracesKT-17058Create implementations from headers: each implementation gets own fileKT-17306Don't report package name mismatch if there's no Java code in the moduleKT-19730Quickfix for delegated properties boilerplate generation doesn't work on localsKT-21005Missing KDoc inspection seems to have broken in 1.1.60 EAPKT-21082Create actual declaration of top-level subclass of expected sealed class in the same file as actual declaration of sealed class presentKT-22110"Can be joined with assignment" inspection underlining extends into commentKT-22329"Create class" quickfix is not suggested in when branchKT-22428Create member function from usage shouldn't present type par...
Kotlin 1.2.31
Compiler
- Support nullability annotations in
androidxpackage
IDE. Inspections and Intentions
KT-22804"Remove redundant backticks" inspection reports all names and quick fix fails for non-applicable names
Tools. Gradle
KT-23192Issue with experimental mode in Android Extensions and Android Gradle plugin 3.2.0-alpha05
Bugfixes
KT-22205Hitting breakpoints in Kotlin sometimes doesn't work- Fix compatibility with LivePlugin
1.2.30
CHANGELOG
1.2.30
Android
KT-19300[AS3.0] Android extensions, Parcelable: editor shows warning about incomplete implementation on a class with Parcelize annotationKT-22168"Kotlin Android | Illegal Android Identifier" inspection reports non-instrumentation unit testsKT-22700Android Extensions bind views with dot in ID
Compiler
New Features
KT-17336Introduce suspendCoroutineUninterceptedOrReturn coroutine intrinsic functionKT-22766Imitate "suspend" modifier in 1.2.x by stdlib function
Performance Improvements
KT-5177Optimize code generation for 'for' loop with withIndex()KT-16880Smarter detection of tail-suspending unit invocations
Fixes
KT-10494IAE in CheckMethodAdapter.checkInternalName when declaring classes inside method with non-standard nameKT-16079Internal error when using suspend operator plusKT-17091Converting to SAM Java type appends non-deterministic hash to class nameKT-18522Internal compiler error with IndexOutOfBoundsException, "Exception while analyzing expression"KT-18578Compilation failure with @JsonInclude and default interface methodKT-19786Kotlin — unable to override a Java function with @nullable vararg argumentKT-20466JSR305 false positive for elvis operatorKT-20705Tail suspend call optimization doesn't work in when blockKT-20708Tail suspend call optiomization doesn't work in some branchesKT-20855Unnecessary safe-call reported on nullable typeKT-21165Exception from suspending function is not caughtKT-21238Nonsensical warning "Expected type does not accept nulls in Java, but the value may be null in Kotlin"KT-21258Raw backing field value exposed via accessors?KT-21303Running on JDK-10-ea-31 leads to ArrayIndexOutOfBoundsExceptionKT-21642Back-end (JVM) Internal error: Couldn't transform method node on usingopenkeyword withsuspendfor a top-level functionKT-21759Compiler crashes on two subsequent return statements in suspend functionKT-22029Fold list to pair with destructuring assignment and inner when results in ExceptionKT-22345OOM in ReturnUnitMethodReplacerKT-22410invalid compiler optimization for nullable cast to reified typeKT-22577Compiler crashes when coroutineContext is used inside of inlined lambda
IDE
New Features
KT-8352Pasting Kotlin code into package could create .kt fileKT-16710Run configuration to run main() as a Node CLI appKT-16833Allow mixing Java and Kotlin code in "Analyze Data Flow..."KT-21531JS: add support for running specific test from the gutter icon with Jest testing framework
Performance Improvements
Fixes
KT-7316Go to declaration in Kotlin JavaScript project navigates to JDK source in some casesKT-8563Refactor / Rename inserts line breaks without reasonKT-11467Editor:varproperty in primary constructor is shown not underscored, same asvalKT-13509Don't show run line markers for top-level functions annotated with @testKT-13971Kotlin Bytecode tool window: Decompile is available for incompilable code, CE at MemberCodegen.genFunctionOrProperty()KT-15000Do not spell check overridden declaration namesKT-15331"Kotlin not configured" notification always shown for common module in multiplatform projectKT-16333Cannot navigate to super declaration via shortcutKT-16976Introduce special SDK for Kotlin JS projects to avoid using JDKKT-18445multiplatform project: provide more comfortable way to process cases when there are missed method implemenation in the implementation classKT-19194Some Live Templates should probably be enabled also for "expressions" not only "statements"KT-20281multiplatform:Unresolved service JavaDescriptorResolver on a file with several header declarations and gutters not shownKT-20470IntelliJ indent guide/invisible brace matching hint tooltip doesn't show contextKT-20522Add "Build" action in "Before launch" block when create new JS run configuration (for test)KT-20915Add quickfix for ‘Implicit (unsafe) cast from dynamic type’KT-20971Cannot navigate to sources of compiled common dependencyKT-21115Incomplete actual class should still have navigation icon to expect classKT-21688UIdentifier violates JvmDeclarationElement contractKT-21874Unexpected IDE error "Unknown type [typealias ...]"KT-21958Support "Alternative source available" for Kotlin filesKT-21994Collapsed comments containing*get removed in the summary line.KT-22179For properties overridden in object literals, navigation to inherited properties is missing indication of a type they are overriddenKT-22214Front-end Internal error: Failed to analyze declarationKT-22230Reformatting code to Kotlin style indents top-level typealiases with commentsKT-22242Semantic highlighting uses different colors for the same 'it' variable and same color for different 'it'sKT-22301Don't require space after label for lambdaKT-22346Incorrect indentation for chained context extension functions (lambdas) when using Kotlin style guideKT-22356Update status of inspection "Kotlin JVM compiler configured but no stdlib dependency" after pom file update, not on re-importKT-22360MPP: with "Create separate module per source set" = NoexpectedBydependency is imported not transitivelyKT-22374"Join lines" works incorrectly in case of line containing more than one string literalKT-22473Regression in IntelliJ Kotlin Plugin 1.2.20, settings.gradle.kts script template is wrongKT-22508Auto-formatting should insert an indentation for default parameter valuesKT-22557Dead 'Apply' button, when setting code styleKT-22565Cant doPsiAnchor.createon annotation in annotationKT-22570Can't add import in "Packages to Use Import with '*'" section on "Import" tab in Code Style -> KotlinKT-22641Auto-formatting adds extra indent to a closing square bracket on a separate lineKT-22734LinkageError: "loader constraint violation: when resolving method PsiTreeUtilKt.parentOfType()" at KotlinConverter.convertPsiElement$uast_kotlin()
IDE. Debugger
KT-20351Stepping over a line with ...
1.2.30-eap-47
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 annotationKT-22168"Kotlin Android | Illegal Android Identifier" inspection reports non-instrumentation unit testsKT-22700Android Extensions bind views with dot in ID
Compiler
New Features
KT-17336Introduce suspendCoroutineUninterceptedOrReturn coroutine intrinsic functionKT-22766Imitate "suspend" modifier in 1.2.x by stdlib function
Performance Improvements
KT-5177Optimize code generation for 'for' loop with withIndex()KT-16880Smarter detection of tail-suspending unit invocations
Fixes
KT-10494IAE in CheckMethodAdapter.checkInternalName when declaring classes inside method with non-standard nameKT-16079Internal error when using suspend operator plusKT-17091Converting to SAM Java type appends non-deterministic hash to class nameKT-18522Internal compiler error with IndexOutOfBoundsException, "Exception while analyzing expression"KT-18578Compilation failure with @JsonInclude and default interface methodKT-19786Kotlin — unable to override a Java function with @nullable vararg argumentKT-20466JSR305 false positive for elvis operatorKT-20705Tail suspend call optimization doesn't work in when blockKT-20708Tail suspend call optiomization doesn't work in some branchesKT-20855Unnecessary safe-call reported on nullable typeKT-21165Exception from suspending function is not caughtKT-21238Nonsensical warning "Expected type does not accept nulls in Java, but the value may be null in Kotlin"KT-21258Raw backing field value exposed via accessors?KT-21303Running on JDK-10-ea-31 leads to ArrayIndexOutOfBoundsExceptionKT-21642Back-end (JVM) Internal error: Couldn't transform method node on usingopenkeyword withsuspendfor a top-level functionKT-21759Compiler crashes on two subsequent return statements in suspend functionKT-22029Fold list to pair with destructuring assignment and inner when results in ExceptionKT-22345OOM in ReturnUnitMethodReplacerKT-22410invalid compiler optimization for nullable cast to reified typeKT-22577Compiler crashes when coroutineContext is used inside of inlined lambda
IDE
New Features
KT-8352Pasting Kotlin code into package could create .kt fileKT-16710Run configuration to run main() as a Node CLI appKT-16833Allow mixing Java and Kotlin code in "Analyze Data Flow..."KT-21531JS: add support for running specific test from the gutter icon with Jest testing framework
Performance Improvements
Fixes
KT-7316Go to declaration in Kotlin JavaScript project navigates to JDK source in some casesKT-8563Refactor / Rename inserts line breaks without reasonKT-11467Editor:varproperty in primary constructor is shown not underscored, same asvalKT-13509Don't show run line markers for top-level functions annotated with @testKT-13971Kotlin Bytecode tool window: Decompile is available for incompilable code, CE at MemberCodegen.genFunctionOrProperty()KT-15000Do not spell check overridden declaration namesKT-15331"Kotlin not configured" notification always shown for common module in multiplatform projectKT-16333Cannot navigate to super declaration via shortcutKT-16976Introduce special SDK for Kotlin JS projects to avoid using JDKKT-18445multiplatform project: provide more comfortable way to process cases when there are missed method implemenation in the implementation classKT-19194Some Live Templates should probably be enabled also for "expressions" not only "statements"KT-20281multiplatform:Unresolved service JavaDescriptorResolver on a file with several header declarations and gutters not shownKT-20470IntelliJ indent guide/invisible brace matching hint tooltip doesn't show contextKT-20522Add "Build" action in "Before launch" block when create new JS run configuration (for test)KT-20915Add quickfix for ‘Implicit (unsafe) cast from dynamic type’KT-20971Cannot navigate to sources of compiled common dependencyKT-21115Incomplete actual class should still have navigation icon to expect classKT-21688UIdentifier violates JvmDeclarationElement contractKT-21874Unexpected IDE error "Unknown type [typealias ...]"KT-21958Support "Alternative source available" for Kotlin filesKT-21994Collapsed comments containing*get removed in the summary line.KT-22179For properties overridden in object literals, navigation to inherited properties is missing indication of a type they are overriddenKT-22214Front-end Internal error: Failed to analyze declarationKT-22230Reformatting code to Kotlin style indents top-level typealiases with commentsKT-22242Semantic highlighting uses different colors for the same 'it' variable and same color for different 'it'sKT-22301Don't require space after label for lambdaKT-22346Incorrect indentation for chained context extension functions (lambdas) when using Kotlin style guideKT-22356Update status of inspection "Kotlin JVM compiler configured but no stdlib dependency" after pom file update, not on re-importKT-22360MPP: with "Create separate module per source set" = NoexpectedBydependency is imported not transitivelyKT-22374"Join lines" works incorrectly in case of line containing more than one string literalKT-22473Regression in IntelliJ Kotlin Plugin 1.2.20, settings.gradle.kts script template is wrongKT-22508Auto-formatting should insert an indentation for default parameter valuesKT-22557Dead 'Apply' button, when setting code styleKT-22565Cant doPsiAnchor.createon annotation in annotationKT-22570Can't add import in "Packages to Use Import with '*'" section on "Import" tab in Code Style -> KotlinKT-22641Auto-formatting adds extra indent to a closing square bracket on a separate lineKT-22734LinkageError: "loader constraint violation: when resolving method PsiTreeUtilKt.parentOfType()" at KotlinConverter.convertPsiElement$uast_kotlin()
IDE. Debugger
KT-20351Stepping over a line...
1.2.30-eap-16
CHANGELOG
1.2.30 EAP
Compiler
New Features
KT-17336Introduce suspendCoroutineUninterceptedOrReturn coroutine intrinsic function
Performance Improvements
KT-5177Optimize code generation for 'for' loop with withIndex()KT-16880Smarter detection of tail-suspending unit invocations
Fixes
KT-10494IAE in CheckMethodAdapter.checkInternalName when declaring classes inside method with non-standard nameKT-16079Internal error when using suspend operator plusKT-20705Tail suspend call optimization doesn't work in when blockKT-20708Tail suspend call optiomization doesn't work in some branchesKT-21165Exception from suspending function is not caughtKT-21258Raw backing field value exposed via accessors?KT-21303Running on JDK-10-ea-31 leads to ArrayIndexOutOfBoundsExceptionKT-21642Back-end (JVM) Internal error: Couldn't transform method node on usingopenkeyword withsuspendfor a top-level functionKT-21759Compiler crashes on two subsequent return statements in suspend functionKT-22029Fold list to pair with destructuring assignment and inner when results in ExceptionKT-22345OOM in ReturnUnitMethodReplacer
IDE
New Features
KT-16833Allow mixing Java and Kotlin code in "Analyze Data Flow..."
Performance Improvements
Fixes
KT-7316Go to declaration in Kotlin JavaScript project navigates to JDK source in some casesKT-11467Editor:varproperty in primary constructor is shown not underscored, same asvalKT-13509Don't show run line markers for top-level functions annotated with @testKT-13971Kotlin Bytecode tool window: Decompile is available for incompilable code, CE at MemberCodegen.genFunctionOrProperty()KT-15000Do not spell check overridden declaration namesKT-16333Cannot navigate to super declaration via shortcutKT-16976Introduce special SDK for Kotlin JS projects to avoid using JDKKT-19194Some Live Templates should probably be enabled also for "expressions" not only "statements"KT-20470IntelliJ indent guide/invisible brace matching hint tooltip doesn't show contextKT-20915Add quickfix for ‘Implicit (unsafe) cast from dynamic type’KT-21688UIdentifier violates JvmDeclarationElement contractKT-21958Support "Alternative source available" for Kotlin filesKT-21994Collapsed comments containing*get removed in the summary line.KT-22179For properties overridden in object literals, navigation to inherited properties is missing indication of a type they are overriddenKT-22214Front-end Internal error: Failed to analyze declarationKT-22230Reformatting code to Kotlin style indents top-level typealiases with commentsKT-22242Semantic highlighting uses different colors for the same 'it' variable and same color for different 'it'sKT-22356Update status of inspection "Kotlin JVM compiler configured but no stdlib dependency" after pom file update, not on re-importKT-22374"Join lines" works incorrectly in case of line containing more than one string literalKT-22473Regression in IntelliJ Kotlin Plugin 1.2.20, settings.gradle.kts script template is wrong
IDE. Debugger
KT-20351Stepping over a line with two inline stdlib functions steps into the second functionKT-21945Double stop on same line during step over if inline call is present
IDE. Inspections and Intentions
New Features
KT-22038Inspection to replace the usage of Java Collections methods on subtypes of MutableList with the methods from Kotlin stdlibKT-22171Add Intention for single character substringKT-22409Intention for changing property setter accessibility
Performance Improvements
KT-21137Kotlin instantiates something expensive via reflection when highlighting Java file
Fixes
KT-18007Inspection doesn't suggest Maven Plugin for kotlin-stdlib-jre8KT-18308'Remove braces from else statement' intention breaks codeKT-18912multiplatform project: Convert to enum class: header sealed class cannot convert nested objects to enum valuesKT-21600suspendmodifier should go afteroverridein overridden suspend functionsKT-21881Replace "If" with safe access intention false positiveKT-22054Replace '!=' with 'contentEquals' should be replace '==' with 'contentEquals'KT-22159"Replace return with 'if' expression" should not place return before expressions of type NothingKT-22221QuickFix to remove unused constructor parameters shouldn't delete parenthesisKT-22335IOE from KotlinUnusedImportInspection.scheduleOptimizeImportsOnTheFlyKT-22339Remove setter parameter type: error while creating problem descriptor
IDE. Refactorings
KT-17047Refactorings for related standard "scoping functions" conversion: 'let' <-> 'run', 'apply' <-> 'also'KT-22200Overriden function generated from completion is missing suspend modifierKT-22359Refactor / Rename file: Throwable at RenameProcessor.performRefactoring()KT-22461Rename doesn't work on private top-level members of multi-file parts
JavaScript
KT-20735JS: kotlin.test-js integration tests terminate build on failure
Libraries
KT-16661Performance overhead in string splitting in Kotlin versus Java?KT-22042SuboptimalStrings#findAnyOf
Tools
KT-22196kotlin-compiler-embeddable bundles outdated kotlinx.coroutines since 1.1.60
Tools. CLI
KT-19051Suppress Java 9 illegal access warnings
Tools. Gradle
KT-18462Add 'org.jetbrains.kotlin.platform.android' plugin.
Tools. J2K
KT-21635J2K: create "inspection based post-processing"
1.2.21
1.2.20
CHANGELOG
Android
KT-20085Android Extensions: ClassCastException after changing type of view in layout XMLKT-20235Error, can't use plugin kotlin-android-extensionsKT-20269Mark 'kapt.kotlin.generated' as a source root automatically in Android projectsKT-20545Parcelable: Migrate to canonical NEW-DUP-INVOKESPECIAL formKT-20742@serializable and @parcelize do not work togetherKT-20928@parcelize. Verify Error for Android Api 19
Binary Metadata
KT-11586Support class literal annotation arguments in AnnotationSerializer
Compiler
New Features
KT-17944Allow 'expect' final member be implemented by 'actual' open memberKT-21982Recognize Checker Framework declaration annotationsKT-17609Intrinsic suspend val coroutineContext
Performance Improvements
Fixes
KT-4174Verify error on lambda with closure in local class super callKT-10473Inapplicable diagnostics for mixed JS / JVM projectsKT-12541VerifyError: Bad type on operand stack for local variable captured in local classKT-13454VerifyError on capture of outer class properties in closure inside inner class constructorKT-14148VerifyError: Bad type on operand stackfor anonymous type inheriting inner classKT-18254enumValueOf and enumValues throw UnsupportedOperationException when used within a non-inline function blockKT-18514IllegalStateException on compile object that inherits its inner interface or classKT-18639VerifyError: Bad type on operand stackKT-19188Nondeterministic method order in class files using DefaultImplsKT-19827Strange VerifyError in simple ExampleKT-19928Analyze / Inspect Code: ISE "Concrete fake override public final fun ()" at BridgesKt.findConcreteSuperDeclaration()KT-20433NPE during JVM code generationKT-20639Obsolete term "native" used in error messageKT-20802USELESS_CAST diagnostic in functions with expression bodyKT-20873False CAST_NEVER_SUCCEEDS when upcasting NothingKT-20903Method reference to expect function results in bogus resolution ambiguityKT-21105Compiler incorrectly optimize the operatorinwith a floating point type range with NaN bound.KT-21146ArrayIndexOutOfBoundsException at org.jetbrains.kotlin.codegen.MemberCodegen.generateMethodCallTo(MemberCodegen.java:841)KT-21267Report pre-release errors if pre-release compiler is run with a release language versionKT-21321for-in-array loop improvementsKT-21343Compound assignment operator compiles incorrectly when LHS is a property imported from objectKT-21354Inconsistent behavior of 'for-in-range' loop if range is an array variable modified in loop bodyKT-21532Enum constructor not foundKT-21535SAM wrapper is not created for a value of functional type in delegating or super constructor call in secondary constructorKT-21671Inline sam wrapper during inline in another moduleKT-21919Invalid MethodParameters attribute generated for "$DefaultImpls" synthetic class with javaParameters=trueKT-20429False-positive 'Unused return value of a function with lambda expression body' in enum constant constructorKT-21827SMAP problem during default lambda parameter inline
IDE
New Features
KT-4001Allow to set arguments indent to 1 tab (currently two and not customized)KT-13378Provide ability to configure highlighting for !! in expressions and ? in typesKT-17928Support code folding for primary constructorsKT-20591Show @StringRes/@IntegerRes annotations in parameter infoKT-20952"Navigate | Related symbol" should support expect/actual navigationKT-21229Make it possible to explicitly select "latest" language/API versionKT-21469Wrap property initializers after equals signKT-14670Support kotlinPackageName() macro in live templatesKT-14951Editor: navigate actions could be available in intention menu (as done in Java)KT-15320Live templates: Add function which returns the "outer" class nameKT-20067Return label hintsKT-20533Show "this" and "it" type hints in lambdas.KT-20614Change location of initial parameter type hint when parameters are on multiple linesKT-21949Please add a separate Color Scheme settings for properties synthesized from Java accessorsKT-21974Editor color scheme option for Kotlin typealias names
Performance Improvements
KT-17367Rebuild requested for index KotlinJavaScriptMetaFileIndexKT-21632Freezing on typingKT-21701IDEA 2017.3 high CPU usage
Fixes
KT-9562Wrong indent after Enter after an annotationKT-12176Formatter could reformat long primary constructorsKT-12862Formatting: Weird wrapping setting for long ?: operatorKT-15099Odd code formatting when chaining lambdas and splitting lines on operatorsKT-15254Use Platform icons for "Run" icon in gutterKT-17254Remove obsolete unfold-icons in structure viewKT-17838Can't report exceptions from the Kotlin plugin 1.1.4-dev-119 in IDEA #IU-171.4424.37KT-17843Don't show parameter name hints when calling Java methods with unknown parameter namesKT-17964Local variable type hints in editor for anonymous objectKT-17965Do not shown argument name hints for assertKT-18829Do not show parameter name hints for mapOfKT-18839Semantic highlighting not work for local variables in initKT-19012Data Flow from here: doesn't find template usagesKT-19017Data Flow from here doesn't find usage in range position of for cycleKT-19018Data Flow from here doesn't find any usages of for-variableKT-19036Data Flow from here: please find calls of extension tooKT-19039Data Flow from here: please find cases when an investigated variable is transferred as a parameter into a library functionKT-19087Data flow to here: usages with explicit receiver are not foundKT-19089Data Flow to here: ...
1.2.20-eap-71
Changes since 1.2.20-eap-33
Compiler
KT-17609Intrinsic suspend val coroutineContextKT-20864Provide ReadOnly and Mutable annotations to control java collection mutability in kotlinKT-20429False-positive 'Unused return value of a function with lambda expression body' in enum constant constructor
IDE
New Features
KT-14670Support kotlinPackageName() macro in live templatesKT-14951Editor: navigate actions could be available in intention menu (as done in Java)KT-15320Live templates: please add function which returns the "outer" class nameKT-20067Return label hintsKT-20533Show "this" and "it" type hints in lambdas.KT-20614Change location of initial parameter type hint when parameters are on multiple linesKT-21949Please add a separate Color Scheme settings for properties synthesized from Java accessorsKT-21974Editor color scheme option for Kotlin typealias names
Fixes
KT-11503cmd+shift+enter action in .kt files does not work on empty linesKT-17217Navigate to symbol: hard to choose between a lot of extension overloadsKT-18674Join Lines should join stringsKT-19524"Local variable type hints" should respect static importsKT-21010gutter "Is subclassed by" should show actual subclass from the all platform modules in IDEA 2017.3/2018.1KT-21036Throwable “Access is allowed from event dispatch thread only.” after creating nine similar classes with functions.KT-21213multiline kdoc - intellij joins lines together without spaceKT-21592-Xjsr305=strict not taken into account during the kotlin files compilation in Idea (maven)KT-22050Redundant parameter type hint on SAMKT-22071Formatter insists on increasing indentation in forEach lambdaKT-22093Unnecessary line wrap with new Kotlin code styleKT-22111Error while indexing PsiPlainTextFileImpl cannot be cast to KtFileKT-22121Enter in empty argument list should apply normal indent if "Continuation indent for argument list" is off
IDE. Inspections and Intentions
New Features
KT-16260Add intention to specify all types explicitly in destructuring assignmentKT-21547Allow separate regex for test class and function names in IDE inspectionKT-21741Inspection to detect is checks for object typesKT-21950Enable quick-fixes for annotator-reported problems in "Inspect Code"KT-22103SortModifiersInspection should report annotations after modifiers
Fixes
KT-12814Specify type explicitly produces erroneous code when platform type overrides not-null typeKT-15180Incorrect quickfix 'Specify type explicitly'KT-17816"Replace elvis with if" produce nasty code when safe casts are involvedKT-18396Bad quickfix for wrong nested classes in inner classKT-19073No-op quick fix for "Convert lambda to reference" IDE suggestionKT-19283Kotlin KProperty reference cannot be converted to lambdaKT-19736Rephrase text in the unconventional property name inspectionKT-19771Preserve old "Convert to expression body" rangeKT-20437Naming convetions inspection: Add separate inspection for top-level and object propertiesKT-20620Replace operator with function call breaks codeKT-21414OverridersSearch attempts to create nameless fake light methodKT-21780Wrong redundant setter inspectionKT-21837Don't require documentation on tests and test classesKT-21929Inappropriate quick fix for a sealed class instantiationKT-21983Do not suggest to remove explicit Unit type for expression body
IDE. Refactorings
KT-21508java.lang.AssertionError: PsiLiteralExpressionon property safe delete in Idea 173KT-21536Rename refactoring sometimes doesn't quite workKT-21604Rename package missing titleKT-21963Refactor / Inline Property: "null" in place of number of occurrences of local variable referencesKT-21964Refactor / Inline: on declaration of element with one usage "Inline and keep" choice is not suggestedKT-21965Refactor / Inline: wording in dialog could be unified
Libraries
KT-16348KotlinJS - String.toBoolean()KT-21191Can't wrap exceptions in multiplatform projectsKT-21861NumberFormatException in multiplatform project
Tools. Gradle
KT-15753Support cacheable tasksKT-17656Kotlin and Kotlin Android plugin not using available build cachesKT-20017Support local (non-relocatable) Gradle build cacheKT-20598Missing input annotations on AbstractKotlinCompileToolKT-20604Kotlin plugin breaks relocatability and compile avoidance for Java compile tasksKT-21203Kotlin gradle plugin does not create proper Ivy metadata for dependenciesKT-21261Gradle plugin 1.1.60 creates "build-history.bin" outside project.buildDirKT-21805Gradle plugin does not work with JDK 1.7 (KaptGradleModel)KT-21806Gradle Plugin: Using automatic dependency versions with 'maven-publish' plugin does not include dependency version in generated publication POMs
1.2.20-eap-33
Changes since 1.2.20-eap-11
Compiler
KT-21982Recognize Checker Framework declaration annotationsKT-21919Invalid MethodParameters attribute generated for "$DefaultImpls" synthetic class with javaParameters=trueKT-21827SMAP problem during default lambda parameter inline
IDE
KT-4001Allow to set arguments indent to 1 tab (currently two and not customized)KT-21469Wrap property initializers after equals signKT-9562Wrong indent after Enter after an annotationKT-12176Formatter could reformat long primary constructorsKT-12862Formatting: Weird wrapping setting for long ?: operatorKT-15099Odd code formatting when chaining lambdas and splitting lines on operatorsKT-17843Don't show parameter name hints when calling Java methods with unknown parameter namesKT-17964Local variable type hints in editor for anonymous objectKT-17965Do not shown argument name hints for assertKT-18829Do not show parameter name hints for mapOfKT-18839Semantic highlighting not work for local variables in initKT-19727Code style: New line after '(' with anonymous object or multi-line lambda unexpected behaviorKT-19820Strange highlightning for enum constructorKT-19915TODO calls not blue highlighted in lambdas/DSLsKT-20314Kotlin formatter does not respect annotations code style settingsKT-20380Configure Kotlin plugin updates dialog does not open without opened projectKT-21214Fix funcion selection in kotlinKT-21275Don't show argument name hints in calls of methods on 'dynamic' typeKT-21645weird parameter hint positionKT-21833type hints shown when destructing triple with type parametersKT-11023Inspection to highlight usages of Collections.sort() and replace them with .sort() method from Kotlin stdlibKT-21510Add inspection to add/remove this to/from bound callableKT-21573Code Style Inspection:to -> Pairfunction used not in infix formKT-21698Create interfaceshouldn't suggest to declare it inside a class which implements itKT-17212Refactor / Inline Function: with 1 occurrence both "Inline all" and "Inline this only" are suggestedKT-21288Change Signature refactoring fails to change signature of overriders
Libraries
KT-21868Data race in SafePublicationLazyImplKT-21918toTypedArray() implementation is inefficient and not thread-safeKT-22003Replace Regex constructor-like functions with secondary constructors
Tools
KT-21628Can't find referenced class kotlin.internal.annotations.AvoidUninitializedObjectCopyingCheckKT-21777RMI "Connection refused" errors with daemonKT-21992@transient warning for lazy propertyKT-21596Improve Kapt Gradle Plugin to be more friendly for Kotlin-DSLKT-20840Multiplatform IC fails if expected or actual file is modified separatelyKT-17561embedding kotlin-script-utils may cause version conflicts e.g. with guavaKT-17921The JSR 223 scripting engine fails to eval anything after encountering an unresolved referenceKT-21075KotlinJsr223JvmLocalScriptEngineFactory does not well with kotlin-compiler-embeddableKT-21141Kotlin script: KotlinJsr223JvmLocalScriptEngine.state.history.reset() seems not clearing the compiler cache
1.2.20-eap-11
Android
KT-20085Android Extensions: ClassCastException after changing type of view in layout XMLKT-20235Error, can't use plugin kotlin-android-extensionsKT-20269Mark 'kapt.kotlin.generated' as a source root automatically in Android projectsKT-20545Parcelable: Migrate to canonical NEW-DUP-INVOKESPECIAL formKT-20742@serializable and @parcelize do not work togetherKT-20928@parcelize. Verify Error for Android Api 19
Binary Metadata
KT-11586Class literal annotation arguments are not yet supported in AnnotationSerializer
Compiler
New Features
KT-17944Allow 'expect' final member be implemented by 'actual' open member
Performance Improvements
Fixes
KT-4174Verify error on lambda with closure in local class super callKT-10473Inapplicable diagnostics for mixed JS / JVM projectsKT-12541VerifyError: Bad type on operand stack for local variable captured in local classKT-13454VerifyError on capture of outer class properties in closure inside inner class constructorKT-14148VerifyError: Bad type on operand stackfor anonymous type inheriting inner classKT-18254enumValueOf and enumValues throw UnsupportedOperationException when used within a non-inline function blockKT-18514IllegalStateException on compile object that inherits its inner interface or classKT-18639VerifyError: Bad type on operand stackKT-19188Nondeterministic method order in class files using DefaultImplsKT-19827Strange VerifyError in simple ExampleKT-19928Analyze / Inspect Code: ISE "Concrete fake override public final fun ()" at BridgesKt.findConcreteSuperDeclaration()KT-20433NPE during JVM code generationKT-20639Obsolete term "native" used in error messageKT-20802USELESS_CAST diagnostic in functions with expression bodyKT-20873False CAST_NEVER_SUCCEEDS when upcasting NothingKT-20903Method reference to expect function results in bogus resolution ambiguityKT-21105Compiler incorrectly optimize the operatorinwith a floating point type range with NaN bound.KT-21146ArrayIndexOutOfBoundsException at org.jetbrains.kotlin.codegen.MemberCodegen.generateMethodCallTo(MemberCodegen.java:841)KT-21267Report pre-release errors if pre-release compiler is run with a release language versionKT-21321for-in-array loop improvementsKT-21343Compound assignment operator compiles incorrectly when LHS is a property imported from objectKT-21354Inconsistent behavior of 'for-in-range' loop if range is an array variable modified in loop bodyKT-21532Enum constructor not foundKT-21535SAM wrapper is not created for a value of functional type in delegating or super constructor call in secondary constructorKT-21671Inline sam wrapper during inline in another module
IDE
New Features
KT-13378Provide ability to configure highlighting for !! in expressions and ? in typesKT-17928Support code folding for primary constructorsKT-20591Show @StringRes/@IntegerRes annotations in parameter infoKT-20952"Navigate | Related symbol" should support expect/actual navigationKT-21229Make it possible to explicitly select "latest" language/API version
Performance Improvements
KT-17367Rebuild requested for index KotlinJavaScriptMetaFileIndexKT-21557IntelliJ 2017.3 Gradle Performance RegressionKT-21632Freezing on typingKT-21701IDEA 2017.3 high CPU usage
Fixes
KT-15254Please use Platform icons for "Run" icon in gutterKT-17254Remove obsolete unfold-icons in structure viewKT-17838Can't report exceptions from the Kotlin plugin 1.1.4-dev-119 in IDEA #IU-171.4424.37KT-19012Data Flow from here: doesn't find template usagesKT-19017Data Flow from here doesn't find usage in range position of for cycleKT-19018Data Flow from here doesn't find any usages of for-variableKT-19036Data Flow from here: please find calls of extension tooKT-19039Data Flow from here: please find cases when an investigated variable is transferred as a parameter into a library functionKT-19087Data flow to here: usages with explicit receiver are not foundKT-19089Data Flow to here: assigned values are not found if an investigated property is a delegated oneKT-19104Data Flow from here: usage of parameter or variable not found when used as lambda receiver/parameterKT-19106Data Flow from here: show point of call of a function used as a parameter investigated parameter/variableKT-19112Data Flow to here for a function (or its return value) doesn't find shorten forms of assignmentsKT-19519Structure view is not updated properly for function classesKT-19823Kotlin Gradle project import into IntelliJ: import kapt generated classes into classpathKT-19824Please provide a separate icon for a common libraryKT-20096Kotlin Gradle script: SOE after beginning of Pair definition before some script sectionKT-20329multiplatform: gutter "Is subclassed by" should show expect subclass from the common moduleKT-20521Kotlin Gradle script: valid build.gradle.kts is red and becomes normal only after reopening the projectKT-20603Facet import: when API version > language version, set API version = language version, not to 1.0KT-20782Non-atomic trees updateKT-20813SAM with receiver: call with SAM usage is compiled with Gradle, but not with JPSKT-20880Add documentation quick fix should create multiline comment and place caret in right placeKT-20883Provide more information in "Missing documentation" inspection messageKT-20884Functions with receivers should allow [this] in KDocKT-20937Exception thrown on RMB click on folder in Kotlin projectKT-20938IDE: kotlinc.xml with KotlinCommonCompilerArguments/freeArgs: XSE: "Cannot deserialize class CommonCompilerArguments$DummyImpl" at BaseKotlinCompilerSettings.loadState()KT-20953"Choose actual" popup shows redundant informationKT-20985Additional reimport is required in 2017.3/2018.1 idea after creating or importing mp project- [
KT-20987](https://you...