Commit Graph

3320 Commits

Author SHA1 Message Date
Ilya Kirillov bfedeed2c1 Wizard: use new icons in UI 2020-06-19 09:29:40 +03:00
Pavel Kirpichenkov 91b371789e Invalidate library caches on OOCBM with enabled resolution anchors
Without forced clean stale references to declarations from source-dependent libraries
can be accessed after invalidation, i.e. resolved references can point to incorrect PSI.
TBD: more granular invalidation.

KT-24309
2020-06-18 18:27:28 +03:00
Alexander Udalov 6e67e1e78d Replace appendln with appendLine in project 2020-06-11 13:01:30 +02:00
Alex Plate 801c97f456 Use ModuleOrderEntry instead of ModuleOrderEntryImpl
`isProductionOnTestDependency` function was moved from implementation to
interface. The fix is important for the new IJ project model.
2020-06-10 22:19:41 +03:00
Konstantin Tskhovrebov a6161c6f22 Fix expect/actual gutters for declarations in the same module.
Fixed #KT-33510.
2020-06-09 16:28:27 +03:00
Ilya Kirillov bd12b37353 FIR IDE: Move ApplicationUtils to frontend independent module 2020-06-09 16:19:44 +03:00
Ilya Kirillov a8b94b1cca FIR IDE: Move some declarations highlighting to before resolve highlighting pass 2020-06-09 16:19:28 +03:00
Ilya Kirillov 6a4fa8de9d FIR IDE: Move base part of highlighting to frontend-independent-module 2020-06-09 16:19:25 +03:00
Ilya Kirillov 77550186ad FIR IDE: Move KDoc Reference & mainReference to frontend-independent module 2020-06-09 16:19:18 +03:00
Ilya Kirillov 45ef0e1b50 FIR IDE: Move fir resolving functionality from idea module to idea-frontend-fir 2020-06-09 16:19:14 +03:00
Ilya Kirillov 418903e9ef FIR IDE: Make KtReference class descriptors frontend independent
* The new idea-frontend-independent module created
* Moved KtReference and it inheritors to that module & implement them in idea-analysis module by using descriptors frontend
2020-06-09 16:19:12 +03:00
Pavel Kirpichenkov 8216e5cd72 Avoid persisting default anchor configuration
#KT-24309 In Progress
2020-06-07 21:24:45 +03:00
Yunir Salimzyanov dce19b0ace Cleanup 191 patchset logic (KTI-267) 2020-06-07 10:49:55 +03:00
Vladimir Ilmov 3634cbe3cb (LightClasses) resolve of annotations fast-path 2020-06-05 13:27:10 +02:00
Pavel Kirpichenkov 8ca5d3b6f9 Update library to source analysis mode configuration
Persist analysis flag in the same xml where anchor mapping reside instead
of using properties. This makes it possible to save config in VCS.

#KT-24309 In Progress
2020-06-05 11:14:02 +03:00
Pavel Kirpichenkov 8ed4424e3e Clean up API of AbstractResolverForProject
Resolution anchors are IDE-specific.
Creating dedicated methods for them in AbstractResolverForProject leads to meaningless
implementation in non-IDE resolvers. Now this method is implemented only
for IDE resolver and accessed through JvmPlatformParameters.

