Skip to content

Commit 932e2ca

Browse files
Merge pull request #173 from SpineEventEngine/deprecate-printf-message
Use placeholder-based messages in `ConstraintViolation`
2 parents d6299a8 + 3841eda commit 932e2ca

File tree

52 files changed

+1017
-645
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+1017
-645
lines changed

buildSrc/src/main/kotlin/io/spine/dependency/local/ProtoData.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ object ProtoData {
7373
* The version of ProtoData dependencies.
7474
*/
7575
val version: String
76-
private const val fallbackVersion = "0.80.3"
76+
private const val fallbackVersion = "0.80.5"
7777

7878
/**
7979
* The distinct version of ProtoData used by other build tools.
@@ -82,7 +82,7 @@ object ProtoData {
8282
* transitional dependencies, this is the version used to build the project itself.
8383
*/
8484
val dogfoodingVersion: String
85-
private const val fallbackDfVersion = "0.80.3"
85+
private const val fallbackDfVersion = "0.80.5"
8686

8787
/**
8888
* The artifact for the ProtoData Gradle plugin.

dependencies.md

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22

3-
# Dependencies of `io.spine.validation:spine-validation-java:2.0.0-SNAPSHOT.181`
3+
# Dependencies of `io.spine.validation:spine-validation-java:2.0.0-SNAPSHOT.182`
44

55
## Runtime
66
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -848,12 +848,12 @@
848848

849849
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
850850

851-
This report was generated on **Wed Dec 18 18:28:44 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
851+
This report was generated on **Tue Dec 24 20:20:40 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
852852

853853

854854

855855

856-
# Dependencies of `io.spine.validation:spine-validation-java-bundle:2.0.0-SNAPSHOT.181`
856+
# Dependencies of `io.spine.validation:spine-validation-java-bundle:2.0.0-SNAPSHOT.182`
857857

858858
## Runtime
859859
1. **Group** : org.jetbrains. **Name** : annotations. **Version** : 24.0.1.
@@ -1448,12 +1448,12 @@ This report was generated on **Wed Dec 18 18:28:44 WET 2024** using [Gradle-Lice
14481448

14491449
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
14501450

1451-
This report was generated on **Wed Dec 18 18:28:44 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
1451+
This report was generated on **Tue Dec 24 20:20:40 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
14521452

14531453

14541454

14551455

1456-
# Dependencies of `io.spine.validation:spine-validation-java-runtime:2.0.0-SNAPSHOT.181`
1456+
# Dependencies of `io.spine.validation:spine-validation-java-runtime:2.0.0-SNAPSHOT.182`
14571457

14581458
## Runtime
14591459
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
@@ -2110,12 +2110,12 @@ This report was generated on **Wed Dec 18 18:28:44 WET 2024** using [Gradle-Lice
21102110

21112111
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
21122112

2113-
This report was generated on **Wed Dec 18 18:28:44 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
2113+
This report was generated on **Tue Dec 24 20:20:41 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
21142114

21152115

21162116

21172117

2118-
# Dependencies of `io.spine.validation:spine-validation-java-tests:2.0.0-SNAPSHOT.181`
2118+
# Dependencies of `io.spine.validation:spine-validation-java-tests:2.0.0-SNAPSHOT.182`
21192119

21202120
## Runtime
21212121
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -3031,12 +3031,12 @@ This report was generated on **Wed Dec 18 18:28:44 WET 2024** using [Gradle-Lice
30313031

30323032
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
30333033

3034-
This report was generated on **Wed Dec 18 18:28:45 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
3034+
This report was generated on **Tue Dec 24 20:20:43 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
30353035

30363036

30373037

30383038

3039-
# Dependencies of `io.spine.validation:spine-validation-model:2.0.0-SNAPSHOT.181`
3039+
# Dependencies of `io.spine.validation:spine-validation-model:2.0.0-SNAPSHOT.182`
30403040

30413041
## Runtime
30423042
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -3895,12 +3895,12 @@ This report was generated on **Wed Dec 18 18:28:45 WET 2024** using [Gradle-Lice
38953895

38963896
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
38973897

3898-
This report was generated on **Wed Dec 18 18:28:45 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
3898+
This report was generated on **Tue Dec 24 20:20:43 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
38993899

39003900

39013901

39023902

3903-
# Dependencies of `io.spine.validation:spine-validation-proto:2.0.0-SNAPSHOT.181`
3903+
# Dependencies of `io.spine.validation:spine-validation-proto:2.0.0-SNAPSHOT.182`
39043904

39053905
## Runtime
39063906
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -4785,12 +4785,12 @@ This report was generated on **Wed Dec 18 18:28:45 WET 2024** using [Gradle-Lice
47854785

47864786
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
47874787

4788-
This report was generated on **Wed Dec 18 18:28:45 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
4788+
This report was generated on **Tue Dec 24 20:20:44 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
47894789

47904790

47914791

47924792

4793-
# Dependencies of `io.spine.validation:spine-validation-consumer:2.0.0-SNAPSHOT.181`
4793+
# Dependencies of `io.spine.validation:spine-validation-consumer:2.0.0-SNAPSHOT.182`
47944794

47954795
## Runtime
47964796
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -5657,12 +5657,12 @@ This report was generated on **Wed Dec 18 18:28:45 WET 2024** using [Gradle-Lice
56575657

56585658
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
56595659

5660-
This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
5660+
This report was generated on **Tue Dec 24 20:20:44 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
56615661

56625662

56635663

56645664

5665-
# Dependencies of `io.spine.validation:spine-validation-consumer-dependency:2.0.0-SNAPSHOT.181`
5665+
# Dependencies of `io.spine.validation:spine-validation-consumer-dependency:2.0.0-SNAPSHOT.182`
56665666

56675667
## Runtime
56685668
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
@@ -6410,12 +6410,12 @@ This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-Lice
64106410

64116411
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
64126412

6413-
This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
6413+
This report was generated on **Tue Dec 24 20:20:45 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
64146414

64156415

64166416

64176417

6418-
# Dependencies of `io.spine.validation:spine-validation-extensions:2.0.0-SNAPSHOT.181`
6418+
# Dependencies of `io.spine.validation:spine-validation-extensions:2.0.0-SNAPSHOT.182`
64196419

64206420
## Runtime
64216421
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -7308,12 +7308,12 @@ This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-Lice
73087308

73097309
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
73107310

7311-
This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
7311+
This report was generated on **Tue Dec 24 20:20:45 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
73127312

73137313

73147314

73157315

7316-
# Dependencies of `io.spine.validation:spine-validation-runtime:2.0.0-SNAPSHOT.181`
7316+
# Dependencies of `io.spine.validation:spine-validation-runtime:2.0.0-SNAPSHOT.182`
73177317

73187318
## Runtime
73197319
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
@@ -8064,12 +8064,12 @@ This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-Lice
80648064

80658065
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
80668066

8067-
This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
8067+
This report was generated on **Tue Dec 24 20:20:46 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
80688068

80698069

80708070

80718071

8072-
# Dependencies of `io.spine.validation:spine-validation-validating:2.0.0-SNAPSHOT.181`
8072+
# Dependencies of `io.spine.validation:spine-validation-validating:2.0.0-SNAPSHOT.182`
80738073

80748074
## Runtime
80758075
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
@@ -8824,12 +8824,12 @@ This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-Lice
88248824

88258825
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
88268826

8827-
This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
8827+
This report was generated on **Tue Dec 24 20:20:46 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
88288828

88298829

88308830

88318831

8832-
# Dependencies of `io.spine.validation:spine-validation-vanilla:2.0.0-SNAPSHOT.181`
8832+
# Dependencies of `io.spine.validation:spine-validation-vanilla:2.0.0-SNAPSHOT.182`
88338833

88348834
## Runtime
88358835
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
@@ -9575,12 +9575,12 @@ This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-Lice
95759575

95769576
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
95779577

9578-
This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
9578+
This report was generated on **Tue Dec 24 20:20:47 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
95799579

95809580

95819581

95829582

9583-
# Dependencies of `io.spine.validation:spine-validation-configuration:2.0.0-SNAPSHOT.181`
9583+
# Dependencies of `io.spine.validation:spine-validation-configuration:2.0.0-SNAPSHOT.182`
95849584

95859585
## Runtime
95869586
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -10449,12 +10449,12 @@ This report was generated on **Wed Dec 18 18:28:46 WET 2024** using [Gradle-Lice
1044910449

1045010450
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
1045110451

10452-
This report was generated on **Wed Dec 18 18:28:47 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
10452+
This report was generated on **Tue Dec 24 20:20:47 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
1045310453

1045410454

1045510455

1045610456

10457-
# Dependencies of `io.spine.validation:spine-validation-context:2.0.0-SNAPSHOT.181`
10457+
# Dependencies of `io.spine.validation:spine-validation-context:2.0.0-SNAPSHOT.182`
1045810458

1045910459
## Runtime
1046010460
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3.
@@ -11323,4 +11323,4 @@ This report was generated on **Wed Dec 18 18:28:47 WET 2024** using [Gradle-Lice
1132311323

1132411324
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
1132511325

11326-
This report was generated on **Wed Dec 18 18:28:47 WET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
11326+
This report was generated on **Tue Dec 24 20:20:48 CET 2024** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).

java-runtime/src/main/java/io/spine/validate/Constraint.java

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,24 @@ public interface Constraint {
4343
*/
4444
MessageType targetType();
4545

46+
/**
47+
* Produces an error message template for the given field validation context.
48+
*
49+
* <p>Please note, the full support of {@link TemplateString} is not implemented yet
50+
* for the runtime validation. This method was created to keep compatibility with
51+
* the updated {@link ConstraintViolation} structure, which now expects a template string
52+
* for error messages. The inheritors are not supposed to use or override this method.
53+
*
54+
* @param field
55+
* the validated field
56+
*/
57+
default TemplateString errorMessage(FieldContext field) {
58+
var formatted = formattedErrorMessage(field);
59+
return TemplateString.newBuilder()
60+
.setWithPlaceholders(formatted)
61+
.build();
62+
}
63+
4664
/**
4765
* Produces an error message for the given field validation context.
4866
*
@@ -52,7 +70,7 @@ public interface Constraint {
5270
* @param field
5371
* the validated field
5472
*/
55-
String errorMessage(FieldContext field);
73+
String formattedErrorMessage(FieldContext field);
5674

5775
/**
5876
* Accepts the given {@link ConstraintTranslator}.

0 commit comments

Comments
 (0)