protoc-gen-jsonschema icon indicating copy to clipboard operation
protoc-gen-jsonschema copied to clipboard

Add initial support for protovalidate

Open sudorandom opened this issue 2 years ago • 0 comments

protoc-gen-validate has a successor named protovalidate. This changeset adds support for a number of protovalidate constraints. Specifically, it adds support for the following:

  • (buf.validate.field).required
  • (buf.validate.field).repeated.min_items
  • (buf.validate.field).repeated.max_items
  • (buf.validate.field).string.min_len
  • (buf.validate.field).string.max_len
  • (buf.validate.field).string.pattern
  • (buf.validate.field).int32.gt
  • (buf.validate.field).int32.lt
  • (buf.validate.field).int32.gte
  • (buf.validate.field).int32.lte
  • (buf.validate.field).int64.gt
  • (buf.validate.field).int64.lt
  • (buf.validate.field).int64.gte
  • (buf.validate.field).int64.lte
  • (buf.validate.field).float.gt
  • (buf.validate.field).float.lt
  • (buf.validate.field).float.gte
  • (buf.validate.field).float.lte
  • (buf.validate.field).string.email
  • (buf.validate.field).string.uuid
  • (buf.validate.field).string.uri
  • (buf.validate.field).string.hostname
  • (buf.validate.field).string.ipv4
  • (buf.validate.field).string.ipv6
  • (buf.validate.field).uint32.gt
  • (buf.validate.field).uint32.lt
  • (buf.validate.field).uint32.gte
  • (buf.validate.field).uint32.lte
  • (buf.validate.field).uint64.gt
  • (buf.validate.field).uint64.lt
  • (buf.validate.field).uint64.gte
  • (buf.validate.field).uint64.lte

This changeset also adds support for (validate.rules).message.required from protoc-gen-validate, which is what initially led me to make this PR.

sudorandom avatar Nov 15 '23 15:11 sudorandom