mirror of
https://github.com/protocolbuffers/protobuf-go.git
synced 2025-04-17 11:42:38 +00:00
cmd/protoc-gen-go: add compile-time assertion for legacy proto package version
Change-Id: I2bc71dae34b5af379838239210cc04e3e3547d2b Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/218939 Reviewed-by: Damien Neil <dneil@google.com>
This commit is contained in:
parent
93bccf763e
commit
3b512245dc
@ -46,6 +46,7 @@ var (
|
||||
protoifacePackage goImportPath = protogen.GoImportPath("google.golang.org/protobuf/runtime/protoiface")
|
||||
protoimplPackage goImportPath = protogen.GoImportPath("google.golang.org/protobuf/runtime/protoimpl")
|
||||
protoreflectPackage goImportPath = protogen.GoImportPath("google.golang.org/protobuf/reflect/protoreflect")
|
||||
protoV1Package goImportPath = protogen.GoImportPath("github.com/golang/protobuf/proto")
|
||||
)
|
||||
|
||||
type goImportPath interface {
|
||||
@ -74,6 +75,12 @@ func GenerateFile(gen *protogen.Plugin, file *protogen.File) *protogen.Generated
|
||||
g.P("_ = ", protoimplPackage.Ident("EnforceVersion"), "(", protoimplPackage.Ident("MaxVersion"), " - ", protoimpl.GenVersion, ")")
|
||||
g.P(")")
|
||||
g.P()
|
||||
|
||||
// TODO: Remove this after some soak-in period after the v2 release.
|
||||
g.P("// This is a compile-time assertion that a sufficiently up-to-date version")
|
||||
g.P("// of the legacy proto package is being used.")
|
||||
g.P("const _ = ", protoV1Package.Ident("ProtoPackageIsVersion4"))
|
||||
g.P()
|
||||
}
|
||||
|
||||
for i, imps := 0, f.Desc.Imports(); i < imps.Len(); i++ {
|
||||
|
Loading…
x
Reference in New Issue
Block a user