Commit Graph

14725 Commits

Author SHA1 Message Date
Abduqodiri Qurbonzoda 31aa71dd6a Promote Common String.toCharArray(destination) to stable #KT-65532 2024-02-26 10:48:29 +00:00
Andrey Yastrebov 2ae8d28b33 KT-65582 Swift export XCTest integration tests 2024-02-26 09:57:12 +00:00
Andrey Yastrebov 6146a59636 KT-65582 Swift export build integration tests 2024-02-26 09:57:12 +00:00
Andrey Yastrebov 444dc790db KT-65582 Extract xcode simulator test helpers 2024-02-26 09:57:12 +00:00
Andrey Yastrebov 6ed6e7ce28 KT-65582 Add Swift export test tags 2024-02-26 09:57:12 +00:00
Dmitriy Novozhilov eb85caedad [FIR] Search for typealias in dependencies, if expect class was found first
^KT-65840 Fixed
2024-02-26 09:25:57 +00:00
Anton Lakotka 3e5afcaaba [Gradle] Setup Consistent metadata dependencies resolution
Configure consistent metadata resolution only for source sets that
participate in metadata compilation. i.e. test or any other extra
compilations should be excluded.

^KT-65954 Verification Pending
^KT-66047 Verification Pending
2024-02-25 20:59:03 +00:00
Anton Lakotka c027ba642f [Gradle] Introduce SourceSetDependenciesResolution dsl for tests
It allows to mock published via gradle libraries to verify
dependency resolution correctness.
2024-02-25 20:59:03 +00:00
Anton Lakotka 46abf63796 [Gradle] Compare resolved components ignoring versions for source sets
Source Set Visibility algorithm relies on the match between metadata
dependencies resolution and platform dependencies resolution. However
there is a chance that they don't match in versions.
i.e. commonMain resolved into 1.0 but jvmMain got 2.0 of the same
library. However this discrepancy is not correct after all. And
both metadata compilations and platform compilations should see the same
set of libraries. This behavior will be fixed in KT-66047

^KT-65954 Verification Pending
2024-02-25 20:59:03 +00:00
Anton Lakotka 32be35051d [Gradle] Test that metadata compilation for bug KT-65954 doesn't fail
Metadata compilation should not fail when test source set has
dependency with higher version

^KT-65954 Verification Pending
2024-02-25 20:59:03 +00:00
Ilya Chernikov 49559d2a5a K2 Scripting: fix implicit receivers resolution order
#KT-65975 fixed
2024-02-23 22:03:44 +00:00
Sebastian Sellmair d80e6f8d66 [kotlin-tooling-core] Implement 'closure' sequence APIs 2024-02-23 15:48:47 +00:00
Sebastian Sellmair 704379934e [kotlin-tooling-core] Allow nullable extra values
The change is binary compatible, but not source compatible.
Potential clients like Google might need to adapt
a potential `IdeaKotlinExtrasSerializationExtension` implementaiton.

Right now, no such implementation is known
2024-02-23 07:31:32 +00:00
Ilya Gorbunov 85854a6b8d [stdlib] Make enumEntriesIntrinsic not reified/inline
It's required to simplify the corresponding backends' inliners.

KT-59712, KT-59713
2024-02-23 05:50:37 +00:00
Ilya Gorbunov 86d5e83f4b [stdlib] Remove bootstrap implementation of enumEntriesIntrinsic
It should have been already implemented as intrinsic in all backends.

Do not test enumEntries intrinsic in the old JVM BE.

KT-53154

Co-authored-by: Alexander Udalov <alexander.udalov@jetbrains.com>
2024-02-23 05:50:37 +00:00
Dmitriy Dolovov d70dd7808b [kotlinp] Fix: Forgotten sorting of KmClasses in KlibKotlinp
The declarations that are printed by the kotlinp tool may be optionally
sorted. That's controlled by `sortDeclarations` flag in
`org.jetbrains.kotlin.kotlinp.Settings`. However, there was no sorting
implemented for `KmClass`es.

This commit fixes that.

^KT-62340
2024-02-22 22:21:30 +00:00
Yahor Berdnikau 1d9129f688 [Gradle] Bump max Gradle version in tests to 8.6
^KT-64378 Verification Pending
2024-02-22 19:01:29 +00:00
Andrey Yastrebov d76a6d6a9c KT-65741 Add Swift Export KGP tasks 2024-02-22 18:46:01 +00:00
Ilya Goncharov eabd2f0fc7 [Gradle, Wasm] Fix mismatch report message for upgradeLockFile
^KT-65870 fixed
2024-02-22 18:33:46 +00:00
Ilya Goncharov bca785a87c [Gradle, Wasm] Fix copying wasm file to destination dir
^KT-65889 fixed
2024-02-22 14:53:54 +00:00
Yahor Berdnikau 6b19b8b9d0 [Repo] Don't use kotlinOptions in repo build scripts
^KT-63419 In Progress
2024-02-22 14:48:10 +00:00
Bogdan Mukvich ff2fea390b Fix snapshot deployment maven params
^KT-65944
2024-02-21 17:13:29 +00:00
Ilya Gorbunov 0ecbbbf1ca [stdlib] Set AV to 2.0, LV to 1.9 for main compilations, build tests with K2 2024-02-21 16:28:12 +00:00
Artem Daugel-Dauge 7ab691fcef [Gradle] Forbid using embedAndSign together with Pod-dependencies
^KT-64096 Verification Pending
2024-02-21 11:25:31 +00:00
Yahor Berdnikau f5de0f9399 [Gradle] Use BuildFeatures service to get project isolation feature state
^KT-64355 Verification Pending
2024-02-21 10:20:20 +00:00
Yahor Berdnikau e405072419 [Gradle] Use BuildFeatures service to get configuration cache feature state
^KT-64355 In Progress
2024-02-21 10:20:19 +00:00
Yahor Berdnikau 2a195062a8 [Gradle] Add plugin variant for Gradle 8.5
^KT-64355 In Progress
2024-02-21 10:20:19 +00:00
Ilya Gorbunov c2e28149e6 [stdlib] Enable link-via-signatures to workaround KT-62798 2024-02-20 19:59:16 +00:00
Dmitrii Krasnov f525d03e67 [Gradle] Moved downloading konan dependencies from compiler to Gradle
^KT-65823 Fixed
2024-02-20 15:47:58 +00:00
Ilya Gorbunov 709076acc9 [stdlib] Improve documentation of Char.isWhitespace and test it behaves the same in different targets 2024-02-20 03:48:08 +00:00
Ilya Gorbunov baca742a31 [stdlib] Minor: fix various grammar in docs 2024-02-20 03:48:08 +00:00
Ilya Gorbunov 15375c0fd5 [stdlib] Use more idiomatic and performant implementation of isBlank
Also replace expect-actual with a common function because its implementation is no longer different in different platforms.

