triggermesh/knative-lambda-runtime

Re-evaluate golang runtime

cab105 opened this issue · 0 comments

Go has been using modules instead of dep since at least 1.14. As a result dep has been archived and is no longer maintained.

Fast forward to Go 1.16, and what may have been considered legal is no longer permitted. One of the dependencies brought in by dep contains an invalid pointer:

pkg/mod/github.com/golang/dep@v0.5.4/gps/constraint.go:103:21: cannot use sv (type *semver.Version) as type semver.Version in field value
pkg/mod/github.com/golang/dep@v0.5.4/gps/constraint.go:122:16: invalid type assertion: c.(semver.Version) (non-interface type *semver.Constraints on left)
pkg/mod/github.com/golang/dep@v0.5.4/gps/constraint.go:149:4: undefined: semver.Constraint
error building image: error building stage: waiting for process to exit: exit status 2

I've been able to work around this by forcing the docker build image to use golang:1.15.8-alpiine instead of the default golang:latest however the correct approach should be to replace dep with go mod.