|
15 | 15 | <packaging>pom</packaging> |
16 | 16 |
|
17 | 17 | <properties> |
18 | | - <!-- MAVEN PROJECT SETTINGS --> |
| 18 | + <!-- region [MAVEN PROJECT SETTINGS] --> |
19 | 19 | <project.encoding>UTF-8</project.encoding> |
20 | 20 | <project.build.sourceEncoding>${project.encoding}</project.build.sourceEncoding> |
21 | 21 | <project.reporting.outputEncoding>${project.encoding}</project.reporting.outputEncoding> |
| 22 | + <!-- endregion [MAVEN PROJECT SETTINGS] --> |
22 | 23 |
|
23 | | - <!-- KOTLIN PROJECT (KP) CUSTOM SETTINGS --> |
| 24 | + <!-- region [KOTLIN PROJECT (KP) CUSTOM SETTINGS] --> |
24 | 25 | <kp.generatedSources>${project.build.directory}/generated-sources</kp.generatedSources> |
25 | 26 | <kp.generatedTestSources>${project.build.directory}/generated-test-sources</kp.generatedTestSources> |
26 | 27 | <kp.generatedResources>${project.build.directory}/generated-resources</kp.generatedResources> |
|
37 | 38 | <kp.compile.useIncrementalKotlinCompiler>false</kp.compile.useIncrementalKotlinCompiler> |
38 | 39 | <kp.patternClassITest>**/*ITest.*</kp.patternClassITest> |
39 | 40 | <kp.patternClassTCTest>**/*TCTest.*</kp.patternClassTCTest> |
40 | | - <kp.javaOpenModules>--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED</kp.javaOpenModules> |
| 41 | + <kp.javaOpenModules>--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED |
| 42 | + </kp.javaOpenModules> |
41 | 43 | <kp.skipITests>false</kp.skipITests> |
| 44 | + <!-- endregion [KOTLIN PROJECT (KP) CUSTOM SETTINGS] --> |
42 | 45 |
|
43 | | - <!-- LANGUAGE VERSIONS --> |
| 46 | + <!-- region [LANGUAGE VERSIONS] --> |
44 | 47 | <kotlin.version>2.2.20</kotlin.version> |
45 | 48 |
|
46 | 49 | <kotlin.compiler.apiVersion>2.2</kotlin.compiler.apiVersion> |
|
49 | 52 | <kotlin.compiler.jvmTarget>${java.version}</kotlin.compiler.jvmTarget> |
50 | 53 | <java.version>17</java.version> |
51 | 54 | <jdk.version>17</jdk.version> |
| 55 | + <!-- endregion [LANGUAGE VERSIONS] --> |
52 | 56 |
|
| 57 | + <!-- region [KOTLIN VERSIONS] --> |
53 | 58 | <kotlinx-serialization.version>1.9.0</kotlinx-serialization.version> |
54 | 59 | <kotlinx-coroutines.version>1.10.2</kotlinx-coroutines.version> |
55 | 60 | <kotlin-logging.version>7.0.13</kotlin-logging.version> |
| 61 | + <!-- endregion [KOTLIN VERSIONS] --> |
56 | 62 |
|
| 63 | + <!-- region [RUNTIME VERSIONS] --> |
57 | 64 | <apiguardian.version>1.1.2</apiguardian.version> |
58 | 65 | <jetbrains-annotations.version>26.0.2-1</jetbrains-annotations.version> |
| 66 | + <!-- endregion [RUNTIME VERSIONS] --> |
59 | 67 |
|
60 | | - <!-- TEST --> |
| 68 | + <!-- region [TEST VERSIONS] --> |
61 | 69 | <assertj.version>3.27.6</assertj.version> |
| 70 | + <awaitility.version>4.3.0</awaitility.version> |
| 71 | + <jgiven.version>2.0.3</jgiven.version> |
62 | 72 | <junit5.version>5.13.4</junit5.version> |
63 | 73 | <mockito-kotlin.version>6.0.0</mockito-kotlin.version> |
| 74 | + <!-- endregion [TEST VERSIONS] --> |
64 | 75 | </properties> |
65 | 76 |
|
66 | 77 | <dependencyManagement> |
67 | 78 | <dependencies> |
68 | | - <!-- KOTLIN (from kotlin-bom) --> |
| 79 | + <!-- region [KOTLIN-BOM] --> |
69 | 80 | <!-- Using the kotlin-bom directly leads to problems with other boms, for example the spring-boot-dependencies --> |
70 | | - <!-- Standard Library --> |
71 | 81 | <dependency> |
72 | 82 | <groupId>org.jetbrains.kotlin</groupId> |
73 | 83 | <artifactId>kotlin-stdlib</artifactId> |
|
193 | 203 | <artifactId>kotlin-daemon-client</artifactId> |
194 | 204 | <version>${kotlin.version}</version> |
195 | 205 | </dependency> |
196 | | - <!-- // KOTLIN (from kotlin-bom) --> |
| 206 | + <!-- endregion [KOTLIN-BOM] --> |
| 207 | + |
| 208 | + <!-- region [KOTLIN-KSP] --> |
197 | 209 | <dependency> |
198 | 210 | <groupId>org.jetbrains.kotlin</groupId> |
199 | 211 | <artifactId>kotlin-annotation-processing-embeddable</artifactId> |
200 | 212 | <version>${kotlin.version}</version> |
201 | 213 | </dependency> |
| 214 | + <!-- endregion [KOTLIN-KSP] --> |
202 | 215 |
|
203 | | - <!-- KOTLIN SERIALIZATION --> |
| 216 | + <!-- region [KOTLIN SERIALIZATION] --> |
204 | 217 | <dependency> |
205 | 218 | <groupId>org.jetbrains.kotlinx</groupId> |
206 | 219 | <artifactId>kotlinx-serialization-cbor-jvm</artifactId> |
|
266 | 279 | <artifactId>kotlinx-serialization-protobuf</artifactId> |
267 | 280 | <version>${kotlinx-serialization.version}</version> |
268 | 281 | </dependency> |
269 | | - <!-- // KOTLIN SERIALIZATION --> |
| 282 | + <!-- endregion [KOTLIN SERIALIZATION] --> |
270 | 283 |
|
271 | | - <!-- KOTLIN COROUTINES --> |
| 284 | + <!-- region [KOTLIN COROUTINES] --> |
272 | 285 | <dependency> |
273 | 286 | <groupId>org.jetbrains.kotlinx</groupId> |
274 | 287 | <artifactId>kotlinx-coroutines-android</artifactId> |
|
354 | 367 | <artifactId>kotlinx-coroutines-test</artifactId> |
355 | 368 | <version>${kotlinx-coroutines.version}</version> |
356 | 369 | </dependency> |
357 | | - <!-- // KOTLIN COROUTINES --> |
| 370 | + <!-- endregion [KOTLIN COROUTINES] --> |
358 | 371 |
|
359 | 372 | <!-- KLOGGING (use as default) --> |
360 | 373 | <dependency> |
|
363 | 376 | <version>${kotlin-logging.version}</version> |
364 | 377 | </dependency> |
365 | 378 |
|
366 | | - <dependency> |
367 | | - <groupId>org.jetbrains</groupId> |
368 | | - <artifactId>annotations</artifactId> |
369 | | - <version>${jetbrains-annotations.version}</version> |
370 | | - </dependency> |
371 | | - |
| 379 | + <!-- region [RUNTIME DEPENDENCIES] --> |
372 | 380 | <dependency> |
373 | 381 | <groupId>org.apiguardian</groupId> |
374 | 382 | <artifactId>apiguardian-api</artifactId> |
375 | 383 | <version>${apiguardian.version}</version> |
376 | 384 | </dependency> |
377 | 385 |
|
378 | | - <!-- TEST --> |
| 386 | + <dependency> |
| 387 | + <groupId>org.jetbrains</groupId> |
| 388 | + <artifactId>annotations</artifactId> |
| 389 | + <version>${jetbrains-annotations.version}</version> |
| 390 | + </dependency> |
| 391 | + <!-- endregion [RUNTIME DEPENDENCIES] --> |
| 392 | + |
| 393 | + <!-- region [TEST DEPENDENCIES] --> |
379 | 394 | <dependency> |
380 | 395 | <groupId>org.junit</groupId> |
381 | 396 | <artifactId>junit-bom</artifactId> |
|
396 | 411 | <version>${mockito-kotlin.version}</version> |
397 | 412 | <scope>test</scope> |
398 | 413 | </dependency> |
| 414 | + <dependency> |
| 415 | + <groupId>org.awaitility</groupId> |
| 416 | + <artifactId>awaitility-kotlin</artifactId> |
| 417 | + <version>${awaitility.version}</version> |
| 418 | + <scope>test</scope> |
| 419 | + </dependency> |
| 420 | + <!-- endregion [TEST DEPENDENCIES] --> |
399 | 421 | </dependencies> |
400 | 422 | </dependencyManagement> |
401 | 423 |
|
|
405 | 427 | <sourceDirectory>${kp.mainSources}</sourceDirectory> |
406 | 428 | <testSourceDirectory>${kp.testSources}</testSourceDirectory> |
407 | 429 |
|
408 | | - <!-- RESOURCES: ignore gitkeep marker files --> |
| 430 | + <!-- region [RESOURCES] --> |
| 431 | + <!-- ignore gitkeep marker files --> |
409 | 432 | <resources> |
410 | 433 | <resource> |
411 | 434 | <directory>${kp.mainResources}</directory> |
|
425 | 448 | </excludes> |
426 | 449 | </testResource> |
427 | 450 | </testResources> |
| 451 | + <!-- endregion [RESOURCES] --> |
428 | 452 |
|
429 | 453 | <pluginManagement> |
430 | 454 | <plugins> |
431 | 455 | <!-- LANGUAGE SETUP --> |
432 | 456 | <!-- from kotlin doc: "To compile projects that include Kotlin and Java source code, invoke the Kotlin compiler before the Java compiler." --> |
433 | 457 |
|
| 458 | + <!-- region [COMPILER CONFIGURATION] --> |
434 | 459 | <!-- KOTLIN --> |
435 | 460 | <plugin> |
436 | 461 | <!-- KAPT is optional and has to be configured in modules using it --> |
|
457 | 482 | <!-- <option>all-open:annotation=javax.persistence.Entity</option>--> |
458 | 483 | <!-- <option>all-open:annotation=javax.persistence.MappedSuperclass</option>--> |
459 | 484 | <!-- <option>all-open:annotation=javax.persistence.Embeddable</option>--> |
460 | | - <option |
461 | | - >all-open:annotation=io.toolisticon.testing.jgiven.JGivenKotlinStage |
462 | | - </option> |
| 485 | + <option>all-open:annotation=io.toolisticon.testing.jgiven.JGivenKotlinStage</option> |
463 | 486 | </pluginOptions> |
464 | 487 | </configuration> |
465 | 488 |
|
|
546 | 569 | </execution> |
547 | 570 | </executions> |
548 | 571 | </plugin> |
| 572 | + <!-- endregion [COMPILER CONFIGURATION] --> |
549 | 573 |
|
| 574 | + <!-- region [DOC CONFIGURATION] --> |
550 | 575 | <!-- JAVADOC --> |
551 | 576 | <plugin> |
552 | 577 | <groupId>org.apache.maven.plugins</groupId> |
|
585 | 610 | <skipEmptyPackages>true</skipEmptyPackages> |
586 | 611 | </configuration> |
587 | 612 | </plugin> |
588 | | - |
589 | | - <!-- // LANGUAGE SETUP --> |
| 613 | + <!-- endregion [DOC CONFIGURATION] --> |
590 | 614 |
|
591 | 615 | <!-- ========== MAVEN OFFICIAL PLUGINS --> |
592 | 616 |
|
|
703 | 727 | >${failsafeArgLine} ${kp.javaOpenModules} -Djava.awt.headless=true -XX:+StartAttachListener |
704 | 728 | </argLine> |
705 | 729 | <systemPropertyVariables> |
706 | | - <jgiven.report.dir |
707 | | - >${project.build.directory}/jgiven-reports/json |
708 | | - </jgiven.report.dir> |
| 730 | + <jgiven.report.dir>${project.build.directory}/jgiven-reports/json</jgiven.report.dir> |
709 | 731 | </systemPropertyVariables> |
710 | 732 | </configuration> |
711 | 733 | </execution> |
|
889 | 911 | <plugin> |
890 | 912 | <groupId>com.tngtech.jgiven</groupId> |
891 | 913 | <artifactId>jgiven-maven-plugin</artifactId> |
892 | | - <version>2.0.3</version> |
| 914 | + <version>${jgiven.version}</version> |
893 | 915 | <executions> |
894 | 916 | <execution> |
895 | 917 | <id>generate-report</id> |
|
0 commit comments