1.1-M04
Pre-release
Pre-release
1.1-M04 (EAP-4)
Language related changes
KT-4481
compareTo on primitive floats/doubles should behave naturallyKT-11016
Allow to annotate internal API to be used inside public inline functionsKT-11128
Member vs SAM conversion with more specific signatureKT-12215
Allowing to access protected members in public inline members creates potential binary compatibility problemKT-12531
Report error when delegated member hides a supertype memberKT-14650
mod function on integral types is inconsistent with BigInteger.modKT-14651
Floating point comparisons shall operate according to IEEE754KT-14852
It should not be possible to use typealias that abbreviates a generic projection as a constructorKT-15226
Restrict delegation to java 8 default methods
Reflection
KT-12250
Provide API for getting a single annotation by its classKT-14939
VerifyError in accessors for bound property reference with receiver 'null'
Compiler
Coroutines
- Major coroutines redesign - see
KEEP
for details
Optimizations
KT-11734
Optimize const vals by inlining them at call siteKT-13570
Generate TABLE/LOOKUPSWITCH if all when branches are const integer valuesKT-14746
Captured Refs should not be volatile
Various issues
KT-10982
java.util.Map::compute* poor usabilityKT-12144
Type inference incorporation error on SAM adapter callKT-14196
Do not allow class literal with expression in annotation argumentsKT-14453
Regression: Type inference failed: inferred type is T but T was expectedKT-14774
Incorrect inner class modifier generated for sealed inner classesKT-14839
CompilationException when calling inline fun with first arg of 2 (w/defaults) within catch block of Java exception typeKT-14855
Projection in type aliases should be allowed in supertypes and constructor invocations if they expand to non-toplevel projectionsKT-14887
Unhelpful error "public-API inline function cannot access non-public-API" for unresolved call inside inline functionKT-14930
Android: creating Kotlin activity: UOE at EmptyList.removeAll()KT-15146
Kapt3 no source files on unittestKT-15272
Exception when building 2 projects at the same time
JavaScript backend
dynamic type
KT-8207
Extension function on dynamic resolves on any typeKT-6579
JS: prohibit to usein
and!in
on dynamicKT-6580
JS: prohibit to use more than one argument in indexed access on dynamicKT-13615
JS: don't generate guard for catch with dynamic type
@native/external
KT-13893
JS: Replace @Native annotation with external modifierKT-12877
Allow to specify module for native JS declarationsKT-14806
JS: name of a local variable clashes with native declaration from global scope
Diagnostics
KT-13889
JS: prohibit overriding native functions with default values assigned to parametersKT-13894
JS: prohibit native declaration inside non-nativeKT-13895
JS: RUNTIME annotationsKT-13896
JS: prohibit external(native) extension functions and propertiesKT-13897
JS: prohibit native(external) files and typealiasesKT-13910
JS: prohibit override members of native declaration with overloadsKT-14027
JS: prohibit native inner classesKT-14029
JS: prohibit private members inside native declarationsKT-14037
JS: prohibit using native interfaces in RHS of ISKT-14038
JS: warn when using native interface in RHS of ASKT-15130
JS: prohibit inheritance native from non-nativeKT-12600
JS: type check with a native interface compiles but crash at runtimeKT-13307
KotlinJS cannot cast to a marker interface.
Language features support
KT-13573
JS: support bound callable referenceKT-14634
JS: support enumValues / enumValueOfKT-15058
JS: replace suspend function convention
Issues related to kotlin.Any
KT-7664
JS: "x is Any" is always falseKT-7665
JS: creating Any instance crashes on runtimeKT-15131
JS: don't mangle Any.equals
Various issues
KT-14033
JS: don't optimize (based on type information) by default expressions with any of "as, is, !is, as?, ?., !!"KT-13616
JS: don't omit guard for catch with Throwable typeKT-12976
JS: human-friendly error message on wrong modules orderKT-15212
JS: link unqualified names injs(...)
function to local functions in outer Kotlin function by nameKT-14750
JS: remove unnecessary functions from kotlin.js
Bugfixes
KT-12566
JS: inner local class should refer to captured variables via its outer classKT-12527
Reified is-check works wrongly for chained callsKT-12586
JS: compiler crashes when call inline function inside string templeateKT-13164
Ecma TypeError on extending local class from inner oneKT-14888
JS: Compiler error: Cannot get FQ name of local class: lazy classKT-14748
JS: eliminate unused functionsKT-14999
JS: Operator set + labeled lambdasKT-15007
JS: Dies when checking if exception implements interface. TypeError: Cannot read property 'baseClasses' of undefinedKT-15073
KT to JS losing extension function's receiverKT-15169
JS: compiler fails on annotated expression with TRE at Translation.doTranslateExpression()KT-13522
JS: can't use captured reified type paramter in jsClassKT-13784
JS: lambda was not inlined for function with reified parameter declared in another moduleKT-13792
JS: inner class of local class does not capture enclosing class properlyKT-15327
JS: EnumvalueOf
should throw IllegalArgumentException
Standard library
KT-7930
Make String.toInt(), toLong(), etc. nullable instead of throwing exceptionKT-8220
Add #peek method to Sequence similar to Stream.peekKT-8286
Int.toString and String.toInt with base as parameterKT-14034
JS: unsafeCast functionKT-15181
Some source files are missing from published sources on Bintray
IDE
KT-14693
Introduce Type Alias: Do not suggest type qualifiersKT-14696
Introduce Type Alias: Fix NPE during dialog repaintKT-14685
Introduce Type Alias: Replace type usages in constructor callsKT-14861
Introduce Type Alias: Support callable references/class literalsKT-15204
Implement navigation from header to its implementation and vice versaKT-15269
Quickfix for external (native) extension declarationsKT-15293
Add 1.1 EAP repository when creating a new Gradle project with 1.1 EAP
Scripting
KT-14538
Kotlin gradle script files appear totally unresolvedKT-14706
Support package declaration in scriptingKT-14707
Support javax.script.Invocable on the JSR 223 ScriptEngineKT-14708
kotlin-script-runtime is not publishedKT-14713
Make it possible to use JSR 223 support without specifying compiler JAR absolute pathKT-15064
Gradle build with script .kts file: NPE at ScriptCodegen.genConstructor()
Gradle support
KT-15080
Gradle build fails with Gradle 3.2 (master)KT-15120
Gradle JS test compile task doesn't pick up production codeKT-15127
JS "compiler jar not found" with Gradle 3.2KT-15133
Recent gradle-script-kotlin 3.3 distributions are unusableKT-15218
Isolate Gradle Kotlin compiler process
Previous releases
This release also includes the fixes and improvements from the previous releases, such as
1.0.6 RC
and
1.1-M03