v2.0.0-Beta5
版本发布时间: 2024-03-20 21:10:41
JetBrains/kotlin最新发布版本:v1.9.25(2024-07-19 20:52:20)
Changelog
Analysis. API
New Features
-
KT-65327
Support reading klib contents in Analysis API
Performance Improvements
-
KT-65560
K2: Anaysis API: ContextCollector triggers redundant resolution in the case of file elements
Fixes
-
KT-65571
Support VirtualFile inputs to Analysis API modules -
KT-65600
Analysis Api: FirFile for KtCodeFragments are created and not updated on changes -
KT-64579
K2 IDE: "Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirValueParameterImpl(Source) but FirArgumentListImpl found" -
KT-65978
Analysis API: Use soft references inFileStructureCache
-
KT-64051
K2 IDE: Analysis API: Unresolved links to typealias in KDoc -
KT-66276
K2: Analysis API:TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM
false positive for script parameter -
KT-66232
K2: Analysis API: cover ScriptWithCustomDefDiagnosticsTestBaseGenerated by LL FIR tests -
KT-60996
K2: Stub Based Deserializer: Set versionRequirements to enable VERSION_REQUIREMENT_DEPRECATION diagnostics -
KT-66306
K2: Analysis API: drop ability to enable global phase resolve lock -
KT-64919
K2 IDE: Implement KMP support for sealed class inheritors -
KT-65563
Analysis API: Missing session componentFirExpectActualMatchingContextFactory
inLLFirLibrarySession
-
KT-66173
K2: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter' in array owner: LLFirLibrarySession -
KT-66238
Gradle kotlin build scripts - a lot of unresolved symbols after latest changes in kotlin master -
KT-65099
K2: Recursive local storage cache check for Fir2IrDeclarationStorage::createAndCacheIrPropertySymbols() -
KT-65265
Analysis API: Add library session invalidation tests -
KT-56288
Analysis API: Add tests for session invalidation on the Analysis API side -
KT-64000
K2: make AnnotationArgumentsStateKeepers more accurate -
KT-63606
K2: Analysis API: rewrite FirLazyAnnotationTransformer to avoid redundant transformations -
KT-65191
KtFirMultiplatformInfoProvider#getExpectForActual doesn't return expect function for slightly broken code -
KT-62136
Analysis API: Add concurrent tests forCleanableSoftValueCache
-
KT-61222
K2: Add lifecycle management forKtResolveExtension
-
KT-65960
Analysis API: Test infrastructure indexes binary libraries from decompiled files instead of stubs during IDE mode tests -
KT-65240
K2: CodeGen API fails to resolve Annotation parameter type when it runs FIR2IR for a class with a parent class from other module if the parent class has an annotation from another module -
KT-65344
K2: make FirScript statements (declarations) independent -
KT-65930
AA: receiver type forInt?::foo
misses nullability -
KT-65914
AA: receiver type forthis::foo
returns return type of the target callable -
KT-65780
K2: polish FileStructure implementation for FirFile -
KT-62840
K2 Script: everything around destructuring declaration on top level of scripts are broken -
KT-65683
Analysis API: Dangling file session creation causes acomputeIfAbsent
contract violation -
KT-64884
K2 IDE. FP [NAMED_PARAMETER_NOT_FOUND] for copy method of library data class when class has not parameter-properties -
KT-65763
K2: value parameter from library data class copy have RAW_FIR phase -
KT-65665
Analysis API: supportKtDelegatedSuperTypeEntry
inKtFirExpressionInfoProvider.isUsedAsExpression
-
KT-65655
Analysis API:KtCodeCompilationException
should not strongly reference FIR sessions -
KT-65345
K2: unify FirDesignation and LLFirResolveTarget
Analysis. Light Classes
-
KT-61734
SLC: wildcard suppression not honored -
KT-65112
Symbol Light Classes don't support annotations on type parameters -
KT-65843
K2: Light method returnskotlin.Unit
type forTestResult
return type -
KT-65653
SLC: wrong binary resolution to function with value class -
KT-65393
SLC: missing deprecated-hidden property -
KT-64772
SLC: presence of source PSI for compiler-generated declaration
Apple Ecosystem
-
KT-62373
"Xcode higher than tested" diagnostic -
KT-64096
Diagnostic when embedAndSign used for framework with cocoapods-dependencies
Backend. Native. Debug
-
KT-65553
K2: Native: kt42208WithPassingLambdaToAnotherFunction test fails with K2
Backend. Wasm
New Features
-
KT-58088
[PL] Support & enable partial linkage for Wasm -
KT-66327
Include information about particular Wasm target into KLib manifest -
KT-65009
Generate TypeScript definitions for the@JsExport
declarations in K/Wasm
Fixes
-
KT-65660
[WasmJs] Support catching JS exceptions -
KT-64890
K/Wasm compiler crash with external class and Kodein -
KT-66104
Wasm: compiler crash: NoSuchElementException: Sequence contains no element matching the predicate -
KT-66065
[Wasm] Make specialisations for closured primitive values -
KT-65778
Create the same TypeScript tests infrastructure for Kotlin/Wasm that we have now for Kotlin/JS -
KT-65411
Kotlin/Wasm: Boolean boxed instances are not the same -
KT-65713
Kotlin/Wasm generates a wrapper that cannot run in Deno -
KT-65777
Implement named export for Kotlin/Wasm -
KT-65824
Wasm: Allow unsigned primitives to be used inside functions annotated with@JsExport
-
KT-63939
Kotlin/Wasm Support lazy associated object initialisation -
KT-61888
[Kotlin/wasm] in kotlin.test support for@AfterTest
for async tests
Compiler
New Features
-
KT-64350
K2: deprecate using typealias as a callable qualifier in imports -
KT-65478
JVM: Change inlined variable naming format -
KT-26565
Choose existing extensions over additional built-ins members from JDK -
KT-65859
Calls refinement extension point -
KT-45375
Generate all Kotlin lambdas via invokedynamic + LambdaMetafactory by default -
KT-65681
K2: Improve error message of UPPER_BOUND_VIOLATED when upper bound is a captured type or other non-denotable type -
KT-65153
K/N: extract liveness analysis to a separate phase -
KT-59098
Support -Xjdk-release=1.6/1.7 with -jvm-target 1.8 -
KT-63670
Implement platform specific declaration clash diagnostics across all backends
Performance Improvements
-
KT-66341
K2: Don't build IdSignatures in FIR2IR with IR f/o builder -
KT-66172
K2: Improve memory consumption ofKtPsiSourceElement
-
KT-62798
'in' range checks are not intrinsified in kotlin-stdlib -
KT-65579
K2: performance regression in FP Space
Fixes
-
KT-66673
K2/JS: FirJsInheritanceClassChecker doesn't expand type aliases to supertypes -
KT-66475
K2/KMP/Wasm: report WRONG_JS_INTEROP_TYPE from a platform checker -
KT-66474
K2/KMP/JS: report EXTERNAL_TYPE_EXTENDS_NON_EXTERNAL_TYPE from a platform checker -
KT-66473
K2/Wasm: FirWasmExternalInheritanceChecker doesn't expand type aliases -
KT-65062
K2: build kotlinx.collections.immutable and pass to CI -
KT-65410
K2: ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED for 'removeAt' in KJK hierarchy -
KT-65377
K2: "Argument type mismatch" caused by approximated captured type argument of generic type -
KT-65440
K2: Mark all potential implementations of List.getFirst()/getLast() as deprecated independently of JDK -
KT-65184
K2: disappeared TYPE_MISMATCH for java collections -
KT-57588
K2/Native: False positive '"CONFLICTING_OVERLOADS", "PARAMETER_NAME_CHANGED_ON_OVERRIDE" on overriding objc methods -
KT-65882
K2: "KotlinNothingValueException" caused by unsafe cast and Nothing::class -
KT-65438
K2: Introduce WEAKLY_HIDDEN concept to built-in-JDK content mapping -
KT-65959
K2: Incorrect warnings about inline function impact -
KT-64994
K2:@Composable
lambda type is not resolved from other modules -
KT-66048
K2: property becomes nullable in KJK hierarchy if base declaration has implicit return type -
KT-66148
K2. Sources of receivers updated twice because of PCLA -
KT-65789
K1/K2: Resolve change in constructor/top-level function ambiguity -
KT-60971
Incorrect "cannot inline bytecode built with JVM target ..." on property setter if only getter is inline -
KT-61514
K2: Build fake overrides using IR during Fir2IR -
KT-65584
K2: "Duplicate parameter name in a function type" -
KT-50008
JSpecify@Nullable
annotation on type-parameter bound prevents type-variable usages from being platform types -
KT-66046
K2: false negative CANNOT_WEAKEN_ACCESS_PRIVILEGE on property -
KT-56988
CFG, smart casts: red in K1 -> green in K2 for invalid code -
KT-58191
K2: capturing closures successors that are already resolved (thanks to backward edges) must be taken into account for allowing smart casts -
KT-65464
K2: False positive UNRESOLVED_REFERENCE on extension property call defined in KJK hierarchy -
KT-62118
FIR: "HashMap.entry" has invalid enhanced type -
KT-64840
K2: Bare type are not allowed for TV based values during PCLA -
KT-65415
K2: Stdlib K2 build error: IrConstructorSymbolImpl is already bound -
KT-66449
Make DiagnosticSuppressor a project-level extension -
KT-66411
FIR: Real source on fake block around assignment expression in the "when" branch affects resolve in K2 Analysis API and IDE -
KT-65982
K2 Scripts cannot disambiguate declarations imported from default and explicit imports -
KT-65677
K2: Unable to resolve parent class from companion object -
KT-66441
Remove symbol table from IR fake override builder in Fir2Ir -
KT-58203
K2: false-negative incompatible types error on is-check with unrelated type -
KT-65722
K2: Property reference refers to non-existent functions -
KT-65878
K2: "ClassCastException" when passing nun-suspend lambda to SAM constructor with named argument -
KT-65787
K2: "KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType" caused by passing lambda expression with multiple labels to function -
KT-65926
K2: add tests for all fixed-in-k2 / not-reproducible-in-k2 unresolved issues -
KT-65022
K2: Compiler crashes when array literal is used in delegate expression -
KT-62836
K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource -
KT-64727
K1: Closing bracket of object inside crossinline lambda or inside lambda in inline function is not hit on step-over -
KT-64726
K1: Cannot stop on closing bracket of crossinline lambda inside of another crossinline lambda -
KT-64725
K1: Cannot stop on closing bracket of lambda of inline-only function -
KT-66272
Could not load module <Error module> with a combination of type parameters -
KT-66243
Could not load module <Error module> in a builder inference with lambda with typed parameter -
KT-66229
Could not load module <Error module> in a builder inference with Map.Entry -
KT-61448
K2: Disappeared DEPRECATION in testWithModifiedMockJdk -
KT-60106
K2: Introduced REIFIED_TYPE_FORBIDDEN_SUBSTITUTION -
KT-66120
IrFakeOverrideBuilder: wrong return type in intersection with 3 classes -
KT-60777
K2: missing INLINE_FROM_HIGHER_PLATFORM -
KT-66196
Convert INFERRED_TYPE_VARIABLE_INTO_EMPTY_INTERSECTION_ERROR to warning -
KT-66067
K2: different overrides are created in a complex hierarchy with raw types and upper-bounded type parameters -
KT-65821
K2: [NONE_APPLICABLE] None of the following functions is applicable: [constructor(message: String?): Throwable, constructor(cause: Throwable?): Throwable, constructor(): Throwable, ...] -
KT-66268
K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl -
KT-60797
K2: implement JAVA_MODULE_DOES_NOT_EXPORT_PACKAGE -
KT-28159
Smartcasts don't work with Nothing? values (Nothing? considered a null constant => an unstable value) -
KT-28262
Smartcasts for reference equality don't work if explicit true check is used -
KT-66000
K2: inherited inline getter has not been inlined -
KT-66158
K2: not nullable return type for upper-bounded kotlin type parameter in KJK hierarchy -
KT-65636
PowerAssert: Negative contains operator not aligned correctly in K2 -
KT-64271
K2: Wrong overriddenSymbols for toString of data class -
KT-62779
K2: Difference in fake override generation -
KT-61941
K2: FIR2IR incorrectly generates f/o structure for complex java/kotlin hierarchies with remapped jvm declarations -
KT-60283
K2: fake override for java static method is not generated -
KT-65095
K2: no bridge generated for getOrDefault when inheriting from Java Map implementation -
KT-57301
K2:getOrDefault
and bridges are not generated for certain Map subclasses -
KT-58814
Too eager subtype inference in when expression -
KT-65408
K1: "There are still 2 unbound symbols after generation of IR module" caused by data object'scopy
function usage -
KT-65844
False Positive "This class can only be used as an annotation or as an argument to@OptIn
" when passing as an array -
KT-58697
K2: Tests: Assert no dump files exist when dump directive isn't present -
KT-63258
NPE with function reference from within lambda during init -
KT-60597
K1: IllegalArgumentException: fromIndex(0) > toIndex(-1) when wrapping receiver with backticks -
KT-33108
USELESS_CAST false positive for cast inside lambda -
KT-58458
K1: "java.lang.NullPointerException" with 'var equals' or 'val equals' as argument in when -
KT-58447
K1: "AssertionError: Recursion detected on input" with@ParameterName
and extension -
KT-41013
OVERLOAD_RESOLUTION_AMBIGUITY for functions takes lambda: can not resolve it, but only named lambda parameter -
KT-65588
K2: typealias of primitive type in vararg causes ABI incompatibility -
KT-23873
Indexed access operator can cause false USELESS_CAST warning -
KT-31191
Contract not smartcasting for extension functions in if-statement with multiple conditions -
KT-63826
K2: expect for expect crashes the compiler -
KT-25668
False-positive error on restricted suspending function call with callable reference -
KT-18055
SMARTCAST_IMPOSSIBLE on mutable data class variable with a read-only property -
KT-66186
K1 diagnostics miss some reporting messages -
KT-65101
Generics behaving different when parenthesized -
KT-63444
TYPE_MISMATCH caused by Inner class with nullable type and star projection -
KT-58751
Definitely non-nullable type gets lost with star projection -
KT-56624
"Unresolved reference" with import alias and enum constructor call -
KT-53886
NoSuchMethodError exception in Kotlin/Native compiler -
KT-20617
Qualified this@property
does not work in extension properties with body expression -
KT-10879
OVERLOAD_RESOLUTION_AMBIGUITY for synthetic property accessor with smartcasted receiver -
KT-65649
K2: IR has incorrect origins for some inplace updating operators -
KT-63525
K2: "IllegalStateException: Fake override should have at least one overridden descriptor" caused by unreachable code -
KT-65333
K2: UNRESOLVED_REFERENCE for java inner class in intersection scope -
KT-63712
Make it possible to add new stdlib API with SinceKotlin(2.0) -
KT-63741
K2: fix visibility inference with overridden + inherited member -
KT-64488
K2: False positive DEPRECATED_ACCESS_TO_ENTRY_PROPERTY_FROM_ENUM with context receivers -
KT-57585
K2/MPP: false-negative errors on expect/actual modifiers mismatch -
KT-66077
IrFakeOverrideBuilder: NPE from IrJavaIncompatibilityRulesOverridabilityCondition.doesJavaOverrideHaveIncompatibleValueParameterKinds -
KT-66020
K2: ISE "IrPropertySymbolImpl is unbound. Signature: null" on a property with getter with@JvmName
-
KT-62135
K2, KLIB: Classes are still sorted before serializing them to metadata -
KT-66005
K2: "Should not be here: class org.jetbrains.kotlin.fir.expressions.impl.FirResolvedReifiedParameterReferenceImpl" on incorrect comparison of reified type parameter -
KT-65840
[K2] Initializer type mismatch: expected 'Type', actual 'Type' -
KT-59882
K2: Disappeared CANNOT_INFER_PARAMETER_TYPE -
KT-65002
K2: Incorrect suspend conversion if argument is an aliased functional type -
KT-65984
K2 scripting: failure on processing SUPPRESS annotation in the last script statement -
KT-65680
K2: Class redeclaration leads to BackendException during IR fake override builder -
KT-66028
K2: Convert FirExpectActualDeclarationChecker to platform checker -
KT-65592
K2: IrFakeOverrideBuilder: ISE "should not be called" on diamond hierarchy with explicit dependency on annotations.jar -
KT-65983
K2 gradle scripting: "'val' cannot be reassigned" errors -
KT-64502
K2: Internal error on calling function before declaration -
KT-60452
K2 Scripting: implement overriding of the script params -
KT-65975
K2: Implicit receivers resolution order in K2 scripting -
KT-60249
K2: No unit coercion generated for loops body -
KT-65801
IrFakeOverrideBuilder - visibility is lost for setter in KJK hierarchy -
KT-65937
K2: order of enum entries changed -
KT-65933
K2: Type missmatch in arrays in annotations -
KT-65343
JVM IR: Source parameter is lost when copying with DeepCopyIrTreeWithSymbols -
KT-62788
K2: difference in annotation inheritance in overriddings -
KT-65669
K2: ClassCastException class FirDeclarationStatusImpl cannot be cast to class FirResolvedDeclarationStatus -
KT-65493
IrFakeOverrideBuilder: difference in return type for intersection with raw type -
KT-65207
IrFakeOverrideBuilder - nullable return type for intersection override -
KT-65972
Fix problems related to Unknown visibility in [FP] intellij -
KT-65246
K2: Overiding java method that takes vararg parameter causes WRONG_NULLABILITY_FOR_JAVA_OVERRIDE warning -
KT-59883
K2: Disappeared INVALID_IF_AS_EXPRESSION -
KT-61823
K2: Render list of declarations in diagnostic messages with linebreak as separator -
KT-65302
IrFakeOverrideBuilder - missing@EnhancedNullability
-
KT-65241
K2: [LT] Compiler crash on assignment expression with incorrect lvalue -
KT-60006
K2: Disappeared EXPRESSION_EXPECTED -
KT-65817
K2: Check if callable reference vararg adaption can be affected by primitive type aliases -
KT-65920
K2: no field for delegation is created -
KT-65487
K2: Different fake overrides and false positive NOTHING_TO_OVERRIDE for intersection/override with Collection.remove -
KT-62931
K2: extra class files for@OptionalExpectation
marked annotations -
KT-59400
K2: Missing CANNOT_INFER_VISIBILITY -
KT-65460
Don't compare order of functions in IR dump -
KT-64276
[K/N][K2] K2 behaviorial difference with inconsistent inheritance of ObjCName -
KT-65572
[K/N][K2] INCOMPATIBLE_OBJC_NAME_OVERRIDE error message changed from K1 -
KT-63879
K2: Redundant flagdeclaresDefaultValue
for parameter of function inherited from delegate -
KT-65790
K2: Move check for private-to-this visibility into checker -
KT-65551
K2: Property redeclaration on native compilation leads to NotImplementedError -
KT-65770
K2: Diagnostic rendering ofvararg Foo
parameter producesvararg Array<Foo>
-
KT-65555
K2: must override 'spliterator' because it inherits multiple implementations for it -
KT-65337
K2: False positive UNRESOLVED_REFERENCE when lambda labeled by illegal label and operator-invoked -
KT-65448
K2: fake overrides are not generated for 'containsAll', 'removeAll', 'retainAll' if inherited from raw type -
KT-65298
K2: not nullable return type and parameter for raw types -
KT-65706
K2: IrFakeOverrideBuilder: ISE "Fake override should have at least one overridden descriptor" on J-K-J-K hierarchy with interface delegation -
KT-61798
K2 incorrectly calculates modality of property accessors -
KT-65604
K2: INAPPLICABLE_JVM_NAME: effective modality -
KT-65637
Prepare documentation for PCLA implementation -
KT-49283
Support contribution type info from a nested builder inference call -
KT-64077
K2: Builder inference ignores constraints from nested builder inference -
KT-49160
Couldn't infer a type argument through several builder inference calls broken by a local class -
KT-65057
K2: Wrong type inferred in code with heavy use of generics -
KT-64309
Generate a variable mapping for continuation parameter in suspend methods just from the start -
KT-61088
K2: return types of non-last-expression calls to@PolymorphicSignature
methods inside try-expressions don't resolve to void when required -
KT-65262
K2: Exception in DFA for combination of try-finally + PCLA + DI -
KT-58169
K2: make equals bounded smart casts work the same as in K1 -
KT-64102
K2: Missing (disappeared in this case) DELEGATE_USES_EXTENSION_PROPERTY_TYPE_PARAMETER_ERROR -
KT-63988
K2: Reflection cannot find type of local class of local class -
KT-63901
K2: Different naming of inner class in metadata -
KT-63655
K2: incorrect short class name in metadata for anonymous object inside a local class -
KT-63737
Wasm: revise external declaration FE checker for WASI mode -
KT-59782
K2: Forbid local delegated properties with private accessors in public inline functions -
KT-64222
K2: "return type is not a subtype of the return type of the overridden member" -
KT-63448
K2: CONFLICTING_INHERITED_JVM_DECLARATIONS with@JvmField
-
KT-59748
K2: Return type mismatch: expected Unit, actual Any? for when with an assignment in branch
Docs & Examples
-
KT-64710
[Docs] Update What's new for 2.0.0-BetaX
IDE. Gradle Integration
-
KT-65617
K/N project import fails if ~/.konan dir is empty
IR. Actualizer
-
KT-60847
K2: Fake overrides are incorrect after actualization -
KT-63756
K2: "AssertionError: No such value argument slot in IrConstructorCallImpl" caused by actual typealias for annotation with default parameter
IR. Inlining
-
KT-66017
K2 / Native: "NoSuchElementException: Sequence contains no element matching the predicate" on building native release binaries -
KT-64807
Refactor InlineFunctionResolver -
KT-64806
Move FunctionInlining to separate module
IR. Tree
-
KT-66152
IrFakeOverrideBuilder: AssertionError "different length of type parameter lists" -
KT-65971
K2: Investigate diagnostic test failures with IrFakeOverrideBuilder -
KT-61360
Fix essential problems in IrFakeOverrideBuilder
JavaScript
-
KT-8373
JS: support ES6 as compilation target -
KT-63907
KJS: default parameters in interfaces are lost in implementations -
KT-64708
KJS: exported interfaces missing __doNotUseOrImplementIt when extending from external types -
KT-62806
KJS: Type mismatch on inferred return type with Nothing -
KT-64421
K2: Implement IrJsTypeScriptExportTestGenerated for K2 -
KT-61526
KJS: Compiled files clash with the new per-file granularity -
KT-63359
K2: support new ways to declare TestResult in JS TestGenerator lowering -
KT-65216
K2 JS: False positive JS_NAME_CLASH diagnostic on generic interface
Klibs
-
KT-33411
Kotlin/Native crashes if several libraries have declarations with the same FQ name -
KT-44626
Umbrella issue: different kinds of klib IR linker error messages -
KT-64440
K2: Port KotlinKlibSerializerTest to K2 -
KT-64452
K2: Port FilePathsInKlibTest to K2 -
KT-65723
K2: Signature clash diagnostic fails for parametrized function with Unsupported pair of descriptors -
KT-65442
[klibs] header klibs: keep internal declarations and declarations inside inlines
Language Design
-
KT-65965
KMP: Parameter properties in constructor of external class -
KT-64187
K2: False positive ABSTRACT_NOT_IMPLEMENTED caused by the fact that common code sees platform code of its dependencies -
KT-65881
K2: MissingITERATOR_MISSING
infor
loop on object -
KT-65964
KMP: Private constructor in external classes -
KT-61340
K2: Allowed smart cast in common which should be prohibited in platform -
KT-51827
Inconsistent behavior with smartcast and protected members
Libraries
-
KT-54879
Add callsInPlace contract for more functions in stdlib -
KT-65532
Stabilize experimental API for 2.0 -
KT-66102
Constructor-like function for creating AutoCloseable instances -
KT-55777
Unresolved kotlin.AutoCloseable in JVM -
KT-65590
Make CharSequence.isBlank idiomatic and improve its performance -
KT-63219
Change root package and coordinates of kotlinx-metadata-jvm to kotlin.* -
KT-65518
Memory leak in buildMap and in Wasm/Js/Native (Linked)HashMap -
KT-65525
JS: Wrong return value of HashMap.keys.remove
Multiplatform Wizard
-
KT-66188
Update Compose for Desktop version to 1.6.0
Native
-
KT-65659
[K/N][K2] Typealiased kotlin.Throws isn't translated to NSError out param
Native. ObjC Export
-
KT-65863
Native: implement a flag to emit compiler errors on ObjCExport name collisions
Native. Swift Export
-
KT-65673
Expose parts of Kotlin/Native runtime to Swift export -
KT-65668
Support for Unsigned Types -
KT-65335
Swift Export: Remove KotlinSirOrigin hierarchy in favour of direct AA usage -
KT-65672
Swift Export: import C bridges as Clang module
Native. Testing
-
KT-64393
Use Compiler Core test infrastructure for testing serialization diagnostics on Native -
KT-65117
ImplementIrBackendFacade
s for Kotlin/Native backend
Reflection
-
KT-65156
Calls tocallBy
that use default arguments fail withKotlineReflectionInternalError
when the argument size is a multiple of 32 in a constructor that containsvalue class
as a parameter
Tools. CLI
-
KT-65094
K2: Revise PerformanceManager reporting -
KT-64989
Mark the whole diagnostic position range instead of only start position -
KT-64608
K2: Wrong end position of compiler diagnostics
Tools. CLI. Native
-
KT-64517
Drop deprecated KonanTargets
Tools. Compiler Plugin API
-
KT-59555
Expose resource closing extension point inCompilerPluginRegistrar
Tools. Compiler Plugins
-
KT-65690
jvm-abi-gen: Remove internal declarations from ABI -
KT-64590
jvm-abi-gen: Effectively private classes are not being removed from ABI -
KT-63507
K2 / All-open plugin: "'open' has no effect on a final class" warning -
KT-66208
PowerAssert: some built-in operators are not aligned correctly for some values -
KT-65810
PowerAssert: Infix transformation doesn't capture full context -
KT-65640
PowerAssert: Infix function not aligned correctly -
KT-61993
K2: Synthetic file classes are generated with start offset of 0, causing errors during compilation -
KT-63617
Add kotlin-power-assert to Kotlin repository
Tools. Fleet. ObjC Export
-
KT-65384
ObjCExport: class super name special case -
KT-66380
ObjCExport: support interface implementation -
KT-65670
ObjCExport: Naming: Support additional module based prefix -
KT-64953
ObjCExport: Analysis-Api: enum -
KT-65348
ObjCExport: Char as function return type -
KT-65738
ObjCExport: Analysis-Api: Generate base declarations -
KT-65204
ObjCExport: Analysis Api: Support nested classes -
KT-65225
ObjCExport: implement KtCallableSymbol.isArray
Tools. Gradle
New Features
-
KT-62921
Add API to allow getting the version of the kotlinc compiler
Performance Improvements
-
KT-64353
Improve reuse of Build Tools Api's classloader
Fixes
-
KT-63619
Add Kotlin power-assert compiler plugin to feature usage statistics gathering -
KT-64203
Throw exception when old build report properties are used -
KT-66429
Move WASM stability warning to KGP Tooling Diagnostics and report it once per build -
KT-63419
Deprecate 'kotlinOptions' DSL -
KT-65952
PowerAssert: Update Gradle extension to be more idiomatic -
KT-65951
PowerAssert: Add Gradle integration tests to compiler plugin -
KT-66373
[Wasm, KGP] Npm is not configured for JS usagе for wasmWasi project -
KT-66314
Build reports in JSON: property 'kotlin.build.report.json.directory' without value causes NPE -
KT-64380
Add project diagnostics for deprecated properties -
KT-65986
GradleDeprecatedOption.removeAfter
does not actually remove arguments from the compilerOptions/kotlinOptions DSLs -
KT-65768
Don't pass -Xfragment-sources for non-mpp compilations -
KT-64378
Compatibility with Gradle 8.6 release -
KT-65989
Compile against Gradle API 8.6 -
KT-65819
Build Gradle Plugins against Gradle 8.5 API -
KT-65701
Limit Gradle daemon max memory in integration tests -
KT-65568
Deprecate the ability to configure compiler options in KotlinCompilation -
KT-64355
Add plugin variant for gradle 8.5 -
KT-62640
Compatibility with Gradle 8.5 release -
KT-64504
Remove ownModuleName from AbstractKotlinCompile -
KT-65708
Flaky tests because of ivy repos in Integration Tests -
KT-56904
Enable warnings-as-error for Kotlin Gradle plugins compilation
Tools. Gradle. JS
-
KT-65870
KJS / Gradle: kotlinUpgradePackageLock fails making Yarn unusable
Tools. Gradle. Multiplatform
New Features
-
KT-66047
KMP: Isolate dependencies graph between main and test source sets -
KT-65196
Add high-level DSL to configure compiler options in the multiplatform project
Fixes
-
KT-61078
K2: Compilation fails in FirSerializer trying to serialize nested class -
KT-66372
KMP: JVM dependency can be downgraded by metadata dependency -
KT-66514
Don't get output file from Cinterop task for IDE Import if host os doesn't support it -
KT-66431
KMP: External Target Compilation friendArtifactResolver throws ClassCastException -
KT-64995
KonanPropertiesBuildService is not compatible with Project Isolation -
KT-63753
K2: File "does not belong to any module" when it is generated byregisterJavaGeneratingTask
in AGP -
KT-65426
K2: Debug compilation fails because code from main source set included in two K2 fragments -
KT-62508
Merge Android Source Sets into one K2 Fragment -
KT-65187
Remove deprecated platform plugins ids -
KT-63206
Deprecate eager CInteropProcess.outputFile in favor to lazy outputFileProvider
Tools. Gradle. Native
-
KT-65624
K/N warning: "The Kotlin/Native distribution used in this build does not provide the standard library." is displayed during configuration phase -
KT-65823
Add downloading k/n dependencies to KotlinNativeProvider -
KT-65985
Race condition during simultaneous execution of several native tasks -
KT-64903
Add maven repo with dev versions into IT
Tools. Incremental Compile
-
KT-65943
Incorrect scopeFqName recorded in LookupTracker -
KT-62101
IC: Execution failed for ClasspathEntrySnapshotTransform: when using tools.jar as dependency
Tools. Kapt
-
KT-65399
K2 QG: Kapt3 with K2 produces incorrect code -
KT-44706
KAPT:@JvmRecord
causes "Record is an API that is part of a preview feature" -
KT-64391
Some K2 Kapt integration tests are being executed with K1 -
KT-65404
KAPT should print a warning if stub generation is triggered for an interface with method bodies but without -Xjvm-default=all or -Xjvm-default=all-compatibility -
KT-65453
Kapt4: error "annotation@ParameterName
is missing a default value for the element 'name'" for a composable lambda fun without parameters
Tools. Scripts
-
KT-65865
K2: Compile scripts in a separate session -
KT-65967
Scripts in common source roots should be forbidden for now
Tools. Wasm
-
KT-64553
K/Wasm: enable binaryen by default in production builds -
KT-66159
K/Wasm: applyBinaryen somehow affects skiko.mjs -
KT-66228
K/Wasm 2.0.0-Beta4 distribution doesn't contain all files -
KT-65889
wasmJsBrowserDistribution doesn't copy wasm binaries to dist folder -
KT-65686
K/Wasm: Binaryen and d8 have to be downloaded via the same mechanism as Node.js and Yarn -
KT-58291
Wasm: --tests argument is ignored when running wasmBrowserTest
1、 kotlin-compiler-2.0.0-Beta5.zip 79.86MB
2、 kotlin-compiler-2.0.0-Beta5.zip.sha256 64B
3、 kotlin-compiler-2.0.0-Beta5.spdx.json 32.4KB
4、 kotlin-native-prebuilt-linux-x86_64-2.0.0-Beta5.tar.gz 175.47MB
5、 kotlin-native-prebuilt-linux-x86_64-2.0.0-Beta5.tar.gz.sha256 64B
6、 kotlin-native-prebuilt-linux-x86_64-2.0.0-Beta5.spdx.json 426B
7、 kotlin-native-prebuilt-macos-aarch64-2.0.0-Beta5.tar.gz 296.35MB
8、 kotlin-native-prebuilt-macos-aarch64-2.0.0-Beta5.tar.gz.sha256 64B
9、 kotlin-native-prebuilt-macos-aarch64-2.0.0-Beta5.spdx.json 426B
10、 kotlin-native-prebuilt-macos-x86_64-2.0.0-Beta5.tar.gz 297.34MB
11、 kotlin-native-prebuilt-macos-x86_64-2.0.0-Beta5.tar.gz.sha256 64B
12、 kotlin-native-prebuilt-macos-x86_64-2.0.0-Beta5.spdx.json 426B
13、 kotlin-native-prebuilt-windows-x86_64-2.0.0-Beta5.zip 168.67MB
14、 kotlin-native-prebuilt-windows-x86_64-2.0.0-Beta5.zip.sha256 64B
15、 kotlin-native-prebuilt-windows-x86_64-2.0.0-Beta5.spdx.json 437B