Git Product home page Git Product logo

gdlv's Introduction

Gdlv is a graphical frontend to Delve for Linux, Windows and macOS.

Demo video here.

Screenshot

Gdlv on macOS

Setup

First install the current version of Delve, following Delve's install instructions.

Once Delve is installed, clone the repository and use go install to install gdlv:

$ git clone https://github.com/aarzilli/gdlv
$ cd gdlv
$ go install

If you are on Go 1.16 or later you can also use the new global install command, without cloning the repository first:

$ go install github.com/aarzilli/gdlv@latest

Use Ctrl+plus and Ctrl+minus, or config zoom 1.5 to change font size. See help for a list of available commands.

Other backends

On Linux and Windows gdlv uses shiny to draw its window and receive mouse and keyboard input from the Operating System. On macOS gio is used instead. This behavior can be changed using build tags:

go install -tags=nucular_gio github.com/aarzilli/gdlv@latest

will force gdlv to use nucular_gio everywhere, conversely -tags=nucular_shiny will select the shiny backend on macOS. Additionally, on macOS, -tags=nucular_shiny,metal can be used to make shiny draw using the metal API.

News

2024-03-04 / Version 1.12

  • Function names in the stacktrace window is shortened by default
  • Add next-instruction command
  • Make the text in the variables window selectable
  • Miscellaneous bug fixes

2023-09-24 / Version 1.11

  • Better display of suspended breakpoints
  • Add libraries command
  • When printing a channel also print a list of goroutines waiting on it

2023-06-13 / Version 1.10

  • Better display of long string variables in the variables window
  • Added formatting directives to print command and variables window (see help print)
  • Support multi-target debugging where Delve supports it
  • Miscellaneous bug fixes

2023-01-05 / Version 1.9

  • Show an indicator when the current frame changes between continues
  • Miscellaneous bug fixes

2022-05-13 / Version 1.8

  • Extended type shortening rules to support simple generic types
  • Miscellaneous bug fixes

2021-09-23 / Version 1.7

  • Add watchpoint support
  • Add Go doc menu item, in the variables panel contextual menu, to quickly call go doc for a variable's type
  • Add hit count conditions for breakpoints
  • Add call command
  • Add goroutines filtering rules

2021-04-09 / Version 1.6

  • Print goroutine wait wait reason and wait time when available
  • Add dump command, creates core dump of the attached process

2021-01-10 / Version 1.5

  • Better disassembly view
  • File descriptor redirects
  • Miscellaneous bug fixes

2020-04-25 / Version 1.4

  • Support reverse step/next/stepout
  • Support logical breakpoints
  • Fixes copying from scrollback editor
  • Fixes listing recentering on current line after a target resume

2020-03-27 / Version 1.3

  • Show goroutine labels
  • Support interrupting a recording

2020-01-28 / Version 1.2

  • Highlight changed variables in a different color
  • Add source code links in scrollback

2019-11-22 / Version 1.1

  • Added option to filter the goroutines window to only the goroutines matching a specified pattern.
  • Added -r option to the restart command which will rerecord the target (if it was recorded), also added the flaky script which runs the program repeatedly (rerecording it) until it hits any breakpoint.
  • Added -tags command line option to specify build tags for the target program.

2019-10-22 / Version 1.0 tagged

2019-06-07

  • Added Starlark as a scripting language

2019-05-11

  • Start from main.main instead of runtime.main.
  • Better interface when concurrent breakpoints happen during next, step or stepout.

2018-12-14

  • Deferred calls view.
  • Limit number of goroutines that are loaded (improves performance when debugging programs with tens of thousands of goroutines while the goroutines window is opened).
  • Make pastel theme the default theme.
  • Fixed bug handling disabled breakpoints.

2018-11-23

  • Fix build on go1.9
  • New, extended, syntax for pinning expressions dp @f/somefunc/ a will evaluate a in the first frame calling somefunc.

2018-10-29

2018-09-26

  • Breakpoint persistence
  • pretty printing of time.Time variables
  • Notification for truncated stack traces
  • Ability to have an expression's value printed to the command window every time a continue command completes.

2018-08-26

  • Fixed some race conditions
  • Redesigned detail views, they are now updated while stepping through the code

