Commit Graph

66577 Commits

Author SHA1 Message Date
Sergey Igushkin 60c49d26e3 Add Gradle integration tests running the IDE HMPP highlighting tests 2020-04-24 12:54:38 +03:00
Sergey Igushkin 4b0da0688a Fix expect discrimination with actual typealias in deserialization
* For types encountered during deserialization, search for a classifier,
  not necessarily a class, across module dependencies (i.e. accept type
  aliases, returned when actual type alias discriminates an expect
  class).

* When the referenced type is a type alias, expand it, so that when
  the descriptor is compared to the expansion in other places,
  they match.

* Also, when resolving an abbreviation, don't expand the type aliases,
  as there are assumptions in the code base that an abbreviation is a
  type alias.
2020-04-24 12:54:38 +03:00
Sergey Igushkin d4a0844a77 Support additional module descriptor dependencies in klib descriptors 2020-04-24 12:54:37 +03:00
Sergey Igushkin a9dd194383 Fix wrong assumption in getHostSpecificSourceSets (KMM-225)
The assumption that each source set is already registered in at least
one compilation would break Android targets which are configured later
on the execution path, and also fail when there are unused source sets.

Issue #KMM-225 Fixed
2020-04-24 12:54:37 +03:00
Sergey Igushkin 67f4b7e2b0 Add a dependency from all klib-originated modules to the main module
This is required, for instance, to properly resolve supertypes across
the modules.

Issue #KT-37832 Fixed
2020-04-24 12:54:36 +03:00
Vladimir Dolzhenko 8979b98fc0 Dropping components cleanup
#KT-38407 Fixed
2020-04-24 09:39:49 +00:00
Vladimir Dolzhenko d2a26e9049 Fix memory leakage via Library in KotlinMavenImporter
Relates to #KT-38407
2020-04-24 09:39:48 +00:00
Vladimir Dolzhenko 4908d7a78c Convert KotlinImporterComponent into a module service
Relates to #KT-38407
2020-04-24 09:39:47 +00:00
Vladimir Dolzhenko c2c8d81b49 Convert MavenImportListener into an application service
Relates to #KT-38407
2020-04-24 09:39:47 +00:00
Vladimir Dolzhenko 6e5b288500 Compatify maven.xml p.1
Relates to #KT-38407
2020-04-24 09:39:46 +00:00
Vladimir Dolzhenko 951215e606 Convert ScratchFileModuleInfoProvider into a startup activity
Relates to #KT-38407
2020-04-24 09:39:45 +00:00
Vladimir Dolzhenko 346cc40f44 Convert KotlinCompilerManager into a startup activity
Relates to #KT-38407
2020-04-24 09:39:45 +00:00
Vladimir Dolzhenko 4f99ac406a Kotlinify KotlinCompilerManager p.2
Relates to #KT-38407
2020-04-24 09:39:44 +00:00
Vladimir Dolzhenko bbd4116b67 Kotlinify KotlinCompilerManager p.1
Relates to #KT-38407
2020-04-24 09:39:43 +00:00
Vladimir Dolzhenko d3585f1d24 Convert JvmPluginStartupComponent into a startup activity
Relates to #KT-38407
2020-04-24 09:39:43 +00:00
Vladimir Dolzhenko fa2fb667e6 Kotlinify JvmPluginStartupComponent p.2
Relates to #KT-38407
2020-04-24 09:39:42 +00:00
Vladimir Dolzhenko fe3cf88e45 Kotlinify JvmPluginStartupComponent p.1
Relates to #KT-38407
2020-04-24 09:39:42 +00:00
Vladimir Dolzhenko d6b4836ae0 Convert KlibLoadingMetadataCache into an application service
Relates to #KT-38407
2020-04-24 09:39:41 +00:00
Vladimir Dolzhenko 4535584f16 Convert KotlinUpdatePluginComponent into a startup activity
Relates to #KT-38407
2020-04-24 09:39:40 +00:00
Dmitry Gridin 60dc2f9674 i18n, MoveKotlinNestedClassesToUpperLevelDialog: add missing bundles for 201
#KT-38527 Fixed
2020-04-24 16:14:51 +07:00
Dmitry Gridin 6524e2b764 i18n, debugger: add missing bundles for 201
#KT-38487 Fixed
2020-04-24 16:13:44 +07:00
Matthew Gharrity e0ca94279a Move vFile.isValid() check inside read action
Fixes KT-38541
2020-04-23 19:30:02 -04:00
Alexander Udalov 403cdedf2e Remove unnecessary dependencies of 'fir2ir:jvm-backend' 2020-04-23 23:16:30 +02:00
Alexander Udalov 2815bb88c2 Remove unnecessary dependency of 'fir2ir' on 'ir.backend.common'
Move some lookup utilities which are used in
`OperatorExpressionGenerator`, to 'ir.tree'.
2020-04-23 23:16:29 +02:00
Valentin Kipyatkov 0c3c8b64ce Optimization for faster search of references to top-level members 2020-04-23 22:12:26 +03:00
Valentin Kipyatkov ec057a6c00 Minor change after review 2020-04-23 22:12:26 +03:00
Valentin Kipyatkov 56b20b0f31 Data Flow from Here: do not include named argument references 2020-04-23 22:12:25 +03:00
Valentin Kipyatkov 7c81d93db0 Data Flow to Here: process data-class copy-method calls 2020-04-23 22:12:25 +03:00
Natalia Selezneva 7f8b3b6a79 Minor: rename function 2020-04-23 20:14:03 +03:00
Natalia Selezneva 574f57e604 Minor: extract class to separate file 2020-04-23 20:14:02 +03:00
Natalia Selezneva 25dc8b7766 Minor: rename files 2020-04-23 20:14:02 +03:00
Natalia Selezneva 294df3a7e9 201: Implement floating notification update 2020-04-23 20:14:02 +03:00
Natalia Selezneva 2fba813a53 Rework the notification for scripts out of project
Add an option to link external gradle project
remove an option to load configuration manually because it cannot be implemented properly: script configurations for those scripts shouldn't be loaded during import for Gradle 6.0

