Commit Graph

237 Commits

Author SHA1 Message Date
Ilya Gorbunov 61b3f447b1 Remove jsIrDist (kotlin.stdlib.js.ir.dist) flag and the logic it enables
It is no longer needed since JS IR is published in JS artifacts,
and there's no longer separate "-js-ir" artifacts.

Changes in BuildProperties.kt will take effect after the next
kotlin-build-gradle-plugin publishing.
2020-01-21 15:54:24 +03:00
Vladimir Ilmov e570450c59 coroutine debugger logic moved to jvm-debugger-coroutine module 2020-01-14 10:14:56 +01:00
Svyatoslav Kuzmich 31c84e9ac4 [JS IR] Build stdlib using compiler from repo
Previously JS IR versions of stdlib and kotlin-test were build
by default using compiler previously built on a buildserver.

It had some issues:
 - This required us to advance bootstrap every time we made any
   incompatible IR changes. This happens often since IR ABI is
   not quite stable yet.

 - We never tested the exact combination of compiler and stdlib we publish

   We tested:
    - new compiler with new stdlib build by new compiler (in box tests)
    - old compiler with new stdlib build by old compiler (in stdlib tests)

   We published:
    - new compiler with new stdlib build by old compiler

After this change JS IR compiler tests, builds and publishes
single configuration:

    new compiler with new stdlib build by new compiler

JS IR stdlib and kotlin-test are now built using JavaExec of CLI instead
of Gradle plugin to avoid troubles of loading a freshly built plugin.

This also allows to have a granular dependencies: we don't rebuild klib
if we changed a lowering in a compiler backend, but we do rebuild it if
we changed IR serialization algorithm.
2019-12-25 13:44:57 +03:00
Simon Ogorodnik 05308a3652 [FIR] Introduce module for all jvm extensions 2019-12-19 17:30:12 +03:00
Ilya Kirillov aca193ddd2 Wizard: Add initial version of the new project wizard 2019-12-18 15:54:16 +03:00
Roman Golyshev 8e53ccb852 Add ML completion jar to the resulting plugin jar
- Without it, ML completion jar will not be present in the runtime, causing errors when ML completion is enabled
- This step should have been done in 28ec74648e commit
2019-12-17 16:33:20 +03:00
Alexander Udalov 62ef280c53 Add compiler:ir.serialization.jvm to IDEA plugin
This fixes a problem caught by the Plugin Verifier. Kotlin IDEA plugin
depends on the JVM IR backend, which depends on ir.serialization.jvm now
2019-12-12 15:03:47 +03:00
Alexey Tsvetkov e506efb5b2 Include Klib metadata utils into jps-plugin
#KT-34958 Fixed
2019-11-22 15:35:30 +03:00
Svyatoslav Kuzmich a46e970f47 [JS] Remove kotlin-test-js build from JPS
kotlin-test-js is also built by JS IR backend
JS IR backend does not support JPS yet
2019-11-18 15:31:12 +03:00
Sergey Rostov 9f3c2d0292 build.gradle.kts: import script dependencies on Gradle Project sync 2019-11-11 15:15:14 +03:00
Nikolay Krasko 0ea64c8d4b Avoid using js dist library during jps build as it absent in bootstrap 2019-11-07 16:24:13 +03:00
Nikolay Krasko 155a760ee9 Revert "Revert [JS IR] commits that failed build"
This reverts commit 740f851a
2019-11-07 16:24:13 +03:00
Nikolay Krasko 740f851a10 Revert [JS IR] commits that failed build
Revert "[JS IR] Build hybrid versions of stdlib and kotlin.test"
This reverts commit b9f88350dd.

Revert "[JS IR] Add gradle plugin integration tests"
This reverts commit d872b27663.

Revert "Update bootstrap"
This reverts commit bc47594c7a.

