Commit Graph

41106 Commits

Author SHA1 Message Date
Alexey Tsvetkov dbe3baf740 Minor: mark calculateSourcesToCompile abstract 2017-08-29 04:28:04 +03:00
Alexey Tsvetkov 919daefb0e Rename IncrementalCacheImpl->IncrementalJvmCache 2017-08-29 04:28:04 +03:00
Alexey Tsvetkov 093bbc069a Fix typo destonationDir->destinationDir 2017-08-29 04:28:04 +03:00
Alexey Tsvetkov b28382b8e7 Ignore out directory everywhere
After IDEA-175172 JPS does not use Gradle's output directories
when buildsing imported projects.
Now JPS uses an `out/` directory instead,
which wasn't gitignored anywhere besides the project's root.
2017-08-29 04:28:03 +03:00
Alexey Tsvetkov 1c4ada2008 Fix searching serialized classes package contains multiple fragments 2017-08-29 04:28:03 +03:00
Alexey Tsvetkov b54414d628 Implement Gradle JS IC support
#KT-19956 fixed

To try the experimental JS IC add
'kotlin.incremental.js = true' to a 'local.properties'
or 'gradle.properties' file in Gradle project's root.
2017-08-29 04:23:02 +03:00
Alexey Tsvetkov eeb90656dc Exclude generated IC tests from ant build
Generated tests depend on the annotations from the `tests-common` module.
Testing utils from test root of the `incremental-compilation-impl` module
are also used in Gradle tests, so the test root is built in the ant build too.
However building `tests-common` separately from the compiler is complicated,
so I decided to exclude generated tests from 'kotlin-build-common-test.jar'.
2017-08-29 02:24:38 +03:00
Alexey Tsvetkov 7ecf5abdc7 Add class hierarchy tests to JS and JVM IC tests 2017-08-29 02:24:38 +03:00
Alexey Tsvetkov 0a5fe3ef7c Move JVM specific IC tests with class hierarchy changes 2017-08-29 02:24:38 +03:00
Alexey Tsvetkov e16c5ddb97 Avoid using JVM only APIs in IC tests to reuse with JS 2017-08-29 02:24:38 +03:00
Alexey Tsvetkov 23bc907d3f Move multi-module IC tests to separate dir
At the moment they are used only with JPS
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 166883d847 Move JVM specific IC test data to separate dir 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 7810da7018 Add IC compiler tests with Java 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 71e8f16906 Generate IC compiler tests instead of using parametrized runner
# Conflicts:
#	compiler/incremental-compilation-impl/incremental-compilation-impl.iml
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 52b638ddb3 Throw exception if initial build has failed in IC tests 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov c7775b8d11 Write build info only on successful build 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 20551f6c99 Do not report error when JS IC is enabled and no source files is specified 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov bb1cba67b7 Implement JS IC 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 4aea9b349c Refactor incremental services 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 356536d32b Update inputs cache on rebuild 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 20b14d4121 Extract IncrementalJvmCompilerRunnerTest 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 6fedf07f56 Introduce ChangesCollector 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov d4d684a7f0 Introduce IncrementalCompilerRunner#makeServices 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 65529fa866 Introduce IncrementalCompilerRunner#markDirty 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 53d911ab99 Move IncrementalCompilerRunner to separate file 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 5ddc8d83bb Move compileIncrementally to common IC 2017-08-29 02:24:37 +03:00
Alexey Tsvetkov 60f68266dd Continue extracting common IC code 2017-08-29 02:24:36 +03:00
Alexey Tsvetkov 9727ec401b Remove Target parameter from GeneratedFile 2017-08-29 02:24:36 +03:00
Alexey Tsvetkov af73082fcc Begin extracting common IC code 2017-08-29 02:24:36 +03:00
Alexey Tsvetkov 508d96836c Remove compiledWithErrors param
`updateIncrementalCache` is not called when
code does not compile.
2017-08-29 02:24:36 +03:00
Alexey Tsvetkov d1fd88fb8e Minimize usage of TargetId in IC 2017-08-29 02:24:36 +03:00
Alexey Tsvetkov a076b4614e Refactor computeChanges 2017-08-29 02:24:36 +03:00
Alexey Tsvetkov 3ad5e78d77 Extract common caches 2017-08-29 02:24:36 +03:00
Toshiaki Kameyama 367b9f6664 "Redundant setter parameter type" range includes whole parameter declaration #KT-19648 Fixed (#1267) 2017-08-28 17:06:10 +02:00
Pavel V. Talanov e3b7f6d698 Prevent multiple concurrent 'checkHideNonConfiguredNotifications' calls 2017-08-28 16:18:44 +03:00
Nicolay Mitropolsky 6953ae79e2 Fix for KtLightParameter and KtLightParameterList equality 2017-08-28 15:57:44 +03:00
Nicolay Mitropolsky f8f5494d79 KotlinLightConstantExpressionEvaluator fix for processing Java-sourced annotation entry value 2017-08-28 15:55:57 +03:00
Dmitry Jemerov ceae10f451 Update .iml 2017-08-28 12:03:45 +02:00
Dmitry Jemerov 1814f3172a Fix compilation 2017-08-28 11:32:38 +02:00
Dmitry Jemerov 5b8e5fb9aa Compile kotlin-gradle-tooling against JDK 6 2017-08-28 10:50:52 +02:00
Dmitry Jemerov f07d4901ca Reset kind for incorrectly imported libraries
#KT-19847 Fixed
2017-08-28 10:36:25 +02:00
Alexander Udalov cdda5d39e5 Use ResolvedCall to generate callable reference receiver
This will be helpful in supporting KT-15667
2017-08-28 10:42:05 +03:00
Alexander Udalov c420e2bfa5 Refactor FunctionReferenceGenerationStrategy
Draw a clear distinction between the referenced function's parameters
and the anonymous synthetic function's parameters (see the comment).
This will be useful in supporting advanced callable reference features
like KT-8834
2017-08-28 10:22:52 +03:00
Nikolas Havrikov 3d8b15d9db Fixed trailing underscores in numeric literals (#1264)
This change prohibits such illegal numeric literals as 13_37_ or 0xCAFE_BABE_ (note the trailing underscore).
2017-08-26 16:07:35 +03:00
Alexander Udalov fac207ce7c Minor, improve error message in BuiltInDecompilerConsistencyTest 2017-08-25 15:40:40 +03:00
Alexander Udalov 38849893b6 Temporarily ignore some multiplatform IDE tests 2017-08-25 15:40:39 +03:00
Alexander Udalov b87abc9f0f Relax rules related to noinline/crossinline/reified in header/impl functions
See the comments in KT-18752 for the current resolution

 #KT-15377 Fixed
 #KT-18752 Fixed
2017-08-25 15:40:38 +03:00
Alexander Udalov d1cff41ce0 Treat nested class of header class as header
Note that the quick fix to implement header class works incorrectly when
that class has nested classes at the moment; this should be fixed
separately

 #KT-15494 Fixed
 #KT-18573 Fixed
2017-08-25 15:40:37 +03:00
Alexander Udalov 56b507d141 Remove obsolete code from ModifiersChecker
Simplify existing code and move closer to usages
2017-08-25 15:40:37 +03:00
Alexander Udalov 3a2d93f73e Do not report "header with no impl" on incorrect header
Descriptor for a 'header' member in a non-'header' class now has
isHeader = false

 #KT-18442 Fixed
2017-08-25 15:40:36 +03:00