Commit Graph

59 Commits

Author SHA1 Message Date
Anna Kozlova
70910a1bf9 [kotlin] extract frontend agnostic kotlin.ide module
it supposed to contain ide/ui specific actions which are shared between k1 and k2

part of KTIJ-28142

GitOrigin-RevId: 9ee0d5808a80ab36d9c0aa4176a1633f48e482c4
2024-01-12 20:55:16 +00:00
Ilya Kirillov
a2bbe4d318 Remove snapshot kotlin stdlib from Kotlin plugin
^KT-62510
^KTIJ-20529 fixed

GitOrigin-RevId: a49099902566abb23dfb56a578b368b4973e332f
2023-10-20 20:53:09 +00:00
Vladimir Dolzhenko
212b4c1a47 [kotlin] Regroup highlighting modules
GitOrigin-RevId: 85a48fd2aec4fb321cec2d0c24d032274dc98b28
2023-08-02 07:43:51 +00:00
Nikita Bobko
2fed68d853 Drop kotlin-reflect artifact from Kotlin plugin
Review: https://jetbrains.team/p/ij/reviews/94196

^KTIJ-22276 Fixed

In Kotlin compiler we are going to use kotlin-reflect which is the same
as in Kotlin plugin minimally supported IDEA (which is Android Studio).

We are going to migrate to "old reflect" in Kotlin in those commits:
https://jetbrains.team/p/kt/reviews/6753

Since the Kotlin compiler will depend on "old reflect" it's safe to use
IDEA's reflect in Kotlin plugin and compiler classpath.

This commit should fix FL-11828

GitOrigin-RevId: 4341c860073e7517d5e186f9ec18114f3f7987b2
2022-08-15 12:57:44 +00:00
Ilya Kirillov
453eae19e2 [kotlin] fix mixed K1/K2 test in aggregator
^KTIJ-22193

GitOrigin-RevId: 73c8b458fb6de45c44106aa03df0c65f55d925cb
2022-07-09 23:07:02 +00:00
Yan Zhulanow
b6c433c1fa [kotlin] Forbid exporting 'kotlinc.*' dependencies (KTIJ-21699, KTIJ-22014)
As the plugin gradually becomes separated to common and frontend-dependent parts, it is important to understand which modules use the old frontend. Without dependency exporting, figuring it out becomes a trivial task.

GitOrigin-RevId: 6ef2da11b5e6f03b38b325fa0824bd79935eff29
2022-06-15 06:45:43 +00:00
Yan Zhulanow
0ab3b6ca27 [kotlin] Move highlighting-related classes to the 'kotlin.base.highlighting' and 'kotlin.base.fe10.highlighting' modules (KTIJ-21699)
GitOrigin-RevId: 20a4ec05092e7a2d09af4d3994fbea6872433afc
2022-06-14 06:28:25 +00:00
Yan Zhulanow
00e8ff1c70 [kotlin] Extract classes related to analysis and project model handling to base modules (KTIJ-21699)
GitOrigin-RevId: 6c28e30f796068b6c9c843e367c7a0f9ff42ad68
2022-06-14 06:28:05 +00:00
Yan Zhulanow
a9de3e25f1 [kotlin] Remove 'kotlin.common' module (KTIJ-21699)
GitOrigin-RevId: 4ab36f052c63b9b37bd114b07f69b985a9472360
2022-06-14 06:27:51 +00:00
Yan Zhulanow
c4b2d3f7db [kotlin] Move Application-related helpers to the 'kotlin.base.util' module
GitOrigin-RevId: cb6b1857efb3943ce4014087b632f9ddc82ee980
2022-04-15 19:39:10 +00:00
Yan Zhulanow
8438013494 [kotlin] Extract plugin-related utilities to the 'kotlin.base.plugin' module
GitOrigin-RevId: 3b64666cf5769ca3a08beba186631e0fb9a2b319
2022-04-15 19:38:58 +00:00
Yan Zhulanow
25c00a5623 [kotlin] Introduce kotlinc.kotlin-script-runtime
As 'kotlin-script-runtime' is also used by the Python plugin, it's not possible to safely advance it to a bootstrap version. So, like with kotlinc.kotlin-stdlib and kotlinc.kotlin-reflect, the new 'kotlinc.kotlin-script-runtime' library comes as a Kotlin-local replacement.

