Commit Graph

1066 Commits

Author SHA1 Message Date
Alexander Shabalin 8c6966765b [K/N][tests] Move driver tests into their own project ^KT-61259 2024-03-12 15:42:06 +00:00
Alexander.Likhachev 90fee75eba [Build, BTA] Add the Build Tools API tests to the aggregate tasks
^KT-61860 In Progress
2024-03-09 01:36:22 +00:00
Alexander Shabalin aee87468a6 [K/N][tests] Move stress tests into a separate project 2024-03-07 15:01:30 +00:00
Sebastian Sellmair b5b7e5f262 [aa-klib-reader] Implement 'analysis-api-klib-reader' for swift- and objc export
This new module gives the ability to resolve symbols
from provided klib KtLibraryModules withing a Analysis Session.

^KT-65327 Fixed
2024-03-07 09:23:37 +00:00
Sergey Bogolepov 35579692d9 [Swift export] Move swift-export-standalone tests
Move them under `nativeCompilerTest` for the sake of unification, and
running under proper CI configuration.
2024-03-04 08:57:32 +00:00
Sergey Bogolepov 9a2d748817 Bump Kotlin/Native version in KGP to 2.0.0-dev-17343 2024-02-29 16:16:49 +00:00
Alexander Shabalin a8fcef9cca Revert "[K/N][tests] Remove atomicfu tests from :nativeCompilerTest ^KT-65977"
This reverts commit 513f86f8fc.
2024-02-27 13:20:50 +00:00
Vyacheslav Gerasimov c382b0e2b3 Build: Remove kotlin-compiler from dependencies during Idea import
#KTI-1598
2024-02-27 10:29:59 +00:00
Alexander Shabalin 513f86f8fc [K/N][tests] Remove atomicfu tests from :nativeCompilerTest ^KT-65977
These tests fail in native testing infrastructure on different
platforms. Removing them until it's fixed.
2024-02-26 16:42:04 +00:00
Svyatoslav Scherbina 23e558d172 Bump Kotlin/Native version in KGP to 2.0.0-dev-16829 2024-02-26 10:16:19 +00:00
cristiangarcia 1847485d28 Make maven publishing CC compatible
Required for KTI-1553
2024-02-23 18:27:11 +00:00
Ilya Chernikov 0d3964f22e Test, scripting: add infra for script tests with customizable def
based on the regular compiler tests infrastructure, but adding
directives that can customize the definition from testdata.
So far only default imports and provided properties are supported, but
the infrastructure is easily extendable to other customizations.
Another limitations that provided properties are not supported for
the black box tests - the constructor parameters computing code
should be adapted to support it.
Note: in order to pick up the customized definition, the script files
should have an extension .test.kts
2024-02-21 07:47:15 +00:00
Ivan Kylchik 6dccb60afe [IR] Add new module to keep all IR inline related code
#KT-64806
2024-02-19 20:14:16 +00:00
cristiangarcia b8915614ae Make checkBuild configuration cache compatible
Required for KTI-1553
2024-02-15 22:39:46 +01:00
Leonid Startsev 09e89db82f Change kotlinx- to kotlin- in kotlin-metadata-jvm and related projects
Change package, artifact group, artifact name, and Gradle module name to
kotlin-metadata and kotlin-metadata-jvm, respectively.

In Kotlin 2.0, kotlin-metadata-jvm library is promoted to stable, and is
a part of Kotlin distribution now.

Note that kotlinx-metadata-klib is left with org.jetbrains.kotlinx group, artifact name and package
because -klib part is considered not stable and for internal use. Since it is still published via Sonatype,
it should have kotlinx group. Therefore, it will have both classes from kotlin.metadata and kotlinx.metadata packages. This is not a problem, because we already had kotlinx.metadata split package between -jvm and -klib before.

#KT-63219 Fixed
2024-02-15 15:32:33 +00:00
Dmitriy Dolovov d30efdb001 [kotlinp] Split :tools:kotlinp into "common" and "jvm" subprojects
The "common" subproject keeps only backend-neutral logic and depends
only on :kotlinx-metadata library. It takes the name of the former
project - :tools:kotlinp

The "jvm" subproject depends on the "common" one and also depends
on :kotlinx-metadata-jvm. It gets the new name - :tools:kotlinp-jvm

