Commit Graph

117 Commits

Author SHA1 Message Date
Alexander Udalov f1b0e893ae Remove kotlin-annotations-android
#KT-44815 Fixed
2021-02-15 17:23:44 +01:00
Dmitriy Novozhilov bc3b791cd8 [TMP] Remove :kotlin-coroutines-experimental-compat module 2021-01-28 13:19:34 +03:00
Vyacheslav Gerasimov 3feff16a77 Cleanup 193 compatibility fixes 2020-11-11 14:28:54 +03:00
Dmitriy Dolovov 734dff6282 [Commonizer] Use compact variants of collections to reduce memory footprint 2020-11-05 18:50:56 +03:00
Yan Zhulanow c6de983476 Keep class members of the ExtensionPoint interface instead of its implementation for easier usage 2020-10-07 04:11:02 +09:00
Yan Zhulanow c471a7735e Keep all variants of ExtensionPointImpl.registerExtension() in the pro-guarded compiler (KT-42103) 2020-10-02 17:50:23 +09:00
Yan Zhulanow b7796d63d8 Parcelize: Add the Parcelize compiler plugin with sources extracted from Android Extensions plugin (KT-40030) 2020-09-24 15:50:57 +09:00
Dmitriy Novozhilov f14efedc3d [FIR] Fix broken gradle compilation 2020-09-01 12:00:13 +03:00
Florian Kistner c792092410 Bump fastutil version to match 203 2020-08-05 19:36:42 +02:00
Leonid Startsev a0154b9851 Add JarUtil.getJarAttribute to proguard rules
This method is used by serialization plugin to read runtime JAR
manifest.

Maven serialization plugin seems to use proguarded compiler
distribution,
so to use this method, it should be kept.

Size increased for about 2kb.
2020-07-21 15:10:08 +03:00
Jim Sproch 814bd48148 Keep members of com.google.common dependencies intact
It is a workaround for KTI-298
#KT-40354 In progress
2020-07-20 15:05:16 +03:00
Florian Kistner 202a55cb39 Bump intellijSdk version for 203 2020-07-09 15:27:45 +02:00
Vyacheslav Gerasimov 77a8cf4e66 Build: Use attributes to resolve test dependencies in jps build mode 2020-06-29 18:17:08 +03:00
Vyacheslav Gerasimov b4df4e5525 Build: Fix variant resolution ambiguity 2020-06-14 20:31:27 +03:00
Nikolay Krasko 143cad78bf 202: Add fastutil dependency to compiler for to make proguard work 2020-06-10 12:39:27 +03:00
Yunir Salimzyanov 3b9000cc0c Cleanup 191 extension files (KTI-240) 2020-06-01 18:43:10 +03:00
Ilya Chernikov dec8eb7899 Revert renaming scripting plugin jar:
it conflicts with the compilation on daemon, so transistion should
be planned accordingly, and now it is not a good time for it.
The most important part of the renaming remains intact.

Partially reverts commit "Rename scripting libs and plugin - invert embeddable suffix"
2020-05-27 13:15:50 +02:00
Ilya Chernikov 2509dfb287 Rename scripting libs and plugin - invert embeddable suffix
now regular, unshaded libs, are named with suffix `-unshaded`, while
former `-embeddable` ones named without any suffix. This will encoursge
use of the shaded libs by default, avoiding conflicts with 3-party
libs packed into the `kotlin-compiler`.
Note, that only the "frontline" libs are renamed to avoid switching
problems, the ones that not normally used directly are left as is,
including the `kotlin-compiler` itself.
2020-05-26 15:58:25 +02:00
Ilya Chernikov 574b917061 Remove new kotlin daemon from dist
hopefully temporarily, also see #KTI-173
2020-05-24 19:03:43 +02:00
Ilya Chernikov 9d98c90881 Drop coroutines from compiler jar, add appropriate plugin dependency
#KT-30778 fixed
2020-05-24 19:03:42 +02:00
Ilya Chernikov cf387ffad1 Remove obsolete source-sections plugin 2020-04-13 13:49:33 +02:00
Mikhail Glukhikh 1bab27c4c1 Add immutable collections to compiler dist (required for FIR) 2020-04-08 16:10:34 +03:00
Vyacheslav Gerasimov 507b00ee77 201: Fix kotlin-compiler proguard 2020-03-19 18:13:51 +03:00
Vyacheslav Gerasimov 7dc24a13e4 Build: Make ProGuard task cacheable
Exclude jdk files form libraries input. Instead add jdk major version
to inputs. JavaCompile task acts same to ignore fluctuations in JDK
implementations since api should remain same
2020-03-18 22:32:07 +03:00
Vyacheslav Gerasimov 7c7245fbb9 Build: Add compiler.version to embedded in JPS sync 2020-03-05 18:10:17 +03:00
Vyacheslav Gerasimov bab87c9837 Build: Extract compiler version to separate module to improve caching
Compiler version changes every build and makes impossible to reuse
caches for heavy tasks such as compiler proguard. We may fix that by
adding version module directly to the final jar.
2020-03-05 18:05:53 +03:00
Vyacheslav Gerasimov b64c7cce84 Build: Use Jar task for :kotlin-compiler:packCompiler
Right now can't be cached between builds because of compiler version.
We may move module containing compiler version directly to the final jar
2020-02-29 16:32:00 +03:00
Vyacheslav Gerasimov fc2161c2a6 Build: Don't cache :kotlin-compiler:proguard
Requires to mark inputs of proguard task properly
2020-02-25 19:17:02 +03:00
Nikolay Krasko 2340a86d8d Update to 201.5259.13-EAP-SNAPSHOT
- No UIUtil.removeLeakingAppleListeners anymore
- getParameterHints nullability
- versions of lz4-java and guava were changed
2020-02-18 14:13:55 +03:00
Ilya Gorbunov b5a0daabc3 Extract kotlin.coroutines.experimental API into compat artifact
Add public API dump for kotlin-coroutines-experimental-compat

#KT-36083
2020-01-29 09:12:39 +03:00
Vyacheslav Gerasimov 392e5a6edd Build: Make :kotlin-compiler:proguard task cacheable 2020-01-24 19:39:58 +03:00
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
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
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
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 38f0fd256e Build: Specify LIBRARY_ELEMENTS_ATTRIBUTE to JAR for configurations with js libraries 2019-10-28 17:21:23 +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
Vyacheslav Gerasimov c1e1dbd83e Build: Fix usages of "java.home" for tools.jar dependency
#KT-33984
2019-09-25 17:54:18 +03:00
Ilya Chernikov 2ed8fa7624 Convert main task creating helper to lazy API, refactor accordingly 2019-08-21 20:20:08 +02: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 a10a261894 Build: Workaround wrong import of transitive libraries in Idea 2019-06-27 17:56:47 +03:00