Commit Graph

30582 Commits

Author SHA1 Message Date
Alexander Udalov 2dab56db8e Do not report "incomplete hierarchy" in decompiler
It's fine if the decompiler can't find some classes; it won't do anything
except render their FQ names which are fully available
2016-03-28 14:13:59 +03:00
Alexander Udalov 8d64ed7f3f Do not produce error classes for not found annotations 2016-03-28 14:13:59 +03:00
Alexander Udalov e915e1548c Fix multiple 'unresolved java classifier' errors
Use the same component (NotFoundClasses) as in loading of compiled Kotlin
symbols.

Some tests were changed to avoid a diagnostic that is now reported when a
non-found class is encountered in a signature (e.g. staticMethod.1.java where
JDK seems to be not configured)

 #KT-10493 Fixed
 #KT-10820 Fixed
 #KT-11368 Fixed
2016-03-28 14:13:59 +03:00
Alexander Udalov 873cf439de Drop MissingDependencyErrorClass and related code
No longer needed because of the proper support for missing classes in
deserialization (see NotFoundClasses.kt)
2016-03-28 14:13:59 +03:00
Alexander Udalov db5e00bcc0 Report error if some deserialized classes are missing in dependencies
Technically we often can compile code which uses missing classes (as long as
nothing is called on them) but it seems better to let the user know something's
wrong in their setup before the error manifests itself at runtime. Also the
Java compiler does the same

 #KT-4328 Fixed
2016-03-28 14:13:59 +03:00
Alexander Udalov accf80a624 Do not create error types in deserialization on not found classes
For a class which cannot be resolved in the current deserialization session,
create a special ClassDescriptor instance with an empty scope and put in the
correct package under the current module. Codegen will perfectly map such class
to its JVM signature (because only the precise FQ name is needed, which is
available). For more details on this approach, see the issue description.

 #KT-4328 Fixed
 #KT-11497 Fixed
2016-03-28 14:13:59 +03:00
Alexander Udalov 3944d56ac2 Minor, remove unnecessary type parameter in CallChecker#check 2016-03-28 14:13:59 +03:00
Alexander Udalov 2c81824689 Rework and prettify CompileKotlinAgainstCustomBinariesTest
Do not use MockLibraryUtil to compile Kotlin code: this allows to avoid
rebuilding kotlin-compiler.jar every time before running a test. Also extract a
few utilities, use Kotlin stdlib where possible
2016-03-28 14:13:59 +03:00
Zalim Bashorov 9f069843e8 Minor: precise incremental compilation no longer experimental 2016-03-28 12:57:04 +03:00
Ilya Gorbunov 3779fb2521 Minor: Do not recompile markdown every time. 2016-03-26 01:02:53 +03:00
Natalia Ukhorskaya 470027bfd8 J2K: specify type for variables with anonymous type if they have write accesses 2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya 23908fb8f3 J2K produces unresolved 'toArray' calls for java Collection#toArray()
#KT-11600 Fixed
2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya 79bac598bf J2K breaks code if applied to a java class with static field which is accessed from another java class
#KT-11587 Fixed
2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya c7ae9981cb J2K: Quote '$' symbols in converted strings
#KT-6800 Fixed
2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya 4bc4f0bce7 J2K: not initialized field of non-primitive type should have null initializer
#KT-11544 Fixed
2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya 8616c9588d J2K, minor: pass nullability as additional parameter for more flexibility 2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya 59930c32c4 Debugger, refactoring in tests: add ability to skip some variables in printFrame 2016-03-25 20:27:19 +03:00
Natalia Ukhorskaya a09814961f Debugger: more precise context expression in codeFragment
#KT-11380 Fixed
2016-03-25 20:27:19 +03:00
Yan Zhulanow 77b7b46542 Kapt: fix sequential build with kapt when Kotlin source file was modified 2016-03-25 19:32:18 +03:00
hansenji 100252b18b Handle elements in two different classes with the same name annotated with the same annotation. 2016-03-25 19:32:18 +03:00
hansenji b9dc92d7cf Removed Test for deprecated annotation 2016-03-25 19:32:18 +03:00
Valentin Kipyatkov e62c8a0860 Unescape single quote when converting to string template 2016-03-25 18:11:34 +03:00
Valentin Kipyatkov 7f2ccb5613 KT-11295 AssertionError in ConvertToStringTemplateIntention.fold
#KT-11295 Fixed
2016-03-25 18:11:34 +03:00
Valentin Kipyatkov c1499e7cb6 KT-11576 Unused symbol warning: add quickfix for annotated declarations
#KT-11576 Fixed
2016-03-25 18:11:34 +03:00
Valentin Kipyatkov 03d7c5764d Moved confusing utility from KtPsiUtil (but the code in KtLightClassForExplicitDeclaration is still incorrect!) 2016-03-25 18:11:34 +03:00
Valentin Kipyatkov 02d309c9cf KT-11481 "Add import" intention is not available for 'is' branches in when
#KT-11481 Fixed
2016-03-25 18:11:34 +03:00
Nikolay Krasko f93bf9fbb4 Fix generating folder for java8 tests 2016-03-25 17:33:32 +03:00
Alexey Sedunov c4eb8ceb53 Compiler Daemon: Use clearHandlersCache() method instead of Reflection API
(old code may fail in IDEA Ultimate due to field obfuscation)
2016-03-25 16:00:08 +03:00
Alexey Sedunov 2d0b06dc2d Project Configuration: Do not rely on field names when reflecting on LibraryOptionsPanel (they can differ due to Ultimate obfuscation) 2016-03-25 15:56:28 +03:00
Alexey Sedunov 2dd83b12d3 Misc: Fetch Spring libraries to dependencies directory 2016-03-25 15:21:16 +03:00
Nikolay Krasko 00239914fa Minor: refactoring 2016-03-25 14:10:41 +03:00
Nikolay Krasko 0f6e7cc277 Minor: add contract annotation 2016-03-25 14:10:41 +03:00
Nikolay Krasko 1524f099b3 Rewrite KotlinCliJavaFileManagerTest with KotlinTestWithEnvironment 2016-03-25 14:10:41 +03:00
Nikolay Krasko 5fb7b1be80 Move java8 tests 2016-03-25 14:10:41 +03:00
Nikolay Krasko 3a747e0c38 Refactoring: move utility methods to idea module 2016-03-25 14:10:41 +03:00
Zalim Bashorov 4b8c9c8b39 Minor: fix testdata 2016-03-24 22:28:40 +03:00
Zalim Bashorov 9a9b863c9d IC: add tests with moving files
Additionally added the ability to use directories in IC tests.

 #KT-8002 Obsolete