2018-08-16

  • Highlight variable names
  • Expose starting location of goroutines
  • Miscellaneous bug fixes

2018-07-02

  • Support font changes
  • Sort variables by declaration line
  • Miscellaneous bug fixes

2018-06-13

  • Print return values when stepping out of a function
  • Allow setting breakpoints after the program has exited

2018-05-21

  • Implemented path substitution rules

2018-02-12

  • Implemented "Continue to line"
  • Let restart change program arguments
  • Made load parameters configurable

2017-12-20

  • Support for upcoming go 1.10.
  • Changed how split windows are implemented (floating windows with docking).

2017-09-17

  • "Find Element" command: search through a slice or an array for the element matching a given expression.
  • New red theme.
  • Only recompile if one of the source files changed.
  • step -last command option to step into the last call on the line.
  • Search command history with Ctrl+R

2017-06-29

  • Pinning of expressions to specific execution frames.
  • Keybindings for continue, next, step and stepout
  • Compact visualization for interface values

2017-06-04

  • Custom formatters for user defined types.
  • Better executable building for go1.9

2017-05-18

  • Better formatting for maps and integer variables.

2017-05-07

  • Added core command
  • Support for multiple backends
  • Added "replay" startup command, "checkpoint" command and "Checkpoints" view.

2017-03-01

  • Horizontal scrollbars for all panels

2017-02-09

  • Goroutines panel will show a breakpoint icon for goroutines stopped at a breakpoint.

2017-02-06

  • Implemented selective step into. Right click on a function call on the current line to step into that function call (note: not that function, that function call). Also accessible through the step command with step -list:

Step Into

gdlv's People

Contributors

aarzilli avatar blackint3 avatar euphoria-laxis avatar inrick avatar johanbrandhorst avatar noxer avatar stevemns avatar testwill avatar wesleyparriott avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gdlv's Issues

Documentation

I found the screenshots in /doc. Any other tips other than changing the font size?

go install: error related to Foundation

I get the following while trying to install. I can try to figure it out by myself, but given I'm a noob when it comes to MacOS stuff, it could very well be something trivial that you already know the answer to, hence the issue.