Revert "[JS IR] Support generating both IR and pre-IR libraries"
This reverts commit 1b8df45bfe.
2019-11-05 13:58:39 +03:00
Svyatoslav Kuzmich b9f88350dd [JS IR] Build hybrid versions of stdlib and kotlin.test
IR version of libraries are no published by default inside pre-IR JARs
2019-11-01 19:42:06 +03:00
Vyacheslav Gerasimov 3b088818a5 Build: Add sources and javadocs to Kotlin Plugin publication 2019-11-01 16:22:42 +03:00
Vyacheslav Gerasimov 579645bcfa Build: Publish ide-common as separate artifact in KotlinPlugin publication
#KT-34452
2019-11-01 16:22:42 +03:00
Vyacheslav Gerasimov 38f0fd256e Build: Specify LIBRARY_ELEMENTS_ATTRIBUTE to JAR for configurations with js libraries 2019-10-28 17:21:23 +03:00
Vyacheslav Gerasimov 38ea5a85a3 Build: Add maven publication for Kotlin plugin artifacts 2019-10-24 17:06:19 +03:00
Vitaliy.Tikhonov f59e393e37 [CLI] add support running scripts in js compiler, extract common code with jvm part 2019-10-10 12:52:06 +03:00
Ilya Chernikov 1a8bcee86c Restore embeddable compiler smoke test
also move sources and testdata to the appropriate place
2019-10-08 17:05:33 +02:00
Ilya Chernikov cd4cce3f9f Refactor embeddable compiler client tests:
- move from the legacy location to the project dir
- move testdata from resources to the separate folder (fixes global compileTestKotlin build)
- fix classpaths handling
2019-10-08 17:05:31 +02:00
Natalia Selezneva 17dcdb59de Configuration: move scratch tests to separate module 2019-10-08 15:02:32 +03:00
Dmitriy Dolovov 0196ce7c2f IDE plugin: Add missed dependency 'util-klib-metadata' 2019-10-01 17:38:57 +03:00
Vyacheslav Gerasimov c1e1dbd83e Build: Fix usages of "java.home" for tools.jar dependency
#KT-33984
2019-09-25 17:54:18 +03:00
Vyacheslav Gerasimov 50eb98194a Build: Move dependencies.properties to the root build directory 2019-09-05 17:21:48 +03:00
Ilya Chernikov 72b68ee683 Fix proguarding of jline library in compiler
#KT-32234 fixed
#KT-32259 fixed
2019-09-04 09:35:04 +02:00
Ilya Chernikov 315a9d66a0 Refactor more tasks to lazy API 2019-08-21 20:20:08 +02:00
Ilya Chernikov 2ed8fa7624 Convert main task creating helper to lazy API, refactor accordingly 2019-08-21 20:20:08 +02:00
Ilya Chernikov 0f41dc814f Switch many common tasks defined in buildSrc to lazy creation
also refactor some locally defined tasks to the creation avoidance API
2019-08-21 20:20:08 +02:00
Yan Zhulanow 3742425547 Move out compiler plugins from the main IDE plugin JAR (KT-31279) 2019-08-09 20:07:28 +09:00
Sergey Rostov 59411e1a28 Build: flags for comparing gradle and jps 2019-06-27 17:56:52 +03:00
Vyacheslav Gerasimov 2d6a3cb2c8 Build: Introduce flag for disabling jar post processing
proguard, relocation, etc.
2019-06-27 17:56:52 +03:00
Vyacheslav Gerasimov 22bbbeb1ec Build: Fix manifest for kotlin-compiler in jps build
Trigger manifest generation from jar task during jps import
2019-06-27 17:56:51 +03:00
Vyacheslav Gerasimov 373a250b28 Build: Exclude common stdlib only from dist/lib contents configurations 2019-06-27 17:56:50 +03:00
Vyacheslav Gerasimov 286b9f5233 Build: Add jps artifact for kotlinc 2019-06-27 17:56:50 +03:00
Vyacheslav Gerasimov db8a4a52da Build: Add JPS artifact for kotlin-compiler.jar
JPS build assumes fat jar is built from embedded configuration,
but we can't use it in gradle build in :prepare:compiler project
since slightly more complex processing is required like stripping
metadata & services from some jars
2019-06-27 17:56:50 +03:00
Vyacheslav Gerasimov db3b01d2d4 Build: Centralize compiler dist build logic in :kotlin-compiler project 2019-06-27 17:56:48 +03:00
Vyacheslav Gerasimov 62126d0e43 Build: Fix idea plugin dependencies for JPS build
we interpret embedded configuration as runtime in JPS and need to exclude embedded jars while copying libs
2019-06-27 17:56:48 +03:00
Vyacheslav Gerasimov 12ba0efd19 Build: Use embedded configuration in kotlin-compiler-client-embeddable 2019-06-27 17:56:48 +03:00
Vyacheslav Gerasimov a10a261894 Build: Workaround wrong import of transitive libraries in Idea 2019-06-27 17:56:47 +03:00
Vyacheslav Gerasimov bbfa2646fd Minor: Cleanup :prepare:compiler build script 2019-06-27 17:56:47 +03:00
Nikolay Krasko beb1bc09d4 Update to 192.5118.30 2019-06-25 11:48:59 +03:00
Dmitriy Dolovov ef680cf332 KLIB reader: Add missed JARs to IDEA plugin 2019-06-04 12:40:56 +03:00
Vyacheslav Gerasimov 57943768bf Build: Remove bunches for kotlin-compiler build script 2019-05-31 16:32:09 +03:00
Yan Zhulanow ae7550c5af Move out JVM debugger functionality 2019-05-30 15:27:07 +09:00
Vadim Brilyantov 01a05a5495 Move daemon jar from compiler 2019-05-17 15:51:52 +03:00
Vadim Brilyantov ced973b707 Introduce new Kotlin Daemon without RMI abstraction 2019-05-17 15:51:51 +03:00
Vyacheslav Gerasimov c218385ba8 Build: Collect sources for compiler lazily to avoid evaluationDependsOn 2019-04-29 16:23:16 +03:00
Vyacheslav Gerasimov 8851029baa Build: Use embedded configuration for compiler plugins 2019-04-29 16:23:16 +03:00
Vyacheslav Gerasimov 50e145f239 Build: remove various evaluationDependsOn calls across the build
`evaluationDependsOn` may lead to obscure gradle errors on project configuration
2019-04-29 16:23:16 +03:00