2016-03-24 22:28:40 +03:00
Kirill Rakhman d230afe726 Reuse BindingContext and perform quickfix directly on PSI instead of the editor 2016-03-24 19:39:57 +01:00
Kirill Rakhman cc730c36ad Implement quickfix to remove '.java' when KClass is expected
Fixes #KT-11078
2016-03-24 19:39:57 +01:00
Alexey Sedunov 5b272921e6 Misc: Favor intellij-core over idea-full in the idea-completion dependencies (to prevent loading of scambled PsiFileImpl from Ultimate SDK) 2016-03-24 20:49:09 +03:00
Valentin Kipyatkov 384183ad7b Intention to convert raw string literal to ordinary one
#KT-5208 Fixed
2016-03-24 19:05:56 +03:00
Valentin Kipyatkov ecebb80bbe Added intention description 2016-03-24 19:05:55 +03:00
Valentin Kipyatkov 3d422b47cb Intention action to convert string to raw string
(half of KT-5208)
2016-03-24 19:05:55 +03:00
Alexey Sedunov 86c551b27b Misc: Сhangelog update 2016-03-24 18:23:34 +03:00
Michael Bogdanov 6547fa1d4c Replace hashes in bytecode listing tests with 'HASH' 2016-03-24 16:17:58 +01:00
Alexey Sedunov 2692a7d35c Spring Support: Inspection for Spring configuration 2016-03-24 17:42:13 +03:00
Alexey Sedunov 0eda1f3969 Spring Support: SpEL injections
#KT-11406 Fixed
2016-03-24 17:42:12 +03:00
Alexey Sedunov 28b8cfc3d5 Spring Support: Show Spring line markers for Kotlin classes
#KT-3741 Fixed
2016-03-24 17:42:11 +03:00
Alexey Sedunov 8c72b02c9b Light Classes: Constant expression evaluator for light annotation arguments 2016-03-24 17:42:10 +03:00
Alexey Sedunov 0a71eb777e Spring Support: Implement Spring-specific references 2016-03-24 17:42:08 +03:00