$ go install
# gioui.org/app/internal/cocoainit
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libxml2/libxml/module.modulemap:1:8: error: redefinition of module 'libxml2'
module libxml2 [system] [extern_c] {
       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libxml2/module.modulemap:1:8: note: previously defined here
module libxml2 [system] [extern_c] {
       ^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreFoundation' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:
While building module 'Dispatch' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:20:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/dispatch/dispatch.h:59:10: fatal error: could not build module 'os_object'
#include <os/object.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreFoundation' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:
In file included from <module-includes>:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:60:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFPropertyList.h:17:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:20:10: fatal error: could not build module 'Dispatch'
#include <dispatch/dispatch.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreGraphics' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSGeometry.h:9:
In file included from <module-includes>:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:8:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGBase.h:12:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CFBase.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreGraphics' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSGeometry.h:9:
While building module 'IOKit' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDisplayConfiguration.h:12:
In file included from <module-includes>:4:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/IOKit.framework/Headers/IOCFBundle.h:26:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'Security' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLCredential.h:9:
In file included from <module-includes>:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/Security.h:27:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecBase.h:28:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CFBase.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLError.h:15:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:19:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLError.h:15:
While building module 'DiskArbitration' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:56:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/DiskArbitration.framework/Headers/DiskArbitration.h:27:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'CoreServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLError.h:15:
While building module 'CFNetwork' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:31:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CFNetwork.framework/Headers/CFNetwork.h:18:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'XPC' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSXPCConnection.h:14:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/xpc/xpc.h:6:10: fatal error: could not build module 'os_object'
#include <os/object.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'ApplicationServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h:9:
In file included from <module-includes>:1:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:23:10: fatal error: could not build module 'CoreServices'
#include <CoreServices/CoreServices.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'ApplicationServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h:9:
While building module 'CoreText' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks/ATS.framework/Headers/SFNTLayoutTypes.h:16:
In file included from <module-includes>:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreText.framework/Headers/CoreText.h:20:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTFont.h:20:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTFontDescriptor.h:20:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTFontTraits.h:14:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'ApplicationServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h:9:
While building module 'ColorSync' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:31:
In file included from <module-includes>:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks/ColorSync.framework/Headers/ColorSync.h:10:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ColorSync.framework/Headers/ColorSyncBase.h:12:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
While building module 'Foundation' imported from vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:
While building module 'ApplicationServices' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h:9:
While building module 'ImageIO' imported from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:47:
In file included from <module-includes>:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks/ImageIO.framework/Headers/ImageIO.h:10:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/ImageIO.framework/Headers/ImageIOBase.h:16:10: fatal error: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
 ~~~~~~~~^
vendor/gioui.org/app/internal/cocoainit/cocoa_darwin.go:9:9: fatal error: could not build module 'Foundation'
#import <Foundation/Foundation.h>
 ~~~~~~~^
16 errors generated.

I'm on macOS 10.15.7, and dlv itself is already installed and seems to be working fine.

step/next key bindings could be more intuitive

Firstly, thanks for making this GUI - it's really great!

I just had a minor thought about the key bindings for stepping.

I think I understand the current logic: it's as if instructions are laid out left to right and the stack goes down and up.

However in the GUI context, when stepping and looking at the source, I think a more natural view is to see the source lines as up and down, the way they're laid out on the screen and stepping into and out of a function as right and left respectively (as if stepping into a function is jumping into a new tab to the right of the current one).

This view would suggest the following bindings:

Alt-down: next
Alt-right: step
Alt-left: step out

gdlv exec error: no sRGB texture formats found

gdlv version 1.7
dlv version 1.7.2
go version 1.17.1 darwin/amd64
macOS 11.6, build; 20G165

Running

dlv exec path/to/bin

returns immediate error:

error: no sRGB texture found

Anybody know the cause/fix for this?

debugging a remote app ?

Wondering if this is supported with GDLV and Delve ?

Say i have a golang process running on linux box that has a static IP, and i want to debug it from my Desktop that is at home (and behind NAT).

Secondly, if i have 2 golang processes on that linux box, can i debug each golang process separately ?

No extension named MIT-SHM could be found on on the server

Hi All,

I believe I've found some interesting new facts regarding using X11 protocol remotely to draw windows.

It seems that shiny uses xgb (https://github.com/BurntSushi/xgb).
I've installed xgb and ran the following command:

go run go/path/src/github.com/BurntSushi/xgb/examples/create-window/main.go

And with my variable $DISPLAY set, I can see a new Window being displayed.

It is surprising that shiny complains about SHM and x11driver, where this message is actually being thrown when xgb is being called. I believe shiny project is the culprit (it hasn't been up-to-date with xgb). On top of that shiny has been forked by OakMound team that has been more active with shiny:

https://github.com/oakmound/shiny

The program gdlv uses nucular project - and this is the one that uses shiny. Maybe switching shiny from golang to oakmound?

Can anyone confirm this?

I really wanted to test gdlv remotely.
It is really unstable to debug with dlv remotely.

Best regards,
Ivan

gdlv debugs optimized function

When I attempt to debug a simple main.go file using gdlv debug main.go, I get the warning "Warning: debugging optimized function $GOROOT/src/runtime/proc.go", and I can't debug my un-optimized main.go file.

I've attempted building the file with optimizations and inlining turned off (using the suggestions in https://groups.google.com/forum/#!topic/golang-nuts/MASPs81edfU), but that hasn't helped. I don't have this problem when I debug with the delve backend, but I'd really like to use the visual debugger.

Here's what I'm seeing:
screen shot 2019-01-22 at 9 42 04 am

I'm using go version go1.11.4 darwin/amd64 and running gdlv on macOS 10.13.6.

stack trace always shows "Loading..."

Version information

OS uname -a:

Linux snazzy 4.15.0-50-generic #54-Ubuntu SMP Mon May 6 18:46:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

go version: go version devel +e883d000f4 Wed May 29 13:27:00 2019 +0000 linux/amd64

gdlv version:

/home/rog/src/go/bin/gdlv devel +e883d000f4 Wed May 29 13:27:00 2019 +0000
path github.com/aarzilli/gdlv
mod github.com/aarzilli/gdlv (devel)
dep github.com/BurntSushi/xgb v0.0.0-20160522221800-27f122750802
dep github.com/aarzilli/nucular v0.0.0-20181227101716-d1a942545d6d
dep github.com/derekparker/delve v1.1.0
dep github.com/golang/freetype v0.0.0-20161208064710-d9be45aaf745
dep github.com/hashicorp/golang-lru v0.0.0-20160813221303-0a025b7e63ad
dep golang.org/x/exp v0.0.0-20171209012058-072991165226
dep golang.org/x/image v0.0.0-20170331233916-ce0faa1867f5
dep golang.org/x/mobile v0.0.0-20170307115833-eb9032959f05

dlv version:

/home/rog/src/go/bin/dlv devel +e883d000f4 Wed May 29 13:27:00 2019 +0000
path github.com/go-delve/delve/cmd/dlv
mod github.com/go-delve/delve v1.2.0
dep github.com/cosiner/argv v0.0.0-20170225145430-13bacc38a0a5
dep github.com/mattn/go-isatty v0.0.3
dep github.com/peterh/liner v0.0.0-20170317030525-88609521dc4b
dep github.com/sirupsen/logrus v0.0.0-20180523074243-ea8897e79973
dep github.com/spf13/cobra v0.0.0-20170417170307-b6cb39589372
dep github.com/spf13/pflag v0.0.0-20170417173400-9e4c21054fa1
dep golang.org/x/arch v0.0.0-20171004143515-077ac972c2e4
dep golang.org/x/crypto v0.0.0-20180614174826-fd5f17ee7299
dep golang.org/x/sys v0.0.0-20180614134839-8883426083c0
dep gopkg.in/yaml.v2 v2.0.0-20170407172122-cd8b52f8269e

When I run gdlv, I never see a stack trace in the Stacktrace window, just "Loading...":

image

If I use the dlv command on the command line, the bt command does correctly show the stack trace.

Update golang.org/x/exp dependency

Hello,

can you please update the dependency on golang.org/x/exp to the latest version in nucular and gdlv?

This would fix the F10 key (step over) not working on Windows (see golang/exp#8).

Thanks!

using old shiny dependency that causes bug when go getting

this is an OSX issue

Its eaily fixed by updating your shiny vendoring.
The bug that you see belwo was fixed in shiny months ago. Nigel accepted it.



x-MacBook-Pro:aarzilli apple$ go get github.com/aarzilli/gdlv
# github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver
gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.m:110:23: warning: 'NSScrollWheel' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
/System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h:82:26: note: 'NSScrollWheel' has been explicitly marked deprecated here
gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.m:164:30: warning: 'NSKeyDown' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
/System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h:74:26: note: 'NSKeyDown' has been explicitly marked deprecated here
gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.m:253:15: warning: 'NSTitledWindowMask' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:953:32: note: 'NSTitledWindowMask' has been explicitly marked deprecated here
gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.m:256:23: warning: 'NSResizableWindowMask' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:956:32: note: 'NSResizableWindowMask' has been explicitly marked deprecated here
gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.m:257:23: warning: 'NSMiniaturizableWindowMask' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:955:32: note: 'NSMiniaturizableWindowMask' has been explicitly marked deprecated here
gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.m:258:23: warning: 'NSClosableWindowMask' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:954:32: note: 'NSClosableWindowMask' has been explicitly marked deprecated here

invalid pseudo-version: does not match version-control timestamp when building

Platform: Linux (Void)
Go Version: go1.13.1 linux/amd64

When building the project I recieved the following error:
go: github.com/BurntSushi/[email protected]: invalid pseudo-version: does not match version-control timestamp (2016-05-22T18:18:43Z)

This appears to because of the recent jump from version 1.1.12 to 1.1.13.
Here's from the release notes https://tip.golang.org/doc/go1.13#version-validation

I'm going to submit a pull requests to fix the issue.

There probably needs to be a test if it still builds on 1.1.12

x11driver: no matching Visualid

I wonder what could be the cause of this error?

niko@desk:/home/xxxx/src$ gdlv debug github.com/project/repo -- -option1 0 --port 5500
could not create window: x11driver: no matching Visualidn

I am using Xinerama over 2 Nvidia GPUs with 3 monitors and i3 window manager, on Ubuntu 16.04, if this matters.

How to debug a test?

in dlv it's simple. I can just:

$ dlv test ./control
(dlv) break control.TestDockerGetsRepos
(dlv) continue

from the root of my project where there is a go test:
./control/docker_test.go

with a test function:
func (suite *DockerSuite) TestDockerGetsRepos() {...}

If I do gdlv test ./control I get:

Compiling...done
can't load package: package gerrit.it.here.com/olp/dp/ipaas: no buildable Go source files in /Users/jeremybr/Dev/src/gerrit.it.here.com/olp/dp/ipaas

exit status 1

Make possible saving layouts

Hi!

First of all, thanks for the project.

I'd like to ask you to make possible to save panels layouts. Currently, every time I open gdlv, it displays the Listing, Command, Stacktrace and Variables panels, and I always find myself adding Breakpoints and Sources. It's tedious and time consuming to do this setup again and again. So, if there was an option to save the current layout (or even save it automatically like gdlv does with breakpoints) for them to be restored the next time I run gdlv, it would come in handy.

Can not connect to display server

gdlv core <executable> <core> panics immediately upon start with an "empty display string" panic:

gdlv core ./hello core
panic: empty display string

goroutine 1 [running]:
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/clipboard.Start()
	/usr/local/google/home/jbd/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/clipboard/clipboard_linux.go:26 +0x7e
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.NewMasterWindow(0x80, 0x98dbfa, 0x4, 0x9ae7b8, 0x0, 0x0)
	/usr/local/google/home/jbd/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:91 +0x197
main.main()
	/usr/local/google/home/jbd/src/github.com/aarzilli/gdlv/main.go:675 +0xd5

OSX screen elements (widgets) are much smaller.

All the screen elements (widgets) are much smaller on OSX, compared to win10.

In the nucular _demo there is no difference between OSX and windows10..

So something in gdlv is making the screen size of all elements much smaller...

TestShortenType is breaking the tests

When I run the command $ go test -v I receive this error message:
github.com/aarzilli/gdlv [github.com/aarzilli/gdlv.test] ./misc_test.go:9:10: undefined: shortenType FAIL github.com/aarzilli/gdlv [build failed]

Obviously it's complaining about the shortenType function which looks like it's replaced by prettyprint.ShortType(type.V). I came to conclusion by just grepping for all the instances of shortenType in the code base.

Here's all the instances in the shortenType in the code base
$ grep -inr shortenType * infovars.go:75: r.ShortType = prettyprint.ShortenType(v.Type) internal/prettyprint/prettyprint.go:408: return ShortenType(v.Type) internal/prettyprint/prettyprint.go:411:func ShortenType(typ string) string { internal/prettyprint/prettyprint.go:412: out, ok := shortenTypeEx(typ) internal/prettyprint/prettyprint.go:419:func shortenTypeEx(typ string) (string, bool) { internal/prettyprint/prettyprint.go:422: sub, ok := shortenTypeEx(typ[2:]) internal/prettyprint/prettyprint.go:425: sub, ok := shortenTypeEx(typ[1:]) internal/prettyprint/prettyprint.go:436: key, keyok := shortenTypeEx(typ[4:i]) internal/prettyprint/prettyprint.go:437: val, valok := shortenTypeEx(typ[i+1:]) misc_test.go:7:func TestShortenType(t *testing.T) { misc_test.go:9: out := shortenType(src)

My suggestion is to remove TestShortenType out of misc_tests.go which I did in pull request #43

Support you

I can't even express how much value this project has added to my development cycle since I found it a week ago. Thank you so much for building it!

Do you have anywhere I can donate to support this project? Or is there some non-monetary way I can support it?

Installation errors due to dependency problems

I was following the readme and got this after running go get -u github.com/aarzilli/gdlv:

go: finding github.com/derekparker/delve v1.2.0
go: github.com/derekparker/[email protected]: parsing go.mod: unexpected module path "github.com/go-delve/delve"
go get: error loading module requirements

Drag scrolling (on macOS laptop with a retina display) is too fast

There may be a way to adjust this, but I could not find it.

What I want is to scroll with drag gestures on my trackpad; this "works" but instead of scrolling a few lines, unless I am very careful with my drag motion, the contents of the window fly past too quickly.

I wonder if this is an interaction with the magnification/zoom for a retina display.

restart crashes if no program open

$ echo foo >bar
$ gdlv run bar

Type restart in the gui.

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x128 pc=0x84e589]

goroutine 82 [running]:
main.restart(0xbd3440, 0xc420372460, 0x0, 0x0, 0x2, 0xc4203a0e00)
	/home/tv/go/src/github.com/aarzilli/gdlv/commands.go:276 +0x39
main.(*Commands).Call(0xc4203120e0, 0xc4203a5d70, 0x7, 0x0, 0x0, 0xbd3440, 0xc420372460, 0xc2e140, 0xc4203987c8)
	/home/tv/go/src/github.com/aarzilli/gdlv/commands.go:976 +0x74
main.executeCommand(0xc4203a5d70, 0x7)
	/home/tv/go/src/github.com/aarzilli/gdlv/commands.go:901 +0x130
created by main.updateCommandPanel
	/home/tv/go/src/github.com/aarzilli/gdlv/main.go:258 +0x67b
[EXIT:2] $ 

Puzzling differences between `gdlv run` and `gdlv debug` output.

Hi Alessandro, firstly can I say thank you for producing this software. In my struggles to find a good solution for producing Golang I have been tried every combination of tools. For instance Atom is a fine editor, but currently the Go-Debug add-on does not work! VSCode on the other hand is a reasonable editor, but the linkup with Delve is horribly slow and the watch values are not even shown in hexadecimal! Now, I am using https://www.chimehq.com as my editor - it's small and fast, and I'm hoping to use gdlv as my debugger.

However, I'm trying to debug the code at https://github.com/carlca/gowig. If I run gdlv with gdlv run main.go Diffusion,bwpreset the value size is correctly printed with the value 7. If I use gdlv debug main.go Diffusion.bwpreset the value size is shown on screen as having the value 1025535859. Instinctively I feel that something may not be quite right here ;-) Maybe, having just started using gdlv, I'm doing something wrong. What do you think?

Cheers,
Carl

Installation problem - MacOS Sierra 10.12.6 - redefinition of enumerator

Wondering if you could help me. Trying to install gdlv ... go get -u github.com/aarzilli/gdlv and I get the following errors:

github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver

cocoa.m:24:5: error: redefinition of enumerator 'NSEventTypeScrollWheel'
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h:40:5: note: previous definition is here
cocoa.m:25:5: error: redefinition of enumerator 'NSEventTypeKeyDown'
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h:32:5: note: previous definition is here
cocoa.m:28:5: error: redefinition of enumerator 'NSWindowStyleMaskTitled'
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:36:5: note: previous definition is here
cocoa.m:29:5: error: redefinition of enumerator 'NSWindowStyleMaskResizable'
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:39:5: note: previous definition is here
cocoa.m:30:5: error: redefinition of enumerator 'NSWindowStyleMaskMiniaturizable'
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:38:5: note: previous definition is here
cocoa.m:31:5: error: redefinition of enumerator 'NSWindowStyleMaskClosable'
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:37:5: note: previous definition is here

allow text selection and copy in non-Command windows

Currently it's only possible to select and copy text in the Command window, but it can also be useful to copy text in other windows to the system pasteboard, particularly values inspected on the stack or heap. Screenshot and OCR or manual typing is not where it's at :)

Can not launch gdlv in remote x11 server

When I use gdlv on the local server, everything is ok. However, when i try to launch gdlv on my remote x11 server(by using xmanager), I got such error message: "could not create window: x11driver: shm.Init failed: No extension named MIT-SHM could be found on on the server", could i disable MIT-SHM?

question about remote debugging

Hi Arzilli,

I tried to run gdlv on windows to debug a session on remote linux server, is it supposed to work?
I could launch it successfully while the 'listing' window shows assembly only.

steps:

linux server: dlv debug --headless --listen
windows: gdlv connect

Thanks a lot.

using an old version of delve gives "Loading..." window

In issue #30, I discovered that if you use gdlv with an old version of delve, it fails by showing a stacktrace window that always displays "Loading...".

It would be better if a more obvious error was displayed, such as "old version of delve in use", or even better, if it could fall gracefully back to using the old version of the API.

error: unknown flag --backend

Hi,

Since I haven't been able to debug or c&p the error from the UI, here you are an screenshot.

With $ gdlv debug:

screenshot 2017-05-09 17 36 26

Regards,

Document Shortcuts

I was about to create an issue to tell to increase the font size just like #4 and found that there's a shortcut for it.
It would be nice if all the shortcuts (if there are more) were documented.

help

go version go1.12.9 darwin/amd64
go get -v github.com/aarzilli/gdlv
github.com/aarzilli/gdlv/infovars.go:419:76: elapsed.Milliseconds undefined (type time.Duration has no field or method Milliseconds)

Invalid instruction running gdlv on macOS and connecting to dlv running in Debian

I'm running dlv --headless ... in Debian Buster in a Docker container, and then running gdlv connect on macOS, and when doing so the application doesn't start but instead outputs a panic.

SIGILL: illegal instruction
PC=0x7fff2eda88a1 m=8 sigcode=1
signal arrived during cgo execution

dlv OS: Debian Buster
dlv Go version: go version go1.13.3 linux/amd64
dlv Commands to run:

git clone https://github.com/leighmcculloch/gocheckregex
cd gocheckregex
git checkout 6b11be6c054271e7add4657d4603d1d522820ecf
dlv  --headless --listen localhost:8000 test ./. -- -test.run 'TestCheckNoGlobals$' -test.v

gdlv OS: macOS Catalina
gdlv Go version: go version go1.13.3 darwin/amd64
gdlv Command:

gdlv connect localhost:8000
Full Output
SIGILL: illegal instruction
PC=0x7fff2eda88a1 m=8 sigcode=1
signal arrived during cgo execution

goroutine 36 [syscall, locked to thread]:
runtime.cgocall(0x4517b50, 0xc00036e710, 0x41bc596)
	/usr/local/go/src/runtime/cgocall.go:128 +0x5b fp=0xc00036e6e0 sp=0xc00036e6a8 pc=0x4004eab
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver._Cfunc_makeCurrentContext(0x5ab7b30)
	_cgo_gotypes.go:298 +0x41 fp=0xc00036e710 sp=0xc00036e6e0 pc=0x4185491
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.drawLoop(0xc000364120, 0x1)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.go:147 +0x60 fp=0xc00036e7d0 sp=0xc00036e710 pc=0x4186540
runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:1357 +0x1 fp=0xc00036e7d8 sp=0xc00036e7d0 pc=0x405c291
created by github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.preparedOpenGL
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.go:92 +0xe4

goroutine 1 [chan receive, locked to thread]:
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.drawgl(0x580aab0)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.go:134 +0x15e
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver._cgoexpwrap_27aa1b851ebe_drawgl(0x580aab0)
	_cgo_gotypes.go:377 +0x2b
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver._Cfunc_startDriver()
	_cgo_gotypes.go:311 +0x41
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.main(0xc0001201e0, 0x400e838, 0x10)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.go:107 +0x4d
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.Main(0xc0001201e0)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/gldriver.go:26 +0x2f
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver.main(...)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/driver_darwin.go:15
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver.Main(...)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/driver.go:24
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.(*masterWindow).Main(0xc0000bf400)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:73 +0x58
main.main()
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/main.go:1030 +0x2bb

goroutine 11 [semacquire]:
sync.runtime_SemacquireMutex(0xc0000bf5b0, 0xc000364100, 0x1)
	/usr/local/go/src/runtime/sema.go:71 +0x47
sync.(*Mutex).lockSlow(0xc0000bf5ac)
	/usr/local/go/src/sync/mutex.go:138 +0xfc
sync.(*Mutex).Lock(...)
	/usr/local/go/src/sync/mutex.go:81
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.(*masterWindow).main(0xc0000bf400, 0x471dfa0, 0x4b16d20)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:100 +0x2b0
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.driverStarted.func1()
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.go:114 +0x40
created by github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.driverStarted
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/cocoa.go:113 +0x35

goroutine 52 [chan receive]:
github.com/aarzilli/gdlv/vendor/golang.org/x/mobile/gl.(*context).enqueue(0xc000350160, 0x57, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/mobile/gl/work.go:111 +0xd3
github.com/aarzilli/gdlv/vendor/golang.org/x/mobile/gl.(*context).IsProgram(0xc000350160, 0x135c00, 0x4)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/mobile/gl/gl.go:1045 +0xcb
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.(*screenImpl).NewTexture(0x4b16d20, 0x280, 0x1e0, 0x0, 0x0, 0x0, 0x0)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/screen.go:78 +0x1a0
github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver.(*windowImpl).Upload(0xc000364120, 0x0, 0x0, 0x47210e0, 0xc000360070, 0x0, 0x0, 0x280, 0x1e0)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/golang.org/x/exp/shiny/driver/gldriver/window.go:126 +0x126
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.(*masterWindow).updateLocked(0xc0000bf400)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:279 +0x274
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.(*masterWindow).updater.func1(0xc0000bf400, 0xc00036e7c7)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:226 +0x136
github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.(*masterWindow).updater(0xc0000bf400)
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:238 +0x3c
created by github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular.(*masterWindow).main
	/Users/leighmcculloch/go/src/github.com/aarzilli/gdlv/vendor/github.com/aarzilli/nucular/shiny.go:96 +0x1c8

rax    0x0
rbx    0xc00036e710
rcx    0x0
rdx    0x0
rdi    0x0
rsi    0x1f08000c
rbp    0x70000b6adef0
rsp    0x70000b6adeb0
r8     0x0
r9     0x0
r10    0x0
r11    0x0
r12    0x5ab7b30
r13    0x0
r14    0x4701932
r15    0x0
rip    0x7fff2eda88a1
rflags 0x10202
cs     0x2b
fs     0x0
gs     0x0

using smaller screen can cause windows to become inaccessible

I was using gdlv on a large external screen, then later on my laptop screen.
When I tried to create the Goroutines window on my laptop, it did not appear.

After some investigation, I found the SavedBounds field in .config/gdlv file, which contained the following values:

{
	"": {
		"H": 1025,
		"W": 1920,
		"X": 0,
		"Y": 0
	},
	"Globals": {
		"H": 300,
		"W": 500,
		"X": 76,
		"Y": 76
	},
	"Goroutines": {
		"H": 344,
		"W": 619,
		"X": 583,
		"Y": 1265
	},
	"Stacktrace": {
		"H": 300,
		"W": 500,
		"X": 76,
		"Y": 76
	}
}

The Y value for Goroutines is more than the vertical size of my laptop screen.
When I manually removed the SavedBounds section, I could successfully create and see the window again.

Osx maximise window results in beach all forever

Go 1.8.3
Osx, latest public stable.

When I maximise the window it goes into beachball lockup for ever.
When I minimise down to the dock, and then click on it in the dock it also goes into beachball forever.

When the window is in normal mode, resizing the window works perfectly btw. It's very fast too.

I also tried https://github.com/aarzilli/nucular to see if the same behaviour exists there and it does.

Gdlv only lists a subset of the goroutines

I am trying to use gdlv to debug a core dump with almost 1k goroutines. When I do that in dlv, I get a list of all goroutines:

[947 goroutines]
(dlv)

However, gdlv UI only shows a hundred or so. Even if I try to increase the limit in the goroutines window, the list doesn't grow. Am I missing something here?

Ctrl-plus and Ctrl-minus don't appear to work on macOS Catalina

Similar to #39 opening gdlv on macOS Catalina doesn't respond to keypresses of Ctrl-minus and Ctrl-minus.

I'm attempting to use those keys to scale the app/fonts because on a Mac retina screen it opens looking tiny.

I added a fmt.Printf as is described in #39 (comment), and the result was curious. Most key presses in the app result in no output. The only key that when I press causes output is the Enter/Return key. When pressing Enter/Return, I see:

key.Event{Rune:10, Code:0x28, Modifiers:0x0, Direction:0x1}

debugging a Raspberry PI

Wondering if DLV and GDLV is likly to support debugging a raspberry Pi locally ?

The GUi can run on a Raspberry PI due to the needed drivers i think ?
Its probably more to do with DLV supporting Raspberry pi ?

Tag a release

This seems to be in pretty good shape. Having tags would be helpful for packagers to provide a stable release for Linux.

Method to pass arguments to dlv

Is there a way to pass dlv arguments from gdlv ? I am trying to set the working directory (dlv cmdline arg --wd) from gdlv. I am unable to find a way.

Increase font size

Increase the font size (or allow an option to do so) for old people with HiDPI screens.

reply or replay?

In the help string you have a command 'reply' , should be replay.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.