Commit Graph

993 Commits

Author SHA1 Message Date
Dmitrii Krasnov 1af7aba26e Bump Kotlin/Native version in KGP to 1.9.30-dev-1903 2023-08-31 17:39:47 +00:00
Sebastian Sellmair e800885c03 [Gradle] Remove ':kotlin-gradle-plugin-kpm-android' module
KT-61463
2023-08-29 16:45:12 +00:00
Alexander.Likhachev db43d8cc8d [Build] Apply workaround for bt-api resolution as in b97e82f604 2023-08-29 13:00:15 +00:00
Kirill Rakhman 12b3fbd39a [RAW FIR] Refactor destructuring code
Move destructuring related code into common to reduce
differences between PSI and LT.
2023-08-24 11:07:46 +00:00
Pavel Kirpichenkov af94b241ec Extract K/N decompiler related files into a separate module
KTIJ-26526
2023-08-23 07:46:29 +00:00
Bogdan Mukvich 1458c81094 Add maven wrapper and mvn install gradle task 2023-08-22 13:45:45 +00:00
Pavel Kunyavskiy 8bcd1f4efa [FIR/Native] Move fir-related code from backend.native module to new one
^KT-61249
2023-08-22 08:56:16 +00:00
Ilya Gorbunov 9640e32483 [stdlib-mpp] Publish wasm artifacts through variants of stdlib KT-60909 2023-08-18 15:36:15 +00:00
Ilya Chernikov a53933d8ce Scripting: do not pack generic dependencies jar into maven-all
The -all jar is compacted with proguard, and the proguard removes
synthetic methods methods with $default suffix from classes regardless
of the -keep flag.
Therefore the calls to the $default metods lead to the NoSuchMethodError
exception on runtime.
Removing the main interface module from the proguarded jar solves the
problem for now (but not generally, the use of "proguarded" jars as
libraries should be discouraged.)
#KT-60862 fixed
2023-08-18 12:35:25 +00:00
Dmitrii Krasnov 1f61a195a9 Bump Kotlin/Native version in KGP to 1.9.20-dev-9320 2023-08-09 15:13:24 +00:00
Pavel Mikhailovskii 2002542ad2 Stub generation infrastructure (except for metadata generation) for KAPT+K2
This commit includes the basic Java stubs generation infrastructure and
the corresponding tests. The main entry point is called
Kapt4StubGenerator. Calls to it from production code will be added in a
separate commit.

 #KT-51982
2023-08-09 01:17:21 +00:00
Igor Yakovlev d1c7caf15c [Wasm] Add wasi stdlib target gradle buildscript
KT-56608
2023-08-08 18:10:19 +02:00
Ilya Gorbunov a9bc8fa402 [stdlib-mpp] Exclude kotlin-stdlib-js/js-ir projects and use kotlin-stdlib instead
- Specify disambiguating attributes in kotlin-dom-api-compat
  compile dependency configurations
  because it uses the flag that removes JS compiler type attribute
  from all configurations and variants

  KT-56106
2023-08-03 14:47:21 +00:00
Ilya Gorbunov 34720f27d4 [stdlib-mpp] Switch kotlin-stdlib project to multiplatform
#KT-56106
2023-08-03 14:47:20 +00:00
Ilya Gorbunov 79d5c87f30 [stdlib-mpp] Disable test retries for MPP libraries
Not compatible with org.jetbrains.kotlin.gradle.targets.jvm.tasks.KotlinJvmTest
executer.

#KT-56106
2023-08-03 14:47:19 +00:00
Ilya Gorbunov 34fc6278ea [stdlib-mpp] initial approach in a separate project
- produce similar jvm, js and common jars
- try default publishing

#KT-56106
2023-08-03 14:47:19 +00:00
Dmitriy Dolovov 5171d92fb9 [KLIB] API for dumping KLIB ABI
^KT-54402
2023-07-28 09:52:18 +00:00
Ilya Chernikov 3dc94f3d31 Scripting: fix descriptor extraction, restore main-kts testing
Temporary solution for K1 - see comments in the code
it seems that a scenario reproduced in the MainKtsTest.testKt48812
wasn't covered with analogous changes before.
And it wasn't detected while main-kts tests weren't a part of the
K1 scripting tests.
The test is fixed now, and testing of main-kts is restored.
2023-07-26 08:49:27 +00:00
Ilya Chernikov 480ea80fc4 Enable K2 scripting tests 2023-07-26 08:49:26 +00:00
Svyatoslav Scherbina d0452d569f Bump Kotlin/Native version in KGP to 1.9.20-dev-7597 2023-07-25 18:12:16 +00:00
Yahor Berdnikau 63b0e900a9 [repo] Start using version catalog in the main build 2023-07-19 17:53:10 +00:00
Yahor Berdnikau dc5660d98c [Gradle] Add 'validatePlugins' tasks for Gradle plugin dependencies
Gradle 8 has removed "validate-external-gradle-plugin" plugin which we
used before to run validate task inputs proper annotations.

With this change, every Gradle dependency that is not published as a
Gradle plugin but uses Gradle API types is also running
'validatedPlugins' task registered manually via a build script.

^KT-59827 Fixed
2023-07-19 13:36:03 +00:00
Dmitrii Krasnov b617b24d48 Bump Kotlin/Native version in KGP to 1.9.20-dev-6473.
This version allows the konan data dir to be configured via properties.

#KT-50463
2023-07-18 10:12:51 +02:00
Yahor Berdnikau bd000e61f6 [repo] Migrate resolveDependencies.gradle.kts into convention plugin
Otherwise, it could not find methods from buildsrc-compat.
2023-07-13 08:24:50 +00:00
Yahor Berdnikau 3209dbbf10 [repo] Migrate ideaRtHack.gradle.kts into convention plugin
Otherwise, it could not find methods from buildsrc-compat.
2023-07-13 08:24:50 +00:00
Yahor Berdnikau 9cc28406a6 [repo] Migrate modularizedTestConfigurations.gradle.kts into convention plugin
Otherwise, it could not find methods from buildsrc-compat.
2023-07-13 08:24:50 +00:00
Yahor Berdnikau e1ffe34088 [repo] Migrate jps.gradle.kts into convention plugin
Otherwise, it could not find methods from buildsrc-compat.
2023-07-13 08:24:50 +00:00
Yahor Berdnikau 8018b5f63b [repo] Migrate javaInstrumentation.gradle.kts into convention plugin
Otherwise, it could not find methods from buildsrc-compat.
2023-07-13 08:24:50 +00:00
Yahor Berdnikau d686cb1365 [repo] Migrate report.gradle.kts into convention plugin
Otherwise, it could not find methods from buildsrc-compat.
2023-07-13 08:24:50 +00:00
Yahor Berdnikau 5b5dae9249 [repo] Move buildSrc into repo/gradle-build-conventions/buildsrc-compat project
Include new project as build logic included build. Such change will
allow us to start migration into build convention plugins by splitting
buildSrc logic into subprojects.
2023-07-13 08:24:49 +00:00
Sebastian Sellmair 600bb3dbc7 Bump Kotlin/Native version in KGP to 1.9.20-dev-6271
KT-59859
2023-07-12 20:17:03 +00:00
Nikolay Krasko cab0487f98 Fix implicit dependency validation for zipCompilerSign
Checksum tasks uses the directory output, but the directory is not
empty, compiler.zip is among files in target directory. And this is
probably the reason why gradle now claims zipCompilerChecksum should be
added as direct dependency (see the error message below).

Workaround: generate checksum in separate directory and copy the
resulting file to directory with the compiler.zip. Note that `Copy` task
can't be used because it also declares target directory as an output.

Reproduce:

```
gradle zipCompilerWithSignature -Psigning.gnupg.keyName=???????? -Psigning.gnupg.passphrase=test -PsigningRequired=true -Pteamcity=true
```

Error:

```
org.gradle.internal.execution.WorkValidationException: A problem was found with the configuration of task ':zipCompilerSign' (type 'Sign').
    - Gradle detected a problem with the following location: '/mnt/agent/work/***/kotlin_CompilerArtifacts/dist/kotlin-compiler-1.9.20-dev-6119.zip'.

      Reason: Task ':zipCompilerSign' uses this output of task ':zipCompilerChecksum' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

      Possible solutions:
        1. Declare task ':zipCompilerChecksum' as an input of ':zipCompilerSign'.
        2. Declare an explicit dependency on ':zipCompilerChecksum' from ':zipCompilerSign' using Task#dependsOn.
        3. Declare an explicit dependency on ':zipCompilerChecksum' from ':zipCompilerSign' using Task#mustRunAfter.

      Please refer to https://docs.gradle.org/8.1.1/userguide/validation_problems.html#implicit_dependency for more details about this problem.
```

