Commit Graph

62 Commits

Author SHA1 Message Date
Vladimir Dolzhenko
2c5a48c4d7 [kotlin] Align k2 module names with naming convention
#KTIJ-28562

GitOrigin-RevId: 689120c48d4ff0a8b0acba381a0da24ec8992c3d
2024-01-23 17:52:15 +00:00
Anna Kozlova
c1bf96bd02 [kotlin] extract modules in preparation for kotlin specific features on remote-dev client
- `code-insight-minimal` and `highlighting-minimal` added
- `line-indent-provider` removed
- add dependency on `platform.lang.impl` explicitly where needed

RDCT-828

GitOrigin-RevId: 21c2e18e038641dbbeef21ab70c651cfb7c38351
2023-12-13 12:06:59 +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
Yan Zhulanow
edccbb93f8 [kotlin] Move completion tests under the 'kotlin.completion.*' module group (KTIJ-22392)
GitOrigin-RevId: 6bbf0b17b51d6599d18b02769f5e0da2701c998b
2022-08-17 09:15:55 +00:00
Yan Zhulanow
18103c75a9 [kotlin] Move K1 completion to a separate module (KTIJ-22392)
GitOrigin-RevId: d74df428ed88593904cae02bb181609c5dd53725
2022-08-17 09:15:47 +00:00
Yan Zhulanow
e0d1ee9d93 [kotlin] Rename 'kotlin.refIndex' module to match other module naming convention (KTIJ-21699)
GitOrigin-RevId: bcbeab8700f7dfe8b33669d936da7b2cf3d9e9fe
2022-07-13 17:47:01 +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
4c5910cec0 [kotlin] Rename 'kotlin.gradle.gradle-idea' module to 'kotlin.gradle.gradle' (KTIJ-21699)
GitOrigin-RevId: 0a351c2604167a90c9e7cb91e5ee3807d8e92d02
2022-07-07 13:50:02 +00:00
Yan Zhulanow
7ec2c34bda [kotlin] Extract project configuration, preferences and updater functionality to separate modules (KTIJ-21699)
GitOrigin-RevId: b2481cb2607f4ad12b8dc145a696202e32a10f27
2022-07-07 13:49:48 +00:00
Yan Zhulanow
871c0d02a3 [kotlin] Move 'kotlin.project-model' inside the base part of the plugin (KTIJ-21699)
GitOrigin-RevId: dfb18fb37f4822024378e6080e519d6751e04b1b
2022-06-24 19:08:16 +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
87247fcd96 [kotlin] Move ImportInsertHelper to the 'kotlin.base.fe10.refactorings' module (KTIJ-21699)
GitOrigin-RevId: 9a4cf208af675ae2a6cacf938cf12065a38142d6
2022-06-14 06:27:46 +00:00
Yan Zhulanow
12c3ad80e9 [kotlin] Extract facet and platform-related classes to kotlin.base.* modules (KTIJ-21699)
GitOrigin-RevId: c2cd56198d67d4a9e28315dd0c115f18d0f1dbd9
2022-06-14 06:27:37 +00:00
Yan Zhulanow
566858b39b [kotlin] Move some analysis stuff to the 'kotlin.base.fe10.analysis' and kotlin.base.psi modules
GitOrigin-RevId: 02194321ce55b04505caf3119d19998debd1bd31
2022-04-15 19:39:21 +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
Ilya Kirillov
adca2942ba [kotlin fir] commonize some parts of FE10 perf tests with FIR project tests
GitOrigin-RevId: cb46379d00873c1e3f9e4ab8d429848ed51892a3
2022-03-17 15:40:28 +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
Yan Zhulanow
50e3886f5d Remove obsolete module kotlin.resources-fe10
GitOrigin-RevId: ba6d7f665b6933f9c5cbdb5ec23652a1b365603b
2022-01-22 11:10:29 +00:00
Yan Zhulanow
1b0c144cf0 Fix Lombok IDE support compilation
Adapt the Lombok IDE support module to the new plugin model,
separating modules for Maven and Gradle support.

