- This checkbox should be shown only in IDEA >= 193 and should not
be shown in AS
- ML completion is enabled with `CompletionMLRankingSettings`, which
resides in `com.intellij.stats.completion` plugin that is bundled by
default
- The `<depends>` section is required to be able to use classes from
this plugin inside Kotlin plugin
- `CompletionMLRankingSettings` have package-private setter for enabling
ranking completion, so we have to use reflection to enable it (it will
probably change in the future)
The general idea is to try to fetch a full analysis if it is existed in PerFileAnalysisCache instead of go to ResolveElementCache and do analysis there. Do not perform analysis if it is not in PerFileAnalysisCache.
#KT-37467 Fixed
reduced scope of nonBlockingRead to avoid long rerun of it
used smart pointers to keep valid elements over changes
moved back to non-modal progress
Relates to #KT-37414
The problem here is that library resolver uses global project compiler
settings instead of the module ones. That behaviour is caused by more
global problem described in #KT-21246
As a temporary solution we just do not show IR_COMPILED_CLASS error in
IDE if it arises in a module which have -XuseIR or
-Xallow-jvm-ir-dependencies option provided
#KT-36907 fixed
This commit essentially reverts change in IdeaResolverForProject made in
423aeb9a08
The issue is that 'platform.findAnalyzerServices' may return non-
CompositeAnalyzerServices even under composite analysis mode, when
platform is single-target (e.g. 'JvmAnalyzerServices' for JVM-only)
^KT-36978
The important things here are changes in
ResovlerElementCache/PerFileAnalysisCache. Previously, we'd always use
'CompositeAnalyzerServices' for common-platform, even with HMPP turned
off.
However, with HMPP turned off, common-platform is always coerced to
[JVM, JS, Native], no matter which platforms that project actually
targets.
So, even if project compiles only for JVM/Native, we'll detect
platform of common module as [JVM, JS, Native], build composite analyzer
services *which include all checkers from all platforms*, and then
report false-positive errors from JS checkers.
^KT-35031 Fixed
^KT-33573 Fixed
^KT-34925 Fixed