虽然golang写protoc插件已经足够简单了golang源码分析:自定义proto插件,插件进程从标准输入读取出Code...
module github.com/envoyproxy/protoc-gen-validate go 1.19 require ( github.com/iancoleman/strcase v0.3.0 github.com/lyft/protoc-gen-star/v2 v2.0.4-0.20230330145011-496ad1ac90a4 golang.org/x/net v0.20.0 google.golang.org/protobuf v1.33.0 ) require ( github.com/spf13/afero v1....
protoc plugin to generate polyglot message validators - protoc-gen-validate/validate/validate.proto at master · gocuntian/protoc-gen-validate
protoc-gen-validate / go.sum go.sum44.96 KB 一键复制编辑原始数据按行查看历史 dependabot[bot]提交于16天前.Bump google.golang.org/protobuf from 1.36.3 to 1.36.4 in the go group (#1239) cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= ...
protoc-gen-validate包就在使用,我们可以看下它生成go代码的插件的的入口函数cmd/protoc-gen-validate-go/main.go 代码语言:javascript 复制 func main() { optional := uint64(pluginpb.CodeGeneratorResponse_FEATURE_PROTO3_OPTIONAL) pgs. Init(pgs.DebugEnv("DEBUG_PGV"), pgs.SupportedFeatures(&optional))...
虽然golang写protoc插件已经足够简单了golang源码分析:自定义proto插件,插件进程从标准输入读取出Code...
@@ -44,7 +44,7 @@ RUN wget -q https://storage.googleapis.com/golang/$GORELEASE \ # protoc-gen-go ENV PGG_PKG "github.com/golang/protobuf/protoc-gen-go" ENV PGG_PATH "${GOPATH}/src/${PGG_PKG}" ENV PGG_VER=v1.2.0 ENV PGG_VER=v1.3.1 RUN go get -d ${PGG_PKG} \...
protoc \ -I.\ -I${GOPATH}/src \ -I${GOPATH}/src/github.com/lyft/protoc-gen-validate \ --go_out=":../generated"\ --validate_out="lang=go:../generated"\ example.proto All messages generated include the newValidate() errormethod. PGV requires no additional runtime dependencies from...
业务代码中有很多参数校验的代码,如果手动实现,会非常繁琐,https://github.com/go-playground/validator是一个非常不错的选择echo 源码分析(validator),但是对于grpc来说,在定义proto的时候使用直接定义参数的限制规则是一种更合理、更优雅的方式,插件https://github.com/bufbuild/protoc-gen-validate就是来帮助我们实...
version: v1 deps: - buf.build/go-sdk/protoc-gen-validate:v0.6.7 lint: use: - DEFAULT breaking: use: - FILE buf.gen.yaml version: v1 plugins: - remote: buf.build/library/plugins/go:v1.27.1-1 out: pb opt: - paths=source_relative - remote: buf.build/library/plugins/go-grpc:v...