GitOrigin-RevId: 636cb90eac3d8bb516946a27247ce5860b693146
2022-03-17 15:34:56 +09:00
Yan Zhulanow
669afc9afa [kotlin] Remove unneeded kotlin.scripting-compiler
The library is not used anywhere in the plugin, it was added by mistake as a (false) counterpart of kotlin-scripting-compiler-impl. See 4a9d4e06b99dbfe794b3072b59aec559381ecdcf for more information.

GitOrigin-RevId: 9bb9579dd02e0e33b42a15ba180102d88d2eee35
2022-02-08 08:52:50 +00:00
Yan Zhulanow
a73802740f Split kotlinc.kotlin-compiler library to common/fe10/fir/ir
GitOrigin-RevId: 6611c04934c6d6623d7a892ed41e957dc90b69fd
2022-02-08 08:51:09 +00:00
Stanislav Erokhin
2b8a822ede Remove dependency to the kotlinc.kotlin-script-util in the plugin
This jar file is deprecated and contains dependency to the
com.jcabi.aether.Aether class. This class could be not present in the
IDE plugin classpath, and we've got error via  IntelliJ Plugin
Verifier about that

Co-author: Ilya Chernikov

GitOrigin-RevId: 7ec1909ece745810312f78e7d4caf81ec6ac3716
2022-01-22 11:10:50 +00:00
Yan Zhulanow
d4eca5f893 Fix remaining compilation issues after commit cherry-picking
GitOrigin-RevId: 4b3e45ab04ce85b19523d4c21b0e8434dceb67ed
2022-01-22 10:56:47 +00:00
Nikita Bobko
098573c57c Split kotlin-stdlib-jdk8 and kotlin-reflect libraries
Some facts:
1. Kotlin plugin bundles own version of kotlin-stdlib and reflect (see KotlinPluginBuilder.groovy).
   We bundle own version of stdlib and reflect (but not use the one which comes with IDEA) because
   otherwise we would have runtime errors in compiler frontend which we depend on
   (kotlinc.kotlin-compiler)
2. Kotlin plugin exists in two release cycles. We have special `kt-xxx-[kotlin_compiler_version]`
   branches (e.g. kt-212-1.5.30 branch) in the repository where we put Kotlin plugin fixes which
   should be delivered in KT release cycle.
   2.1 The fact that we publish Kotlin plugin artifacts to marketplace from special kt-branches
       leads to the fact that stdlib may be different in Kotlin plugin and IntelliJ IDEA. By
       separating `kotlin-stdlib-jdk8` and `kotlinc.kotlin-stdlib` we make it obvious that Kotlin
       plugin has it's own stdlib

This commit fixes broken incremental compilation in kt-212-master
on TeamCity because now we have to bootstrap only kotlinc.kotlin-stdlib.
Previously, we had to bootstrap kotlin-stdlib-jdk8 which caused problems
with incremental compilation because whole monorepo depends on this artifact.

Also now during kotlinc updates in `intellij/master` we don't have to update kotlin-stdlib-jdk8
every time to keep kotlinc version the same among different imls/xmls in the monorepo
https://jetbrains.team/im/code/258iod1xjiFZ?message=BK9Aq0SIM1A&channel=152Z1w0RwrFp

(cherry picked from commit 23b2a70604c5c578983b0d76cb8634b9ed301a59)