#KT-24309 In Progress
2020-06-05 11:14:01 +03:00
Vladimir Ilmov 4f1b7b38b2 (Resolve) lightweight resolve annotations
relates to #KT-38653
2020-06-05 00:19:16 +02:00
Pavel Kirpichenkov 986b13c3a1 Optimize synchronization for resolution anchors
Use volatile state instead of synchronized access to it.
This should be enough as the component's state is only read
by the component users and never changed.
2020-06-03 20:58:07 +03:00
Pavel Kirpichenkov 175fe163af Add cancelation check when building anchor mappings 2020-06-03 20:58:07 +03:00
Pavel Kirpichenkov 7fff8f82e2 Changes after review
- Replace leaking ModuleResolverTracker with use of ModuleDescriptor.Capabilies
- Provide API for retrieving ResolverForProject from ResolutionFacade
- Update names
2020-06-03 20:58:07 +03:00
Pavel Kirpichenkov db1210fc67 Introduce components for library-to-source resolution in IDE
#KT-24309 In progress
2020-06-03 20:58:07 +03:00
Dmitriy Novozhilov eceeacdf61 [FIR] Change nested class generation extension to generate top-level classes also 2020-06-03 13:10:16 +03:00
Dmitriy Novozhilov 1b120c189e [FIR] Record generated classes in FirProvider 2020-06-03 13:10:16 +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 498c40548b Structure view: add visibility sorter
#KT-36444 Fixed
2020-06-01 21:42:03 +09:00
Toshiaki Kameyama 9aaba8c759 Structure view: add visibility filter for class properties
#KT-38276 Fixed
2020-06-01 21:42:03 +09:00
Vyacheslav Gerasimov 7d7835f0f4 as41: Remove ApplicationUtils.kt.as41 which should be same as for 201 2020-06-01 12:29:10 +03:00
Mikhail Zarechenskiy 7ec8716d65 Introduce HTML redenred version for compatibility warning 2020-06-01 10:19:36 +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
Dmitriy Novozhilov b4ce736814 [FIR] Move registration components out of initializers of FirSession 2020-05-29 10:24:26 +03:00
Dmitriy Novozhilov fec3e4faf1 [FIR] Move initialization of common services to FirSessionBase 2020-05-29 10:22:04 +03:00
Dmitriy Novozhilov 41cdb61ef3 [FIR] Move all symbol providers to separate package 2020-05-29 10:20:57 +03:00
Dmitriy Novozhilov a1c3d2b709 [FIR] Add separate session component for FirIdeProvider 2020-05-29 10:17:22 +03:00
Dmitriy Novozhilov 34d3fe26e6 [FIR] Get rid of FirProvider.getInstance 2020-05-29 10:17:21 +03:00
Zalim Bashorov a8623b9b28 Make sure that library file still exists before calling loadMetadata from JsResolverForModuleFactory since IDE model could be outdated
#EA-218905 fixed
2020-05-28 21:38:01 +03:00
Vyacheslav Gerasimov af2dce0549 as41: Build against AS 4.1 C10 2020-05-27 18:46:57 +03:00
Yan Zhulanow 36f3ff7d20 Add stack trace logging for EA-225969 2020-05-27 02:38:39 +09:00
Zalim Bashorov f39165bb58 Revert accidentally pushed changes
Revert "~~~"

This reverts commit 03fcbfad

Revert "Add an ability to provide own handler for errors inside KotlinJavascriptMetadataUtils.loadMetadata"

This reverts commit 69827fc5

Revert "Add more detailed message for EA-227305 and EA-226744"

This reverts commit b79b3507
2020-05-26 16:15:59 +03:00
Zalim Bashorov 03fcbfad1a ~~~ 2020-05-26 15:43:05 +03:00
Zalim Bashorov 69827fc5af Add an ability to provide own handler for errors inside KotlinJavascriptMetadataUtils.loadMetadata
Use a logger to handle errors inside loadMetadata when it's used from IDE (JsResolverForModuleFactory).

#EA-218905
2020-05-26 15:41:47 +03:00
Dmitry Savvinov 00df562a2b Allow specific native targets to depend on unspecified native target
^KT-38769 Fixed
2020-05-25 16:13:10 +03:00
Dmitriy Novozhilov d49c198a7f [FIR] Correctly initialize extensions in all sessions 2020-05-24 18:04:47 +03:00
Dmitriy Novozhilov 594a854b4e [FIR] Reimplement FirExtensionService
- Get rid of old FirExtensionsService
- Implement new FirExtensionService
- Remove duplicating code in FirExtensionRegistrar
2020-05-24 18:04:45 +03:00
Dmitriy Novozhilov 0b00015424 [FIR] Deprecate FirExtensionsService 2020-05-24 18:04:44 +03:00
Dmitriy Novozhilov 6d6ed1e755 [FIR] Create session component with registered checkers 2020-05-24 18:04:43 +03:00
Roman Golyshev a83b0bef96 KT-38841 Do not call preparePsiElementForWrite if not needed
- This call breaks Intention Preview for all intentions that extend
`SelfTargetingIntention`
- This check is actually already performed by the platform before the
intention invocation (but only if `startInWriteAction` returns `true`)
- There are many other intentions which redundantly use this call, but
most of them implement `LocalQuickFix`, which means that they are
inspection based. Currently Intention Preview does not seem to support
this kind of intentions
2020-05-21 11:45:48 +00:00
Roman Golyshev 3903814c9c Revert "KT-38841 Remove redundant preparePsiElementForWrite call"
This reverts commit 165b62da

Something went wrong with the AS40 build
2020-05-20 22:58:49 +03:00
Roman Golyshev 165b62da63 KT-38841 Remove redundant preparePsiElementForWrite call
- This call breaks Intention Preview for all intentions that extend
`SelfTargetingIntention`
- This check is actually already performed by the platform before the
intention invocation
- There are many other intentions which redundantly use this call, but
most of them implement `LocalQuickFix`, which means that they are
inspection based. Currently Intention Preview does not seem to support
this kind of intentions
2020-05-20 14:33:21 +00:00
Dmitry Savvinov 3793e485b6 Check for common klibs builtins_platform properly
Actually, common klibs don't have a corresponding record (and abscence
of that record should be treated as platform COMMON).

^KT-38769 Fixed
2020-05-15 20:25:48 +03:00