da39258bec
stack command: -full flag prints local variables and arguments of all the functions on the stack trace
2015-09-18 08:34:21 +02:00
af9e97b697
service/debugger: Use PC instead of scope in Location.Find
2015-09-05 17:23:59 -05:00
c6ebd80905
Variable evaluation on arbitrary (goroutine, frame) pair.
2015-09-05 12:08:40 -05:00
e3e13dc672
service/debugger: Do not preserve temp breakpoints on restart
2015-08-17 19:27:29 -05:00
8e8d2660ef
Improve commands which take a location spec
...
Breakpoints, tracepoints, etc.. take a location spec as input. This
patch improves the expressiveness of that API. It allows:
* Breakpoint at line
* Breakpoint at function (handling package / receiver smoothing)
* Breakpoint at address
* Breakpoint at file:line
* Setting breakpoint based off regexp
2015-08-08 14:41:48 -05:00
d06abe3f2f
Debugger.Restart: Preserve breakpoints
...
Fixes #188
2015-08-02 00:08:48 -05:00
3cee10d8bc
Implement 'trace' subcommand
...
Allows a user to execute `dlv trace [regexp]` and Delve will execute the
program and output information on functions matching [regexp].
2015-07-12 15:20:12 -05:00
40284111d4
Kill process outright if manually forked
2015-07-11 01:43:47 -05:00
2f7612d4af
Add command to restart process
...
Fixes #95
2015-07-03 15:35:22 -05:00
d2b8d57053
Return exit status with DebuggerState
2015-07-03 15:28:46 -05:00
dcfa1aea2b
Properly return ProcessExitedError upon process death
2015-07-01 21:36:13 -05:00
6b99c5f519
Cleanup tracepoint commit
...
* Cleanup comments
* Cleanup naming in certain instances
* Modify stacktrace to return current location
2015-06-30 22:16:52 -05:00
3a96d8eed7
trace command
2015-06-29 21:16:55 +02:00
358fb75fc6
Return helpful error when attaching to a process is impossible
2015-06-27 23:21:26 -05:00
29ed169848
Return error when invoking Delve with invalid path
...
Fixes #154
2015-06-26 23:05:15 -05:00
48bb398c4b
Properly report process exits
2015-06-21 21:11:47 -05:00
6e538119d2
Refactor: Rename breakpoint methods
...
s/Break/SetBreakpoint/
s/Clear/ClearBreakpoint/
s/BreakByLocation/SetBreakpointByLocation/
2015-06-20 18:01:06 -05:00
102d4c89ae
s/DebuggedProcess/Process/
2015-06-20 17:54:52 -05:00
d265fa764f
Update Debugger documentation
2015-06-20 17:50:24 -05:00
07473f04c5
Implement stack command
...
Finishes #63 #64
2015-06-20 15:29:33 -05:00
256c83b17b
Implement regs command to print registers values, fixes #62
2015-06-19 14:27:01 -05:00
37235bba7f
Store hardware/software breakpoints in same struct
2015-06-17 18:14:56 -05:00
e4fc5e32c2
Refactor: Use thread-locked goroutine for ptrace ops
...
Previously either the terminal client or the debugger service would
either lock main goroutine to a thread or provide a locked goroutine to
run _all_ DebuggedProcess functions in. This is unnecessary because only
ptrace functions need to be run from the same thread that originated the
PT_ATTACH request.
Here we use a specific thread-locked goroutine to service any ptrace
request. That goroutine is also responsible for the initial spawning /
attaching of the process, since it must be responsible for the PT_ATTACH
request.
2015-06-13 12:57:42 -05:00
e5233e7262
Rename: s/ThreadContext/Thread/
2015-06-12 14:51:23 -05:00
bfca6114d4
Rename package proctl -> proc
2015-06-12 14:49:23 -05:00
a71f218e35
Rename: s/BreakPoint/Breakpoint/
2015-06-12 14:48:18 -05:00
98e7089dd3
Move list of hardware breakpoints onto arch struct
...
Hardware breakpoints are by definition architecture dependant. Move them
off the DebuggedProcess struct and onto the associated arch struct.
2015-06-12 14:30:59 -05:00
fe19f3f20c
Rename: s/EvalSymbol/EvalVariable/
2015-06-12 14:04:14 -05:00
c7dc57d44f
Detach from process in tests
...
Prevents leaving around a bunch of zombie processes
2015-05-27 17:38:53 -05:00
49667f2302
Rename thread.Process -> thread.dbp
...
Process is an incorrect name for the DebuggedProcess struct that the
thread is "a part" of. Also, no need to export that field.
2015-05-27 12:16:45 -05:00
819c476aa9
Do not attempt to automatically read locals/args
2015-05-08 16:43:03 -05:00
794d5b1e19
Revert errors.New change
2015-05-04 17:31:13 -05:00
1ad66660a1
Prefer errors.New for unformatted errors
2015-05-01 16:27:29 -05:00
6cadeb41fc
Pass kill signal to ptrace_detach
2015-05-01 15:50:29 -05:00
9040ec1af1
Only detach if not killing process
2015-05-01 15:14:58 -05:00
2954e03a20
Introduce client/server separation
...
Refactor to introduce client/server separation, including a typed
client API and a HTTP REST server implementation.
Refactor the terminal to be an API consumer.
2015-04-29 21:05:41 -05:00