The test isn't passing when using K/N per-file caches and in order to fix it,
some hacks are required, which isn't worth it considering that test contains invalid code.
to gracefully handle element/file/etc without a binding module.
This could happen, e.g.,
1) source PSI created from KtPsiFactory, which uses literally dummy.kt
2) debugger that creates a code fragment on-the-fly
3) on-air analysis of non-physical files
* Replace pcollections with ClassValue/ConcurrentHashMap-based caches
* Do not store weak references, instead cache strong references and count on ClassValue to unload the corresponding classloader if necessary
* ConcurrentHashMap does not rely on WeakReference as it's only selected on Android where classloader leaks don't exist
* Update reflect/scripting JDK requirement to Java 8 in order to proceed
#KT-53454
#KT-50705
Merge-request: KT-MR-6788
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>
Benchmark analyzer depends on curl. And needs a path to mingw binaries.
Merge-request: KT-MR-6797
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
Instead of letting `compileWithDaemon` return null, allow it to throw
exceptions so that the caller can catch those exceptions and log clearer
messages on why it failed.
^KT-31602 In progress
Revise BaseIncrementalCompilationMultiProjectIT's failure handling
tests to make it clear we have covered 2 important scenarios:
- Failures caused by user errors: testFailureHandling_UserError
- Failures caused by tool errors: testFailureHandling_ToolError
^KT-53231 In progress
If incremental compilation fails, we currently fall back to
non-incremental compilation. When that happens, it would be incorrect to
shrink classpath snapshot incrementally, so this commit makes sure we'll
shrink classpath snapshot non-incrementally in that case.
^KT-53231 In progress
It gives more flexibility during execution phase. Since `buildDir` is
not sealed in cached task state. But instantiated during the execution
phase.
^KT-43293