Open
Description
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.- go1.19 darwin/arm64
-
Run
gopls -v version
to get version of Gopls from the VS Code integrated terminal.- v0.9.4
-
Run
code -v
orcode-insiders -v
to get version of VS Code or VS Code Insiders.- v1.71.0
-
Check your installed extensions to get the version of the VS Code Go extension
- v0.35.2
-
Run Ctrl+Shift+P (Cmd+Shift+P on Mac OS) >
Go: Locate Configured Go Tools
command.- GO111MODULE=""
GOARCH="arm64"
GOBIN=""
GOCACHE="/Users/akibmohaimenurrahman/Library/Caches/go-build"
GOENV="/Users/akibmohaimenurrahman/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="arm64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/akibmohaimenurrahman/go/pkg/mod"
GONOPROXY="github.com/Tritura/"
GONOSUMDB="github.com/Tritura/"
GOOS="darwin"
GOPATH="/Users/akibmohaimenurrahman/go"
GOPRIVATE="github.com/Tritura/*"
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/opt/homebrew/opt/go/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/opt/homebrew/opt/go/libexec/pkg/tool/darwin_arm64"
GOVCS=""
GOVERSION="go1.19"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/dev/null"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/96/n6gn80q57hq7052j59gtgwyc0000gn/T/go-build2670980064=/tmp/go-build -gno-record-gcc-switches -fno-common"
- GO111MODULE=""
Share the Go related settings you have added/edited
Run Preferences: Open Settings (JSON)
command to open your settings.json file.
Share all the settings with the go.
or ["go"]
or gopls
prefixes.
"go.testFlags": [
"-count=1",
],
"go.lintTool": "golangci-lint",
"go.delveConfig": {
"apiVersion": 2,
"debugAdapter": "dlv-dap",
"logOutput": "dap",
"showLog": true,
},
"gopls": {
"ui.semanticTokens": true
},
Describe the bug
A clear and concise description of what the bug.
- When using logpoints to log variables that structs the print out cuts away halfway through
# got:\n {tag1)
> [Go 126]: Got:\n *github.com/Tritura/quarterjack-go-toolkit/neo4j/annotation.Tag {LinkAnnotation: github.com/Tritura/quarterjack-go-toolkit/neo4j/annotation.LinkAnnotation {Base: (*"github.com/Tritura/quarterjack-go-toolkit/neo4j/annotation.Base")(0x140008385b0), LinkType:...
A clear and concise description of what you expected to happen.
- When using logpoints to log variables that are structs I want to see the entire object
# log.Debug().Msgf("Expected:\n %+v", tag1)
tag_test.go:147 > Expected:
&{LinkAnnotation:{Base:{Id:b7b2ffa2-2419-451d-934f-7860dfb151fb StateId:b8c2ed99-bb07-495d-b83f-564fa9831a47 Type:Link CreatedBy:1f2f11d8-00c0-4076-ba5a-df4e81db7efb ModifiedBy:1f2f11d8-00c0-4076-ba5a-df4e81db7efb CreatedOn:2022-09-08 20:50:45.852 +0000 UTC ModifiedOn:2022-09-08 20:50:45.852 +0000 UTC Archived:false Properties:map[] ParentId:8c034985-1690-4b06-a8dd-f44d6a13ee48 Label:Test Tag Label} LinkType:Tag} Color:red}
Steps to reproduce the behavior:
The struct setup I have for example
type Base struct {
Id string `json:"id" mapstructure:"id,omitempty"`
StateId string `json:"stateId" mapstructure:"stateId,omitempty"`
Type string `json:"type" mapstructure:"type"`
CreatedBy string `json:"createdBy" mapstructure:"createdBy,omitempty"`
ModifiedBy string `json:"modifiedBy" mapstructure:"modifiedBy,omitempty"`
CreatedOn time.Time `json:"createdOn" mapstructure:"createdOn,omitempty"`
ModifiedOn time.Time `json:"modifiedOn" mapstructure:"modifiedOn,omitempty"`
Archived bool `json:"archived" mapstructure:"archived"`
Properties map[string]interface{} `json:"properties" mapstructure:"properties"`
ParentId string `json:"parentId" mapstructure:"parentId"`
Label string `json:"label" mapstructure:"label"`
// Labels []string `json:"labels" mapstructure:"labels"`
}
type LinkAnnotation struct {
Base
LinkType string `json:"linkType" mapstructure:"linkType"`
}
type Tag struct {
LinkAnnotation
Color string `json:"color" mapstructure:"string"`
}
- Create a large nested struct at least 3 layers deep
- Try to log it using the logpoint option on vscode
- See issue of not printing out the whole thing