Skip to content

Code completion error triggered between an attribute and its value #333

@rcjsuen

Description

@rcjsuen
services:
  backend:
    build:
      target:   stage

If textDocument/completion is triggered in the whitespace before stage, an error occurs.

{
    "textDocument": {
        "uri": "file:///Users/rcjsuen/tmp/empty/compose.yaml"
    },
    "position": {
        "line": 3,
        "character": 14
    },
    "context": {
        "triggerKind": 1
    }
}
goroutine 12 [running]:
runtime/debug.Stack()
	/opt/hostedtoolcache/go/1.24.3/x64/src/runtime/debug/stack.go:26 +0x64
runtime/debug.PrintStack()
	/opt/hostedtoolcache/go/1.24.3/x64/src/runtime/debug/stack.go:18 +0x1c
github.com/docker/docker-language-server/internal/pkg/server.(*Server).handleRecovered(0x140000d43c0, {0x140006b0768, 0x17}, {0x103e344a0, 0x140006b07f8})
	/home/runner/work/docker-language-server/docker-language-server/internal/pkg/server/server.go:203 +0x44
github.com/docker/docker-language-server/internal/pkg/server.NewServer.func1({0x140006b0768?, 0x14000059677?}, {0x103e344a0?, 0x140006b07f8?})
	/home/runner/work/docker-language-server/docker-language-server/internal/pkg/server/server.go:131 +0x40
github.com/docker/docker-language-server/internal/tliron/glsp/protocol.(*Handler).Handle.func1()
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/protocol/handler.go:100 +0x6c
panic({0x103e344a0?, 0x140006b07f8?})
	/opt/hostedtoolcache/go/1.24.3/x64/src/runtime/panic.go:792 +0x124
github.com/docker/docker-language-server/internal/compose.buildTargetCompletionItems(0x140004d72f0, 0x140001f6a20, {0x140003ce240, 0x4, 0x4?}, 0x14000285170, 0x0)
	/home/runner/work/docker-language-server/docker-language-server/internal/compose/completion.go:444 +0x3d0
github.com/docker/docker-language-server/internal/compose.Completion({0x104844640?, 0x103e59180?}, 0x140004d72f0, 0x140001f6a20, {0x103ef5ea8, 0x140000d3680})
	/home/runner/work/docker-language-server/docker-language-server/internal/compose/completion.go:235 +0x4e8
github.com/docker/docker-language-server/internal/pkg/server.(*Server).TextDocumentCompletion(0x140000d43c0, 0x140002a6f50, 0x140004d72f0)
	/home/runner/work/docker-language-server/docker-language-server/internal/pkg/server/completion.go:22 +0x230
github.com/docker/docker-language-server/internal/tliron/glsp/protocol.(*Handler).Handle(0x14000394488, 0x140002a6f50)
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/protocol/handler.go:388 +0x13c8
github.com/docker/docker-language-server/internal/tliron/glsp/server.(*Server).handle(0x140003c0000, {0x103eed768, 0x14000334000}, 0x1400038c090, 0x140005a2180)
	/home/runner/work/docker-language-server/docker-language-server/internal/tliron/glsp/server/handler.go:48 +0x220
github.com/sourcegraph/jsonrpc2.(*HandlerWithErrorConfigurer).Handle(0x140007023f0, {0x103eed768, 0x14000334000}, 0x1400038c090, 0x140005a2180)
	/home/runner/go/pkg/mod/github.com/sourcegraph/jsonrpc2@v0.2.0/handler_with_error.go:21 +0x4c
github.com/sourcegraph/jsonrpc2.(*Conn).readMessages(0x1400038c090, {0x103eed768, 0x14000334000})
	/home/runner/go/pkg/mod/github.com/sourcegraph/jsonrpc2@v0.2.0/conn.go:205 +0x2ac
created by github.com/sourcegraph/jsonrpc2.NewConn in goroutine 1
	/home/runner/go/pkg/mod/github.com/sourcegraph/jsonrpc2@v0.2.0/conn.go:62 +0x1d0

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions