Skip to content

Debug Console inspect variable have strange random key. #2686

@zzjin

Description

@zzjin

What version of Go, VS Code & VS Code Go extension are you using?

Version Information
  • Run go version to get version of Go from the VS Code integrated terminal.
go version go1.20.1 linux/amd64
  • Run gopls -v version to get version of Gopls from the VS Code integrated terminal.
Build info
----------
golang.org/x/tools/gopls v0.11.0
    golang.org/x/tools/gopls@v0.11.0 h1:/nvKHdTtePQmrv9XN3gIUN9MOdUrKzO/dcqgbG6x8EY=
    github.com/BurntSushi/toml@v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak=
    github.com/google/go-cmp@v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
    github.com/sergi/go-diff@v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
    golang.org/x/exp@v0.0.0-20221031165847-c99f073a8326 h1:QfTh0HpN6hlw6D3vu8DAwC8pBIwikq0AI1evdm+FksE=
    golang.org/x/exp/typeparams@v0.0.0-20221031165847-c99f073a8326 h1:fl8k2zg28yA23264d82M4dp+YlJ3ngDcpuB1bewkQi4=
    golang.org/x/mod@v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA=
    golang.org/x/sync@v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o=
    golang.org/x/sys@v0.2.0 h1:ljd4t30dBnAvMZaQCevtY0xLLD0A+bRZXbgLMLU1F/A=
    golang.org/x/text@v0.4.0 h1:BrVqGRd7+k1DiOgtnFvAkoQEWQvBc25ouMJM6429SFg=
    golang.org/x/tools@v0.3.1-0.20221213193459-ca17b2c27ca8 h1:7/HkGkN/2ktghBCSRRgp31wAww4syfsW52tj7yirjWk=
    golang.org/x/vuln@v0.0.0-20221109205719-3af8368ee4fe h1:qptQiQwEpETwDiz85LKtChqif9xhVkAm8Nhxs0xnTww=
    honnef.co/go/tools@v0.3.3 h1:oDx7VAwstgpYpb3wv0oxiZlxY+foCpRAwY7Vk6XpAgA=
    mvdan.cc/gofumpt@v0.4.0 h1:JVf4NN1mIpHogBj7ABpgOyZc65/UUOkKQFkoURsz4MM=
    mvdan.cc/xurls/v2@v2.4.0 h1:tzxjVAj+wSBmDcF6zBB7/myTy3gX9xvi8Tyr28AuQgc=
go: go1.20.1
  • Run code -v or code-insiders -v to get version of VS Code or VS Code Insiders.
1.76.0-insider
92da9481c0904c6adfe372c12da3b7748d74bdcb
x64
  • Check your installed extensions to get the version of the VS Code Go extension
Go Nightly
v2023.2.2621
  • Run Ctrl+Shift+P (Cmd+Shift+P on Mac OS) > Go: Locate Configured Go Tools command.
GOBIN: undefined
toolsGopath: 
gopath: /home/zzjin/go
GOROOT: /usr/local/go
PATH: /home/zzjin/.vscode-server-insiders/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/remote-cli:/home/zzjin/.local/share/pnpm:/home/zzjin/.nvm/versions/node/v18.7.0/bin:/home/zzjin/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/home/zzjin/go/bin:/home/zzjin/.local/bin

	go:	/usr/local/go/bin/go: go version go1.20.1 linux/amd64

	gotests:	/home/zzjin/go/bin/gotests	(version: v1.6.0 built with go: go1.20.1)
	gomodifytags:	/home/zzjin/go/bin/gomodifytags	(version: v1.16.0 built with go: go1.20.1)
	impl:	/home/zzjin/go/bin/impl	(version: v1.1.0 built with go: go1.20.1)
	goplay:	/home/zzjin/go/bin/goplay	(version: v1.0.0 built with go: go1.20.1)
	dlv:	/home/zzjin/go/bin/dlv	(version: v1.20.1 built with go: go1.20.1)
	staticcheck:	/home/zzjin/go/bin/staticcheck	(version: v0.4.2 built with go: go1.20.1)
	gopls:	/home/zzjin/go/bin/gopls	(version: v0.11.0 built with go: go1.20.1)

go env
Workspace Folder (zzjin): /home/zzjin/Projects/zzjin
	GO111MODULE="on"
	GOARCH="amd64"
	GOBIN=""
	GOCACHE="/home/zzjin/.cache/go-build"
	GOENV="/home/zzjin/.config/go/env"
	GOEXE=""
	GOEXPERIMENT=""
	GOFLAGS=""
	GOHOSTARCH="amd64"
	GOHOSTOS="linux"
	GOINSECURE=""
	GOMODCACHE="/home/zzjin/go/pkg/mod"
	GONOPROXY=""
	GONOSUMDB=""
	GOOS="linux"
	GOPATH="/home/zzjin/go"
	GOPRIVATE=""
	GOPROXY="https://goproxy.cn,direct"
	GOROOT="/usr/local/go"
	GOSUMDB="sum.golang.google.cn"
	GOTMPDIR=""
	GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
	GOVCS=""
	GOVERSION="go1.20.1"
	GCCGO="gccgo"
	GOAMD64="v1"
	AR="ar"
	CC="gcc"
	CXX="g++"
	CGO_ENABLED="1"
	GOMOD="/home/zzjin/Projects/labring/zzjin/go.mod"
	GOWORK="/home/zzjin/Projects/labring/zzjin/go.work"
	CGO_CFLAGS="-O2 -g"
	CGO_CPPFLAGS=""
	CGO_CXXFLAGS="-O2 -g"
	CGO_FFLAGS="-O2 -g"
	CGO_LDFLAGS="-O2 -g"
	PKG_CONFIG="pkg-config"
	GOGCCFLAGS="-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build1167587404=/tmp/go-build -gno-record-gcc-switches"

Share the Go related settings you have added/edited

vscode go config Information
{
    "go.delveConfig": {
        "useApiV1": false,
        "showGlobalVariables": true,
    },
    "go.autocompleteUnimportedPackages": true,
    "go.useLanguageServer": true,
    "[go]": {
        "editor.snippetSuggestions": "none",
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
            "source.organizeImports": true
        },
        "editor.codeActionsOnSaveTimeout": 1000,
    },
    "[go.mod]": {
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
            "source.organizeImports": true,
        },
    },
    "gopls": {
        "usePlaceholders": false,
        "ui.semanticTokens": true,
        "ui.noSemanticNumber": true,
        "ui.noSemanticString": true,
        "completeUnimported": true,
    },
}

Describe the bug

When run any test with break point, I want to inspect variables, the debug view under activity bar ,show variables right:
image
But when I changed to vscode's debug console view, and inspect same var using dlv's command, there are strange rand key shown up:
image

If inspect with map, there are so many rand runes, witch seems annoying and confused with real inspect variable:
image

Metadata

Metadata

Assignees

No one assigned

    Labels

    DebugIssues related to the debugging functionality of the extension.FrozenDueToAgeupstream-vscodeIssues that are by problems in VS Code itself.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions