[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

`go version -m` missing module version information



`go version -m` prints "Go version and module versions used to build a
specific executable"

Example from the Go docs https://go.dev/ref/mod#go-version-m

> The -m flag causes go version to print each executable’s embedded module version information, when available. For each executable, go version -m prints a table with tab-separated columns like the one below.
>
> $ go version -m ~/go/bin/goimports
> /home/jrgopher/go/bin/goimports: go1.14.3
>        path    golang.org/x/tools/cmd/goimports
>        mod     golang.org/x/tools      v0.0.0-20200518203908-8018eb2c26ba      h1:0Lcy64USfQQL6GAJma8BdHCgeofcchQj+Z7j0SXYAzU=
>        dep     golang.org/x/mod        v0.2.0          h1:KU7oHjnv3XNWfa5COkzUifxZmxp1TyI7ImMXqFxLwvQ=
>        dep     golang.org/x/xerrors    v0.0.0-20191204190536-9bdfabe68543      h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=

However this information seems to be missing in Debian go binaries:

$ go version -m /usr/bin/caddy
caddy: go1.19.4
        path    github.com/caddyserver/caddy/v2/cmd/caddy
        build   -compiler=gc
        build   -trimpath=true
        build   CGO_ENABLED=0
        build   GOARCH=amd64
        build   GOOS=linux
        build   GOAMD64=v1

Presumably the module version information is stripped somehow. Could
it be added back? Or would it add too much to binary size?


Reply to: