Yahor Berdnikau
bc871c6cfa
[Gradle] Add multiplatform extension compiler options DSL
...
Now the multiplatform extension exposes compiler option DSL for common
compiler arguments. This compiler option synced as a convention for
targets compiler option.
In the case of Kotlin source sets which are not used as defaultSourceSet
in compilations - extension compiler options are synced as convention
into those.
^KT-57292 In Progress
2023-08-07 14:09:31 +00:00
Sebastian Sellmair
41e5a31e1b
[Gradle] ObservableSet: Only add listeners when a new object is indeed added
...
^KT-60937 Verification Pending
2023-08-07 13:40:33 +00:00
Sebastian Sellmair
d2bd749861
[Gradle] Add integration test for associated 'functionalTest' style sources
...
Experiments with the DefaultKotlinCompilationAssociator where made
during KT-60937. One experiment broke running functionalTests in
kotlin.git in bootstrap mode. This case was not yet covered by
CI.
^KT-60937 Verification Pending
2023-08-07 13:40:32 +00:00
Sebastian Sellmair
6c6200a9c5
[Gradle][Minor] Deprecate 'KotlinCompilation.associateWith' property...
...
... in favor of associateCompilations and allAssociateCompilations
^KT-60937 Verification Pending
2023-08-07 13:40:32 +00:00
Sebastian Sellmair
8ce820d944
[Gradle][Minor] KotlinJsIrSourceSetProcessor: Access runtimeDependencyFiles safely
...
As it might happen, that the configure code could be triggered
too early, capturing the state of 'runtimeDependencyFiles' to early as well.
^KT-60937 Verification Pending
2023-08-07 13:40:32 +00:00
Sebastian Sellmair
ba270fc7df
[Gradle][Minor] KotlinCompilationAssociator: Use listProperty util function
...
^KT-60937 Verification Pending
2023-08-07 13:40:32 +00:00
Sebastian Sellmair
d978640c42
[Gradle] Remove KotlinOutputDependency
...
The IdeBinaryDependencyResolver will filter respective
files by using a simpler check: testing if the files
do reside within the build dir of the current project.
^KT-60937 Verification Pending
2023-08-07 13:40:32 +00:00
Igor Chevdar
aa0f0c8cb4
[K/N] Do not use '=' in file names
...
#KT-60986 Fixed
2023-08-07 12:57:17 +00:00
Dmitrii Gridin
1182a156e8
[LL FIR] add debug info to exception
2023-08-07 13:26:39 +02:00
Sergey Bogolepov
8df18c6395
[K/N] Update osVersionMin for arm ios and tvos simulators
...
While it was working before, it is not correct to use OS
version <= 13.0 for these targets, so let's make our code a bit more
robust.
2023-08-07 09:07:31 +00:00
Sergey Bogolepov
7e288483b3
[K/N] Update minimum iOS and tvOS versions
...
The new ld from Xcode 15 incorrectly parses a simulator
target version if it is below the minimum supported version.
It is unclear if this is intentional or not, but we have to play
by Apple's rules. Anyway, 9.0 is quite obsolete, so this change
should be pretty safe.
^KT-60758
2023-08-07 09:07:31 +00:00
Roman Golyshev
d46be70933
KT-60940 [Analysis API] Properly handle vararg types in KtFirReferenceShortener
...
^KT-60940 Fixed
^KTIJ-26518 Fixed
2023-08-07 08:35:49 +00:00
Roman Golyshev
68774609f9
KT-60940 [Analysis API] Small refactoring of KtFirReferenceShortener
...
Instead of unwrapping `partiallyResolvedTypeRef` in `processTypeRef`,
just visit it with the visitor
2023-08-07 08:35:48 +00:00
Nikolay Krasko
a1250e838b
Ignore compose experimental modules during artifacts check
...
The check can be improved in the future, so not only parent directory
is checked.
2023-08-07 08:18:19 +00:00
Brian Norman
887dc18719
[LL FIR] Support transforming FirFile in all LL resolvers
...
In preparation for KT-58531, LL FIR resolvers need to support resolving
FirFiles. This change has a very large impact on test data, so it is
being made separately.
2023-08-04 16:26:58 +00:00
Ilya Gorbunov
1a8cb02a43
[stdlib-mpp] Fix implicit signing task dependency on shared javadoc artifact
...
By not using shared javadoc artifact for all publications.
See the commit e6df34805f for details.
2023-08-04 16:11:56 +00:00
Ilya Gorbunov
28992b1302
[stdlib-mpp] Move KGP obsolete property suppress closer to usage
...
Also remove no-op property enableGranularSourceSetsMetadata
2023-08-04 16:11:56 +00:00
Roman Golyshev
ab8726cff1
KT-60954 [Analysis API] Unwrap variable assignments in KtFirReferenceShortener
...
To get to the proper qualified expression, we need to unwrap the outer
`FirVariableAssignment` if we deal with the property access inside of
assignment expressions
^KT-60954 Fixed
2023-08-04 15:26:34 +00:00
Nikolay Lunyak
7151e6a41c
[FIR] Report UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL
...
^KT-59969 Fixed
2023-08-04 15:17:21 +00:00
Alexander Shabalin
906c27736f
[K/N] CustomAllocator do not lose finalizer queue
2023-08-04 12:16:17 +00:00
Sebastian Sellmair
d510c93241
[Commonizer] Support generic/simple annotation commonization (to support kotlinx.cinterop.* annotations)
...
^KT-59302 Verification Pending
2023-08-04 11:29:23 +00:00
Nikolay Lunyak
c2ad475153
[FIR] Render outer type parameters differently
2023-08-04 11:20:40 +00:00
Nikolay Lunyak
e4246e8f51
[FIR] Support ENUM_CLASS_CONSTRUCTOR_CALL
...
^KT-59411 Fixed
2023-08-04 11:20:40 +00:00
Nikolay Lunyak
f4ffd479cc
[FIR] Support TYPEALIAS_EXPANDED_TO_MALFORMED_TYPE
...
^KT-59410 Fixed
2023-08-04 11:20:40 +00:00
Nikolay Lunyak
97b00793b4
[FIR] Prevent duplicate direct overridden-s from substitution overrides
...
This change prevents going up the scopes once we find a
substitution override. Whatever we'd find by going further is not
going to be a direct overridden anymore, so it would lead to incorrect
results when collecting direct overridden-s. Without this change, we get
error modules in FT intellij.
2023-08-04 11:20:40 +00:00
Nikolay Lunyak
61448531cb
[FIR] Support MULTIPLE_DEFAULTS_INHERITED_FROM_SUPERTYPES
...
^KT-59408 Fixed
2023-08-04 11:20:39 +00:00
Nikolay Lunyak
9850987415
[FIR] Fix mutant extension function types
...
Consider the following example from
`extensionLambdasAndArrow.kt`:
```
val x4: String.() -> String = if (true) {
{ str: String -> "this" }
} else {
{ str: String -> "this" }
}
```
Because of
`coerceFirstParameterToExtensionReceiver`
the given lambdas must be of the type
`String.() -> String`, but because of a bug
they are `String.(String) -> String`. At the
same time, during inference their expected
types are, indeed, calculated correctly as
`String.() -> String`.
^KT-59394 Declined
(no more compiler crashes, #potential-feature)
2023-08-04 11:20:39 +00:00
Nikolay Lunyak
bca44e5d8c
[FIR] Prepend type variables with '+' rather than '_'
...
'++' is easier to notice than '__'.
'++++++' is easier to count than '######'.
2023-08-04 11:20:39 +00:00
Nikolay Lunyak
a41273b966
[FIR] Properly add the outer type parameters
...
Looks like a type.
^KT-59393 Fixed
(because other differences are related to
nested typealiases)
2023-08-04 11:20:39 +00:00
Nikolay Lunyak
4bba93f633
[FIR] Implement PROTECTED_CONSTRUCTOR_NOT_IN_SUPER_CALL
...
^KT-59382 Fixed
2023-08-04 11:20:39 +00:00
Dmitriy Dolovov
00fb927624
[KLIB] ABI reader: Update ReadMe.md
...
^KT-54402
2023-08-04 10:56:21 +00:00
Dmitriy Dolovov
18f9ada676
[KLIB] ABI reader: More verbose KDocs
...
^KT-54402
2023-08-04 10:56:21 +00:00
Bogdan Mukvich
a20db23b1f
Do not generate SBOM for gradle test plugins
...
^KTI-1129
2023-08-04 10:14:08 +00:00
Nikolay Lunyak
882b7fc9ca
[FIR] Expand typealiases in extractNonFatalDiagnostics
...
^KT-59901 Fixed
2023-08-04 10:11:57 +00:00
Nikolay Lunyak
c392b0c477
[FIR] Expand typealiases when resolving to companions
...
^KT-59901 Fixed
2023-08-04 10:11:57 +00:00
Nikolay Lunyak
4a9ba1c9ac
[FIR] Expand typealiases when checking deprecations
...
^KT-59901 Fixed
2023-08-04 10:11:57 +00:00
Alexander Udalov
03fdba5aa7
Tests: minor, remove obsolete suppressions about enumEntries
...
The `enumEntries` intrinsic has been made public in 64c8ce18a0 .
2023-08-04 09:57:34 +00:00
Timofey Solonin
65649673a7
[MPP] Only add test framework dependency once per configuration
...
^KT-56828
2023-08-04 09:50:35 +00:00
Timofey Solonin
256d9da24c
[MPP] Emit a warning when kotlin-test testing framework couldn't be inferred
...
^KT-56828
2023-08-04 09:50:35 +00:00
Dmitrii Gridin
3b9b9327a4
[FIR] add debug info to CME from bounds
...
^KT-59007
^KT-60324
2023-08-04 08:12:50 +00:00
Sebastian Sellmair
2ab2f408f3
[Gradle] PomDependenciesRewriter: Fix missing 'component' in configuration cache
...
^KT-60159 Verification Pending
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
b9a520b593
[Gradle] createMavenPublications: Defensively defer adding gradleComponents to 'AfterFinaliseCompilations'
...
... as the code previously states that this code might race
with actually adding variants from configurations
^KT-60159 Verification Pending
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
84eacd5cde
[Gradle] KotlinProjectStructureMetadata: Use name from KotlinUsageContext by: 'kotlinVariantNameFromPublishedVariantName'
...
^KT-60159 Verification Pending
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
fd50b80aa1
[Gradle][Minor] Handle 'isSourcesPublishable' more lazily
...
... as the value is allowed to change until 'finaliseDsl'
^KT-60159 Verification Pending
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
9f2c2b7265
[Gradle] Implement tests for External target publications
...
^KT-60159 Verification Pending
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
06d5d2522c
[Gradle] Multiplatform publishing: Support external targets
...
...by only requiring InternalKotlinTarget instead of AbstractKotlinTarget
KT-60159
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
3d593f0ee9
[Gradle] ExternalKotlinTargetComponent: Implement 'usages' as 'KotlinUsageContext'
...
... to support multiplatform publication components as
re-writing pom dependencies and project structure metadata
KT-60159
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
93f8e21e9e
[Gradle][Minor] Add assertion on KotlinAndroidTarget checking components do not get created to early
...
KT-60159
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
2734207b52
[Gradle][Minor] Make Future<T> covariant Future<out T>
...
KT-60159
2023-08-04 07:22:20 +00:00
Sebastian Sellmair
29d15235bb
[Gradle][Minor] Add Property.awaitFinalValueOrThrow util function
...
KT-60159
2023-08-04 07:22:20 +00:00