Derek Parker
a0cffab881
Collect errors from defer in proc.next
2015-08-28 08:27:08 -05:00
Derek Parker
cf105863a7
Skip dependency install with SKIP_DEPS env var
2015-08-28 07:59:22 -05:00
Derek Parker
8be76428c8
Remove superfluous var declarations
2015-08-27 16:48:34 -05:00
Derek Parker
39378a6541
Update gitignore
2015-08-27 16:21:00 -05:00
Derek Parker
8c1853d193
proc/proc: Let thread set its own state
2015-08-21 22:46:17 -05:00
Derek Parker
eb0b4e9392
proc.Next: Further improve handling of highly parallel programs
...
This patch forces Delve to be more mindful of how it handles many
threads and the goroutine context switching that occurs in such cases.
2015-08-21 22:33:42 -05:00
Tyler Bunnell
be2d9c3a84
Add config file and command alias config options.
2015-08-21 14:20:23 -05:00
Derek Parker
38e0051308
thread.Halt: Remove duplication between OS implementations
...
Bring similar code up to top level, and keep OS dependant code in OS
dependant files. DRY up code a bit.
2015-08-20 10:06:33 -05:00
Derek Parker
b9846c7684
command (next): Improvements for parallel programs
...
This patch aims to improve how Delve tracks the current goroutine,
especially in very highly parallel programs. The main spirit of this
patch is to ensure that even in situations where the goroutine we care
about is not executing (common for len(g) > len(m)) we still end up back
on that goroutine as a result of executing the 'next' command.
We accomplish this by tracking our original goroutine id, and any time a
breakpoint is hit or a threads stops, we examine the stopped threads and
see if any are executing the goroutine we care about. If not, we set
'next' breakpoint for them again and continue them. This is done so that
one of those threads can eventually pick up the goroutine we care about
and begin executing it again.
2015-08-20 09:32:59 -05:00
Derek Parker
71845350a0
dlv/main: Add exec subcommand to debug existing binary
...
Added subcommand which takes a path to an existing binary, starts it,
and begins a debug session.
2015-08-19 18:01:47 -05:00
Derek Parker
32b499fa47
api/conversions: Do not shorten file paths
...
The shortening of file paths is purely a terminal UI concern. Move that
code to the presentation layer, and remove from the service layer.
2015-08-19 17:38:53 -05:00
Derek Parker
8d6bb4a1bb
Add Go1.5 to travis list
2015-08-19 14:07:19 -05:00
Derek Parker
288e2036f6
proc/proc: Refactor next function
2015-08-18 14:48:41 -05:00
Derek Parker
e3e13dc672
service/debugger: Do not preserve temp breakpoints on restart
2015-08-17 19:27:29 -05:00
Derek Parker
326e65efbc
Misc: Source code formatting
2015-08-17 08:19:04 -05:00
Derek Parker
f0afd41d94
terminal/command: Fix 'goroutine' command output
2015-08-17 08:11:00 -05:00
Derek Parker
066160f93e
Bump to version 0.7.0-alpha & add CHANGELOG
2015-08-14 14:56:56 -05:00
Derek Parker
48f3db8216
Rename 'run' subcommand to 'debug'.
...
This renaming avoids confusion with the 'run' subcommand in the go tool.
The 'run' subcommand in Delve is now deprecated. It is still there,
however simply prints a deprecation notice and exits.
2015-08-14 14:52:04 -05:00
Tyler Bunnell
96dd44bd6e
cmd/dlv: Add ability to connect to headless server
...
Fixes #201 . Use to connect to a running headless server
2015-08-14 09:28:38 -05:00
Derek Parker
5d489bef99
terminal/command: Add "ls" alias for list command
2015-08-14 08:58:17 -05:00
Joe Shaw
bb95d534a6
terminal/command: add list command to display source
...
Without arguments, `list` displays source around the current context. A
linespec argument can be taken to display source around that location.
Fixes #58
2015-08-14 08:51:31 -05:00
Derek Parker
e68e760a9f
service/debugger: Remove newline at end of error
2015-08-13 18:19:16 -05:00
Derek Parker
12bd0472d2
Only make new process a group leader, not session
...
We're not dealing with a debugged process having its own controlling
terminal at this point, so no need to make the new process a session
leader. Simply making the process a group leader will suffice for our
purposes at the moment.
2015-08-13 18:18:42 -05:00
aarzilli
77d46a51fb
Fix: Support for x.y versions
2015-08-12 09:30:47 -05:00
moshee
f0f6fa6b2e
cmd/dlv: fix bad format string
2015-08-12 09:26:30 -05:00
Derek Parker
a336c92a8b
Fix: Improve handling of soft signals on darwin
...
Fixes a bug on OSX where, if the debugged process spawned a child, when
that process received a SIGCHLD it would cause Delve to hang.
Fixes #197
2015-08-11 19:20:25 -05:00
Derek Parker
3f4476da02
Add verbose flag to codesigned tests
2015-08-11 19:10:34 -05:00
Derek Parker
d9d3118aa0
Fix: Parse rc version strings
2015-08-11 08:37:27 -05:00
Derek Parker
ed9b7769fd
Remove unused 'singleStepping' state on Process
...
We don't care, at the process level, whether or not we're single
stepping. That state is really only relevant at the thread level.
2015-08-11 08:20:44 -05:00
Derek Parker
8aa73bcf21
Promote info subcommands
...
There's no reason to hang a bunch of commands off of the `info` command.
Promoted all commands to be top level.
2015-08-10 21:31:27 -05:00
Derek Parker
f43007c55e
Fix: Handle inability to find return addr
...
Fixes a code path where stacktrace returns < 2 locations and
thread.ReturnAddress would panic. Now returns an error.
2015-08-10 10:45:33 -05:00
aarzilli
8de1a307ee
Fix: track recurseLevel in readArray/readSlice
...
This fix helps avoid infinite recursion.
2015-08-09 20:37:47 -05:00
aarzilli
fe054b2f0f
EvalVariable should also evaluate package variables
2015-08-09 20:37:47 -05:00
aarzilli
fd08e96b24
Fix: rpc.(*RPCClient).EvalVariableFor
...
Original implementation was passing the wrong argument.
2015-08-09 20:37:11 -05:00
aarzilli
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
Derek Parker
e8310e186c
Make check-cert target
2015-08-08 14:30:43 -05:00
Derek Parker
869884b9ab
Bind to less used port in test
2015-08-08 14:30:23 -05:00
Derek Parker
e940fa1274
Remove dup [flags] output for trace subcommand
...
When running `dlv help trace` the help output would display:
dlv trace [regexp] [flags] [flags]
This patch removes the [flags] duplication.
2015-08-05 13:20:39 -05:00
Derek Parker
af55ef3522
Process.Kill: Do not kill if process already exited
2015-08-04 08:32:43 -05:00
Derek Parker
4bae873705
Add travis CI
2015-08-04 08:03:35 -05:00
Derek Parker
d06abe3f2f
Debugger.Restart: Preserve breakpoints
...
Fixes #188
2015-08-02 00:08:48 -05:00
Derek Parker
ee3d7e8d55
proc/proc_linux.go: Misc code cleanup
2015-08-01 23:31:50 -05:00
Derek Parker
8034b7c038
Process.Kill: Use PID in wait
2015-08-01 23:18:20 -05:00
Derek Parker
6bac0ae0b2
Remove superfluous comment and misc cleanup
2015-08-01 23:14:06 -05:00
Derek Parker
fd407f8579
Fix Linux compilation error
2015-08-01 23:06:34 -05:00
Derek Parker
08dddb6b70
Update README
2015-08-01 21:55:02 -05:00
Derek Parker
286f8ed22e
Return result directly from single_step
2015-08-01 21:46:42 -05:00
Derek Parker
93dcd40cee
Refactor read/write memory code
2015-08-01 21:43:03 -05:00
Derek Parker
5e5f5aff30
Cleanup comment in setBreakpoint
2015-08-01 21:19:14 -05:00
Derek Parker
1f473241c7
Refactor setBreakpoint code
2015-08-01 21:16:58 -05:00