Commit Graph

99913 Commits

Author SHA1 Message Date
Sebastian Sellmair 37e1d09c3e [Gradle] KotlinTargetHierarchyDescriptorTest: Suppress deprecations
^KT-34662 Verification Pending
2023-04-03 11:24:10 +00:00
Sebastian Sellmair 32e05b4631 [Gradle] Add tests for KotlinPluginLifecycle.Stage utils
^KT-34662 Verification Pending
2023-04-03 11:24:09 +00:00
Sebastian Sellmair d277502237 [Gradle] KotlinPluginLifecycle: Add documentation
^KT-34662 Verification Pending
2023-04-03 11:24:09 +00:00
Sebastian Sellmair 72ee12cfc8 [Gradle] KotlinPluginLifecycle: await on current stage: Execute in queue
KT-34662
2023-04-03 11:24:08 +00:00
Sebastian Sellmair b502f7cd03 [Gradle] Add KotlinAndroidTargetVariantTypeDslImplTest to check refines edges
KT-34662
2023-04-03 11:24:08 +00:00
Sebastian Sellmair 40603bbda7 [Gradle] Update kotlin-gradle-plugin-api.api
KT-34662
2023-04-03 11:24:08 +00:00
Sebastian Sellmair cb97beb3d6 [Gradle][Minor] KotlinPluginLifecycle: Remove enqueuedStages field
KT-34662
2023-04-03 11:24:07 +00:00
Sebastian Sellmair 656ce4aead [Gradle] Promote KotlinMultiplatformPluginLifecycle to KotlinPluginLifecycle
KT-34662
2023-04-03 11:24:07 +00:00
Sebastian Sellmair 098cfae957 [Gradle] Implement Android DSL for choosing KotlinTargetHierarchy.ModuleName
KT-34662
2023-04-03 11:24:07 +00:00
Sebastian Sellmair 78751dcb55 [Gradle] Introduce KotlinTargetHierarchy.ModuleName as public concept
KT-34662
2023-04-03 11:24:06 +00:00
Sebastian Sellmair 78673885e5 [Gradle] Implement lifecycle stage restrictions APIs
KT-34662
2023-04-03 11:24:06 +00:00
Sebastian Sellmair 5fe6e3edbb [Gradle] KotlinTargetHierarchy.Module: Respect configuration from Android
KT-34662
2023-04-03 11:24:05 +00:00
Sebastian Sellmair 7ab6349ad5 [Gradle] Do not add default 'dependsOn common(Main|Test)' edges when KotlinTargetHierarchy is applied
KT-34662
2023-04-03 11:24:05 +00:00
Sebastian Sellmair 80ffd72f25 [Gradle] Introduce 'LifecycleAwareProperty'
KT-34662
2023-04-03 11:24:05 +00:00
Sebastian Sellmair 96edfe9048 [Gradle] KotlinMultiplatformPluginLifecycle: Support suspend and await
KT-34662
2023-04-03 11:24:04 +00:00
Sebastian Sellmair cc9bab4105 [Gradle] Implement initial 'KotlinMultiplatformPluginLifecycle'
KT-34662
2023-04-03 11:24:04 +00:00
Sebastian Sellmair cf8814823b [Gradle] Rename naturalKotlinTargetHierarchy to defaultKotlinTargetHierarchy
KT-34662
2023-04-03 11:24:03 +00:00
Sebastian Sellmair 553639136a [Gradle] Introduce KotlinTargetHierarchy.Module and let targetHierarchy.default() add default common* refines
KT-34662
2023-04-03 11:24:03 +00:00
Sebastian Sellmair 0f657b8a74 [Gradle] KotlinTargetHierarchyBuilder: Deprecate filterCompilations
KT-34662
2023-04-03 11:24:03 +00:00
Sebastian Sellmair 95ae7ab8bc [Gradle][Minor] Rename buildKotlinTargetHierarchy.kt to KotlinTargetHierarchyBuilderImpl.kt
KT-34662
2023-04-03 11:24:02 +00:00
Sebastian Sellmair e33d2434b4 [Gradle][Minor] Rename 'addTargets' to 'withTargets'
KT-34662
2023-04-03 11:24:02 +00:00
Pavel Kargashinsky 7f3e69458b Revert "[Gradle][Tests][MPP] Bump AGP and Gradle version in MPP related tests"
This reverts commit 7ae0e24bc7.
2023-04-03 11:30:45 +02:00
Pavel Kargashinsky 2d824018f5 Revert "[Gradle][Tests][MPP] Introduce NEXT_RELEASE versions constant for Gradle and AGP"
This reverts commit 23a1598f0d.
2023-04-03 11:30:45 +02:00
Pavel Kargashinsky bcc51f4100 Revert "[Gradle][Tests][MPP] Fix AppleSiliconIT test"
This reverts commit 46aed2b6b3.
2023-04-03 11:30:44 +02:00
Pavel Kargashinsky 81b637876e Revert "[Gradle][Tests][MPP] Use JDK_17 for XCFrameworkIT and AppleFrameworkIT"
This reverts commit 91f38e76b8.
2023-04-03 11:30:44 +02:00
Pavel Kargashinsky 921cfa84df Revert "[Gradle][Tests][MPP] set compileSdkVersion to 31 in new-mpp-adnroid test-data"
This reverts commit 2a336140d2.
2023-04-03 11:30:43 +02:00
Pavel Kargashinsky b2724ad19f Revert "[Gradle][Tests][MPP] Move BETA-versions test logic in MPPBaseTest"
This reverts commit 5beba0acc6.
2023-04-03 11:30:43 +02:00
Pavel Kargashinsky acd6883777 Revert "[Gradle][Tests][MPP] fix android namespace in mpp-composite test-data"
This reverts commit d07fd15565.
2023-04-03 11:30:42 +02:00
Pavel Kargashinsky a4e4769525 Revert "[Gradle][Tests][MPP] Inherit mpp tests from MPPBaseTest"
This reverts commit 11e4cb12b7.
2023-04-03 11:30:42 +02:00
Pavel Kargashinsky abfd1aa9be Revert "[Gradle][Tests][MPP] Revert inheritance from MPPBaseTest in AbstractConfigurationCacheIT"
This reverts commit 8d1969df8af85870bc1d4b11932a33da2bc62222.
2023-04-03 11:30:41 +02:00
Aleksei.Cherepanov 5c039e25fc Pin API and language version to 1.8 for Kotlin facet serialization used by IJ
Facet serialization is located in Kotlin repo, and it uses new(1.9.*) stdlib in compile dependencies. But when it is used by IJ it has previous runtime stdlib dependency (looks like 1.8.0). So here is workaround, that specifies apiVersion and languageVersion, that does not produce such problematic outputs.

