Commit Graph

17928 Commits

Author SHA1 Message Date
Simon Ogorodnik 48d0493edb Fix enum special function quick navigation behaviour 2018-07-20 18:40:15 +03:00
Simon Ogorodnik 9a34e91dec KT-22815: Render annotations on separate lines 2018-07-20 18:40:10 +03:00
Simon Ogorodnik 831e7fdc06 KT-22815: Render definition file for top-level declarations
Do not show defined in for local declarations
2018-07-20 18:40:05 +03:00
Simon Ogorodnik 6255743148 KT-22815: Cleanup quick doc rendering 2018-07-20 18:40:00 +03:00
Simon Ogorodnik 1d0fc0e736 Copy template engine from ktor 2018-07-20 18:39:57 +03:00
Simon Ogorodnik 9283089397 Reformat 2018-07-20 18:39:54 +03:00
Simon Ogorodnik bfa5afa564 KT-22815: Cut Java signatures off properly 2018-07-20 18:39:52 +03:00
Simon Ogorodnik 263ed47aac KT-22815: Render sections properly 2018-07-20 18:39:48 +03:00
Simon Ogorodnik 39e72f4041 Reformat 2018-07-20 18:39:45 +03:00
Simon Ogorodnik 99f0a0368a KT-22815: Wrap parameters and try new DocumentationMarkup 2018-07-20 18:39:42 +03:00
Denis Zharkov 73acc86785 Store computed library kind for jar in a file attribute
It should help to avoid visiting children of each jar in java projects
LibraryEffectiveKindProviderImpl has it's own in-memory cache
but it doesn't help when project is reopened

 #KT-25129 Fixed
 #KT-25034 Fixed
2018-07-20 15:35:58 +03:00
Denis Zharkov 0b2fde3886 State on types level that forcing imports works only for non-default 2018-07-20 11:27:08 +03:00
Dmitry Petrov acf0bb349c Update testData for restricted expression annotations retention 2018-07-20 10:39:51 +03:00
Yan Zhulanow 63d37ec93b as33: Remove AndroidGradleOrderEnumerationHandler (should be moved to the Android plugin) 2018-07-19 19:09:40 +03:00
Yan Zhulanow 315de660ca Minor: Make plugin.xml and build files more consistent with the main bunch 2018-07-19 19:09:40 +03:00
Yan Zhulanow 88422fb7ce Make source set empty for Android modules of deleting the resulting JAR files in 'ideaPlugin' task 2018-07-19 19:09:40 +03:00
Raluca Sauciuc 0e8a04c4ba as33: Android dependency reversal
(cherry picked from commit be781f4f462f74ca0efcc91b5c07a5b3756ba5b2)
2018-07-19 19:09:39 +03:00
Denis Zharkov f72aa78eec Fix libraries analysis for case of isReleaseCoroutines feature enabled
#KT-25466 In Progress
2018-07-19 16:19:04 +03:00
Nikolay Krasko f1463b4a2e Add version replace fix for kotlinx coroutines in Maven (KT-25251) 2018-07-19 16:09:57 +03:00
Nikolay Krasko 481c428881 Add version replace fix for kotlinx coroutines in Gradle (KT-25251)
#KT-25251 In Progress
2018-07-19 16:09:57 +03:00
Nikolay Krasko 86a33defd8 Refactoring: introduce parameter for getResolvedKotlinStdlibVersionByModuleData 2018-07-19 16:09:56 +03:00
Nikolay Krasko 7358cc5bd6 Fix QuickFix-es with the same family name should be the same class instances (KT-25251)
#KT-25251 In Progress
2018-07-19 16:09:56 +03:00
Nikolay Krasko adfa469b21 Maven inspection for incompatible coroutines libraries (KT-25251)
#KT-25251 In Progress
2018-07-19 16:09:56 +03:00
Nikolay Krasko 3bb9288e86 Refactoring: remove ProgressManager.progressIndicator usages 2018-07-19 16:09:55 +03:00
Dmitry Savvinov 76c651421b Deprecate visibility of static members inherited from Java
Now they are not visible by short name through companion objects, just
like classifiers in KT-21515

^KT-25333 In progress
2018-07-19 13:32:38 +03:00
Mikhael Bogdanov 56c535d505 Fix test data 2018-07-19 10:52:13 +02:00
Alexander Udalov 4122021090 Add BinaryVersion to DeserializationContext
This will be useful to implement version-dependent deserialization,
which is needed for gradual fixes of issues in metadata

 #KT-25120 In Progress