There is a lot of touched files in this commit. The majority of them
is just moved files (tests, test data, etc).

Only the following files were actually modified:
  .space/CODEOWNERS
  build.gradle.kts
  libraries/tools/abi-comparator/build.gradle.kts
  libraries/tools/kotlinp/build.gradle.kts
  libraries/tools/kotlinp/jvm/build.gradle.kts
  plugins/kapt3/kapt3-compiler/build.gradle.kts
  settings.gradle

 ^KT-62340
2024-02-13 21:01:08 +00:00
Alexander Shabalin d92eecb985 [K/N][tests] Add :nativeCompilerUnitTest and :nativeCompilerTest ^KT-65392
- :nativeCompilerUnitTest are unit tests on K/N compiler.
- :nativeCompilerTest are tests using K/N compiler and should be run in
  many different compilation modes that K/N supports.
2024-02-12 17:52:38 +00:00
Brian Norman aa34282efb [PowerAssert] Integrate with build
^KT-63617 Fixed
2024-02-07 21:51:17 +00:00
Ilya Gorbunov a15e88ba1e [build] Pass/override JDK_1_8 env variable to maven exec tasks
While other JDKs can be used in the maven build,
only JDK_1_8 is required for 'install' and 'deploy' goals without tests.

Provide this path from the corresponding toolchain discovered by Gradle.
2024-01-24 15:37:29 +00:00
Svyatoslav Scherbina 8e4dc1fc31 Bump Kotlin/Native version in KGP to 2.0.0-dev-13302 2024-01-23 19:29:02 +00:00
Ilya Gorbunov 000db0bb44 [kotlin-test] Move kotlin-test integration tests project 2024-01-23 17:57:48 +00:00
Ilya Kirillov dd4b1abc6a Fix multiple allocations of empty PersistentMap in PersistentSetMultimap
The `persistentMapOf` overload without arguments should be used there.

The needed overload is not available in the version of `kotlinx.immmutable 0.3.2`,
so the library is updated to the latest version.

This commit also removes the dependency on the `kotlinx-collections-immutable-metadata`
as it's not published anymore for new versions of `kotlinx-collections-immutable`.

^KT-64987 fixed
2024-01-19 15:19:41 +00:00
Artem Kobzar dfe2d8651e [K/JS] Prepare JS Plain Objects plugin to publication 2024-01-17 10:52:58 +00:00
Svyatoslav Scherbina 82f80a4899 Bump Kotlin/Native version in KGP to 2.0.0-dev-12398 2024-01-12 16:19:33 +00:00
Artem Kobzar 300702a7e7 [K/JS] Create JavaScript Simple Object plugin that helps create typed JS objects 2024-01-10 16:30:02 +00:00
Sebastian Sellmair e409c60780 [ObjCExport] Split ObjCExport into K1 and Analysis Api implementation
FL-23390
^KT-64168 Fixed
2024-01-08 15:25:19 +00:00
Svyatoslav Scherbina 84388d5f04 Bump Kotlin/Native version in KGP to 2.0.0-dev-10477 2023-12-14 14:23:31 +00:00
Ilya Gorbunov e0bc0b81c6 [kotlin-test] Drop subprojects unneeded anymore KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 38ed3216fd [kotlin-test] Exclude kotlin-test project from GE test splitting
Not supported for kotlin-multiplatform tests

KT-61969
2023-12-13 15:40:25 +00:00
Bogdan Mukvich b7d56dea44 Point ArtifactsTests to custom maven repo dir to avoid stale artifacts
^KTI-1345
2023-12-12 10:28:48 +00:00
Sergej Jaskiewicz 0d2032f3ef [SIR] Auto-generate the Swift IR tree
Co-authored-by: Gleb Lukianets <gleb.lukianets@jetbrains.com>
2023-12-08 10:09:09 +00:00
Alexander.Likhachev a19bd2ed2e [Build] Migrate most of the build logic from Project.buildDir usage
It's going to be deprecated in Gradle 8.3

