Commit Graph

68 Commits

Author SHA1 Message Date
Yan Zhulanow ffeef6c18d EA-210460: Use 'safeAllLineLocations()' instead of throwing 'allLineLocations()' 2019-11-25 17:26:30 +09:00
Yan Zhulanow aaa45425da EA-210002: handle interruption in case of background inline callable searcher task 2019-11-25 17:26:30 +09:00
Yan Zhulanow 36073ef61e EA-209923: Add missing read action 2019-11-25 17:26:30 +09:00
Yan Zhulanow 69d5115b89 EA-214241: Remove worthless error reporting 2019-11-25 17:26:29 +09:00
Yan Zhulanow 16c4b0e458 EA-210823: Fix AIE in breakpoint applicability test 2019-11-25 17:26:29 +09:00
Yan Zhulanow e12f17d5dc EA-217069: Add missing read action 2019-11-25 17:26:28 +09:00
Yan Zhulanow 54203100bc EA-217072: Add missing read action 2019-11-25 17:26:28 +09:00
Vladimir Ilmov 022a31398a [coroutine][debug] creation stack trace jump to line fixed 2019-11-19 12:29:54 +03:00
Vladimir Ilmov 25222b55e6 [coroutine][debug] AsyncStackTraceProvider refactored 2019-11-19 12:29:54 +03:00
Vladimir Ilmov 310b3611ef coroutine extention refactored to minimize brunch-related logic 2019-11-19 12:29:54 +03:00
Vladimir Ilmov c90cd8c490 [coroutine][debug] compilation error fixed 2019-11-19 12:29:53 +03:00
Aleksandr Prokopyev 3ca5d2d64f Debugger: Add 193 bunch for coroutines debugger 2019-11-19 12:29:53 +03:00
Aleksandr Prokopyev 12313fa5aa Debugger: Fix for coroutine debugger after review 2019-11-19 12:29:52 +03:00
Aleksandr Prokopyev 5975251a32 Debugger: Coroutines stack frames with variables & coroutine dumps 2019-11-19 12:29:06 +03:00
Yan Zhulanow bf027fb824 Do not show Smart Step Into targets for @InlineOnly callables (KT-33728) 2019-10-24 21:33:00 +09:00
Yan Zhulanow ff7f1c62a9 Minor: Refactor KotlinMethodStepTarget a bit 2019-10-24 21:33:00 +09:00
Yan Zhulanow 39662c09e9 Debugger: Fix breakpoints and stepping on a first line (KT-33304)
This commit fixes the 'SmartStepIntoTestGenerated#testFunWithExpressionBody' test.
2019-10-24 21:32:59 +09:00
Yan Zhulanow c3e46ebe5c Debugger: Search candidates for smart step into in a read action 2019-10-24 21:32:59 +09:00
Yan Zhulanow 9cc7ff0efc Debugger: Fix "smart step into" for library declarations (KT-33303) 2019-10-24 21:32:59 +09:00
Yan Zhulanow c6a5733b3d Debugger: Move 'smart step into' classes to the 'smartStepInto' package 2019-10-24 21:32:59 +09:00
Yan Zhulanow d2b058c1e5 Debugger: Extract Smart step visitor 2019-10-24 21:32:58 +09:00
Yan Zhulanow 8325216d38 Debugger: Fix "Step over" with inline function calls in non-functions (KT-20342) 2019-10-24 21:32:58 +09:00
Yan Zhulanow 7bd628f989 Debugger: Check max document index before figuring out line offsets 2019-10-24 21:32:58 +09:00
Yan Zhulanow d7eb0f4bb0 Debugger: Cleanup stepping code 2019-10-24 21:32:58 +09:00
Yan Zhulanow f93549748a Fix a number of compiler/IDE warnings in IDE and kapt modules 2019-10-24 21:32:57 +09:00
Yan Zhulanow 66758472c7 Fix EA-209316: Allow null JDI values in captured value data 2019-10-08 19:13:56 +09:00
Vyacheslav Gerasimov c1e1dbd83e Build: Fix usages of "java.home" for tools.jar dependency
#KT-33984
2019-09-25 17:54:18 +03:00
Nikolay Krasko d1aca83dd5 Remove getInvalidIcon default implementation after removing 182
#KT-33536 Fixed
2019-08-30 12:14:30 +03:00
Nikolay Krasko 4d0fc1dc22 Remove 182 support
#KT-33536 Fixed
2019-08-30 12:13:44 +03:00
Yan Zhulanow e6211c4995 Debugger: Fix the compilation error in as33 bunch 2019-08-08 04:26:10 +09:00
Yan Zhulanow 39e15782b2 Debugger: Fix compatibility with AS 3.3 2019-08-07 01:15:34 +09:00
Yan Zhulanow 01805e8878 Debugger: Fix read action in 'createLineSourcePosition' (KT-33064) 2019-08-07 01:15:34 +09:00
Yan Zhulanow 0a092d6613 Debugger: Fix breakpoint firing in '$suspendImpl' (KT-27645) 2019-08-07 01:15:33 +09:00
Yan Zhulanow 9096d211d3 Debugger, minor: Fix line breakpoint popup (add containing declaration name) 2019-08-07 01:15:33 +09:00
Yan Zhulanow cc3f1b3501 Debugger: Fix exception in "Smart step into" for Java method calls (KT-32813) 2019-08-07 01:15:32 +09:00
Yan Zhulanow ecce34e02b Debugger: Fix infinite recursion in inline callable searcher (EA-108938) 2019-08-07 01:15:32 +09:00
Yan Zhulanow ea97926c66 Debugger: Add verbose logging for EA-125569, fix possible issue 2019-08-07 01:15:32 +09:00
Yan Zhulanow 527df35bf3 Debugger: Handle case when we can't calculate the anonymous class name gracefully (EA-141202) 2019-08-07 01:15:31 +09:00
Yan Zhulanow 71e8cddaa6 Minor: Fix NI error in KotlinPositionManager 2019-08-07 01:15:31 +09:00
Yan Zhulanow 17c3406097 Debugger: Gracefully handle debugger exceptions we can't do anything reasonable with (EA-128154, EA-139473) 2019-08-07 01:15:31 +09:00
Yan Zhulanow bb3091429f Debugger: Keep a reference to stack trace element (EA-208000) 2019-08-07 01:15:30 +09:00
Yan Zhulanow a664df8143 Debugger: Unwrap EvaluateExceptions on checking (EA-105847) 2019-08-07 01:15:30 +09:00
Yan Zhulanow 3d3bde5483 Debugger: Do not ignore duplicated locations for line breakpoints 2019-08-07 01:15:28 +09:00
Yan Zhulanow 780c0518e5 Debugger: Disallow breakpoints for @InlineOnly function bodies (KT-32687, KT-24408)
Kotlin compiler strips all debug information for @InlineOnly functions, making them non-debuggable.
This commit disables breakpoints inside @InlineOnly functions to prevent false expectations.
2019-08-07 01:15:28 +09:00
Yan Zhulanow 25fb77e7ad Debugger: Add breakpoint applicability tests
This commit adds a number of tests that check breakpoint placing behavior, and an inline action that work the same way as tests.
2019-08-07 01:15:28 +09:00
Yan Zhulanow b1f132d750 Debugger: Add stepping tests for function breakpoints 2019-08-07 01:15:27 +09:00
Yan Zhulanow 023baf6233 Debugger: Ask for light class generation in background 2019-08-07 01:15:27 +09:00
Yan Zhulanow 129ca7f2d8 Debugger: Fix breakpoint applicability (KT-10984)
Ensure that breakpoints of each type can be placed only on lines where it makes sense to place a breakpoint.

Here is a quick summary of the rules:
1. Method breakpoints are available for functions, property accessors, constructors;
2. Line breakpoints are available on any line with an expression, excluding some cases like 'const' property initializers or annotations;
3. Line breakpoints should be available on a '}' in functions and lambdas;
4. Line breakpoints are not suggested for one-liners;
5. Lambda breakpoints should be shown for single-line lambdas.
2019-08-07 01:15:27 +09:00
Yan Zhulanow 22c18ffaa9 Debugger: Add Kotlin Function breakpoints (KT-22116)
Now it's possible to put a function breakpoint.
In JVM, function breakpoints behave as JVM method breakpoints. Normally, they're triggered twice – once on enter, and once on exit.
2019-08-07 01:15:27 +09:00
Yan Zhulanow 55ea0840b1 Debugger: Keep continuation and spilled variables until the whole trace is processed (EA-208000) 2019-08-07 01:15:27 +09:00