811 Commits

Author SHA1 Message Date
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
Vyacheslav Gerasimov d357b9b008 as32: Remove JavaBuilderExtension from AS 3.2 C10
Original commit: 16b314f860
2018-04-13 21:33:16 +03:00
Alexey Tsvetkov 1ce361e90b Use KotlinCoreEnvironment for parsing Kotlin in IC
Creating and disposing CoreApplicationEnvironment on each call leads to
problems with parallel builds, while KotlinCoreEnvironment
avoids disposing application environment in case of parallel builds.

    #KT-23694 fixed

Original commit: bd50ad87ba
2018-04-11 19:56:15 +03:00
Alexey Tsvetkov ca18e9871a 181: Reimplement constant search in JPS
The API in Intellij have been changed after the PR was merged
(see https://github.com/JetBrains/intellij-community/commit/8227d8e2dd4d98d2ff248a1b193ba31831ddef50)

This commit implements new API.
Also mocked Kotlin constant search is removed from JPS tests.
Mocked Java search is in place, but now
it is does not use hardcoded file and constant names.

   #KT-16091 fixed

Original commit: 39f7ecc9a3
2018-04-11 16:28:38 +03:00
Alexey Tsvetkov a47d5434f3 Use daemon if available for parsing files in JPS
Original commit: 6f59b6da8e
2018-04-03 21:11:12 +03:00
Alexey Tsvetkov 88c4f73e3c Invalidate usages of removed classes before round
#KT-23165 fixed

Original commit: 3eb968807e
2018-04-03 21:11:12 +03:00
Alexey Tsvetkov 3174c9b05e Convert KotlinSourceFileCollector: simplify after conversion
Original commit: 8cd0f13f2b
2018-04-03 21:11:11 +03:00
Alexey Tsvetkov 4cd2068ebc Convert KotlinSourceFileCollector: actual conversion
Original commit: 3f36f472b3
2018-04-03 21:11:11 +03:00
Alexey Tsvetkov fbe7dc02f6 Convert KotlinSourceFileCollector: rename file
Original commit: 336d63c0a3
2018-04-03 21:11:11 +03:00
Alexey Tsvetkov 5159795c48 Replace reflection with direct call
Original commit: 58e4b704c6
2018-04-03 21:11:11 +03:00
Alexey Tsvetkov 06044f0100 Convert CompilerRunnerUtil: actual conversion
Original commit: fa9c80e05c
2018-04-03 21:11:11 +03:00
Alexey Tsvetkov 90920f9b7a Convert CompilerRunnerUtil: rename file
Original commit: f27b6c0d8d
2018-04-03 21:11:11 +03:00
Alexey Tsvetkov d849d47e22 Reformat jps-plugin module
Original commit: 455fe7fe61
2018-04-03 21:11:11 +03:00
Alexey Sedunov 78ee6ba693 JS: Use the same output paths for JPS and Maven-based builds
#KT-22586 Fixed

Original commit: ae37cc30a1
2018-04-02 15:28:35 +03:00
Alexey Tsvetkov b3a619bcc3 Revert "Provide custom ConstantAffectionResolver in JPS"
This reverts commit 1a7737494b.

The API in Intellij was changed, now the issue can be fixed only in
182.* branches.

Original commit: 0deec7983d
2018-03-13 21:26:11 +03:00
Alexey Tsvetkov 1bb8ec4973 Perform a test lookup before build
#KT-22535 fixed
   #KT-22995 fixed

Original commit: d7644559eb
2018-02-22 18:21:37 +03:00
Alexey Tsvetkov 86bc49ba0c Avoid instanciating LookupStorage when clearing it
#KT-22535
  #KT-22995

Original commit: 7c9412a0b3
2018-02-22 18:21:37 +03:00
Alexey Tsvetkov 1605b0c22a Throw BuildDataCorruptedException when lookup operation cannot be performed
That is expected to force a rebuild (but it does not seem to be the case
in case of parallel build).

  #KT-22535
  #KT-22995

Original commit: 140ba0681a
2018-02-22 18:21:37 +03:00
Alexey Tsvetkov 773975e055 Synchronize access to lookup storage in JPS
Storage operations are synchronized already,
but BuildDataManager.getStorage is not synchronized,
so maybe it is possible to create multiple LookupStorage
instances.

    #KT-22535
    #KT-22995

Original commit: 8ab9366ae5
2018-02-22 18:21:37 +03:00
Alexey Tsvetkov 1a7737494b Provide custom ConstantAffectionResolver in JPS
#KT-16091 fixed

Original commit: 772a935de6
2018-02-21 19:12:12 +03:00
Alexey Tsvetkov 28a2d4727a Test JPS with Daemon and IC
Original commit: 220fab0d3f
2018-01-16 21:09:57 +03:00
Alexey Tsvetkov 483b3e8d28 Allow override removing temporary module files after build
For debug purposes

Original commit: 18fae9e16d
2017-12-18 21:19:15 +03:00
Alexey Tsvetkov dfbae1f55d Allow customizing directory for temporary module files
Original commit: 5bffef6de7
2017-12-18 21:19:15 +03:00
Alexey Tsvetkov fdaf915d2c Avoid generating too long path for temp module file
#KT-21841 fixed

Original commit: 37b00b91fc
2017-12-18 21:19:15 +03:00
Ilya Chernikov c1da2e287d Make daemon session retrieval more robust to the daemon failures
Original commit: f83dc0a067
2017-12-18 16:49:53 +01:00
Ilya Chernikov 76d6413702 Treat "daemon is dying" state as a case for fallback compilation strategy in jps
Original commit: 1101bb7fb4
2017-12-18 16:49:52 +01:00
Alexey Tsvetkov 453d38b0f7 Do not set api version to language version when language version is null
#KT-21852 fixed
    #KT-21574 fixed

Original commit: 3f082346ae
2017-12-18 16:22:07 +03:00
Denis Zharkov 30eec21d1d Refine dirty files computation in case of Java source changes
#KT-17621 In Progress

Original commit: ae6421476d
2017-12-12 16:17:58 +03:00
Alexey Sedunov 1a0d5351b6 Configuration: Fix deserialization of immutable freeArgs collection
#KT-21363 Fixed

Original commit: c54b934383
2017-11-30 12:49:24 +03:00
Alexey Tsvetkov e06f002f45 Rebuild when language/api version is changed (JPS)
#KT-20757 fixed

Original commit: 913a997f24
2017-11-23 14:46:23 +03:00
Leonid Startsev 4266515228 More entry points for compiler plugins
* In Kotlin/JS JPS compilation
* In kotlin-common CLI compiler
* In kotlin-common gradle build

Original commit: d6e5551237
2017-11-23 12:12:01 +03:00
Nikolay Krasko c09c919763 Report rebuild reason in rebuild function
Original commit: 643f771c24
2017-11-15 16:12:38 +03:00
Alexey Andreev 1079d74422 Support generation of relative path in JS source maps in JPS builder
See KT-20820

Original commit: 2fbecfdd9c
2017-10-23 17:19:50 +03:00
Anton Bannykh 19aa785e60 JPS JS: fix friend path detection in projects imported from Gradle (KT-18963 fixed)
Original commit: b2e53644a5
2017-10-20 19:16:14 +03:00
Nikolay Krasko edb34f3f5f Request path from URI before construction file
Original commit: bc6f2f6659
2017-10-12 12:00:35 +03:00
Alexey Andreev 2cf01f60b3 JS: generate paths in source maps relative to .map file location
See KT-19818

Original commit: 9008791a54
2017-10-06 15:24:25 +03:00
Alexey Andreev d42ddff160 JS: rename -source-map-source-roots to -source-map-base-dirs
See KT-19906

Original commit: 21e91c4052
2017-10-03 14:26:37 +03:00
Alexey Tsvetkov 6d868d3d67 Request CHUNK_REBUILD when IC is off and there are dirty Kotlin files
Otherwise unexpected compile error might happen,
when there are Groovy files, but they are not dirty,
so Groovy builder does not generate source stubs,
and Kotlin builder is filtering out output directory
from classpath (because it may contain outdated Java classes).

Previously the issue was not detected,
because it was not possible to turn off the IC completely (in JPS),
only switch to the legacy IC.

    #KT-20138

Original commit: 7a5e0e1107
2017-09-26 16:35:24 +03:00
Alexey Tsvetkov 4fa346877c Rename IncrementalCacheImpl->IncrementalJvmCache
Original commit: 919daefb0e
2017-08-29 04:28:04 +03:00
Alexey Tsvetkov 2fbd8c4beb Introduce ChangesCollector
Original commit: 6fedf07f56
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov b5cf0960f4 Remove Target parameter from GeneratedFile
Original commit: 9727ec401b
2017-08-29 02:24:36 +03:00
Alexey Tsvetkov eb98bab102 Minimize usage of TargetId in IC
Original commit: d1fd88fb8e
2017-08-29 02:24:36 +03:00
Mikhail Glukhikh 53911972cb Eliminate a set of warnings, mostly nullability ones
Original commit: 3623f581b8
2017-08-18 15:10:27 +03:00
Alexey Tsvetkov 23c84d07e2 JPS: completely skip chunk containing only dummy targets
Such chunks were added in intellij-community, see
commit fdeae7754c593e78b6748dfa66ce7198c2780d35
(https://github.com/JetBrains/intellij-community/commit/fdeae7754c593e78b6748dfa66ce7198c2780d35)

Original commit: 99439620d4
2017-08-10 22:05:48 +03:00
Alexey Tsvetkov 083424a4b3 Extract LookupTracker service from IncrementalCompilationComponents
We don't need a `TargetId` to `IncrementalCache` mapping in JS

Original commit: bb2fab5b5d
2017-08-10 21:19:42 +03:00
Alexey Tsvetkov 0a78d2d299 Isolate JS compiler in proto tests
Proto tests are still in the 'jps-tests' module
which is included in non-compiler tests.

It is not safe to call the compiler
directly in non-compiler tests
because it might affect IDE tests.

Original commit: 1cce1ef1f6
2017-08-10 21:19:41 +03:00
Alexey Tsvetkov e93497e995 Avoid marking dirty dependencies from already compiled chunks
#KT-17397 fixed

Original commit: 5ce3a436c7
2017-07-31 19:34:59 +03:00
Alexey Tsvetkov 380d3563eb Remove old IC: remove experimental cache version
Original commit: 534db2d45b
2017-07-31 19:34:58 +03:00
Alexey Tsvetkov 4f8908c329 Remove old IC: remove unnecessary caches
Original commit: 62fdd91947
2017-07-31 19:34:58 +03:00