GitOrigin-RevId: d8d4b91be1feea2b6a6c671ca625a72d8bdd8d33
2022-01-22 11:10:16 +00:00
Vladimir Dolzhenko
e4b877ae66 [kt-branches only] Added missed dependencies for compiler-plugins
See the IJ-MR-16415 for details

GitOrigin-RevId: 5d14e6626a4ca502803caa0aff180d54091091d1
2022-01-22 11:09:54 +00:00
Nikita Bobko
b20897b97d Move kotlin.resources* imls into subdirectories
imls shouldn't be in same directory otherwise it's not
possible to generate build.gradle.kts files from imls

GitOrigin-RevId: 9a611fe57b7665e5fbf25cbed38b965a700dd4fe
2022-01-22 11:01:39 +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
b06aade9ba 1/2 Replace source dependency on Kotlin JPS plugin with binary dependency
Kotlin JPS plugin is going to be migrated to Kotlin repo (in scope of KTIJ-11633),
so let's replace all dependencies on sources with dependencies on binaries

GitOrigin-RevId: 83fa7ffc92b40fc9740d103013ef3341068593b5
2021-12-21 22:10:43 +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
Vladimir Krivosheev
04636a77d6 use project level okhttp library
GitOrigin-RevId: 366cd0559adfa34479ce4c0f0a961c81cd5f8572
2021-10-19 11:11:47 +00:00
Yan Zhulanow
c1376f46d0 [kotlin] Extract Kotlin project model classes to a separate module
GitOrigin-RevId: 4d3b10f5039111b067750a947ced0075550bde5f
2021-09-03 08:11:27 +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
d2e1b4ddfb [kotlin] Allow using @KotlinPluginInternalApi-marked declarations from all Kotlin modules
GitOrigin-RevId: fb56194efbddfba539db6bb33689dbf25d3fcb49
2021-07-16 10:33:22 +00:00
Dmitry Gridin
9801ec30ef [kotlin] perf-tests: adapt find usages stress-test for cri
^KTIJ-16709

GitOrigin-RevId: fa746ea57c74bb0c93e2e092d9c44dcf45c851a8
2021-07-16 10:30:37 +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
dab929d728 [kotlin] disable resources-fir module for now
Resource resources-descriptors as it was configured previousely

GitOrigin-RevId: c06d43faf9094a2a57c0a7f42fc6eb7d61c8b383
2021-06-30 09:06:39 +00:00
Ilya Kirillov
11fc24ff9e Create separate module for FE1.0 & FIR plugins resources
GitOrigin-RevId: 82b00a24b7e9f178ac85165ed93105abe62e71c7
2021-06-30 09:03:01 +00:00
Nikolay Chashnikov
fc23a81d4e [IntelliJ project configuration] fix format of kotlin.performance-tests.iml
IDEA uses strict format when it saves module configuration, and it's better to follow it, otherwise developers may get unexpected modified iml files in their working copies.

GitOrigin-RevId: 40ae2f9feb02b86b09588a04ae127532be6f99e9
2021-06-25 16:03:11 +00:00
Vladimir Dolzhenko
da2d9eab27 Reuse okhttp3 instead of khttp
GitOrigin-RevId: 95644cca4ee8762295769a460439d92746db2fe7
2021-06-21 16:04:55 +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
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
Dmitry Gridin
e4c2b05d44 cleanup project model
GitOrigin-RevId: c1a081396611ab3952c3fd99967efac2e863a01d
2021-03-24 09:18:24 +03:00
Vladimir Dolzhenko
cc01d75283 Align PerformanceTypingIndentationTestGenerated to TypingIndentationTestBaseGenerated
GitOrigin-RevId: f0361569d376aeab467d01000469a28d12fc6b09
2020-12-16 23:04:42 +03:00
Vladimir Dolzhenko
00f0ec0838 Fix IDE performance tests khttp dependency
GitOrigin-RevId: 0141121c2bd964ed928ac1a00d18b33f7ac7dbc1
2020-12-04 23:22:27 +03:00
Vladimir Dolzhenko
d257785d59 Fix IDE performance tests compilation
GitOrigin-RevId: f7ebc323621c905429cf40d16a160ff070a7d190
2020-12-04 19:34:33 +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
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