2018-07-18 17:58:46 +02:00
Dmitry Petrov a457a9f870 Update testData for IDEA tests for annotations with target EXPRESSION 2018-07-18 15:56:11 +03:00
Denis Zharkov cc2280b95b Fix test data after 89d99e3989 2018-07-18 11:14:46 +03:00
Alexander Udalov ae6627fe94 Simplify code in JS serialization related to module descriptors
Do not use `JsModuleDescriptor<...>` where only its `data` is needed
2018-07-17 20:26:31 +02:00
Yan Zhulanow a4b3653e1c Debugger: Navigate to the right file in MPP projects (#KT-25152, #KT-25147) 2018-07-17 20:54:29 +03:00
Pavel V. Talanov 4c38899a2a Improve error message on failing to get javaResolutionFacade 2018-07-17 17:37:22 +02:00
Dmitry Savvinov db1fc7f358 Use 'stableName' instead of 'name' in tests on module name 2018-07-17 17:14:22 +03:00
Nikolay Krasko 2a6dfba8bc Check kotlinx.coroutines libraries used with Kotlin 1.3 in Gradle (KT-25251)
#KT-25251 In Progress
2018-07-17 02:46:34 +03:00
Nikolay Krasko f9de91016a Inspection for experimental coroutines imports migration (KT-25251)
#KT-25251 In Progress
2018-07-17 02:22:14 +03:00
Nikolay Krasko 5b34498162 Do not report code style warnings on overridden declarations (KT-25416)
#KT-25416 Fixed
2018-07-17 02:22:14 +03:00
Pavel V. Talanov 48a38f1820 Do not try inexact resolve on scripts
Script light psi depends on script definition
    which is costly to compute correctly

 #KT-25395 Fixed
2018-07-16 16:25:18 +02:00
Alexey Sedunov 65e763d562 Misc: Fix flaky test failing due to unstable ordering of libraries 2018-07-16 16:12:23 +03:00
Alexander Udalov f766b2c473 Improve "optimize imports" behavior on default imports
Optimize imports to classes when there's an import of a type alias to
that class with the same name. This results in "java.lang.*" imports
being optimized in favor of the corresponding type aliases in "kotlin.*"
which are imported by default
2018-07-16 13:45:11 +02:00
Alexander Udalov ce34deb9af Delete DefaultImportProvider, refactor TargetPlatform.defaultImports 2018-07-16 13:45:11 +02:00
Alexander Udalov 1f0fb4823f Simplify DefaultImportProvider, introduce "low priority imports"
Previously, packages `java.lang` and `kotlin.jvm` were imported on JVM
by default on the same rights, causing problems when the same classifier
existed both in `java.lang` and `kotlin.jvm`. Since the only known case
of such conflict were type aliases to JVM classes, the corresponding
classes (expansions of those type aliases) were manually excluded from
default imports. This made the code in DefaultImportProvider complicated
and resulted in multiple problems, regarding both correctness and
performance (see 82364ad3e5, a9f2f5c7d0, dd3dbda719).

This change adds a new concept, a "low priority import", and treats
`java.lang` as such. Since these imports are now separated from the rest
of default imports in LazyImportScope via secondaryClassImportResolver,
conflicts between classifiers are handled naturally: the one from
`kotlin.jvm` always wins (unless the one from `java.lang` is imported
explicitly, of course). This approach is simpler, safer and does not
require any memory to cache anything.

Skip ResolveToJava.kt test for javac-based resolve; it now fails because
of a weird issue which I didn't have time to investigate (this is OK
because it's a corner case of an experimental functionality)
2018-07-16 13:45:11 +02:00
Max Medvedev 5c8afea68e Completion fallback to DescriptorToSourceUtilsIde.getAnyDeclaration
That's in case if DescriptorToSourceUtils.getSourceFromDescriptor fails

#KT-22373 Fixed
2018-07-14 15:17:03 +03:00
Nikolay Krasko dfcc41ebb0 Fix source position NPE (EA-118863) 2018-07-13 20:00:05 +03:00
Nikolay Krasko f1c87376b9 Another NPE in PlainTextPasteImportResolver.kt (EA-91517) 2018-07-13 20:00:05 +03:00
Nikolay Krasko ee5d357336 Guard PatternConfigurationProducer usages with JUnit presence check (EA-122472) 2018-07-13 20:00:04 +03:00
Nikolay Krasko 752cdedfe2 Stop reporting "using default platform" messages to log (KT-15300)
#KT-15300 Fixed
2018-07-13 20:00:04 +03:00
Denis Zharkov 89d99e3989 Refine diagnostics for nullability migration warnings
#KT-24911 Fixed
2018-07-13 17:51:21 +03:00
Nicolay Mitropolsky cedc6821c3 lightAnnotations: proper parents for KtLightAnnotationsValues 2018-07-13 15:45:30 +03:00
Georgy Bronnikov 8478c73434 Make @JvmStatic work on JVM_IR 2018-07-13 13:43:02 +03:00
Toshiaki Kameyama 2547612d54 Implement Smart Enter handler for value argument list (KT-18807)
#KT-18807 Fixed
2018-07-13 13:04:19 +03:00