#KTIJ-24903 Fixed

Merge-request: KT-MR-9333
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com>
2023-04-03 09:24:21 +00:00
Anton Lakotka 118c62cfbb [Gradle] Mark sourcesElements configurations as non-consumable
In case if `isSourcesPublishable` set to false.

^KT-57652 Verification Pending
2023-04-03 08:27:24 +00:00
Anton Lakotka 0b07a20a70 [Gradle] Don't expose sourcesElements when withSourcesJar(publish = false)
^KT-57652 Verification Pending
2023-04-03 08:27:24 +00:00
Anton Lakotka 1833347a7d [Gradle] Check that *sourcesElements is not exposed withSourcesJar(publish=false)
^KT-57652 In Progress
2023-04-03 08:27:23 +00:00
Kirill Rakhman 39d466b695 [FIR] Fix single quotes in diagnostic messages
Apparently two single quotes must be used when a parameter is used.
2023-04-03 07:53:55 +00:00
Abduqodiri Qurbonzoda 2f8e4a9775 [K/N] Deprecate ImmutableBlob
As a part of stabilizing Native stdlib.

Merge-request: KT-MR-9310
Merged-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com>
2023-04-01 17:55:57 +00:00
Abduqodiri Qurbonzoda 8663239369 [K/N] Mark UnhandledExceptionHook-related API as experimental
As a part of efforts to stabilize Native stdlib.
2023-04-01 20:40:40 +03:00
Svyatoslav Kuzmich 02beaa1daa [Wasm] Add BuiltInsPlatform.WASM
Use it instead of BuiltInsPlatform.JS in klibs
2023-04-01 10:50:29 +00:00
Dmitrii Gridin faeafbbe29 [FIR][tree] replace FirDeclaration.resolvePhase -> resolveState
Lazy resolve state represents the lazy resolve
state of the current declaration
It can be either resolved or be in a process of resolve

