fix(telemetry): inject appVersion at build + auto-resolve at runtime

The released v0.45.1 binary shipped with the source default
appVersion="dev" because .goreleaser.yaml had ldflags="-s -w" only,
so every startup ping was rejected by the receiver with HTTP 400
(invalid version: regex requires leading digit).

Two-layer fix:

1. .goreleaser.yaml now passes -X main.appVersion={{.Version}} so
   goreleaser-built binaries report the actual release version.
2. Switch to telemetry.SendForModule which prefers
   debug.ReadBuildInfo Main/Deps when available, falling back to
   appVersion. This means `go install github.com/lukaszraczylo/
   graphql-monitoring-proxy@vX.Y.Z` users also get correct versions
   without relying on the ldflag.

Bumps oss-telemetry to v0.2.1 for SendForModule.
This commit is contained in:
2026-05-22 23:34:09 +01:00
parent 21b429c98a
commit 287289cd80
4 changed files with 5 additions and 4 deletions
+1
View File
@@ -19,6 +19,7 @@ builds:
- arm64
ldflags:
- -s -w
- -X main.appVersion={{.Version}}
archives:
- id: graphql-proxy