Commit Graph

8258 Commits

Author SHA1 Message Date
Toshiaki Kameyama 4d2caa8e76 KT-33211 Quickfix "add parameter" for method references should infer functional type instead of KFunction (#2664)
* "Add parameter to function" quick fix: add function type instead of KFunction for method references

#KT-33211 Fixed

* Support suspend function references
2020-06-11 17:01:07 +03:00
Alexander Udalov 6e67e1e78d Replace appendln with appendLine in project 2020-06-11 13:01:30 +02:00
Toshiaki Kameyama 46907f861a Extend Selection: don't select lambda parameters if lambda is multiple lines (#2586)
#KT-29364  Fixed
2020-06-11 12:20:32 +03:00
Toshiaki Kameyama 232be94738 Smart enter: support get() clause (#2630)
#KT-31500 Fixed
2020-06-11 12:16:04 +03:00
Toshiaki Kameyama cbbdec5898 Change Signature: enable on primary constructor keyword (#2482)
#KT-19744 Fixed
2020-06-11 12:10:12 +03:00
Toshiaki Kameyama 957a927790 KT-15846 'Change lambda expression return type' quick fix does nothing (#3182)
* Change parameter type quickfix: fix it works correctly on property delegate

#KT-15846 Fixed

* Change parameter type quickfix: fix it works correctly when function literal has trailing comments

#KT-15846 Fixed
2020-06-11 12:07:44 +03:00
Nikita Bobko ff7576f8e4 202: Fix compilation 2020-06-10 12:39:29 +03:00
Konstantin Tskhovrebov 21f7cd5d8f Add test for check expect/actual gutters at same module. 2020-06-09 16:28:28 +03:00
Ilya Kirillov 87a65c0e4b FIR IDE: throw PCE in highlighter & reference resolver if on EDT thread
As resolve is not allowed in EDT thread
2020-06-09 16:20:25 +03:00
Ilya Kirillov 1b8ea31172 FIR IDE: ignore not passing highlighting tests 2020-06-09 16:19:56 +03:00
Ilya Kirillov f37e313705 FIR IDE: Begin implementing semantic highlighting via FIR
* Introduce frontend api module & implement api for FIR
* Implement some basic declaration highlighting for FIR
2020-06-09 16:19:27 +03:00
Andrei Klunnyi 6485869659 AbstractKotlinCodeVisionProviderTest has no test methods actually 2020-06-08 13:54:37 +02:00
Yunir Salimzyanov dce19b0ace Cleanup 191 patchset logic (KTI-267) 2020-06-07 10:49:55 +03:00
Andrei Klunnyi a3c881da59 KT-38027 Support Code Vision feature in Kotlin // experimental status
Feature received "experimental" status due to the low performance.
The root cause is slow find-usages functionality the feature is based
on. Once the later is improved Code-Vision should be revisited.

Previous commit of KT-38027 series contains production ready state.

To launch performance check again one needs to enable Code Vision in
AbstractPerformanceProjectsTest.setUp() with the following fun:

private fun enabledCodeVision() {
  val codeVisionProvider = KotlinCodeVisionProvider()
  val settings = codeVisionProvider.createSettings().apply {
     showUsages = true
     showInheritors = true
  }

  InlayHintsSettings.instance().storeSettings(codeVisionProvider.key,
   KotlinLanguage.INSTANCE, settings)
}
2020-06-05 19:15:38 +02:00
Andrei Klunnyi b08f501aac KT-38027 Support Code Vision feature in Kotlin 2020-06-05 19:15:34 +02:00
Svyatoslav Scherbina 46caf27e70 Add "Remove annotation" quickfix for @Throws override mismatch 2020-06-05 19:07:56 +03:00
Svyatoslav Scherbina 6461c1b4f1 Add "Remove annotation" quickfix for empty @Throws 2020-06-05 19:07:54 +03:00
Svyatoslav Scherbina b7a08494ae Add quickfix for adding CancellableException to @Throws suspend fun 2020-06-05 19:07:52 +03:00
Svyatoslav Scherbina 290a824107 Add basic support for Native in idea/testdata/multiModuleQuickFix 2020-06-05 19:07:50 +03:00
Toshiaki Kameyama e4a1c8dcef Anonymous function to lambda: add lambda parameter if type parameter is used, even if parameter is unused
#KT-39393 Fixed
2020-06-05 17:32:35 +03:00
Toshiaki Kameyama 46ab338ea6 "Convert anonymous function to lambda expression" intention: add necessary lambda type parameter
#KT-37748 Fixed
2020-06-04 23:38:29 +03:00
Toshiaki Kameyama 148f49d54a UselessCallOnCollectionInspection: fix false positive when lambda last statement is function call that returns generic type
#KT-38267 Fixed
2020-06-03 20:42:42 +03:00
Toshiaki Kameyama 6cb0190fad FoldInitializerAndIfToElvis: should not add new line for multiline initializer
#KT-35805 Fixed
2020-06-03 12:35:50 +03:00
Toshiaki Kameyama 343af60cb4 Add intention to expand boolean expression
#KT-38597 Fixed
2020-06-02 23:52:06 +03:00
Toshiaki Kameyama afd544cbab Introduce "Redundant 'asSequence' call" inspections
#KT-35893 Fixed
2020-06-02 22:17:54 +03:00
Yunir Salimzyanov 3b9000cc0c Cleanup 191 extension files (KTI-240) 2020-06-01 18:43:10 +03:00
Nikita Bobko 2ef46b586d Fix broken NavBar for 201
^KT-38466 Fixed
^KT-38260 Fixed
2020-06-01 17:05:10 +03:00
Toshiaki Kameyama 45d60baeb0 Add import for member: don't suggest if a class with the same name has been imported
#KT-38492 Fixed
2020-06-01 21:42:04 +09:00
Toshiaki Kameyama 329f0227ec Remove explicit type specification: do not suggest for suspend function type
#KT-38310 Fixed
2020-06-01 21:42:04 +09:00
Toshiaki Kameyama 098469eb85 Implement members: implement functions in the same order as within Java interface
#KT-31760 Fixed
2020-06-01 21:42:04 +09:00
Yan Zhulanow 741ebeb7b8 Mark semicolons after nullable types redundant, despite of '!' after (KT-38240) 2020-06-01 21:42:04 +09:00
Toshiaki Kameyama 4cf83d9526 Redundant semicolon: don't report when semicolon is between type and '!'
#KT-38240 Fixed
2020-06-01 21:42:04 +09:00
Toshiaki Kameyama 111b2945e1 "Convert to anonymous object" quickfix: false negative when interface has concrete members
#KT-37908 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama 5b927d798c Replace explicit parameter with it: don't suggest if overload resolution ambiguity error occurs
#KT-20795 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama 69a2697598 Convert lambda to reference: add type parameter to outer call expression if needed
#KT-37744 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama a4239afcb3 Convert to anonymous function: do not suggest for suspend functions
#KT-37842 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama 6868f53f46 "Change JVM name" (@JvmName) quickfix: improve name suggester for generic functions
#KT-38559 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama 5efbbdea57 Lift assignment out: do not report when assignment variables are different
#KT-38649 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama 3272b8fc2c CanSealedSubClassBeObjectInspection: don't report if sub-class has classModifier
#KT-38790 Fixed
2020-06-01 21:42:02 +09:00
Toshiaki Kameyama cea879cbd5 "Make containing function suspend" quickfix: don't suggest for anonymous function
#KT-38948 Fixed
2020-06-01 21:42:02 +09:00
Toshiaki Kameyama 8f3392d635 Convert lambda to reference: fix it works correctly in anonymous object
#KT-31682 Fixed
2020-06-01 21:42:02 +09:00
Toshiaki Kameyama b9fab1123d Convert lambda to reference: fix it works correctly for labeled expression
#KT-37214 Fixed
2020-06-01 21:42:02 +09:00
Toshiaki Kameyama 2a36a8acac JavaMapForEachInspection: don't report if argument is not single
#KT-39151 Fixed
2020-06-01 21:42:02 +09:00
Natalia Selezneva fd07d5f301 Scripting setting: auto reloading of script dependencies is now per definition 2020-06-01 15:12:53 +03:00
Roman Golyshev 7fb5acc718 KT-18538 Fix inspection to detect unnecessary grand-base class qualifier
- Add separate option to enable/disable this inspection, as it is not
obvious if it should be always enabled or not
  - This option can be used to detect all unnecessary qualifiers in
  tests
- Add possibility to configure inspections via `settings.xml` in the
`AbstractMultiFileLocalInspectionTest.kt`
- ^KT-18538 Fixed
2020-06-01 08:59:37 +00:00
Roman Golyshev 2c12d26d28 KT-18538 Unwrap fake override in ShortenReferences
- Fake override prevents reference shortener from shortening of static
methods declared in the class bases when they are located not in
direct parent of the class (for example, in grand-
or grand-grand-parent)
- The completion uses descriptor with unwrapped fake override when it
performs the insertion. It leads to inserting the name of the base which
actually contains the static method instead of the direct parent class.
Now, when reference shortener compares unwrapped descriptors, this
problem should be fixed during insertion handling
2020-06-01 08:59:37 +00:00
Yunir Salimzyanov 8d51b027ed Add annotation to prevent test invocation twice
Cause: it helps to fix double inversion of muted non-flaky tests result
(KTI-216).
2020-05-30 22:50:34 +03:00
Nikita Bobko aa5a5c954f Refactoring: change "// BUNCH: xxx" format
It wasn't obvious how to use this comment properly.
Now it should be clear
2020-05-29 20:31:12 +03:00
Alexander Udalov 7d9fe55072 Regenerate tests 2020-05-29 15:15:43 +02:00
Dmitry Gridin dcebcc27b4 trailing comma: remove similar test data 2020-05-27 11:24:09 +00:00