Alexey Tsvetkov
7f3cda4894
JS IC: track lookups from libraries
...
Otherwise we don't track lookups from other modules
#KT-25540 fixed
Original commit: 8f002fdb43
2018-07-23 15:43:17 +03:00
Alexey Tsvetkov
35c62ecaec
Report info message when JS IC is enabled in JPS
...
Original commit: c8c0c773fb
2018-07-23 15:43:17 +03:00
Alexey Tsvetkov
ad7f554208
Use separate system properties to control IC for JVM and JS
...
Also this commit effectively disables JS IC by default
#KT-25563 fixed
Original commit: 0b18380770
2018-07-23 15:43:16 +03:00
Alexander Udalov
0a50498536
Add BinaryVersion to DeserializationContext
...
This will be useful to implement version-dependent deserialization,
which is needed for gradual fixes of issues in metadata
#KT-25120 In Progress
Original commit: 4122021090
2018-07-18 17:58:46 +02:00
Alexander Udalov
fbe3053f88
Simplify DefaultImportProvider, introduce "low priority imports"
...
Previously, packages `java.lang` and `kotlin.jvm` were imported on JVM
by default on the same rights, causing problems when the same classifier
existed both in `java.lang` and `kotlin.jvm`. Since the only known case
of such conflict were type aliases to JVM classes, the corresponding
classes (expansions of those type aliases) were manually excluded from
default imports. This made the code in DefaultImportProvider complicated
and resulted in multiple problems, regarding both correctness and
performance (see d8e591f873, 930319281f, 5a048fea6b).
This change adds a new concept, a "low priority import", and treats
`java.lang` as such. Since these imports are now separated from the rest
of default imports in LazyImportScope via secondaryClassImportResolver,
conflicts between classifiers are handled naturally: the one from
`kotlin.jvm` always wins (unless the one from `java.lang` is imported
explicitly, of course). This approach is simpler, safer and does not
require any memory to cache anything.
Skip ResolveToJava.kt test for javac-based resolve; it now fails because
of a weird issue which I didn't have time to investigate (this is OK
because it's a corner case of an experimental functionality)
Original commit: 1f0fb4823f
2018-07-16 13:45:11 +02:00
Ilya Chernikov
7b039f10c5
Add kts to supported file extensions to the DirtySourceFilesHolder as well
...
allows jps to compile scripts along with sources,
finally fixes #KT-22611
Original commit: 563e4c9e57
2018-07-10 08:43:51 +02:00
Ilya Chernikov
e5e591fbc8
Create proper constructor in script descriptor
...
allows to resolve calls to scripts in compiler (but not in the IDE yet)
Some refactorings on the way
Original commit: 9453834fb1
2018-07-10 08:43:50 +02:00
Alexey Tsvetkov
3ccf89be00
Register kotlin_module as output of all files
...
Previously kotlin_module was registered as output
only for files containing top-level declarations
Original commit: 5760b8cf8b
2018-07-09 15:48:11 +03:00
Alexey Tsvetkov
20a147e476
Fix compilation of plugin projects in JPS
...
#KT-25218 fixed
Original commit: f438b7501c
2018-07-04 14:54:07 +03:00
Alexey Tsvetkov
08a6ac910d
Build: remove testRuntime dependency on ":kotlin-compiler:dist"
...
Original commit: 1dea01a479
2018-07-02 22:36:35 +03:00
Alexey Tsvetkov
332134adaa
Do not compile jps tests for android studio
...
I accidentally enabled compilation in one of my previous commits
Original commit: ece991639e
2018-06-29 20:16:53 +03:00
Alexey Tsvetkov
3657dba063
Fix test dependencies in jps-plugin
...
Otherwise tests fail on clean checkout
Original commit: 3a7c674957
2018-06-28 22:03:10 +03:00
Alexey Tsvetkov
94f8210340
Minor: reword progress message
...
#KT-24936 fixed
Original commit: cdfcedb897
2018-06-19 15:43:24 +03:00
Vyacheslav Gerasimov
d4779fcfb9
Fix test compilation for AS branches
...
There is no devkit is AS
Original commit: 020d941c27
2018-06-08 15:26:47 +03:00
Sergey Rostov
2725c7b9ae
173: jps, mpp: fix AbstractIncrementalJpsTest.kt.173
...
Original commit: c71357dd76
2018-06-08 13:50:05 +03:00
Sergey Rostov
fe9eb0310f
jps: add common source roots to the final platform modules as a workaround for absence of incremental k2metadata compiler
...
Original commit: 5455b6c0c0
2018-06-08 09:46:56 +03:00
Sergey Rostov
6b7f0f3c6e
jps, daemon: pass incremental compilation flag from jps process to daemon
...
Original commit: e831964871
2018-06-08 09:46:52 +03:00
Sergey Rostov
661f974e99
jps: checkCachesVersions for js and common (BuildMetaInfo save/check)
...
Original commit: 5a2ed364fe
2018-06-08 09:46:49 +03:00
Sergey Rostov
c01e0935ba
jps: improve KotlinDirtySourceFilesHolder
...
Original commit: 3cfb200e07
2018-06-08 09:46:48 +03:00
Sergey Rostov
60de938f22
jps: (minor) fix java module detection
...
Original commit: b5acb83325
2018-06-08 09:46:47 +03:00
Sergey Rostov
3a5610bb21
jps, js: Fix exception on rebuild js module
...
Original commit: 5478a552ed
2018-06-08 09:46:46 +03:00
Sergey Rostov
8b4813c014
jps: Don't create cache for common modules (KOTLIN-CR-2028)
...
Original commit: d75a2be31b
2018-06-08 09:46:45 +03:00
Sergey Rostov
304a537c68
jps: fixes for KOTLIN-CR-2028
...
Original commit: c24aa13f12
2018-06-08 09:46:44 +03:00
Sergey Rostov
53f04d0d19
jps: fix mergedCompilerArguments getter (mergedCompilerArguments)
...
Original commit: 40b9fa88b7
2018-06-08 09:46:42 +03:00
Sergey Rostov
a1fa9ffdbb
jps: implement mpp and js daemon compiler services
...
#KT-24635 fixed
Original commit: 1cbef873ec
2018-06-08 09:46:41 +03:00
Sergey Rostov
e302f27635
jps, mpp: fix marking expect/actual complementary files as dirty
...
This files should be marked as dirty for current round, not next
Original commit: b2fedd7b1e
2018-06-08 09:46:40 +03:00
Sergey Rostov
1ce29e2a73
jps: support KotlinSourceRootType
...
KotlinSourceRootType will added with KotlinSourceRootProvider (ex KotlinMppCommonSourceRootProvider).
New target type (with computeAllTargets) is not possible because ModuleBuildTarget is final.
#KT-24506 fixed
Original commit: 65bdfa72c1
2018-06-08 09:46:39 +03:00
Sergey Rostov
60494f27c6
jps, mpp: temporary disable mpp tests
...
Original commit: b2f58ad9c3
2018-06-08 09:46:38 +03:00
Sergey Rostov
5f818789cf
jps: support multiplatform incremental compilation for jvm and js
...
- support common modules metadata compilation under flag (it is not required since all common source roots are included transitively for now)
- introduce expect actual tracker in jps: move implementation from gradle to build-common
- support js incremental compilation: move implementation from gradle to build-common
Original commit: 0eee2729cd
2018-06-08 09:46:37 +03:00
Sergey Rostov
a64a2f694f
jps: support dev kit module types (and all other ModuleBasedBuildTargetType). fix brunch 172
...
Original commit: 098e51d104
2018-05-24 14:59:46 +03:00
Sergey Rostov
79bf8f7c98
jps: support dev kit module types (and all other ModuleBasedBuildTargetType)
...
#KT-24500 fixed
Original commit: ec5110e1f4
2018-05-24 11:12:01 +03:00
Alexey Tsvetkov
bc37e46187
Improve JPS progress messages
...
#KT-9218 fixed
Original commit: 7f865565a6
2018-05-18 23:50:08 +03:00
Alexey Sedunov
8a7a289cec
Configuration: Add migration of JPS project to new non-jvm source roots
...
Original commit: d2bfb8caec
2018-05-18 12:09:40 +03:00
Alexey Sedunov
21772d2a14
Configuration: Introduce special source roots for non-JVM Kotlin modules
...
#KT-5948 Fixed
#KT-23672 Fixed
Original commit: 9fa26c83b6
2018-05-18 12:09:40 +03:00
Vyacheslav Gerasimov
45a66c9c48
as32: Update to 181 platform api
...
Original commit: 4adc0a94ab
2018-05-10 23:28:41 +03:00
Vyacheslav Gerasimov
a38eb5a483
Build: Extract jps-common ide module from kotlin-plugin.jar to standalone jar
...
Original commit: f2b323fbe3
2018-05-08 21:49:08 +03:00
Sergey Rostov
e4d51df269
jps (refactor): reimplement KotlinModuleBuildTarget data binding using CompileContext
...
Original commit: 9fafe0473c
2018-05-04 11:14:45 +03:00
Sergey Rostov
96725b1e36
jps: common modules metadata compiler
...
(cherry picked from commit cde333d)
Original commit: 91b703d529
2018-05-04 11:05:13 +03:00
Sergey Rostov
ffd77601ca
jps: minor: refine kotlin.jps.model package
...
(cherry picked from commit 2a31e78)
Original commit: 41dcc9ad4d
2018-05-04 11:05:12 +03:00
Sergey Rostov
64afafe65e
jps: Refactor module/project settings getters/setters
...
(cherry picked from commit d29ffa0)
Original commit: a390fc36e2
2018-05-04 11:05:12 +03:00
Sergey Rostov
ef5d8435b6
jps(refactor): Extract platform related code
...
#KT-23656 Fixed
(cherry picked from commit 18a751d)
Original commit: 75e6be7802
2018-05-04 11:05:12 +03:00
Nikolay Krasko
c7fe4c10bf
Remove files introduced in 181 from 173 branch
...
Original commit: c83ff5e75f
2018-04-27 19:45:23 +03:00
Vyacheslav Gerasimov
e50fca68fb
Cleanup .181 bunch files
...
Original commit: 8c88ac69df
2018-04-27 18:25:21 +03:00
Vyacheslav Gerasimov
440d218436
Switch to 181 platform
...
Original commit: bc403ce744
2018-04-27 18:25:17 +03:00
Denis Zharkov
f4d5649cd5
Replace default-type dependencies to :kotlin-stdlib with distJar
...
Use distJar configuration instead.
It's necessary because currently when using default-type, subproject
starts having a transitive dependency to :kotlin-stdlib-common
and that leads to exception from KT-20897 when building light classes
This change might be reverted once KT-23942 is fixed
#KT-23942 Submitted
Original commit: 003f381fcd
2018-04-26 16:11:27 +03:00
Alexey Tsvetkov
bdd795200c
Make assertion message more readable in JPS test
...
The test was failing recently on CI, but assertion message
does not give enough info: arrays' sizes are not equal,
so there were extra warnings, but what they were?
Original commit: adc3e61742
2018-04-22 23:05:59 +03:00
Zalim Bashorov
1ad96a7db9
Regenerate tests
...
Original commit: ab03ab84bb
2018-04-19 13:17:27 +03:00
Vyacheslav Gerasimov
d357b9b008
as32: Remove JavaBuilderExtension from AS 3.2 C10
...
Original commit: 16b314f860
2018-04-13 21:33:16 +03:00
Vyacheslav Gerasimov
589f7c8680
as32: Remove platform-api & platform-impl from build scripts
...
since they are not present in AS 3.2 C10
Original commit: a6bd0f618e
2018-04-13 21:33:14 +03:00
Vyacheslav Gerasimov
b4827b5a68
as32: Update to AS 3.2 C10
...
Original commit: 4299455dc1
2018-04-13 21:33:03 +03:00