There's currently no way to pass a `org.gradle.api.provider.Provider` to the JavaExec.systemProperty or Test.systemProperty. There's a workaround using `org.gradle.process.CommandLineArgumentProvider`, but I intentionally don't rework these calls as Gradle is going to allow passing providers to configure system properties: https://github.com/gradle/gradle/issues/12247#issuecomment-1568427242
^KTI-1473 In Progress
2023-12-07 18:31:06 +00:00
Yan Zhulanow e4da639e1c [Pill] Remove 'jps-compatible' plugin from the root Kotlin project
'excludedDirs' definition is not needed anymore, so the plugin usage
is not really useful.
2023-12-07 08:53:35 +00:00
Sebastian Sellmair 0713866c1e [K/N] Modularise :kotlin-native:native.backend to extract objc header generation (2/2)
^KT-63905 Fixed
2023-12-04 18:52:08 +00:00
Svyatoslav Scherbina 3297e6774f Bump Kotlin/Native version in KGP to 2.0.0-dev-8858 2023-11-28 19:08:21 +00:00
Ilya Goncharov 8c95665e27 [Gradle, JS] Deprecate specific Node.js properties
^KT-62780 fixed
2023-11-28 10:36:36 +00:00
Svyatoslav Kuzmich 910835af2d [Web] Add core/compiler.common.web module
Add WebCommonStandardClassIds object to use in JS&Wasm shared code
2023-11-23 10:42:56 +00:00
Pavel Kirpichenkov 645e4af8b1 [IDE] Move KotlinJavaScriptMetaFileDecompiler to kotlin.git
KTIJ-27752
2023-11-21 18:43:06 +00:00
strangepleasures f32fd314f8 [KAPT] Adhere to the call conventions when instantiating and using KtAnalysisSession
Merge-request: KT-MR-13098
Merged-by: Pavel Mikhailovskii <Pavel.Mikhailovskii@jetbrains.com>
2023-11-21 13:21:19 +00:00
Pavel Kunyavskiy 649a7bd66b [IR] Moved actualizer and related things to separate module
^KT-62292
2023-11-20 08:31:41 +00:00
cristiangarcia 7a267afeae Assert build.number is present if deployVersion is
KTI-1454 Fail instead of producing the wrong artifacts
2023-11-18 21:25:55 +00:00
strangepleasures 9c2ce475e2 KT-60821 [KAPT] Generate stubs without KaptTreeMaker
Merge-request: KT-MR-12979
Merged-by: Pavel Mikhailovskii <Pavel.Mikhailovskii@jetbrains.com>
2023-11-16 21:14:36 +00:00
Svyatoslav Scherbina bb608740cd Bump Kotlin/Native version in KGP to 2.0.0-dev-7404 2023-11-14 12:47:34 +00:00
Ilya Kirillov 5f5daa0e06 [Decompiler] rename :analysis:decompiled:native -> :analysis:decompiled:decompiler-native
to avoid possible name clashes between different
Gradle subprojects with the same name.

see https://github.com/gradle/gradle/issues/16986
2023-11-10 06:41:03 +00:00
Dmitrii Krasnov 0882d5201b [FUS] Fixed ModuleChangesCatchingTest failures
#KT-62987 Fixed
2023-11-02 10:07:34 +00:00
Sergej Jaskiewicz 7b7bcb8ffa [FIR/IR generator] Introduce ImportCollector
This class enables printing the import list in generated files
in a smarter way.

Also, refactor `Importable` interface hierarchy, namely, don't inherit
`TypeRef` from `Importable`, since we have types like `TypeRef.Star`
which are not really importable.

Replace the `Importable#typeWithArguments` property with
the `TypeRef#render` method to utilize `ImportCollector` while rendering
types.
2023-10-26 17:33:59 +00:00
Ilya Kirillov bec6d38490 [build] fix Fleet tests
Fleet is using `:compiler:ir.objcinterop` which was removed in e91e1a7729 from IDE dependency publishing
2023-10-26 13:11:23 +00:00
Ilya Kirillov a65c735feb [build] add checks to ensure that no modules which are part of the IDE plugin do not use experimental stdlib API
to ensure binary compatibility with stdlib inside IntelliJ.

This includes using the latest stable kotlin API version and
forbidding using experimental declarations from stdlib.

^KT-62510
2023-10-25 08:38:07 +00:00
Igor Yakovlev 86fd889138 [K/Wasm] Bump nodejs version 2023-10-20 13:02:14 +00:00
Svyatoslav Scherbina 141f2e3234 Bump Kotlin/Native version in KGP to 2.0.0-dev-5387 2023-10-18 15:27:08 +00:00