KTI-1285
2023-07-12 07:37:28 +00:00
Abduqodiri Qurbonzoda 7346cf4777 Introduce jdk-api-validator to ensure kotlin-reflect uses jdk6 API
Merge-request: KT-MR-6930
Merged-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com>
2023-07-12 05:13:08 +00:00
Svyatoslav Scherbina c2a5f6588c Bump Kotlin/Native version in KGP to 1.9.20-dev-6128 2023-07-10 11:10:02 +00:00
Pavel Kunyavskiy 0179b45840 Introduce compiler.common.native module 2023-07-10 08:59:16 +00:00
Pavel Mikhailovskii 083f54aceb [KAPT4] Create basic infrastructure for KAPT4 2023-07-07 11:09:16 +00:00
Yahor Berdnikau 1fdda8962d [repo] Migrate 'preparePublication' task into buildSrc 2023-07-04 19:26:38 +00:00
Svyatoslav Scherbina 85919c4d62 Bump Kotlin/Native version in KGP to 1.9.20-dev-5069
Also, adjust NativeIrLinkerIssuesIT after 5f3dad1. See the explanation
below.

5f3dad1 makes -Xlazy-ir-for-caches disabled by default. So the compiler
now deserializes different subsets of IR and in different orders.
As a result, the error message for a test changes. Both error messages
(before and after this commit) are correct, and the selection depends
on the IR deserialization strategy.
Moreover, this commit changes the expected error message to the initial
version, used before -Xlazy-ir-for-caches was introduced.
2023-07-04 10:16:32 +00:00
Svyatoslav Kuzmich 29fa20e2aa [Wasm] Extract Fir compiler tests into :wasmFirCompilerTest task
This is needed to run K1 and K2 tests in parallel on separate CI agents
2023-06-25 10:20:43 +02:00
Svyatoslav Kuzmich 9b3237fff9 [Wasm] Initial K2 support in new test infrastructure (KT-57230)
- Implement FirWasmSessionFactory
- Use new compiler test infra for Wasm K1 and K2
- Delete old Wasm compiler test infra
2023-06-25 10:19:36 +02:00
Alexander.Likhachev 2412693ef0 [BT] Move KotlinLogger to the bt-api module
#KT-57398 In Progress
2023-06-23 12:34:23 +00:00
Alexander.Likhachev 6e07d432b3 Embed kotlin-build-tools-api into kotlin-compiler
#KT-57398 In Progress
2023-06-23 12:34:23 +00:00
Alexander.Likhachev a93c49baf1 [Build] Fix a bunch of buildscript compilation warnings
#KTI-1221 Fixed
2023-06-22 15:16:08 +00:00
Svyatoslav Scherbina de78f52bc9 Bump Kotlin/Native version to 1.9.20-dev-4192 2023-06-19 13:45:28 +00:00
Vyacheslav Gerasimov 01b6af452f Build: Introduce resolveDependencies task
It is used on the build server to pre-download all dependencies and
check that verification-metadata.xml is up-to-date
 #KTI-72
2023-06-16 12:19:00 +00:00
cristiangarcia 46d113605b Adopt configuration-avoidance where possible
Before this change `./gradlew help` (with native enabled)
Created immediately: 1322
Created during configuration: 1541

after this change:
Created immediately: 596
Created during configuration: 1509

To know more about configuration avoidance: https://docs.gradle.org/current/userguide/task_configuration_avoidance.html
2023-06-06 14:27:42 +00:00
Alexander Udalov bb4bb58453 Remove tests on -Xuse-ir compiler flag
This flag is going to be removed because old backend is not supported
anymore, therefore there's no need to test it.
2023-05-30 14:46:09 +00:00
Andrei Klunnyi 6255efa7f7 [KT-58817] Publish K2 script compiler artifact
With this commit kotlin script compiler (as a plugin) becomes
available for IDE.
2023-05-26 12:55:00 +00:00
Ilya Goncharov 8ae196d4fc [Gradle, Wasm] Add kotlin-stdlib-wasm to IDE deps 2023-05-26 09:07:07 +00:00
Svyatoslav Scherbina d45e0116dd Bump Kotlin/Native version to 1.9.20-dev-2332 2023-05-25 12:13:46 +00:00