From 70bf26cf254ca56afb2f55be7eae3e72fe44d977 Mon Sep 17 00:00:00 2001 From: Sri Krishna Date: Fri, 28 Nov 2025 17:10:11 +0530 Subject: [PATCH] Make it so that you can define expression-only rules Signed-off-by: Sri Krishna --- src/main/java/build/buf/protovalidate/CompiledProgram.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/build/buf/protovalidate/CompiledProgram.java b/src/main/java/build/buf/protovalidate/CompiledProgram.java index 8f39e82d..e41e8fde 100644 --- a/src/main/java/build/buf/protovalidate/CompiledProgram.java +++ b/src/main/java/build/buf/protovalidate/CompiledProgram.java @@ -105,8 +105,12 @@ final class CompiledProgram { if (Boolean.TRUE.equals(value)) { return null; } + String message = this.source.message; + if (message.isEmpty()) { + message = String.format("\"%s\" returned false", this.source.expression); + } RuleViolation.Builder builder = - RuleViolation.newBuilder().setRuleId(this.source.id).setMessage(this.source.message); + RuleViolation.newBuilder().setRuleId(this.source.id).setMessage(message); if (rulePath != null) { builder.addAllRulePathElements(rulePath.getElementsList()); }