KT-15611
Extract Interface/Superclass: Disable const-propertiesKT-15602
Extract Interface/Superclass: Disable “Make abstract” for inline/external/lateinit membersKT-12704
, KT-15583
Override/Implement Members: Support all nullability annotations respected by the Kotlin compilerKT-15563
Override Members: Allow overriding virtual synthetic members (e.g. equals(), hashCode(), toString(), etc.) in data classesKT-15355
Extract Interface: Disable “Make abstract” and assume it to be true for abstract members of an interfaceKT-15353
Extract Superclass/Interface: Allow extracting class with special name (and quotes)KT-15643
Extract Interface/Pull Up: Disable “Make abstract” and assume it to be true for primary constructor parameter when moving to an interfaceKT-15607
Extract Interface/Pull Up: Disable internal/protected members when moving to an interfaceKT-15640
Extract Interface/Pull Up: Drop ‘final’ modifier when moving to an interfaceKT-15639
Extract Superclass/Interface/Pull Up: Add spaces between ‘abstract’ modifier and annotationsKT-15606
Extract Interface/Pull Up: Warn about private members with usages in the original classKT-15635
Extract Superclass/Interface: Fix bogus visibility warning inside a member when it's being moved as abstractKT-15598
Extract Interface: Red-highlight members inherited from a super-interface when that interface reference itself is not extractedKT-15674
Extract Superclass: Drop inapplicable modifiers when converting property-parameter to ordinary parameterKT-15444
Spring Support: Consider declaration open if it's supplemented with a preconfigured annotation in corresponding compiler pluginKT-15068
Implement intention which rename file according to the top-level class nameKT-15056
Implement intention which converts object literal to classKT-8855
Implement “Create label” quick fixKT-15627
Support “Change parameter type” for parameters with type-mismatched default valueKT-13811
Expose JVM target setting in IntelliJ IDEA plugin compiler configuration UIKT-12410
Expose language version setting in IntelliJ IDEA plugin compiler configuration UIKT-14569
Convert Property to Function Intention: Search occurrences using progress dialogKT-14501
Create from Usage: Support array access expressions/binary expressions with type mismatch errorsKT-14500
Create from Usage: Suggest functional type based on the call with lambda argument and unresolved invoke()KT-14459
Initialize with Constructor Parameter: Fix IDE freeze on properties in generic classKT-14044
Fix exception on deleting unused declaration in IDEA 2016.3KT-14019
Create from Usage: Support generation of abstract members for superclassesKT-14246
Intentions: Convert function type parameter to receiverKT-14246
Intentions: Convert function type receiver to parameterKT-14729
Implement “Add names to call arguments” intentionKT-11760
Create from Usage: Support adding type parameters to the referenced typeKT-14583
Change Signature: Use new signature when looking for redeclaration conflictsKT-14854
Extract Interface: Fix NPE on dialog openingKT-14814
Rename: Fix renaming of .kts file to .kt and vice versaKT-14361
Rename: Do not report redeclaration conflict for private top-level declarations located in different filesKT-14596
Safe Delete: Fix exception on deleting Java class used in Kotlin import directive(s)KT-14325
Rename: Fix exceptions on moving file with facade class to another packageKT-14197
Move: Fix callable reference processing when moving to another packageKT-13781
Extract Function: Do not wrap companion member references inside of the with
callKT-14792
Rename: Suggest respective parameter name for the local variable passed to functionKT-9125
Support Type Hierarchy on references inside of super type call entriesKT-13542
Rename: Do not search parameter text occurrences outside of its containing declarationKT-8672
Rename: Optimize search of parameter references in calls with named argumentsKT-9285
Rename: Optimize search of private class membersKT-13589
Use TODO() consistently in implementation stubsKT-13630
Do not show Change Signature dialog when applying “Remove parameter” quick-fixKT-13474
Fix performance of typing super call lambdaKT-13838
Add file name to the presentation of private top-level declaration (Go to symbol, etc.)KT-14096
Rename: When renaming Kotlin file outside of source root do not rename its namesake in a source rootKT-13928
Move Inner Class to Upper Level: Fix replacement of outer class instances used in inner class constructor callsKT-12556
Allow using whitespaces and other symbols in “Generate -> Test Function” dialogKT-14122
Generate ‘toString()’: Permit for data classesKT-12398
Call Hierarchy: Show Kotlin usages of Java methodsKT-13976
Search Everywhere: Render function parameter typesKT-13977
Search Everywhere: Render extension type in prefix positionKT-9490
Convert receiver to parameter: use template instead of the dialogKT-11483
Move to Companion: Do not use qualified names as labelsKT-13874
Move to Companion: Fix AssertionError on running refactoring from Conflicts ViewKT-13883
Move to Companion Object: Fix exception when applied to classKT-13876
Move to Companion Object: Forbid for functions/properties referencing type parameters of the containing classKT-13877
Move to Companion Object: Warn if companion object already contains function with the same signatureKT-13933
Convert Parameter to Receiver: Do not qualify companion members with labeled ‘this’KT-13942
Redundant ‘toString()’ in String Template: Disable for qualified expressions with ‘super’ receiverKT-13878
Remove Redundant Receiver Parameter: Fix exception receiver removalKT-14143
Create from Usages: Do not suggest on type-mismatched expressions which are not call argumentsKT-13882
Convert Receiver to Parameter: Fix AssertionErrorKT-14199
Add Library: Fix exception due to resolution being run in the “dumb mode”KT-11525
Implement “Create type parameter” quickfixKT-9931
Implement “Remove unused assignment” quickfixKT-14245
Implement “Convert enum to sealed class” intentionKT-14245
Implement “Convert sealed class to enum” intentionKT-13535
Pull Up: Remove visibility modifiers on adding ‘override’KT-13216
Move: Report separate conflicts for each property accessorKT-13216
Move: Forbid moving of enum entriesKT-13553
Move: Do not show directory selection dialog if target directory is already specified by drag-and-dropKT-8867
Rename: Rename all overridden members if user chooses to refactor base declaration(s)KT-13660
Move: Do not drop object receivers when calling variable of extension functional typeKT-13903
Move: Remove companion object which becomes empty after the moveKT-13916
Move: Report visibility conflicts in import directivesKT-13906
Move Nested Class to Upper Level: Do not show directory selection dialog twiceKT-13901
Move: Do not ignore target directory selected in the dialog (DnD mode)KT-13904
Move Nested Class to Upper Level: Preserve state of “Search in comments”/“Search for text occurrences” checkboxesKT-13909
Move Files/Directories: Fix behavior of “Open moved files in editor” checkboxKT-14004
Introduce Variable: Fix exception on trying to extract variable of functional typeKT-13726
Move: Fix bogus conflicts due to references resolving to wrong library versionKT-14114
Move: Fix exception on moving Kotlin file without declarationsKT-14157
Rename: Rename do-while loop variables in the loop conditionKT-14128
, KT-13862
Rename: Use qualified class name when looking for occurrences in non-code filesKT-6199
Rename: Replace non-code class occurrences with new qualified nameKT-14182
Move: Show error message on applying to enum entriesKT-14285
Rename: Forbid on backing field referenceKT-14240
Introduce Variable: Do not replace assignment left-hand sidesKT-14234
Rename: Do not suggest type-based names for functions with primitive return typesKT-13155
Implement “Introduce Type Parameter” refactoringKT-11017
Implement “Extract Superclass” refactoringKT-11017
Implement “Extract Interface” refactoring Pull Up: Support properties declared in the primary constructor Pull Up: Support members declared in the companion object of the original class Pull Up: Show member dependencies in the refactoring dialogKT-9485
Push Down: Support moving members from Java to Kotlin classKT-13963
Rename: Implement popup chooser for overriding membersKT-12022
Report lint warnings even when file contains errorsKT-10968
, KT-11075
, KT-12286
Type inference of callable referencesKT-11892
Report error on qualified super call to a supertype extended by a different supertypeKT-12875
Report error on incorrect call of member extension invokeKT-12847
Report error on accessing protected property setter from super class' companionKT-12322
Overload resolution ambiguity with constructor reference when class has a companion objectKT-11440
Overload resolution ambiguity on specialized Map.put implementation from JavaKT-11389
Runtime exception when calling Java primitive overloadingsKT-8200
Exception when using non-generic interface with generic argumentsKT-10237
Exception on an unresolved symbol in a type parameter bound in the ‘where’ clauseKT-11821
Exception on incorrect number of generic arguments in a type parameter bound in the ‘where’ clauseKT-12482
Exception: Implementation doesn't have the most specific type, but none of the other overridden methods does eitherKT-12687
Exception when ‘data’ modifier is applied to objectKT-9620
AssertionError in DescriptorResolver#checkBoundsKT-3689
IllegalAccess on a property with private setter of the subclassKT-6391
Wrong warning for array casting (Array<Any?> to Array)KT-8596
Exception when analyzing nested class constructor reference in an argument positionKT-12982
Incorrect type inference when accessing mutable protected property via reflectionKT-13206
Report “Cast never succeeds” if and only if ClassCastException can be predictedKT-12467
IllegalStateException: Concrete fake override should have exactly one concrete super-declaration: []KT-13340
Report “return is not allowed here” only on the return keyword, not the whole expressionKT-2349
, KT-6054
Report “uninitialized enum entry” if enum entry is referenced before its declarationKT-12809
Report “uninitialized variable” if property is referenced before its declarationKT-260
Do not report “cast never succeeds” when casting nullable to nullableKT-11769
Prohibit access from enum instance initialization code to members of enum's companion objectKT-13371
Fix CompilationException: Rewrite at slice LEAKING_THIS key: REFERENCE_EXPRESSIONKT-13401
Fix StackOverflowError when checking varianceKT-13330
, KT-13349
Fix AssertionError: Illegal resolved call to variable with invokeKT-13421
Fix AssertionError: Only integer constants should be checked for overflowKT-13555
Fix internal error “resolveToInstruction”KT-8989
Change error messages: Replace “invisible_fake” with “invisible (private in a supertype)”KT-13612
Val reassignment in try / catchKT-5469
Incorrect “is never used” warning for value used in catch blockKT-13510
Missing “Nested class not allowed” error for anonymous object inside val initializerKT-13685
Fix NPE when resolving callable references on incomplete codeKT-7118
Improve error message after trailing dot in floating point literalKT-4948
Recover by following keywordKT-7915
Recover after val with no subsequent nameKT-12987
Recover after val with no name before declaration starting with soft keywordKT-12909
Do not generate redundant bridge for special built-in overrideKT-11915
Exception in entrySet when Map implementation in Kotlin extends another oneKT-12755
Exception on property generation in multi-file classesKT-12983
VerifyError: Bad type on operand stack in arraylengthKT-12908
Variable initialization in loop causes VerifyError: Bad local variable typeKT-13040
Invalid bytecode generated for extension lambda invocation with safe callKT-13023
Char operations throw ClassCastException for boxed CharsKT-11634
Exception for super call in delegationKT-12359
Redundant stubs are generated on inheriting from java.util.CollectionKT-11833
Error generating constructors of class on anonymous object inheriting from nested class of super classKT-13133
Incorrect InnerClasses attribute value for anonymous object copied from an inline functionKT-13241
Indices optimization leads to VerifyError with smart cast receiverKT-13374
Fix compiler exception when inline function contains anonymous object implementing an interface by delegationKT-11964
No TABLESWITCH in when on enum bytecode if enum constant is importedKT-6916
Optimize ‘for’ over ‘downTo’KT-12733
Optimize ‘for’ over ‘rangeTo’ as a non-qualified callKT-13115
, KT-13297
Improve documentation formatting, clarify documentation for FileTreeWalk
, Sequence
and generateSequence
.KT-12894
Do not fail in Closeable.use
if the resource is null
.KT-12915
Runtime exception on callBy of JvmStatic function with default argumentsKT-12967
Runtime exception on reference to generic propertyKT-13370
NullPointerException on companionObjectInstance of a built-in classKT-13462
Make KClass for primitive type equal to the corresponding KClass for wrapper typeKT-12655
New Kotlin file: extra error message for already existing fileKT-12760
Prohibit running non-Unit returning main functionKT-12893
Impossible to open Kotlin compiler settingsKT-10433
Copy-pasting reference to companion object member causes import dialogKT-12803
Class is marked as unused when it is only used is in method referenceKT-13084
Run test method action executes all tests from same kotlin fileKT-12718
Deadlock due to index reenteringKT-13114
‘Unused declaration’ option ‘JUnit static methods’ is always enabledKT-12997
Override/Implement Members: Support “Copy JavaDoc” options for library classesKT-12887
“Extend selection” should select call's invoked expressionKT-13383
, KT-13379
Override/Implement Members: Do not make return type non-nullable if base return type is explicitly nullableKT-13218
Extract Function: Fix AssertionError on callable referencesKT-6520
Introduce ‘maino’ and ‘psvmo’ templates for generating main in objectKT-13455
Override/Implement: Make return type non-nullable (platform collection case) when overriding Java methodKT-10209
Find Usages: Do not duplicate containing declaration in super member warning dialogKT-12977
Hybrid dependency causes “outdated binary” warning to appear in non-js projectKT-13057
Go to inheritors on Enum should navigate to all enum classesKT-12793
Suggest abstract protected extension methodsKT-12645
Lazily calculate FQ name for local classesKT-13071
Fix severe freezes because of long lint checks on large filesKT-12937
Java synthetic accessors highlighting does not differ from local variablesKT-12998
Backslash is not renderedKT-12999
Backtick inside inline code block is not renderedKT-13000
Exclamation mark is not renderedKT-10398
Fully qualified link is not resolved in editorKT-12932
Link to library element is not clickableKT-10654
Quick Doc can't follow KDoc link in referenced function descriptionKT-9271
Show Quick Doc for implicit lambda parameter ‘it’KT-12152
“Leaking this” inspection reports dangerous operations inside constructors including:
KT-13187
“Make constructor parameter a val” should make the val private or public depending on its option
KT-5771
Mark setter parameter type as redundant and provide quickfix to remove it
KT-9228
Add quickfix to remove ‘@’ from annotation used as argument of another annotation
KT-12251
Add quickfix to fix type mismatch for primitive literals
KT-12838
Add quickfix for “Illegal usage of inline parameter” that adds noinline
KT-13134
Add quickfix for wrong Long suffix (Use L
instead of l
)
KT-10903
Add intention to convert lambda to function reference
KT-7492
Support “Create abstract function/property” inside an abstract class
KT-10668
Support “Create member/extension” corresponding to the extension receiver of enclosing function
KT-12553
Show versions in inspection about different version of Kotlin plugin in Maven and IDE plugin
KT-12489
Implement intention to replace camel-case test function name with a space-separated one
KT-12730
Warn about using different versions of Kotlin Gradle plugin and bundled compiler
KT-13173
Handle more cases in “Add Const Modifier” Intention
KT-12628
Quickfix for invoke
operator unsafe calls
KT-11425
Inspection and quickfix to replace usages of equals()
and compareTo()
with operators
KT-13113
Inspection to detect redundant string templates
KT-13011
Inspection and quickfix for unnecessary lateinit
KT-10731
Inspection and quickfix for unnecessary use of toString() inside string interpolation
KT-12043
Intention to add / remove braces for when entry/entries
KT-13483
Intention to replace a..b-1
with a until b
and vice versa
KT-6975
Quickfix for adding ‘inline’ to a function with reified generic
KT-12869
Usages of overridden Java method through synthetic accessors are not foundKT-12813
“Find Usages” for property returns function callsKT-7722
Approximate unresolvable types in “Create from Usage” quickfixesKT-11115
Implement Members: Fix base member detection when abstract and non-abstract members with matching signatures are inherited from an interfaceKT-12876
Bogus suggestion to move property to constructorKT-13055
Exception in “Specify Type Explicitly” intentionKT-12942
“Replace ‘when’ with ‘if’” intention changes semantics when ‘if’ statements are usedKT-12646
‘Convert to block body’ should use partial body resolveKT-12919
Use simple class name in “Change function return type” quickfixKT-13151
Incorrect warning “Make variable immutable”KT-13170
“Declaration has platform type” inspection: by default should not be reported for platform type argumentsKT-13262
“Wrap with safe let call” quickfix produces wrong result for qualified functionKT-13364
Do not suggest creating annotations/enum classes for unresolved type parameter boundsKT-12627
Allow warnings suppression for secondary constructorKT-13365
Disable “Create property” (non-abstract) in interfaces. Make “Create function” (non-abstract) generate function body in interfacesKT-8903
Remove Unused Receiver: update function/property usagesKT-11799
Create from Usage: Make extension functions/properties ‘private’ by defaultKT-11795
Create from Usage: Place extension properties after the usage and generate stub getterKT-12951
Prohibit “Convert to expression body” when function body is ‘if’ without ‘else’ or ‘when’ is non-exhaustiveKT-13430
“Add non-null asserted (!!) call” quickfix can't process unary operatorsKT-13336
“Convert concatenation to template” intention appends literal to variable omitting bracesKT-13328
Do not suggest “Replace infix with safe call” inside conditions or binary / unary expressionsKT-13452
“Replace if expression with assignment” doesn't work for cascade if-else if-elseKT-13184
“Different Kotlin Version” inspection: false positive caused by verbose plugin version nameKT-13480
“Can be replaced with comparison” inspection: false positive if extension method called ‘equals’ is usedKT-13288
“Unused property” inspection: false positive when extending abstract class and implementing interfaceKT-13432
“Replace with safe call” quickfix does not work with compareTo()
usageKT-13444
“Invert if” intention changes semantics for nested if with returnKT-13536
Fix StackOverflowError from “Unused Symbol” inspection after importing enum's values()KT-12820
Platform Type Inspection: !! quickfix shouldn't be available when any generic parameter has platform typeKT-9825
Incorrect “unused variable” warning when used in finally blockKT-13715
Prohibit applying “Change to star projection” to functional typesKT-12017
Inline Property: Support “Do not show this dialog” and “Inline this occurrence” optionsKT-11176
Add a space before ‘{’ in functions generated “Generate hashCode/equals/toString”KT-12294
Introduce Property: Fix extraction of expressions referring to primary constructor parametersKT-12413
Change Signature: Fix bogus warning about unresolved type parameters/invalid functional type replacementKT-12084
Introduce Property: Do not skip outer classes if extractable expression is contained in object literalKT-13082
Rename: Fix exception on property rename previewKT-13207
Safe delete: Fix exception when removing any function in 2016.2KT-12945
Rename: Fix function description in super method warning dialogKT-12922
Introduce Variable: Do not suggest expressions without typeKT-12943
Rename: Show function signatures in “Rename Overloads” dialogKT-13157
Extract Function: Automatically quote function name if necessaryKT-13010
Extract Function: Fix generation of destructuring declarationsKT-13128
Introduce Variable: Retain entered name after changing “Specify type explicitly” optionKT-13054
Introduce Variable: Skip leading/trailing comments inside selectionKT-13385
Move: Quote package name (if necessary) when moving declarations to new fileKT-13395
Introduce Property: Fix duplicate count in popup windowKT-13277
Change Signature: Fix usage processing to prevent interfering with Python support pluginKT-13254
Rename: Conflict detection for type parametersKT-13282
, KT-13283
Rename: Fix name quoting for automatic renamersKT-13239
Rename: Warn about function name conflictsKT-13174
Move: Warn about accessibility conflicts due to moving to unrelated moduleKT-13175
Move: Warn about accessibility conflicts when moving entire fileKT-13240
Rename: Do not report shadowing conflict if redeclaration is detectedKT-13253
Rename: Report conflicts for constructor parametersKT-12971
Push Down: Do not specifiy visibility on generated overriding membersKT-13124
Pull Up: Skip super members without explicit declarationsKT-13032
Rename: Support accessors with non-conventional namesKT-13463
Rename: Quote parameter name when necessaryKT-13476
Rename: Fix parameter rename when new name matches call selectorKT-9381
Rename: Do not search for component convention usagesKT-13488
Rename: Support rename of packages with non-standard quoted namesKT-7549
Provide an option to use the Kotlin syntax when evaluating watches and expressions in Java filesKT-13059
Fix error stepping on Step Over action in the end of while blockKT-13037
Fix possible deadlock in debugger in 2016.1 and exception in 2016.2KT-12651
Fix exception in evaluate expression when bad identifier is used for marking objectKT-12896
Fix “Step In” to inline functions for AndroidKT-13269
Make quick evaluate work on receiver in qualified expressionsKT-12641
Unknown error on evaluate expression containing inline functions with complicated environmentKT-13163
Fix exception when evaluating expression: Access is allowed from event dispatch thread only.KT-3008
Option to generate require.js and AMD compatible modulesKT-5987
Add ability to refer to classKT-4115
Provide method to get Kotlin type nameKT-8003
Compiler exception on ‘throw throw’KT-8318
Wrong result for ‘when’ containing only ‘else’ blockKT-12157
Compiler exception on when
condition containing return
, break
or continue
KT-12275
Fix code generation with inline function call in condition of while
/do..while
KT-13160
Fix compiler exception when left-hand side of assignment is array access and right-hand side is inline functionKT-12864
Make enums comparableKT-12865
Implementing Comparable breaks inheritanceKT-12928
Nested inline causes undefined reference accessKT-12929
Code with callable reference crashed at runtime (in some JS VMs)KT-13043
Invalid invocation generated for secondary constructor that calls constructor from base class with default parametersKT-13025
‘function?.invoke’ does not work properly with extension functionsKT-12807
Lambda was lost in generated codeKT-12808
Compiler duplicates arguments and the body of lambda when lambda is in RHS of assignment operatorKT-12873
Fix ReferenceError when class delegates to complex expressionKT-13658
Wrong code when capturing objectKT-13234
Setting kotlinOptions.destination and kotlinOptions.classpath is deprecatedKT-9392
Kotlin classes are missing after converting Java class to KotlinKT-12736
Kotlin classes are deleted when generated Java source is changedKT-12658
Build fails after android resources are editedKT-12750
Non clean compilation fails with gradle 2.14KT-12912
New class from subproject is unresolved with subsequent build with Gradle DaemonKT-12962
Incremental compilation: Track changes in generated filesKT-12923
Incremental compilation: Compile error when code using internal class is modifiedKT-13528
Incremental compilation: support multi-project incremental compilationKT-13732
Android Build folder littered with copyFlavourTypeXXX
KT-13499
Implement Annotation Processing API (JSR 269) natively in KotlinKT-12776
Android build fails with KAPT and generateStubs depending on library module namesKT-13179
Java is recompiled every time with Gradle 2.14 and KAPTKT-12303
, KT-12113
Do not pass non-relevant annotations to processorsKT-12389
REPL just quits when toString() of user class throws an exceptionKT-13237
Include kotlin-reflect.jar to classpath by default, add ‘-no-reflect’ key to suppress this behaviorKT-13491
Support ‘-no-reflect’ in ‘kotlin’ commandKT-13211
Provide better compilation failure info for TeamCity buildsopen
and override
is no longer a warningKT-4829
Equal conditions in when
is now a warningKT-6611
“This cast can never succeed” warning is no longer reported for Foo<T> as Foo<Any>
KT-7174
Declaring members with the same signature as non-overridable methods from Java classes (like Object.wait/notify) is now an error (when targeting JVM)KT-12302
abstract
modifier for a member of interface is no longer a warningKT-12452
open
modifier for a member of interface without implementation is now a warningKT-11111
Overriding by inline function is now a warning, overriding by a function with reified type parameter is an errorKT-12337
Reference to a property with invisible setter now has KProperty type (as opposed to KMutableProperty)KT-4285
No warning for a non-tail call when the method inherits default arguments from superclassKT-4764
Spurious “Variable must be initialized” in try/catch/finallyKT-6665
Unresolved reference leads to marking subsequent code unreachableKT-11750
Exceptions when creating various entries with the name “name” in enumsKT-11998
Smart cast to not-null is not performed on a boolean property in if
conditionKT-10648
Exhaustiveness check does not work when sealed class hierarchy contains intermediate sealed classesKT-10717
Type inference for lambda with local returnKT-11266
Fixed “Empty intersection of types” internal compiler error for some casesKT-11857
Fix visibility check for dynamic members within protected method (when targeting JS)KT-12589
Improved “infix
modifier is inapplicable” diagnostic messageKT-11679
Erroneous call with argument causes Throwable at ResolvedCallImpl.getArgumentMapping()KT-12623
Fix ISE on malformed codeKT-5075
Optimize array/collection indices usage in for
loopKT-11116
Optimize coercion to Unit, POP operations are backward-propagatedKT-11499
Compiler crashes with “Incompatible stack heights”KT-11943
CompilationException with extension property of KClassKT-12125
Wrong increment/decrement on Byte/Char/Short.MAX_VALUE/MIN_VALUEKT-12192
Exhaustiveness check isn't generated for when expression returning UnitKT-12200
Erroneously optimized away assignment to a property initialized to zeroKT-12582
“VerifyError: Bad local variable type” caused by explicit loop variable typeKT-12708
Bridge method not generated when data class implements interface with copy() methodKT-12106
import static of reified companion object method throws IllegalAccessError-language-version
command line optionlanguageVersion
configuration parameter, linked with kotlin.compiler.languageVersion
propertykotlinOptions.languageVersion
property in task configuration-jvm-target
command line optionjvmTarget
configuration parameter, linked with kotlin.compiler.jvmTarget
propertykotlinOptions.jvmTarget
property in task configuration-jdk-home
command line optionjdkHome
configuration parameter, linked with kotlin.compiler.jdkHome
propertykotlinOptions.jdkHome
property in task configurationKT-11632
)RandomAccess
and the operation isn't inlinedby
and in
try
in assignment expressionKT-8527
Include non-imported declarations on the first completionKT-12068
Special completion item for “[]” get-operator accessKT-12080
Parameter names are now higher up in completion listKT-9166
Code completion does not work for synthetic java properties on typing “g”KT-11609
No named arguments completion should be after dotKT-11633
Wrong indentation after completing a statement in data classKT-11680
Code completion of label for existing return with value inserts redundant whitespaceKT-11784
Completion for if
statement should add parentheses automaticallyKT-11890
Completion for callable references does not propose static Java membersKT-11912
String interpolation is not converted to ${} form when accessing this.propertyKT-11957
No catch
and finally
keywords in completionKT-12103
Smart completion for nested SAM-adapter produces short unresolved nameKT-12138
Do not show “::error” in smart completion when any function type accepting one argument is expectedKT-12150
Smart completion suggests to compare non-nullable with nullKT-12124
No code completion for a java property in a specific positionKT-12299
Completion: incorrect priority of property foo over method getFoo in Kotlin-only codeKT-12328
Qualified function name inserted when typing before if
KT-12427
Completion doesn't work for “@receiver:” annotation targetKT-12447
Don't use CompletionProgressIndicator in Kotlin pluginKT-12669
Completion should show variant with ()
when there is default lambdaKT-12369
Pressing dot after class name should not cause insertion of constructor callKT-11692
Support Spring model diagrams for Kotlin classesKT-12079
Support “Autowired members defined in invalid Spring bean” inspection on Kotlin declarationsKT-12092
Implement bean references in @Qualifier annotationsKT-12135
Automatically configure components based on basePackageClasses
attribute of @ComponentScanKT-12136
Implement package references inside of string literalsKT-12139
Support Spring configurations linked via @Import annotationKT-12278
Implement Spring @Autowired inspectionKT-12465
Implement Spring @ComponentScan inspectionKT-12091
Fixed unstable behavior of Spring line markersKT-12096
Fixed rename of custom-named beans specified with Kotlin annotationKT-12117
Group Kotlin classes from the same file in the Choose Bean dialogKT-12120
Show autowiring candidates line markers for @Autowired-annotated constructors and constructor parametersKT-12122
Fixed line marker popup on functions with @Qualifier-annotated parametersKT-12143
Fixed “Spring Facet Code Configuration (Kotlin)” inspection descriptionKT-12147
Fixed exception on analyzing object declaration with @Component annotationKT-12148
Warn about object declarations annotated with Spring @Configuration
/@Component
/etc.KT-12363
Fixed “Autowired members defined in invalid Spring bean (Kotlin)” inspection descriptionKT-12366
Fixed exception on analyzing class declaration upon annotation typingKT-12384
Fixed bean references in factory method callsKT-8477
New inspection “Can be primary constructor property” with quick-fixKT-5010
“Redundant semicolon” inspection with quickfixKT-9757
Quickfix for “Unused lambda expression” warningKT-10844
Quick fix to add crossinline modifierKT-11090
“Add variance modifiers to type parameters” inspectionKT-11255
Move Element Left/Right actionsKT-11450
“Modality is redundant” inspectionKT-11523
“Add @JvmOverloads annotation” intentionKT-11768
“Introduce local variable” intentionKT-11806
Quick-fix to increase visibility for invisible memberKT-11807
Use function body template when generating overriding functions with default bodyKT-11864
Suggest “Create function/secondary constructor” quick fix on argument type mismatchKT-11876
Quickfix for “Extension function type is not allowed as supertype” errorKT-11920
“Increase visibility” and “Decrease visibility” quickfixes for exposed visibility errorsKT-12089
Quickfix “Make primary constructor parameter a property”KT-12121
“Add toString()
call” quickfixKT-11104
New quickfixes for nullability problems: “Surround with null check” and “Wrap with safe let call”KT-12310
New inspection “Member has platform type” with quickfixval
” inspectionKT-3797
Quickfix to make a function abstract should not be offered for object membersKT-11866
Suggest “Create secondary constructor” when constructors exist but are not applicableKT-11482
Fixed exception in “Move to companion object” intentionKT-11483
Pass implicit receiver as argument when moving member function to companion objectKT-11512
Allow choosing any source root in “Move file to directory” intentionKT-10950
Keep original file package name when moving top-level declarations to separate file (provided it's not ambiguous)KT-10174
Optimize imports after applying “Move declaration to separate file” intentionKT-11764
Intention "Replace with a forEach
function call should replace continue
with return@forEach
KT-11724
False suggestion to replace with compound assignmentKT-11805
Invert if-condition intention breaks code in case of end of line commentKT-11811
“Make protected” intention for a val declared in parameters of constructorKT-11710
“Replace if
with elvis operator”: incorrect code generated for if
expressionKT-11849
Replace explicit parameter with it
changes the meaning of code because of the shadowingKT-11870
“Replace with Elvis” refactoring doesn't change the variable type from T? to TKT-12069
Specify language for all Kotlin code inspectionsKT-11366
“object Companion
is never used” warning in intellijKT-11275
Inconsistent behaviour of “move lambda argument out of parentheses” intention action when using lambda calls with function arguments without parenthesesKT-11594
“Add non-null asserted (!!) call” applied to unsafe cast to nullable type causes AE at KtPsiFactory.createExpression()KT-11982
False “Redundant final modifier” reportedKT-12040
“Replace when with if” produce invalid code for first entry which has commentKT-12204
“Use classpath of module” option in existing Kotlin run configuration may be changed when a new run configuration is createdKT-10635
Don't mark private writeObject and readObject methods of Serializable classes as unusedKT-11466
“Make abstract” quick fix applies to outer class of object with accidentally abstract functionKT-11120
Constructor parameter/field reported as unused symbol even if it have used
annotationKT-11974
Invert if-condition intention loses commentsKT-10812
Globally unused constructors are not marked as suchKT-11320
Don't mark @BeforeClass (JUnit4) annotated functions as unusedKT-12267
“Change type” quick fix converts to Int for Long literalKT-11949
Various problems fixed with “Constructor parameter is never used as a property” inspectionKT-11716
“Simply for
using destructuring declaration” intention: incorrect behavior for data classesKT-12145
“Simplify for
using destructuring declaration” should work even when no variables declared inside loopKT-11933
Entities used only by alias are marked as unusedKT-12193
Convert to block body isn't equivalent for when expressions returning UnitKT-10779
Simplify for
using destructing declaration: intention / inspection quick fix is available only when all variables are usedKT-11281
Fix exception on applying “Convert to class” intention to Java interface with Kotlin inheritor(s)KT-12285
Fix exception on test class generationKT-12502
Convert to expression body should be forbidden for non-exhaustive when returning UnitKT-12260
ISE while replacing an operator with safe callKT-12649
“Convert if to when” intention incorrectly deletes codeKT-12671
“Shot type” action: “Type is unknown” error on an invoked expressionKT-12284
Too wide applicability range for “Add braces to else” intentionKT-11975
“Invert if-condition” intention does not simplify is
expressionKT-12437
“Replace explicit parameter” intention is suggested for parameter of inner lambda in presence of it
from outer lambdaKT-12290
Navigate to the generated declaration when using “Implement abstract member” intentionKT-12376
Don‘t show "Package directive doesn’t match file location" in injected codeKT-12777
Fix exception in “Create class” quickfix applied to unresolved references in type argumentsKT-2428
Support basic use-cases of language injection for expressions marked with @Language annotationKT-11574
Support predefined Java positions for language injectionKT-11472
Add comment or @Language annotation after “Inject language or reference” intention automaticallyKT-6372
Add name suggestions to Rename dialogKT-7851
Respect naming conventions in automatic variable renameKT-8044
, KT-9432
Support @JvmName annotation in rename refactoringKT-8512
Support “Rename tests” options in Rename dialogKT-9168
Support rename of synthetic propertiesKT-10578
Support automatic test renaming for facade filesKT-12657
Rename implicit usages of annotation method value
KT-12759
Suggest renaming both property accessors with matching @JvmName when renaming one of them from JavaKT-4791
Rename overridden property and all its accessors on attempt to rename overriding accessor in Java codeKT-6363
Do not rename ambiguous references in import directivesKT-6663
Fixed rename of ambiguous import reference to class/function when some referenced declarations are not changedKT-8510
Preserve “Search in comments and strings” and “Search for text occurrences” settings in Rename dialogKT-8541
, KT-8786
Do now show ‘Rename overloads’ options if target function has no overloadsKT-8544
Show more detailed description in Rename dialogKT-8562
Show conflicts dialog on attempt of redeclarationKT-8611
Qualify class references to resolve rename conflicts when possibleKT-8732
Implement Rename conflict analysis and fixes for properties/parametersKT-8860
Allow renaming class by constructor delegation call referencing primary constructorKT-8892
Suggest renaming base declarations on overriding members in object literalsKT-9156
Quote non-identifier names in Kotlin referencesKT-9157
Fixed in-place rename of Kotlin expression referring Java declarationKT-9241
Do not replace Java references to synthetic component functions when renaming constructor parameterKT-9435
Process property accessor usages (Java) in comments and string literalsKT-9444
Rename dialog: Allow typing any identifier without backquotesKT-9446
Copy default parameter values to overriding function which is renamed while its base function is notKT-9649
Constraint search scope of parameter declared in a private memberKT-10033
Qualify references to members of enum companions in case of conflict with enum entriesKT-10713
Skip read-only declarations when renaming parametersKT-10687
Qualify property references to avoid shadowing by parametersKT-11903
Update references to facade class when renaming file via matching top-level classKT-12411
Fix package name quotation in Move refactoringKT-12543
Qualify property references with this
to avoid renaming conflictsKT-12732
Copy default parameter values to overriding function which is renamed by Java reference while its base function is unchangedKT-12747
Fix exception on file copyKT-4727
Convert Java code copied from browser or other sourcesKT-11952
Assertion failed in PropertyDetectionCache.get on conversion of access to Java constant of anonymous typeKT-12046
Recursive property setterKT-12039
Static imports converted missing “.Companion”KT-12054
Wrong conversion of instanceof
checks with raw typesKT-12045
Convert Object()
to Any()
KT-12015
False positive for Bundle.getInt()KT-12023
“minSdk” lint check doesn't work for as
/is
KT-12674
“Calling new methods on older versions” errors for inlined constantsKT-12681
Running lint from main menu: diagnostics reported for java source files onlyKT-12173
False positive for “Toast created but not shown” inside SAM adapterKT-12895
NoSuchMethodError thrown when saving a Kotlin file_
and *
standalone charactersKT-9933
Indentation in code fragments is not preservedKT-10998
Spaces around links are missing in return blockKT-11791
Markdown links renderingKT-12001
Allow use of @param
to document type parameterKT-11643
Inspections and intentions to fix erroneously configured Maven pom fileKT-11701
“Add Maven Dependency quick fix” in Kotlin source filesKT-11743
Intention to replace kotlin-test with kotlin-test-junitKT-9492
Configuring multiple Maven ModulesKT-11642
Kotlin Maven configurator tags orderKT-11436
“Choose Configurator” control opens dialogs with inconsistent modality (linux)KT-11731
Default maven integration doesn't include documentationKT-12568
Execution configuration: file path completion works only in some sub-elements of KT-12558
Configure Kotlin in Project: “Undo” should revert changes in all pomsKT-12512
“Different IDE and Maven plugin version” inspection is being invoked for non-tracked pom.xml filesKT-11438
Support navigation from stacktrace to inline function call siteKT-12067
Deadlock in Kotlin debugger is fixedKT-12232
No code completion in Evaluate Expression and Throwable at CodeCompletionHandlerBase.invokeCompletion()KT-12137
Evaluate expression: code completion/intention actions allows to use symbols from modules that are not referencedKT-12206
NoSuchFieldError in Evaluate Expression on a property of a derived classKT-12678
NoSuchFieldError in Evaluate Expression on accessing delegated property defined in other moduleKT-12773
Fix debugging for Kotlin JS projectsKT-12035
Spaces around as
KT-12018
Spaces between function name and arguments in infix callsKT-11961
Spaces before angle bracket in method definitionKT-12175
Don't enforce empty line between secondary constructors without bodyKT-12548
Spaces around is
keywordKT-12446
Spaces before class type parametersKT-12634
Spaces between method name and parenthesis in method callKT-10680
Spaces around in
keywordKT-12791
Spaces between curly brace and expression inside string templateKT-12781
Spaces between annotation and expressionKT-12689
Spaces around semicolonsKT-12714
Spaces around parentheses in enum elementsKT-2919
Constructor calls are no longer highlighted as classesKT-6540
Infix function calls are now highlighted as regular function callsKT-9410
Annotations in Kotlin are now highlighted with the same color as in Java by defaultKT-11465
Type parameters in Kotlin are now highlighted with the same color as in Java by defaultKT-11657
Allow viewing decompiled Java source code for Kotlin-compiled classesKT-11704
Support file path references inside of Kotlin string literalsKT-12076
Kotlin Plugin update check: always display installed version numberKT-11814
New icon for kotlin annotation classesKT-12735
Convert JavaDoc to KDoc when overriding Java class member in KotlinKT-5960
Can't find usages for Java methods used from Kotlin by call conventionKT-8362
“New Kotlin file”: Keywords should be escaped in package nameKT-8682
Respect “Copy JavaDoc” option in the “Override/Implement Members...” dialogKT-8817
Fixed rename of Java getters/setters through synthetic property references in KotlinKT-9399
Find Usages omits Kotlin annotation parameter usage in Java sourceKT-9797
“Kotlin Bytecode” toolwindow breaks after closingKT-11145
Use progress indicator when searching usages in Introduce ParameterKT-11155
Allow running multiple Kotlin classes as well as running mixtures of Kotlin and Java classesKT-11495
Show recursion line markers for extension function calls with different receiverKT-11659
Generate abstract overrides for Any members inside of Kotlin interfacesKT-12070
Add empty line in error message of Maven and Gradle configurationKT-11908
Allow properties with custom setters to be used in generated equals/hashCode/toStringKT-11617
Fixed title of Introduce Parameter declaration chooserKT-11817
Fixed rename of Kotlin enum constants through Java referencesKT-11816
Fixed usages search for Safe Delete on simple enum entriesKT-11282
Delete interface reference from super-type list when applying Safe Delete to Java interfaceKT-11967
Fix Find Usages/Rename for parameter references in XML filesKT-10770
“Optimize imports” will not keep import if a type is only referenced by kdocKT-11955
Copy/Paste inserts fully qualified name when copying function with overloadsKT-12436
“Replace explicit parameter with it”: java.lang.Exception at BaseRefactoringProcessor.run()KT-12440
Removing unused parameter results in Exception “Refactorings should not be started inside write action”KT-12006
getLanguageLevel is slow for Kotlin light classesKT-12026
“Constant expression required” in Java for const Kotlin valuesKT-12259
ClassCastException in light classes while trying to create generic propertyKT-12289
Remove unnecessary ?
from serr
live templateKT-12110
Map help button of the Compiler - Kotlin pageKT-12075
Kotlin Plugin update check: make dumbawareKT-10255
call BuildManager.clearState(project) in apply() method of Kotlin Compiler Settings configurableKT-11841
New Project / Module wizard, Gradle: pure Kotlin module is created without repositories
call in build.gradleKT-11095
Java cannot infer generic return type of Kotlin function (with java 8 language level)KT-12090
Intellij/Kotlin plugin does not handle generic return type of static method defined in Kotlin, called from JavaKT-12206
Fix NoSuchFieldError on accessing base property without backing field in evaluate expressionKT-12516
File Structure: Kotlin annotation classes have Java annotation iconsKT-11328
“New Kotlin class”: generates packages when fully qualified name is specifiedKT-11778
Exception in Lombok plugin: Rewrite at slice FUNCTIONKT-11708
“Go to declaration” doesn't work on a call to function with SAM conversion on a derived typeKT-12381
Prefer not-nullable return type when overriding Java method without nullability annotationKT-12647
Performance improvement for test-related line markersKT-12526
Kotlin intentions increase PSI modification counts from isAvailable, even in daemon threadsKT-11531
Optimize “KCallable.name”KT-10771
Reflection on Function objects does not support lambdas with generic return typeKT-11824
Reflection inconsistency between member property and accessorKT-6942
Generate structural equality check (i.e. Any.equals
) instead of referential check (===) value equality patterns in when
KT-7228
Wrong AbstractList signatureKT-8299
Wrong access to private member in autogenerated code in data classKT-11346
Reified functions like filterIsInstance
are now available in JS Standard LibraryKT-12305
Incorrect translation of vararg
in @native
functionsKT-12254
JsEmptyExpression in initializer when compiling code like val x = throw Exception()
KT-11960
Wrong code generated when a method of a local class calls constructor of the classKT-10931
Incorrect inlining of library method with optional parametersKT-12417
Wrong check cast generated for KMutablePropertyKT-11839
Maven goal to execute kotlin scriptKT-12478
, KT-12406
, KT-12478
KT-12595
JPS: Fixed com.intellij.util.io.MappingFailedException: Cannot map bufferKT-11166
Gradle: Unable to access internal classes from test code within the same moduleKT-12352
KAPT: Fix “Classpath entry points to a non-existent location” warningsKT-12074
Building Kotlin maven projects using a parent pom will silently failKT-11770
Warning “RuntimeException: Could not find installation home path” when using Gradle Incremental CompilationKT-10969
Android extensions: NullPointerException when finding view in FragmentKT-11885
Gradle/Android: Unresolved reference “kotlinx” when classpath dependency is defined in root build.gradleKT-12786
Deprecation warning with Gradle 2.14equals
compared with ==
do...while (true)
is now considered an infinite loopval
in lambda or in local functionget
is an operator but set
is notwhen
over enums in inline functionsList<? super T>
) as mutable collections in Kotlin (MutableList<in T>
)todo
and currentStackTrace
@InlineOnly
not to lose stack traceString.subSequence
to match those of CharSequence.subSequence
*Indexed
functionsbinarySearch
functionstrimIndent
/trimMargin
toString()
for lambdas and function expressions when kotlin-reflect.jar is availableKProperty.javaField
on a subclassjavaMethod
and kotlinFunction
for top level functions in a different filex?.let { it }
) are now inlinedas
)is
-checks for reified type parametersis
-checks for nullable typesinvoke
on objects and companion objectsthis
in inner's lambdasCharSequence.repeat
New features:
@Configuration
/@Component
/@Bean
@Autowired
Dependency...” actionvar
s that can be replaced by val
s.java
when KClass is expectedarrayOf
wrapper for annotation parametersvar
with private setter finalkotlinClassName()
and kotlinFunctionName()
macros for use in live templatesIssues fixed:
@NotNull
parametervar
s shown in Ctrl + Mouse Hover as val
shashCode()
implementation in “Generate equals/hashCode” actionis
branches in when@
in completion.kotlin_builtins
files)when
with if
”: do not lose commentsoperator
functions@
nowwhile
loop condition+
, -
, &&
and ||
)$
symbols in converted stringstoArray
calls for Java Collection#toArray(T[])
@android:id/*
IDs in Android Extensionskotlin.incremental
Analysis & diagnostics issues fixed:
JVM code generation issues fixed:
JS translator issues fixed:
New features:
General issues fixed:
Configuration issues fixed:
Debugger issues fixed: