Commit Graph

1193 Commits

Author SHA1 Message Date
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 Sedunov 0a3b3056d8 MPP: Support multiple 'expectedBy' dependencies for single module
#KT-22865 Fixed

Original commit: d9aa1796cd
2018-03-07 18:34:03 +03:00
Yan Zhulanow 4d1a929809 Add Pill support to compiler and IDE modules
Original commit: 34d1611ed4
2018-03-02 03:15:17 +03:00
Ilya Gorbunov 08f6569827 Move deprecated kotlin-runtime and reduced runtime for tests into stdlib
Rename mock-runtime-for-test project to kotlin-stdlib:jvm-minimal-for-test

Original commit: 5c0cc5f799
2018-02-26 17:11: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 2454ee30bb Compare JS output files against file instead of hardcoded set
A difference is not obvious when two sets are compared:
there might be just one different element, but
sets would be printed in one line in iteration order
(which is non-fixed for hashsets).

Also the properties:
  EXPECTED_JS_FILES_IN_OUTPUT_FOR_STDLIB_ONLY,
  EXPECTED_JS_FILES_IN_OUTPUT_FOR_MODULE_STDLIB_ONLY,
  EXPECTED_JS_FILES_IN_OUTPUT_NO_COPY,
  EXPECTED_JS_FILES_IN_OUTPUT_WITH_ADDITIONAL_LIB_AND_DEFAULT_DIR,
  EXPECTED_JS_FILES_IN_OUTPUT_WITH_ADDITIONAL_LIB_AND_CUSTOM_DIR
are hard to distinguish in code and are not convenient to edit.

Original commit: 7881a305d9
2018-02-22 01:13:09 +03:00
Alexey Tsvetkov 1a7737494b Provide custom ConstantAffectionResolver in JPS
#KT-16091 fixed

Original commit: 772a935de6
2018-02-21 19:12:12 +03:00
Alexander Udalov 2247e501b4 Fix JS stdlib file names in KotlinJpsBuildTest
Add "kotlin-experimental.js", "kotlin-experimental.meta.js" and refactor
surroundings

Original commit: 96e33dabcf
2018-02-16 17:09:34 +01:00
Alexey Tsvetkov f1a78a7037 Fix IC test data
Test data was broken starting from 994fc1cc5e44322ed671e60530474781c35a7e7b

Original commit: 67a5cab343
2018-02-14 16:09:07 +03:00
Alexander Udalov 1bea0a0e47 Add getExtensionOrNull utility for protobuf messages
Original commit: 7123202670
2018-02-08 17:08:33 +01:00
Nikolay Krasko 45f3911ebc Update idea to 173.3.4 (173.4548.28)
Original commit: f05e926670
2018-02-03 00:15:45 +03:00
Alexey Sedunov 1577239e4d Gradle: Import production output path for JavaScript modules
Original commit: 1f7fab837f
2018-02-01 15:35:34 +03:00
Vyacheslav Gerasimov 0f68c3017a Remove intellij-core from testRuntime if full idea is already there
Looks like it makes tests flacky

Original commit: 68b5dc756c
2018-01-30 17:06:18 +03:00
Vyacheslav Gerasimov 991ca73c0b Add asm-all to jps-plugin dependencies
Original commit: 29caa00f23
2018-01-30 17:06:18 +03:00
Ilya Chernikov a870208a3b Convert the rest of the project to intellij repo prepared in buildSrc
Original commit: 7e21573cf4
2018-01-30 17:06:13 +03:00
Ilya Chernikov 1a7d10ebd4 Make all dependencies to idea sdk intransitive
Original commit: a4f28cd94f
2018-01-30 17:06:11 +03:00
Ilya Chernikov 3b060ca659 Fix jps tests
Original commit: e76cd802d8
2018-01-30 17:06:11 +03:00
Ilya Chernikov efdf6f2e8d Convert idea plugin modules to intellij plugin
Original commit: 0d264793ce
2018-01-30 17:06:07 +03:00
Ilya Chernikov 932a637647 Convert jps module to intellij plugin
Original commit: 3912025e14
2018-01-30 17:06:07 +03:00
Alexey Tsvetkov 28a2d4727a Test JPS with Daemon and IC
Original commit: 220fab0d3f
2018-01-16 21:09:57 +03:00
Alexey Tsvetkov f1efa4c872 Minor: move 'KotlinJpsBuildTestIncremental' to separate file
Original commit: ca09be1411
2018-01-16 21:09:57 +03:00
Nikolay Krasko 57a985df3a Modify incremental test in 173 branch - files are not created anymore
Original commit: aee7329b89
2018-01-12 13:54:45 +03:00
Dmitry Jemerov f99df874b0 Update copyright in generated tests
Original commit: e80dae1802
2018-01-10 11:55:28 +01:00
Alexey Tsvetkov e5147e3000 Track changes in inline function when friend paths are disabled in JS
Original commit: d7edbb8dfc
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov f3e8e3e591 Replace testCancelLongKotlinCompilation with less flaky test
Original commit: a4d122478b
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov 2845ea857a Explicitly request rebuild when untracked java file is removed
Previously a rebuild was happenning because FileNotFoundException
was thrown when getting psiFile of removed file.

Original commit: ee94a64718
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov 8683fce476 Turn off class redeclaration test for JS IC temporarily
So the tests could be run on TC.
Turn on after KT-19846 is fixed.

Original commit: 50bf74b909
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov 09c1299c84 Recompile only files from last iteration after compile error
Original commit: 0fee7883ed
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov 8e790fe091 Add JS specific IC build log in test
JS IC compares proto using a source file path as a key,
so moving file causes recompilation of its usages
unlike JVM IC that uses a class file path as a key.

Original commit: ff2e3ecfc4
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov c58c65caea Fix IC test build log diverged from JPS
JPS marks dirty direct usages of removed classes since 172.* before a build.
Generic IC also marks dirty all subclasses and their usages.
That is necessary because a method from a removed class could be used
through a subclass.
JPS and generic IC logs diverged in 172 branch, but non-JPS tests
were not run on CI.

Original commit: 7712044146
2017-12-22 16:12:20 +03:00
Alexey Tsvetkov 084def4ffc Recompile all subclasses of removed classes
Original commit: a31f503fa5
2017-12-22 16:12:19 +03:00
Alexey Tsvetkov 090063b4d8 Compile actual and expected declarations together
#KT-20840 fixed

Original commit: fec2d08d22
2017-12-22 16:12:19 +03:00
Alexander Podkhalyuzin 1bd0546589 Extracted Kotlin.JVM IDE into separate module
This change is required to have possibility to build plugin against
minor IDEs, which don't have Java. So we want to extract idea-jvm

Original commit: 8203d1c3fe
2017-12-21 18:34:02 +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
Alexander Udalov cf59f84273 Fix lookup tracker tests after 83b32e11a7f
Standard library is no longer automatically added to the classpath when
-Xbuild-file is used. Before 83b32e11a7f, these tests worked because no
matter whether -Xbuild-file was used or not, the automatically computed
classpath (which erroneously was used to populate content roots in the
compiler) contained the standard library (see
K2JVMCompiler.configureContentRoots)

Original commit: 9e82ab38f0
2017-12-14 11:37:56 +01:00
Alexander Udalov 043e1845fb Add dependency on compiler dist from jps-tests
Otherwise, because there's no explicit dependency and the JPS plugin
loads the compiler from dist, the compiler jar is not rebuilt between
changes in compiler code and running jps-tests

Original commit: 46fa5cfae0
2017-12-14 11:37:56 +01:00
Alexey Sedunov 9f5d0eeb5b Configuration: Support selection of "Latest stable" version vs specific one
#KT-21229 Fixed

Original commit: 38d3362bcb
2017-12-12 20:48:26 +03:00
Denis Zharkov c3ea422125 Record special name lookup when trying use interface as a SAM
It was already working in JPS, because it see our synthetic classes
as subclasses for SAM's, but with non-JPS build we have to manually
tracking places that should be recompiled after SAM members are changed

Original commit: df533053f9
2017-12-12 16:17:58 +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
Nikolay Krasko 7769227cf6 Restore iml files for jps tests
Original commit: f46a8e0b16
2017-11-30 13:24:08 +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
Alexander Udalov 53e90b6d40 Replace dependencies on kotlin-reflect with kotlin-reflect-api
See the previous commit for information on the kotlin-reflect vs
kotlin-reflect-api distinction.

Add kotlin-reflect as an explicit runtime dependency of most of the test
configurations because even though they all depend on tests-common, the
runtime dependency on kotlin-reflect is not exported from tests-common
to other modules because the projectTests dependency is not transitive.

Original commit: aca74cef0e
2017-11-28 12:35:49 +01:00