GitOrigin-RevId: 773c01c405f2eb9db8d88ce3c58e4bdcee66c085
2021-11-10 13:52:22 +00:00
Yan Zhulanow
fb7a7da32c [kotlin] Add kotlin.plugin to test classpath of Kotlin modules with tests
GitOrigin-RevId: b3304bd1aadde1fa89aaceec70fc54f0a976a7f8
2021-08-30 05:19:47 +00:00
Nikolay Chashnikov
b683746735 get rid of unnecessary Kotlin facets in intellij project
KotlinPluginInternalApi annotation was replaced by generic IntellijInternalApi, which can be used in other plugins as well. So it becomes possible to use Kotlin compiler settings from the project configuration in almost all modules from Kotlin plugin, making Kotlin facets in these modules unnecessary. Removal of Kotlin facets simplifies project configuration and makes it easier to change settings of Kotlin compiler.

GitOrigin-RevId: 17590fab5769e3b79f47adb2af41b1dbcebf6e0a
2021-08-06 12:41:49 +00:00
Yan Zhulanow
c027a3883d [kotlin] Eliminate dependencies to kotlin.jvm-debugger.* modules from kotlin.idea and kotlin.jvm
GitOrigin-RevId: 6f7c4056525c9c026f85b7db4178804600551249
2021-07-16 10:33:28 +00:00
Yan Zhulanow
d2e1b4ddfb [kotlin] Allow using @KotlinPluginInternalApi-marked declarations from all Kotlin modules
GitOrigin-RevId: fb56194efbddfba539db6bb33689dbf25d3fcb49
2021-07-16 10:33:22 +00:00
Nikolay Chashnikov
24a1844984 [IntelliJ project configuration] adapt settings of Kotlin facet to Kotlin 1.5 plugin
Kotlin 1.5 doesn't write tag for 'jvmTarget' option if its value is '1.8', and does write it if its value is '1.6', so this change is needed to avoid modified iml files if the project is opened with Kotlin plugin 1.5 (see KTIJ-19019).

GitOrigin-RevId: 8fc21bf185ac8c23675123b904f25af5defcc98e
2021-07-07 10:52:45 +00:00
Mikhail Zarechenskiy
48847a585d [kotlin] Use correct library to kotlin-reflect
GitOrigin-RevId: a430436aa3524e9b4ab4b9c9e3f2e9f49329d0a0
2021-06-30 09:06:10 +00:00
Mikhail Zarechenskiy
f50b5bdecc [kotlin] Use correct library to kotlin-stdlib-jdk8
GitOrigin-RevId: 9dc28804cc40be617238de594f82d1b6a8f78f06
2021-06-30 09:06:09 +00:00
Nikita Bobko
f9a5c10088 Move 'intellij.platform.core' higher than 'kotlinc.kotlin-compiler' in classpath 2
GitOrigin-RevId: 7bb2c3b5dce66115015d53b89fc0db4b26de55f7
2021-06-30 09:05:45 +00:00
Dmitry Gridin
6a4775e48b [kotlin] merge kotlinc.kotlin-scripting-jvm library to kotlinc.kotlin-scripting-compiler
KTIJ-10035

GitOrigin-RevId: 94aed5452ac11e69587424ed19e0d7d4972dd1cc
2021-04-29 07:29:43 +00:00
Dmitry Gridin
74dbe06091 [kotlin] merge kotlinc.kotlin-scripting-compiler-impl library to kotlinc.kotlin-scripting-compiler
KTIJ-10035

GitOrigin-RevId: 2c508ca8189b18a96932d35cec19ae425a43cf03
2021-04-29 07:29:38 +00:00
Dmitry Gridin
edb01d68f9 [kotlin] replace kotlinc.kotlin-script-runtime with kotlin-script-runtime
^KTIJ-10035

GitOrigin-RevId: fab18bb79b6b78531a927f8050f3b86b738e1e62
2021-04-23 12:58:54 +03:00
Dmitry Gridin
2b84a7feb5 [kotlin] replace kotlinc.kotlin-reflect with kotlin-reflect
^KTIJ-10035