KT-65590
2024-02-20 03:48:08 +00:00
vladislav.grechko b74501ee93 Compare module metadata in JVM ABI consistency tests 2024-02-19 18:17:37 +00:00
Anton Bannykh 302e38dd18 JS: enable test after bootstrap
Check that a custom Promise declaration is supported for the @AfterTest
annotation functionality in the kotlin.test library

This is a part of the fix for KT-63359


Merge-request: KT-MR-14333
Merged-by: Anton Bannykh <Anton.Bannykh@jetbrains.com>
2024-02-19 11:56:18 +00:00
Anton Lakotka bd84f93333 [Gradle, Test] makeSnapshotTo should fail when called in TC env
Developers (me) often forget to remove calls to this debugging
utility. Usually this changes is visible during Code Review but we
shouldn't rely on a sharp eye of a human. It is better to automatically
check it during remote run execution.
2024-02-19 10:42:46 +00:00
Anton Lakotka cd8843289b [Gradle, Test] Make utility isTeamCityRun as top-level function 2024-02-19 10:42:46 +00:00
Ilya Goncharov abb5f55087 [Wasm] Use static import for wasm imports
^KT-65777 fixed
2024-02-19 10:01:10 +00:00
Timofey Solonin 700432e111 Add a closure function to return a graph in explicit bfs order
^KT-65540
2024-02-19 09:28:08 +00:00
Ilya Goncharov 87fdf8e764 [Gradle, Wasm] Binaryen by default for production main binary
^KT-64553 fixed
2024-02-19 09:06:44 +00:00
Anton Lakotka 7a150cce47 [Gradle] Introduce defaultFragmentName for K2 MPP Structure
It is possible to add source files to task directly. Especially this is
a very popular case for Android integration. Android variants can
contain any number of extra-source files that should be compiled
together with other android-specific sources.
Android specific sources that come from Android source sets already
compiled together as part of "main" fragment (KT-62508).
With this change this logic is extended to any extra sources
that are added directly to the compile task.

^KT-62508 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka 020bb72d2b [Gradle] Associate Android java sources with related Kotlin Source Set
Java sources can be produced by the task or can be configured with
task dependencies. Previously sources were included into task directly
now they are properly configured with Kotlin Android Source Set.

^KT-63753 Verification Pending
^KT-65426 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka b5ed2326e7 [Gradle] Merge Android Source Sets into one K2 Fragment
Android projects has a number of build type/flavor specific source set.
These source sets are included into compilation of multiple variants.
In Android compilation model they should be compiled together and they
should see each-others declarations. With Kotlin MPP plugin applied
these android source sets gets associated with Kotlin Source Sets
counter parts. However in Kotlin Multiplatform Source sets have
a semantics about "expect/actual" refinement and with K2 it also got
stricter and visibility is checked. This is not compatible with Android
compilation model thus the solution is to merge Android Source Sets
into one K2 Fragment.

^KT-62508 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka 0a86f03457 [Gradle] Don't pass -Xfragment-sources for non-mpp compilations
It is unnecessary and confusing.

^KT-65768 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka fabf75f4e2 [Gradle] Pass Android-related sources to KotlinSourceSet instead task
Setting sources through compile task is not compatible with
Multiplatform K2 because for such sources no K2 Fragment relations
will be set and compilation will fail.

^KT-63753 Verification Pending
2024-02-18 16:42:19 +00:00
Anton Lakotka b13b27a715 [Gradle] Migrate new-mpp-android from Groovy to Kotlin Script 2024-02-18 16:42:19 +00:00
Pavel Mikhailovskii 20bb6b0ea8 [KAPT] KT-64391 Make sure that all K2 KAPT tests really run with K2
Merge-request: KT-MR-14346
Merged-by: Pavel Mikhailovskii <Pavel.Mikhailovskii@jetbrains.com>
2024-02-16 19:27:46 +00:00
Yahor Berdnikau 0f8a416496 [Gradle] Migrate MppHighlightingTestDataWithGradleIT to new test DSL
^KT-65528 In Progress
2024-02-16 18:16:41 +00:00
Yahor Berdnikau a40459c520 [Gradle] Bump max Gradle version in tests to 8.5
^KT-62540 Verification Pending
2024-02-16 16:47:16 +00:00
Dmitriy Novozhilov acf2296590 [Test] Regenerate tests after two previous commits 2024-02-16 12:48:24 +00:00
Nataliya.Valtman 7ad371b215 Fix ConcurrencyModification exception in KotlinBuildStatsBeanService
#KT-65825 Fixed
2024-02-16 11:43:52 +00:00