^KT-37178 Fixed
2020-04-23 20:14:02 +03:00
Natalia Selezneva 85141b753b Show notification that gradle project is needed to be imported to get code insight for kotlin scripts 2020-04-23 20:14:01 +03:00
Natalia Selezneva 69d86a2972 Fix getting default sdk for scripts after refactoring 2020-04-23 20:14:01 +03:00
Sergey Rostov 73760effee Refactor GradleScriptingSupport to support multiple gradle projects linked to one idea project
For each externalGradleProject separate GradleScriptingSupport is created.
This allows to save script configurations by gradle projects

^KT-37806 Obsolete
^KT-35151 Fixed
2020-04-23 20:14:01 +03:00
Natalia Selezneva 34df3066b3 Fix messages for script configuration loading
Remove word "dependencies" from UI, use "configuration" instead
2020-04-23 20:14:01 +03:00
Natalia Selezneva f3687dcd00 Extract utils methods for getting gradle project settings 2020-04-23 20:14:01 +03:00
Natalia Selezneva f5f69ccc1b Fix getting gradle version for new project 2020-04-23 20:14:01 +03:00
Natalia Selezneva 3904e0f97c Fix indexing for force load configuration action 2020-04-23 20:14:00 +03:00
Natalia Selezneva c52e5d180a Fix compilation for AS35 2020-04-23 20:14:00 +03:00
Natalia Selezneva b472e915e6 Minor: rename files 2020-04-23 20:14:00 +03:00
Natalia Selezneva 217696fad5 Minor: rename class 2020-04-23 20:14:00 +03:00
Natalia Selezneva 3008010d73 Minor: extract class 2020-04-23 20:13:59 +03:00
Natalia Selezneva 59bdf67aa2 Refactoring: extract separate manager to update script configurations of gradle scripts
The main goal is to extract logic that is related to Gradle scripts only to separate place.
Configurations for gradle scripts are updated during import simultaneously, there is no need to manage script configuration update for one file
Note that for Gradle less than 6.0 The DefaultScriptingSupport is used
2020-04-23 20:13:59 +03:00
Natalia Selezneva c6609e9a97 Temporary remove flacky assert from GradleKtsImportTest 2020-04-23 20:13:59 +03:00
Natalia Selezneva da76fff83c Remove unused parts 2020-04-23 20:13:59 +03:00
Natalia Selezneva 7ecaf35647 Fix javaHome storing KotlinDslScriptModels 2020-04-23 20:13:58 +03:00
Natalia Selezneva a35523b6d0 Implement global notification for configurations update of gradle scripts
For 193: it will be a simple notification at the bottom of the IDEA window
For 201: a floating notification in the editor is implemented near "Load Gradle Changes" icon
^KT-34443 Fixed
2020-04-23 20:13:58 +03:00
Natalia Selezneva e300b30de1 Do not use hard coded string literals in UI 2020-04-23 20:13:58 +03:00