GitOrigin-RevId: ec72446e3a637f9bd72c277fe52902fea24696e6
2021-04-23 12:58:46 +03:00
Dmitry Gridin
38221a7967 [kotlin] replace kotlinc.kotlin-stdlib-jdk8 with kotlin-stdlib-jdk8
^KTIJ-10035

GitOrigin-RevId: 93f6f0e9c0d24459068ae65b4d1263df5e617390
2021-04-23 12:58:37 +03:00
Nikita Bobko
f3f4fbd1f9 Convert all kotlinc-delegator.* modules to kotlinc.* libraries
Cooperative compilation plans changed and we don't need delegator modules anymore

GitOrigin-RevId: c8b8ca7a8bea68ce1bf5fb0425956f5cc0f61d18
2021-04-19 13:39:10 +03:00
Nikita Bobko
55c5c507f8 Extract kotlin.idea module tests into separate module
This commit is required to split big idea module into smaller modules for more
precise dependency configurations in order to get rid of circular dependencies
with kotlin.idea module

Before this commit:
```
Project kotlin-ide: there is circular dependency between tests of 'kotlin.tests-common' module,
tests of 'kotlin.j2k.old' module, tests of 'kotlin.core' module, tests of 'kotlin.maven' module,
tests of 'kotlin.gradle.gradle-tooling' module, tests of 'kotlin.test-framework' module,
tests of 'kotlin.compiler-plugins.kotlinx-serialization' module,
tests of 'kotlin.compiler-plugins.parcelize' module, tests of 'kotlin.compiler-plugins.allopen' module,
tests of 'kotlin.compiler-plugins.noarg' module, tests of 'kotlin.gradle.gradle-idea' module,
tests of 'kotlin.gradle.gradle-native' module, tests of 'kotlin.native' module,
tests of 'kotlin.j2k.new' module, tests of 'kotlin.idea' module, tests of 'kotlin.uast.uast-kotlin' module
```

After this commit:
```
Project kotlin-ide: there is circular dependency between tests of 'kotlin.tests-common' module,
tests of 'kotlin.j2k.old' module, tests of 'kotlin.core' module, tests of 'kotlin.maven' module,
tests of 'kotlin.gradle.gradle-tooling' module, tests of 'kotlin.test-framework' module,
tests of 'kotlin.native' module, tests of 'kotlin.j2k.new' module,
tests of 'kotlin.idea.tests' module, tests of 'kotlin.uast.uast-kotlin' module
```

GitOrigin-RevId: 9a2c7d1a6e542126b74fbaae64e0bdbaa4648c43
2021-04-07 13:27:17 +03:00
Nikita Bobko
6e29578615 Replace dependency on 'kotlinc.kotlin-stdlib-jdk8' with dependency on 'kotlinc-delegator.kotlin-stdlib-jdk8' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 4ec18be4192e6ea9fe93f14e3e9fac83cec68c91
2020-11-16 14:55:23 +03:00
Nikita Bobko
2c45684416 Replace 'kotlinc.kotlin-scripting-jvm' project library with 'kotlinc-delegator.kotlin-scripting-jvm' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: e7ad207a66df0528554507c9765640859d5e43a3
2020-11-16 14:55:23 +03:00
Nikita Bobko
a69ff1ee67 Replace 'kotlinc.kotlin-scripting-compiler-impl' project library with 'kotlinc-delegator.kotlin-scripting-compiler-impl' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 674810b0a5d5624ba381cfbbbe5d8b8b0e5c5cc9
2020-11-16 14:55:22 +03:00
Nikita Bobko
5a8b63741d Replace 'kotlinc.kotlin-scripting-compiler' project library with 'kotlinc-delegator.kotlin-scripting-compiler' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 1792f26440cfac8c3e8e12e1af0fefc38377c818
2020-11-16 14:55:22 +03:00
Nikita Bobko
2589f04725 Replace 'kotlinc.kotlin-scripting-common' project library with 'kotlinc-delegator.kotlin-scripting-common' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 9df0b6f705426f753307a05fe7c701b1c981772f
2020-11-16 14:55:22 +03:00
Nikita Bobko
5474361772 Replace 'kotlinc.kotlin-script-util' project library with 'kotlinc-delegator.kotlin-script-util' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: c9b740b301def3aaaa3b428b39e96e2d84ec4541
2020-11-16 14:55:22 +03:00
Nikita Bobko
bcaa4721ef Replace 'kotlinc.kotlin-script-runtime' project library with 'kotlinc-delegator.kotlin-script-runtime' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 5a157bf9f8a20fff9ce594acc0d25b7fbc8e8c8c
2020-11-16 14:55:22 +03:00
Nikita Bobko
4dae9cbb59 Replace dependency on 'kotlinc.kotlin-reflect' with dependency on 'kotlinc-delegator.kotlin-reflect' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 5084f33196fee57672126cd2c298deb549b31dfe
2020-11-16 14:55:21 +03:00
Nikita Bobko
ab0fa50fcd Replace 'kotlinc.kotlin-compiler' project library with 'kotlinc-delegator.kotlin-compiler' module delegator
This commit is part of series of project model refactoring commits, look at neighborhood commits.
Check out last commits in this sequence.

