This repository was archived by the owner on Jul 6, 2022. It is now read-only.
Closed
Conversation
2ef9dd9 to
92b09e3
Compare
92b09e3 to
d85f84c
Compare
d85f84c to
61eb72b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.6.20->1.7.01.1.4->2.0.3Release Notes
JetBrains/kotlin
v1.7.0Analysis API. FIR
KT-50864Analysis API: ISE: "KtCallElement should always resolve to a KtCallInfo" is thrown on call resolution inside plusAssign targetKT-50252Analysis API: Implement FirModuleResolveStates for librariesKT-50862Analsysis API: do not create use site subsitution override symbolsAnalysis API. FIR Low Level API
KT-50729Type bound is not fully resolvedKT-50728Lazy resolve of extension function from 'kotlin' package breaks over unresolved typeKT-50271Analysis API: get rid of using FirRefWithValidityCheckBackend. Native. Debug
KT-50558K/N Debugger. Error is not displayed in variables view for catch blockCompiler
New Features
KT-26245Add ability to specify generic type parameters as not-nullKT-45165Remove JVM target version 1.6KT-27435Allow implementation by delegation to inlined value of inline classKT-47939Support method references to functional interface constructorsKT-50775Support IR partial linkage in Kotlin/Native (disabled by default)KT-51737Kotlin/Native: Remove unnecessary safepoints on watchosArm32 and iosArm32 targetsKT-44249NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER with type usage in higher order functionPerformance Improvements
KT-48233Switching to JVM IR backend increases compilation time by more than 15%KT-51699Kotlin/Native: runtime has no LTO in debug binariesKT-34466Use optimized switch over enum only when all entries are constant enum entry expressionsKT-50861FIR: Combination of array set convention and plusAssign works exponentiallyKT-47171For loop doesn't avoid boxing with value class iterators (JVM)KT-29199'next' calls for iterators of merged primitive progressive values are not specializedKT-50585JVM IR: Array constructor loop should use IINCKT-22429Optimize 'for' loop code generation for reversed arraysKT-50074Performance regression in String-based 'when' with single equality clauseKT-22334Compiler backend could generate smaller code for loops using range such as integer..array.size -1KT-35272Unnecessary null check on unsafe cast after not-null assertion operatorKT-27427Optimize nullable check introduced with 'as' castFixes
KT-46762Finalize support for jspecifyKT-51499@file:OptIn doesn't cover override methodsKT-52037FIR: add error in 1.7.0 branch if run with non-compatible pluginsKT-46756Release the K2/JVM compiler in AlphaKT-49715IR: "IllegalStateException: Function has no body: FUN name:toString" during IR lowering with shadowed extension inside interfaceKT-45508False negative ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED on a fake override with an abstract super class memberKT-28078Report error "Public property exposes its private type" for primary constructor properties instead of warningKT-49017Forbid usages of super or super if in fact it accesses an abstract memberKT-38078Prohibit calling methods from Any with "super" qualifier once they are overridden as abstract in superclassKT-52363Evaluate impact of qualifiedthisbehavior change warningsKT-52561JVM: Coroutine state machine loses value after a check-induced smart castKT-52311java.lang.VerifyError: Bad type on operand stackKT-41124Inconsistency of exceptions at init block for an enum entry with and without a qualifier nameKT-46860Make safe calls always nullableKT-52503New green code appeared at the callable reference resolutionKT-51925Native: "IllegalStateException: Symbol for kotlinx.cinterop/CStructVar|null[0] is unbound" caused by inline functionKT-49317"IllegalStateException: Parent of this declaration is not a class: FUN LOCAL_FUNCTION_FOR_LAMBDA" with parameter of suspend type with the default parameterKT-51844New errors in overload resolution involving vararg extension methodsKT-52006"java.lang.Throwable: Unbalanced tree Exception" on indexing kotlin projectKT-51223Report warning about conflicting inherited members from deserialized dependenciesKT-51439FE 1.0: implement type variance conflict deprecation on qualifier type argumentsKT-51433FE 1.0: implement warnings about label resolve changesKT-51317Regression in resolution of lambdas where expected type has an extension receiver parameterKT-45935JVM IR: Add not-null assertion for explicit definitely not-null parametersKT-51818"ClassCastException: class CoroutineSingletons cannot be cast to class" with suspendCoroutineUninterceptedOrReturn and coroutinesKT-51718JVM / IR: "VerifyError: Bad type on operand stack" caused by nullable variable inside suspend functionKT-51927Native:The symbol of unexpected type encountered during IR deserializationerror when multiple libraries have non-conflicting declarations with the same nameKT-52394JVM: Missing annotation on method with value class return type when a subclass is present in the same file in Kotlin 1.7.0-BetaKT-51640FIR: remove warning about "far from being production ready"KT-45553FIR: support hiding declaration from star import by as importKT-52404Prolong deprecation cycle for errors at contravariant usages of star projected argument from JavaKT-50734TYPE_MISMATCH: NonNull parameter with a type of Nullable type argument causes compiler warningKT-51235JVM / IR: "AbstractMethodError: Receiver class does not define or inherit an implementation of the resolved method" when property with inline class type is overridden to return Nothing?KT-48935NI: Multiple generic parameter type constraints are not applied as expected when the parameter is of function typeKT-49661NI: No TYPE_INFERENCE_UPPER_BOUND_VIOLATED when argument is inferred by return typeKT-50877Inconsistent flexible typeKT-51988"NPE: getContainingDeclaration…lDeclarationType.REGULAR) must not be null" when using @BuilderInference with multiple type argumentsKT-48890Revert Opt-In restriction "Overriding methods can only have opt-in annotations that are present on their basic declarations."KT-52035FIR: add error in 1.7.0 branch if run on JS / Native configurationKT-45461NI: False negative TYPE_INFERENCE_UPPER_BOUND_VIOLATED when passing an argument to a function with generic constraintsKT-52146JVM IR: "AssertionError: Primitive array expected" on vararg of SAM types with self-type and star projectionKT-50730Implement error for a super class constructor call on a function interface in supertypes listKT-52040JVM: ClassFormatError Illegal method name "expectFailure$__proxy-0"KT-50845Postpone rxjava errors reporting in the strict mode till 1.8 due to found broken casesKT-51979"AssertionError: No modifier list, but modifier has been found by the analyzer" exception on incorrect Java interface overrideKT-51759FIR DFA: false positive "Variable must be initialized"KT-50378Unresolved reference for method in Jsoup library in a kts script fileKT-34919"Visibility is unknown yet" when named parameter in a function type used in a typealias implemented by an abstract classKT-51893Duplicated [OVERRIDE_DEPRECATION] on overridden propertiesKT-41034K2: Change evaluation semantics for combination of safe calls and convention operatorsKT-51843Functional interface constructor references are incorrectly allowed in 1.6.20 without any compiler flagsKT-51914False positive RETURN_TYPE_MISMATCH in intellij ultimateKT-51711Compiler warning is displayed in case there is 'if' else branch used with elvisKT-33517Kotlin ScriptEngine does not respect async code when using bindingsKT-51850FIR cannot resolve ambiguity with different SinceKotlin/DeprecatedSinceKotlinKT-44705Deprecate using non-exhaustive if's and when's in rhs of elvisKT-44510FIR DFA: smartcast after elvis with escaping lambdaKT-44879FIR DFA: Trackincanddecoperator calls in preliminary loop visitorKT-51758FIR: explicit API mode errors should not be reported for effectively internal / private entitiesKT-51203FIR: Inconsistent RETURN_TYPE_MISMATCH and TYPE_MISMATCH reporting on functions and propertiesKT-51624FIR: false-positive INAPPLICABLE_LATEINIT_MODIFIER for lateinit properties with unresolved typesKT-51204FIR IC: Incremental compilation fails on nested crossinlineKT-51798Fix ISE from IR backend when data class inherits equals/hashCode/toString with incompatible signatureKT-46187FIR: OVERLOAD_RESOLUTION_AMBIGUITY on SAM-converted callable reference to List::plusKT-51761Incorrect NONE_APPLICABLE in expect classKT-51756FIR: false positive NO_VALUE_FOR_PARAMETER in expect class delegated constructor callKT-49778Support cast to DefinitelyNotNull type in NativeKT-51441-Xpartial-linkage option specified in Gradle build script is not passed to Native linkerKT-34515NI: "AssertionError: Base expression was not processed: POSTFIX_EXPRESSION" with double not-null assertion to bracketsKT-48546PSI2IR: "org.jetbrains.kotlin.psi2ir.generators.ErrorExpressionException: null: KtCallExpression" with recursive property access in lazy blockKT-28109"AssertionError: No setter call" for incrementing parenthesized result of indexed access convention operatorKT-46136Unsubstituted return type inferred for a function returning anonymous object upcast to supertypeKT-51364FIR: ambiguity due to String constructors clashKT-51621FIR: visible VS invisible qualifier conflictKT-50468FIR compilers fails with CCE when meets top-level destructionKT-51557Inline stack frame is not shown for default inline lambdaKT-51358OptIn: show default warning/error message in case of empty message argumentKT-44152FIR2IR fails on declarations from java stdlib if java classes are loaded from PSI instead of binariesKT-50949PSI2IR: NSEE fromArgumentsGenerationUtilsKt.createFunctionForSuspendConversionwith providing lambda as argument with suspend typeKT-39256ArrayStoreException with list of anonymous objects with inferred types created in reified extension functionKT-39883Deprecate computing constant values of complex boolean expressions in when condition branches and conditions of loopsKT-36952Exception during codegen: cannot pop operand off an empty stack (reference equality, implicit boxing, type check)KT-51233AssertionError in JavaLikeCounterLoopBuilder with ComposeKT-51254Verify Error on passing null to type parameter extending inline classKT-50996[FIR] Support Int -> Long conversion for property initializersKT-51000[FIR] Support Int -> Long? conversionKT-51003[FIR] Consider Int -> Long conversion if expected type is type variableKT-51018[FIR] Wrong type inference if one of constraints is integer literalKT-51446Metadata serialization crashes with IOOBE when deserializing underlying inline class value with type table enabledKT-50973Redundant line number mapping for finally block with JVM IRKT-51272Incompatible types: KClass and callable reference Collection::classKT-51274"Expected some types" exception on when branch for when expression of erroneous typeKT-51229FIR: private constructor of internal data class treated as internal and not privateKT-50750[FIR] Report UNSUPPORTED on array literals not from annotation classesKT-51200False EXPOSED_PARAMETER_TYPE for internal type parameter of internal typeKT-49804False positive of UPPER_BOUND_VIOLATED and RETURN_TYPE_MISMATCHKT-51121Inconsistent SAM behavior in multiple cases causing AbstractMethodError (Kotlin 1.6.10)KT-50136FIR: syntax error on (T & Any)KT-49465FIR2IR: support definitely not-null typesKT-51357FIR: error in inference while using integer literal in expected Long positionKT-49925[FIR] Incorrect builder inference (different cases)KT-50542"IllegalStateException: Type parameter descriptor is not initialized: T declared in sort" with definitely non-null type Any & T in generic constraintKT-51171FIR: classErrorresolution problemKT-51156Multiplatform linkDebugFramework task throws NoSuchElementException when expect class constructors utilize nested enum constantKT-51017[FIR] Ambiguity on callable reference between two functions on generic receiver with different boundsKT-51007[FIR] False positive ILLEGAL_SUSPEND_FUNCTION_CALL if fun interface with suspend function declared in another moduleKT-50998[FIR] Int.inv() cal does not considered as compile time callKT-51009[FIR] Incorrect inference of lambda in position of returnKT-50997[FIR] Incorrect type of typealias for suspend functional typeKT-49714Compiler reports "'operator modifier is inapplicable" if expect class with increment operator is provided via type aliasKT-48623Type nullability enhancement improvementsKT-44623"IllegalStateException: IdSignature is allowed only for PublicApi symbols" when suspending receiver is annotated with somethingKT-46000JVM / IR: AssertionError on isSubtypeOfClass check in copyValueParametersToStatic with ComposeKT-50211Annotation Instantiation with default arguments in NativeKT-49412Controversial "type argument is not within its bounds" reported by FIRKT-48044[FIR] Investigate behavior ofUPPER_BOUND_VIOLATEDon complex casesKT-37975Don't show deprecation of enum class itself for its own memberKT-50737Inheritance from SuspendFunction leads to compiler crashKT-50723Implement a fix of reporting of uninitialized parameter in default values of parametersKT-50749Implement UNSUPPORTED reporting on array literals inside objects in annotation classesKT-50753Implement reporting errors on cycles in annotation parameter typesKT-50758Fix inconsistency of exceptions at init block for an enum entry with and without a qualifier nameKT-50182CONST_VAL_NOT_TOP_LEVEL_OR_OBJECT: clarify error message forconstin object expressionKT-50183Fix missing apostrophe escapes in compiler error messagesKT-50788FIR: false unsafe call on not-null genericKT-50785FIR: inconsistent smart cast after comparison with trueKT-50858[FIR LL] FIR in low level mode creates multiple symbols for same declarationKT-50822Analysis API: make declaration transformers machinery to be a thread safeKT-50972FIR doesn't report VAL_REASSIGNMENT on synthetic propertiesKT-50969FIR: diamond inheritance with different parameter types depends on a supertype orderKT-50875FIR: no smart cast after reassignment with elvisKT-50835Inline functions with suspend lambdas break the tail-call optimizationKT-49485JVM / IR: StackOverflowError with long when-expression conditionsKT-35684NI: "IllegalStateException: Expected some types" from builder-inference about intersecting empty types on trivial codeKT-50776FIR: ambiguity between Sequence.forEach and Iterable.forEachKT-48908Error for annotation on parameter type could have distinct ID and message referring 1.6KT-48907SUPERTYPE_IS_SUSPEND_FUNCTION_TYPE error could have message referring version 1.6KT-50774FIR2IR: NSEE in case of lambda in enum entry constructor callKT-49016Drop QUALIFIED_SUPERTYPE_EXTENDED_BY_OTHER_SUPERTYPE diagnosticKT-34338Parameterless main causes duplicate JVM signature errorKT-50577JVM_IR: No NPE when casting uninitialized value of non-null type to non-null typeKT-50476JVM_IR: NSME when calling 'super.removeAt(Int)' implemented in Java interface as a default methodKT-50257JVM_IR: Incorrect bridge delegate signature for renamed remove(I) causes SOE with Kotlin class inherited from fastutils IntArrayListKT-50470FIR: inapplicable candidate in delegate inference due to nullabilityKT-32744Inefficient compilation of null-safe call (extra null checks, unreachable code)Docs & Examples
KT-52032Document performance optimizations of the Kotlin/JVM compiler in 1.7.0KT-49424Update KEEP for OptInIDE
Fixes
KTIJ-21735Exception when opening a projectKTIJ-17414UAST: Synthetic enum methods have null return valuesKTIJ-17444UAST: Synthetic enum methods are missing nullness annotationsKTIJ-19043UElement#comments is empty for a Kotlin property with a getterKTIJ-10031IDE fails to suggest a project declaration import if the name clashes with internal declaration with implicit import from stdlib (ex. @Serializable)KTIJ-21515Load JVM target 1.6 as 1.8 in Maven projectsKTIJ-21151Exception about wrong read access from "Java overriding methods searcher" with Kotlin overridesKTIJ-20736NoClassDefFoundError: Could not initialize class org.jetbrains.kotlin.idea.roots.KotlinNonJvmOrderEnumerationHandler. Kotlin plugin 1.7 fails to startKT-50111Resolving into KtUltraLightMethodKTIJ-21063IDE highlighting: False positive error "Context receivers should be enabled explicitly"KTIJ-20810NoClassDefFoundError: org/jetbrains/kotlin/idea/util/SafeAnalyzeKt errors in 1.7.0-master-212 kotlin plugin on project openKTIJ-19088KotlinUFunctionCallExpression.resolve() returns null for calls to @JvmSynthetic functionsKTIJ-17869KotlinUFunctionCallExpression.resolve() returns null for instantiations of local classes with default constructorsKTIJ-21061UObjectLiteralExpression.getExpressionType() returns the base class type for Kotlin object literals instead of the anonymous class typeKTIJ-20200UAST: @Deprecated(level=HIDDEN) constructors are not returning UMethod.isConstructor=trueKTIJ-19624NoDescriptorForDeclarationException on iosTest.kt.vmIDE. Code Style, Formatting
KTIJ-20554Introduce some code style for definitely non-null typesIDE. Completion
KTIJ-14740Multiplatform declaration actualised in an intermediate source set is shown twice in a completion popup called in the source setIDE. Debugger
KTIJ-20815MPP Debugger: Evaluation of expect function for the project with intermediate source set may fail with java.lang.NoSuchMethodErrorIDE. Decompiler, Indexing, Stubs
KTIJ-21472"java.lang.IllegalStateException: Could not read file" exception on indexing invalid class fileKTIJ-20802Definitely Not-Null types: "UpToDateStubIndexMismatch: PSI and index do not match" plugin error when trying to use library function with T&AnyKT-51248Function and parameter names with special symbols have to backtickedIDE. FIR
KTIJ-20443FIR IDE: Work in Dumb modeKTIJ-21374FIR IDE: Incorrect highlighting for operatorsKTIJ-21013FIR IDE: Inconsistent smartcasts highlightingKTIJ-21343FIR IDE: Navigation from explicit invoke call does not workKTIJ-20852FIR IDE: Exception when checkingisInheritoron two classes in different modulesKTIJ-21021FIR IDE: Completion of extension function does not work on nullable receiverKTIJ-20637FIR IDE: Strange exception while commenting-uncommenting FirReferenceResolveHelper.ktKTIJ-20971FIR IDE: "Parameter Info" shows parameters of uncallable methodsIDE. Gradle Integration
KTIJ-21807Gradle to IDEA import: language and API version settings are not imported for Native facetKTIJ-21692Kotlin Import Test maintenance: 1.7.0-BetaKTIJ-20567Kotlin/JS: Gradle import into IDEA creates no proper sub-modules, source sets, facetsIDE. Hints. Inlay
KTIJ-20552Support definitely non-null types in inlay hintsIDE. Inspections and Intentions
New Features
KTIJ-18979Quickfix for INTEGER_OPERATOR_RESOLVE_WILL_CHANGE to add explicit conversion callKTIJ-19950Provide quickfixes forINVALID_IF_AS_EXPRESSION_WARNINGandNO_ELSE_IN_WHEN_WARNINGKTIJ-19866Create quick-fix for effective visibility error on private-in-file interface exposing private classKTIJ-19939Provide quickfix for deprecated confusing expressions in when branchesFixes
KTIJ-20705Register quickfix forNO_CONSTRUCTOR_WARNINGdiagnosticKTIJ-21226"Remove else branch" quick fix is not suggestedKTIJ-20981Definitely non-null types: quick-fixes suggested incorrectly for LV=1.6 when Xenhance-type-parameter-types-to-def-not-null flag is setKTIJ-20953Add quickfix for OVERRIDE_DEPRECATION warning to 1.7 - 1.9 migrationKTIJ-20734Replace with [@JvmInline] value quick fix should be appliable on a whole projectKTIJ-21420Add 'else' branch quick fix suggestion is displayed twice in case 'if' isn't completedKTIJ-21192"Make protected" intention is redundant for interface propertiesKTIJ-18120"Make public" intention does not add explicit "public" modifier when using ExplicitApi Strict modeKTIJ-20493"Create expect" quick fix doesn't warn about platform-specific annotationsIDE. Misc
KTIJ-21582Notification for Kotlin EAP surveyIDE. Multiplatform
KT-49523Improve environment setup experience for KMM projectsKT-50952MPP: Commonized cinterops doesn't attach/detach to source set on configuration changesIDE. Native
KT-44329Improve UX of using Native libraries in KotlinKTIJ-21602With Native Debugging Support plugin Gradle run configurations can't be executed from IDEA: LLDB_NATVIS_RENDERERS_ENABLEDIDE. Wizards
KTIJ-20919Update ktor-html-builder dependency in kotlin wizardsKTIJ-20962Wizard: Invalid Ktor importsJavaScript
New Features
KT-51735KJS / IR: Minimize member names in production modePerformance Improvements
KT-51127Kotlin/JS - IR generates plenty of uselessUnit_getInstance()KT-50212KJS IR: Upcast should be a no-opKT-16974JS: Kotlin.charArrayOf is suboptimal due to Rhino bugsFixes
KT-44319JS IR BE: Add an ability to generate separate JS files for each moduleKT-52518Kotlin/JS IR: project with 1.6.21 fails to consume library built with 1.7.0-RC: ISE "Unexpected IrType kind: KIND_NOT_SET" at IrDeclarationDeserializer.deserializeIrTypeData()KT-52010K/JS IR: both flows execute when using elvis operatorKT-41096KJS IR: @JsExport should use original js name for external declarationsKT-52144KJS / IR: Missing property definitions for interfaced defined propertiesKT-52252KJS / IR: overridden properties are undefined/nullKT-51973KJS / IR overridden properties of inherited interface missingKT-51125Provide a way to useimportkeyword injsexpressionsKT-40888KJS / IR: Missing methods are no longer generated (polyfills)KT-50504KJS / IR: Transpiled JS incorrectly uses the unscrambled names of internal fieldsKT-51853JS compilation fails with "Uninitialized fast cache info" errorKT-51205K/JS IR: external class is mapped to anyKT-50806Typescript definitions contain invalid nested block comments with generic parent and type argument without@JsExportKT-51841KJS / IR: No flat hash for FUN FAKE_OVERRIDE with kotlin.incremental.js.ir=trueKT-51081KJS / IR + IC: Passing an inline function with default params as a param to a higher-order function crashes the compilerKT-51084KJS / IR + IC: Cache invalidation doesn't check generic inline functions reified qualifierKT-51211K/JS IR: JsExport: Can't export nested enumKT-51438KJS / IR: Duplicated import names for the same external namesKT-51238Kotlin/JS: IR + IC: build fails after clean oncompileTestDevelopmentExecutableKotlinJstask: "Failed to create MD5 hash for file '.../build/classes/kotlin/main' as it does not exist"KT-50674KJS / IR: JS code cannot modify local variableKT-50953KJS IR: Incorrect nested commenting in d.tsKT-15223JS: function that overrides external function withvarargparameter is translated incorrectlyKT-50657KJS / IR 1.6.20-M1-39 - Date in Kotlin JS cannot be created from long.Language Design
New Features
KT-45618Stabilize builder inferenceKT-30485Underscore operator for type argumentsKT-49006Support at least three previous versions of language/APIKT-16768Context-sensitive resolution prototype (Resolve unqualified enum constants based on expected type)KT-14663Support having a "public" and a "private" type for the same propertyKT-50477Functional conversion does not work on suspending functionsKT-32162Allow generics for inline classesFixes
KT-12380Support sealed (exhaustive) whensKT-27750Reverse reservation of 'yield' as keywordKT-22956Release OptIn annotationsKT-44866Change behavior of private constructors of sealed classesKT-49110Prohibit access to members of companion of enum class from initializers of entries of this enumKT-29405Switch default JVM target version to 1.8Libraries
New Features
KT-50484Extensions for java.util.Optional in stdlibKT-50146Reintroduce min/max(By/With) operations on collections with non-nullable return typeKT-46132Specialized default time source with non-allocating time marksKT-41890Support named capture groups in Regex on NativeKT-48179Introduce API to retrieve the number of CPUs the runtime hasPerformance Improvements
KT-42178Range and Progression should override last()Fixes
KT-42436Supportjava.nio.Pathextension in the standard libraryKT-51470Stabilize experimental API for 1.7KT-51775JS: Support named capture groups in RegexKT-51776Native: Support back references to groups with multi-digit indexKT-51082Introduce Enum.declaringJavaClass propertyKT-51848Promote deepRecursiveFunction to stable APIKT-48924KJS:toStringin base 36 produces different results in JS compare to JVMKT-50742Regular expression is fine on jvm but throws PatternSyntaxException for native macosX64 targetKT-50059Stop publishing kotlin-stdlib and kotlin-test artifacts under modular classifierKT-26678Rename buildSequence/buildIterator to sequence/iteratorNative
KT-49406Kotlin/Native: generate standalone executable for androidNative targets by defaultKT-48595Enable Native embeddable compiler jar in Gradle plugin by defaultKT-51377Native: synthetic forward declarations are preferred over commonized definitionsKT-49145Kotlin/Native static library compilation fails for androidNative*KT-49496Gradle (or the KMM plugin) is caching the Xcode Command Line Tools locationKT-49247gradle --offline should translate into airplaneMode for kotin-native compilerNative. Build Infrastructure
KT-52259kotlin-native releases from GitHub don't contain platform libsNative. C and ObjC Import
KT-49455Methods from Swift extensions are not resolved in Kotlin shared moduleKT-50648Incorrect KMM cinterop conversionNative. ObjC Export
KT-50982RuntimeAssertFailedPanic in iOS when Kotlin framework is initialized before loadingKT-49937Kotlin/Native 1.5.31: 'runtime assert: Unexpected selector clash' when 'override fun toString(): String' is usedNative. Platforms
KT-52232Kotlin/Native: simplify toolchain dependency override for MinGWNative. Runtime
KT-52365Kotlin/Native fails to compile projects for 32-bit targets when new memory manager is enabledNative. Runtime. Memory
KT-48537Kotlin/Native: improve GC triggers in the new MM.KT-50713Kotlin/Native: Enable Concurrent Sweep GC by defaultNative. Stdlib
KT-50312enhancement: kotlin native -- add alloc<TVarOf>(T)Native. Testing
KT-50316Kotlin/Native: Produce a list of available tests alongside the final artifactKT-50139Create tests for Enter/Leave frame optimizationReflection
KT-27598"KotlinReflectionInternalError" when usingcallByon constructor that has inline class parametersKT-31141IllegalArgumentException when reflectively accessing nullable property of inline class typeTools. CLI
KT-52409Report error when use-k2 with MultiplatformKT-51717IllegalArgumentException: Unexpected versionNeededToExtract (0) in 1.6.20-RC2 with useFir enabledKT-52217Rename 'useFir' to 'useK2'KT-29974Add a compiler option '-Xjdk-release' similar to javac's '--release' to control the target JDK versionKT-51673Make language version description not in capital lettersKT-48833-Xsuppress-version-warnings allows to suppress errors about unsupported versionsKT-51627kotlinc fails withjava.lang.RuntimeExceptionif/tmp/build.txtfile exists on the diskKT-51306Support reading language settings from an environment variable and overriding the current settings by themKT-51093"-Xopt-in=..." command line argument no longer worksTools. Commonizer
KT-43309Overwrite return type and parameter types of callable member to succeed commonizationKT-52050[Commonizer] 'platform.posix.DIR' not implementing 'CPointed' when commonized for 'nativeMain' on linux or windows hostsKT-51224MPP: For optimistically commonized numbers missed kotlinx.cinterop.UnsafeNumberKT-51215MPP: Update Kdoc description for kotlinx.cinterop.UnsafeNumberKT-51686Cinterop: Overload resolution ambiguity in 1.6.20-RC2KT-46636HMPP: missed classes fromplatform.posix.*KT-51332Optimistic number commonization is disabled by default in KGP with enabled HMPPTools. Compiler Plugins
KT-50992jvm-abi-gen breaks inline functions in inline classes with private constructors in Kotlin 1.6.20Tools. Daemon
KT-32885KT. Kotlin daemon compilation process is broken: java.lang.IllegalStateException Service is dying at entities generation by Kotlin.kts scriptTools. Gradle
New Features
KT-49227Support Gradle plugins variantsKT-50869Provide API that allow AGP to set up Kotlin compilationKT-48008Consider offering a KotlinBasePluginKT-52030Provide experimental possibility to view internal information about Kotlin Compiler performancePerformance Improvements
KT-52141Optimize Java class snapshotting for thekotlin.incremental.useClasspathSnapshotfeatureKT-51978Optimize classpath snapshot cache for thekotlin.incremental.useClasspathSnapshotfeatureKT-51326Kotlin-gradle-plugin performance issue with mass java SourceRootsFixes
KT-52448Compilation tasks are missing input/output/internal annotations on includes/excludes propertiesKT-52239Type based task configuration-blocks for JVM stopped working in GradleKT-52313No recompilation in Gradle after adding or removing function parameters, removing functions (and maybe more) in dependent modulesKT-51854Add Ktor to gradle performance benchmarkKT-52086Rename flag 'use-fir' to 'use-k2'KT-52509Main variant published to Gradle plugin portal uses unshadowed artifactKT-52392Gradle: 1.7.0 does not support custom gradle build configuration on Windows OSKT-32805KotlinCompile inherits properties sourceCompatibility and targetCompatibility which breaks Gradle's incremental compilationKT-52189Provide Gradle Kotlin/DSL friendly deprecated classpath property in KotlinCompiler taskKT-51415Confusing build failure reason is displayed in case kapt is used and different JDKs are used for compileKotlin and compileJava tasksKT-52187New IC can not be enabled in an Android project using kaptKT-51898Upgrading Kotlin/Kotlin Gradle plugin to 1.5.3 and above breaks 'com.android.asset-pack' pluginKT-51913Gradle plugin should not add attributes to the legacy configurationsKT-34862Restoring from build cache breaks Kotlin incremental compilationKT-45777New IC in GradleKT-51360Show performance difference in percent between releasesKT-51380Add open-source project using Kotlin/JS plugin to build regression benchmarksKT-51937Toolchain usage with configuration cache prevents KotlinCompile task to be UP-TO-DATEKT-48276Remove kotlin2js and kotlin-dce-pluginKT-52138KSP could not access internal methods/properties in Kotlin Gradle PluginKT-51342Set minimal supported Android Gradle plugin version to 3.6.4KT-50494Remove kotlin.experimental.coroutines Gradle DSL optionKT-49733Bump minimal supported Gradle version to 6.7.1KT-48831Remove 'KotlinGradleSubplugin'KT-47924Remove annoying cast in toolchain extension method for Kotlin DSLKT-46541Fail Gradle builds when deprecated kotlinOptions.jdkHome is setKT-51830Gradle: deprecatekotlin.compiler.execution.strategysystem propertyKT-47763Gradle DSL: Remove deprecated useExperimentalAnnotation and experimentalAnnotationInUseKT-51374NoSuchFileException in getOrCreateSessionFlagFile()KT-51837kotlin-gradle-plugin:1.6.20 fails xray scan on shadowed Gson 2.8.6.KT-51454KotlinJvmTest is not a cacheable taskKT-45745Migrate only Kotlin Gradle Plugin tests to new JUnit5 DSL and run them separately on CIKT-47318Remove deprecated 'kotlinPluginVersion' property in `KotlinBasePluginWrapper'KT-51378Gradle 'buildSrc' compilation fails when newer version of Kotlin plugin is added to the build script classpathKT-46038Gradle:kotlin_modulefiles are corrupted in the KotlinCompile output, and gets cachedKT-51064Kotlin gradle build hangs on MetricsContainer.flushKT-48779Gradle: Could not connect to kotlin daemonTools. Gradle. Cocoapods
KT-50622Cocoapods Plugin: cocoapods-generate does not work correctly with ruby 3.0.0 and higherKT-51861Custom binary name in CocoaPods plugin isn't respected by fatFramework taskTools. Gradle. JS
KT-52221Kotlin/JS: failed Node tests are not reported in a standard wayKT-51895K/JS: Redundant technical messages during JS testsKT-51414Allow set up environment variables for JS testsKT-51623Kotlin/JS: Mocha could not failed when external module not foundKT-51503Update NPM dependency versionsTools. Gradle. Multiplatform
New Features
KT-51386[KPM] IdeaKotlinProjectModelBuilder: Implement dependenciesFixes
KT-49524Improve DSL for managing Kotlin/Native binary outputKT-51765com.android.lint in multiplatform project without android target should not trigger warningKT-38456MPP with Android source set: allTests task does not execute Android unit testsKT-44227Common tests are not launched on local JVM for Android via allTests task in a multiplatform projectKT-51946Temporarily mark HMPP tasks as notCompatibleWithConfigurationCache for Gradle 7.4KT-52140Support extensibility Kotlin Artifacts DSL by external gradle pluginsKT-51947Mark HMPP tasks as notCompatibleWithConfigurationCache for Gradle 7.4 using ReflectionKT-50925Could not resolve all files for configuration ':metadataCompileClasspath'KT-51262[KPM] IDEA import: Move model builder to KGPKT-51220[KPM][Android] Implement generic data storage and import pipelineKT-48649No run task generated for macosArm64 target in Gradle pluginTools. Gradle. Native
KT-47746Allow customization of the Kotlin/Native compiler download urlKT-51884Gradle Native: "A problem occurred starting process 'command 'xcodebuild''" when buildingassembleFooXCFrameworktask on LinuxTools. Incremental Compile
KT-51546FIR incremental compilation fails with assertion "Trying to inline an anonymous object which is not part of the public ABI"KT-49780IncrementalCompilerRunner bug: Outputs are deleted after successful rebuild following fallback from an exceptionKT-44741Incremental compilation: inspectClassesForKotlinIC doesn't determine changes with imported constantTools. JPS
KTIJ-17280JPS: don't use java.io.File.createTempFile as it is not working sometimesKTIJ-20954NPE at at org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil.readNameResolver on compiling by JPS with LV > 1.7Tools. Kapt
KT-49533Make kapt work out of the box with latest JDKsKT-52284FIR: add error in 1.7.0 branch if run with KaptKT-51463KAPT: Incremental compilation not working when rerunning unit testsKT-51132KAPT: Support reporting the number of generated files by each annotation processorKT-30172Kapt: Shutdown kotlinc gracefully in case of error in annotatioConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.