^KT-56543
2023-04-01 06:53:27 +00:00
Dmitrii Gridin 77e1bc6f9e [LL FIR] calculate lazy bodies for type annotations
^KT-56543
2023-04-01 06:39:46 +00:00
Dmitrii Gridin badd09e4fd [FIR] TowerLevels: add missing lazy resolve
^KT-56543
2023-04-01 06:39:46 +00:00
Dmitrii Gridin eb2cfb3d62 [FIR] computeRepresentativeTypeForBareType: add missing lazy resolve
^KT-56543
2023-04-01 06:39:45 +00:00
Dmitrii Gridin 3ea1f7851b [FIR] add missing resolve to isFinalClassConstructor
fix checking for intersection types in CheckIncompatibleTypeVariableUpperBounds

we need this resolve, because getEmptyIntersectionTypeKind under
the hood uses org.jetbrains.kotlin.resolve.checkers.EmptyIntersectionTypeChecker.computeEmptyIntersectionEmptiness
which uses computeByHavingCommonSubtype where we have
isFinalClassConstructor() call, so we need to resolve to STATUS phase
to get the correct modality

^KT-56543
2023-04-01 06:39:45 +00:00
Pavel Kargashinsky 641b5d5fa7 [Gradle][Tests][MPP] Revert inheritance from MPPBaseTest in AbstractConfigurationCacheIT 2023-04-01 06:23:32 +00:00
Vladimir Sukharev 4b289e89c5 [K/N] Remove K1 prefix from native tests
Merge-request: KT-MR-9424
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-03-31 21:07:26 +00:00
Dmitriy Dolovov b7d0209e4b [PL] Disallow partial linkage when compiler is configured to produce KLIB
Partial linkage is intended for producing binaries, not libraries.
2023-03-31 18:29:44 +00:00
Dmitriy Dolovov 1fef48bb60 [PL] Log partial linkage messages at different severity
As specified in -Xpartial-linkage-loglevel CLI argument.
2023-03-31 18:29:44 +00:00
Abduqodiri Qurbonzoda d738646a61 [K/N] Move kotlin.native.internal.Cleaner to kotlin.native.ref.Cleaner
As a part of efforts to stabilize Native stdlib #KT-55765.


Co-authored-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com>
Co-authored-by: Ilya Gorbunov <Ilya.Gorbunov@jetbrains.com>

Merge-request: KT-MR-9347
Merged-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com>
2023-03-31 16:04:26 +00:00
Marco Pennekamp d266f49c7c [LL FIR] KTIJ-25096 Add option to exclude binaries when incrementing modification trackers
- In performance tests, modification trackers were incorrectly
  incremented between tests for binary modules even with library caches
  enabled. The new option `includeBinaryTrackers` can be used by
  performance tests to exclude binary modules.
2023-03-31 15:40:14 +00:00
Nikolay Lunyak f0720c1d12 [FIR] Fix K2 behavior according to RULES1
The compiler should only report diagnostics for
comparisons over builtins and identity-less types,
other incompatibilities should be reported
via inspections.

It's ok that in `equalityChecksOnIntegerTypes`
instead of `EQUALITY_NOT_APPLICABLE_WARNING` we get
`EQUALITY_NOT_APPLICABLE`, because
`ProperEqualityChecksInBuilderInferenceCalls`
is already active by default.

This change also replaces the notion of a representative superclass
with the least upper bound.
This makes complex types like
intersection/flexible transparent to
RULES1-based compatibility checks.
One way to look at it is to think
that this is an automatic way of handling
type parameters: automatic picking of
"interesting" bounds, and checking them against one another.

Note that `TypeIntersector.intersectTypes`
for `Int` and `T` where `T` is a type parameter
may return both `{Int & T}` or `null`
depending on `T`-s bounds. At the same time,
for type parameters `T` and `K` it will
always return `{T & K}`.

`ConeTypeIntersector.intersectTypes`, on the
other hand, will always return `{Int & T}`
irrespectively of the bounds. Meaning, the two
intersectors differ in corner cases.

`lowerBoundIfFlexible` call in `isLiterallyTypeParameter` is backed by
the `equalityOfFlexibleTypeParameters` test.

^KT-35134 #fixed-in-k2
^KT-22499 #fixed-in-k2
^KT-46383 #fixed-in-k2
2023-03-31 15:01:50 +00:00