These commit are done for sake of unification and making it easier to write cooperative compilation
prototype.

GitOrigin-RevId: 341fbb8bc02ad28a7e2113b859fba87756af5c37
2020-11-16 14:55:20 +03:00
Yan Zhulanow
3a0beb7a21 Revert "fix compilation: explicitly set Java 8 language level"
This reverts commit fcbc8b79

GitOrigin-RevId: f1f7a858b0e12dc16bf84b2a003279c847c3cc1a
2020-08-12 13:02:43 +03:00
Dmitry Gridin
b6eeb7cd28 fix compilation: explicitly set Java 8 language level
GitOrigin-RevId: 2807fc4a4fa13899d7b89de5e0422234b2f9c39b
2020-08-12 09:05:02 +03:00
Yan Zhulanow
90da353156 Remove kotlin-compiler-standalone library
GitOrigin-RevId: 64f0c3339505fd6fd1b4986b281bbf07462fdbd0
2020-07-24 11:11:40 +03:00
Vladimir Dolzhenko
39fc8dddc2 Make compiler-standalone library downloadable adding it as module dependency
GitOrigin-RevId: e22f95e85a9d14a411663196d4818ee8699481ff
2020-07-12 08:09:57 +03:00
Vladimir Dolzhenko
2552229e23 Fixed compiler dependencies and paths for ScratchRunActionTest
GitOrigin-RevId: 0574aa351d9384d3f1bd6d891b3b3f5567f213b6
2020-07-10 00:00:30 +03:00
Vladimir Dolzhenko
ee6dc2dbd5 Use JpsPluginTestArtifacts in ScratchRunActionTest
GitOrigin-RevId: 2beab884bb7421cdbbb19dccd2635bb8f2169257
2020-07-09 14:44:07 +03:00
Yan Zhulanow
768613be83 Fix compile classpath in new/existing modules after commit picking
GitOrigin-RevId: 64ac94ddf0ea8068b5f5f71609e0fe55f05ea6e9
2020-07-08 21:00:44 +03:00
Alexander Podkhalyuzin
cce7abbcce Removed two unnecessary cycles in modules. One more complicated left in tests
GitOrigin-RevId: 08dc999a419108c9bb3aa2e0696985b4f6c55899
2020-06-29 18:17:15 +03:00
Yan Zhulanow
f4cf9520c3 Replace stdlib/reflect library usages in Kotlin modules to Kotlin-specific ones
GitOrigin-RevId: 12edd441517af8c0665ff682c9a61f77742d34f4
2020-06-24 23:17:38 +03:00