diff --git a/main.go b/main.go index 211698165..798586ab6 100644 --- a/main.go +++ b/main.go @@ -8,6 +8,7 @@ import ( "github.com/evcc-io/evcc/cmd" "github.com/evcc-io/evcc/server" + _ "github.com/evcc-io/evcc/util/goversion" // require minimum go version ) //go:embed dist diff --git a/util/goversion/constraint.go b/util/goversion/constraint.go new file mode 100644 index 000000000..a6b7a7c2d --- /dev/null +++ b/util/goversion/constraint.go @@ -0,0 +1,8 @@ +// Approach from https://github.com/theckman/goconstraint/ + +// Package goversion should only be used as a blank import. If imported, it +// will only compile if the Go runtime version is >= 1.16. +package goversion + +// This will fail to compile if the Go runtime version isn't >= 1.16. +var _ = __EVCC_REQUIRES_GO_VERSION_1_16__ diff --git a/util/goversion/version.go b/util/goversion/version.go new file mode 100644 index 000000000..441eced48 --- /dev/null +++ b/util/goversion/version.go @@ -0,0 +1,6 @@ +//go:build go1.16 +// +build go1.16 + +package goversion + +const __EVCC_REQUIRES_GO_VERSION_1_16__ = uint8(0)