Commit Graph

14723 Commits

Author SHA1 Message Date
Dmitrii Krasnov f18d00e6f0 [Gradle] Changed the way of unpacking k/n dependencies
Creating `tar` process is not supported by configuration cache.
Inner Gradle copy and archive operations don't work well with symlinks.
That is why we are using utils from org.apache.commons:commons-compress.

^KT-66422 Fixed
2024-03-12 11:55:13 +00:00
Dmitrii Krasnov fb3c1f1a2f [Gradle] Disabled MissingNativeStdlibChecker when k/n toolchain enabled
This checker was added to check that k/n home was correctly overridden.
With k/n toolchain we always download k/n distribution.
That is why when k/n toolchain is enabled we don't need this check.

^KT-65624 Fixed
2024-03-12 11:55:13 +00:00
Ilya Chernikov 5b62558798 K2 IC: fix member lookup recording
The previous code recorded only class name, instead of fqname,
as a scope of lookup.

#KT-65943 fixed
#KTIJ-24828 fixed
related to #KT-56197
2024-03-12 11:38:06 +00:00
Anton Lakotka a56dc7d73a [Gradle] Don't resolve Apple-specific Cinterops on Linux & Windows
Resolving such dependencies was lenient, however it produced
a lot of annoying error messages in the IDE. Because "file not found".

KGP already warns user if they are declared Apple-specific targets
on non-macos machine.

^KT-66514 Verification Pending
2024-03-12 09:54:08 +00:00
Anton Lakotka e2336e1752 [Gradle] Fix friendArtifactResolver for External Targets API
It was failing with ClassCastException in an attempt of using it.

Also added a test case to cover the logic with friendArtifactResolver

^KT-66431 Verification Pending
2024-03-12 09:52:57 +00:00
Timofey Solonin 5873127342 Apply resolution strategy before applying KGP in resources tests
^KT-66133
2024-03-12 09:38:52 +00:00
Timofey Solonin 1849f17228 Make variant reselection the default resolution strategy
^KT-66133
2024-03-12 09:38:52 +00:00
Timofey Solonin c34bfcdb1d Emit a diagnostic if variant reselection is used pre Gradle 7.6
^KT-66133
2024-03-12 09:38:52 +00:00
Ilya Gorbunov 5afb2c5e4b [stdlib] Annotated new API with SinceKotlin(2.0) where required KT-64904 2024-03-12 01:36:46 +00:00
Igor Yakovlev 84a5a9ff53 Revert "[Wasm] Implement IrLinkageError end enable partial linker"
This reverts commit c0f387dbd1.
2024-03-11 19:27:12 +00:00
Dmitrii Krasnov a33e56a50d [Gradle IT] Added ivy with release k/n to IT tests default repos
^KT-64903
2024-03-11 18:33:16 +00:00
Brian Norman 9a5f4522e6 [PowerAssert] Update Gradle extension to be more idiomatic
Instead of using raw List types in the Gradle extension, ListProperty
should be used instead to make it more Gradle idiomatic. Also marking
the extension and all properties as experimental to allow easier
changing in the future.

^KT-65952 Fixed
2024-03-11 18:18:49 +00:00
Ilya Gorbunov 7175680917 [stdlib] Specify EXACTLY_ONCE contract for useLines 2024-03-11 18:12:27 +00:00
Ilya Gorbunov ed8c71442b [stdlib] Use more idiomatic index range check in getOrElse/Null 2024-03-11 18:12:27 +00:00
Ilya Gorbunov fc13ae7b4d [stdlib] Specify AT_MOST_ONCE contract for default-value-like functional parameters KT-54879 2024-03-11 18:12:27 +00:00
Ilya Gorbunov dee9fdc02d [stdlib] Regenerate sources 2024-03-11 18:12:27 +00:00
Igor Yakovlev 8fe5cf2641 [WasmJs] Support catching JS exceptions
Fixed #KT-65660
2024-03-11 14:27:12 +00:00
Dmitrii Krasnov 8d7844316b [Gradle] Removed using rootProject from KonanPropertiesBuildService
^KT-64995 Fixed
2024-03-11 12:07:14 +00:00
Artem Daugel-Dauge bfbc33e3f6 [Gradle] Fix macOS functionalTests 2024-03-11 09:09:10 +00:00
Timofey Solonin 1a4eaf796d Make resources configuration lenient
This prevents resolution failures if resources configuration ends up
selecting java-api variants

^KT-66393
2024-03-11 09:05:35 +00:00
Timofey Solonin 947d4c57e7 Reproduce resources resolution failure with legacy stdlib in dependencies
Sometimes native variants might depend on java-api dependencies.
Resources configuration doesn't have compatibility rules for these and fails to resolve them.

^KT-66393
2024-03-11 09:05:35 +00:00
Timofey Solonin f813ca1975 Allow js target resources publication
^KT-65540
2024-03-11 09:04:25 +00:00
Timofey Solonin 76814a8bbe Test expected js target resources publication bahavior
^KT-65540
2024-03-11 09:04:25 +00:00
Igor Yakovlev 6930fc8fed [WasmJs] Add support for external class reflection
Fix #KT-64890
2024-03-09 10:40:46 +01:00
Anton Lakotka 5779465366 [Gradle] Don't resolve platform classpath configuration consistently ...
... with metadata dependencies. As it can cause unexpected version
downgrades.

This change restores behavior that existed previous versions. While
the separation between different source set trees remained.

The proper implementation should be done as part of KT-66375.

Related tests that were verifying the fact that platform dependencies
are also resolved consistently is ignored with reference to KT-66375

^KT-66372 Verification Pending
^KT-66154 Verification Pending
^KT-66375
2024-03-08 17:50:09 +00:00
Ilya Goncharov c3a0a41524 [Wasm] Use named imports in test-loader, runUnitTests generating into static dir
KT-65777
2024-03-08 16:30:24 +00:00
Anton Lakotka 753e365c9e [Gradle, WASM] Move stability warning to Diagnostics Infra
And report it only once per build, so it doesn't spam users with
multiple projects in the logs.

^KT-66429 Verification Pending
2024-03-08 10:58:12 +00:00
Andrey Yastrebov 08f6e21f5d KT-66225 Add NativeBinary baseName test 2024-03-08 10:46:40 +00:00
Andrey Yastrebov bec832d39f KT-66225 Do not rewrite baseNameProvider in NativeBinary 2024-03-08 10:46:40 +00:00
Brian Norman 926ae2abb8 [PowerAssert] Add Gradle build tools integration tests for Power-Assert
The integration test project was copied from the sample project in
github.com/bnorm/kotlin-power-assert. Original license information has
been preserved even though commit history has not been.

^KT-65951 Fixed
2024-03-07 16:31:18 +00:00
Igor Yakovlev 60d425e2c7 [Wasm] Make specialisations for closured primitive values
Fixed KT-66065
2024-03-07 14:51:02 +00:00
Ilya Chernikov b318566ecf Scripting: temporarely disable compiler plugin test
related to #KT-66395
2024-03-07 13:13:30 +00:00
Ilya Goncharov 6fb6f04509 [Gradle, Wasm] Not add target listeners for wasi projects
^KT-66373 fixed
2024-03-06 18:23:41 +00:00
Artem Kobzar 77f0cba23f [K/JS] Introduce v2015 target 2024-03-06 12:21:38 +00:00
Igor Yakovlev c0f387dbd1 [Wasm] Implement IrLinkageError end enable partial linker
KT-58088
2024-03-05 17:17:32 +00:00
Vyacheslav Gerasimov 2e787c50be Build: Create GroupedByGradleVersion Gradle IT test tasks only on CI
All those tasks are displayed in the gutter when running a test making
it very long.
2024-03-05 17:12:31 +00:00
Vyacheslav Gerasimov 679e6f0504 Build: Use junit auto detection for DisabledIfNoArgumentsProvided
#KTI-1596
2024-03-05 17:12:31 +00:00
Vyacheslav Gerasimov 424a5055e2 Build: Group KGP Integration Tests by Gradle version
#KTI-1596

To avoid Gradle daemons pile up during test execution, run each Gradle
version in a separate task. Gradle daemon used for testing will be
terminated at the end of each execution preventing memory exhausting
in a low-memory environment (e.g., build agents).
2024-03-05 17:12:31 +00:00
Nataliya.Valtman c2023142f5 Add validation for empty kotlin.build.report.json.directory property
#KT-66314: Fixed
2024-03-05 15:05:56 +00:00
Timofey Solonin 2a445a04b0 Specify androidTarget's source sets graph in tests
^KT-65540
2024-03-05 13:38:00 +00:00
Timofey Solonin a8266eb20e Simplify set up of the resources variant in js and native targets
^KT-65540
2024-03-05 13:38:00 +00:00
Timofey Solonin 1895e480c5 Mark resources APIs in ExternalKotlinTarget with ComposeKotlinGradlePluginApi
^KT-65540
2024-03-05 13:38:00 +00:00
Timofey Solonin 9f6fb715dd Improve the creation of resolvable resources configuration
* Remove type casting for KotlinJsIrTarget
* Only create a resolvable configuration when the appropriate strategy
  is used

^KT-65540
2024-03-05 13:38:00 +00:00
Alexander.Likhachev 9d88e90821 [BTA, Gradle] Share cached classloaders between builds
^KT-64353 Fixed
2024-03-05 10:51:10 +00:00
Ilya Goncharov 0ce7bdc837 [Gradle, Wasm] Fix compileSync input for production binary
^KT-66228 fixed
^KT-66159 fixed
2024-03-05 10:27:43 +00:00
cristiangarcia 306c7f4b03 Dokka is not compatible with ConfigurationCache (kotlin-stdlib-docs)
Required for KTI-1553
2024-03-04 11:40:28 +00:00
Ilya Gorbunov f44ab4676f [docs] Update Gradle version and wrapper in legacy docs build 2024-03-04 11:40:28 +00:00
Ilya Gorbunov caee1a9b2b [docs] Use env variable to detect teamcity build mode
Checking property 'teamcity.version' no longer works with the way
TC passes parameters when configuration cache is enabled.
2024-03-04 11:40:28 +00:00
Ilya Gorbunov 7cc2384485 Remove kotlin-stdlib-common exclusion
It's no longer a transitive dependency of kotlin-stdlib
2024-03-04 11:40:06 +00:00
Ilya Gorbunov 16e61f978c [stdlib-mpp] remove some kotlin-stdlib-common artifact deps 2024-03-04 11:40:06 +00:00