diff options
| author | Leitwolf11 | 2026-10-03 13:00:49 +0300 |
|---|---|---|
| committer | Leitwolf11 | 2026-10-03 13:00:49 +0300 |
| commit | 3173a6a2bfe1975542c8c9cc0707071daa55b587 (patch) | |
| tree | a4883bcc56b81beaaa339fabd0099251acdde643 | |
| parent | 3bb41fe5c59dcf25edfd868e0d6eca67e4a6e504 (diff) | |
| download | website-3173a6a2bfe1975542c8c9cc0707071daa55b587.tar.gz | |
Add Hebrew, follow the browser language, and gate the backend docs
Language
Hebrew (he-IL) joins English, German and Russian on the language site, in
the page metadata and in the list the backend reports.
A visitor who has not chosen a language now starts in the language of their
browser: the first preferred language that is published, compared by primary
language, with `iw` accepted as the former code for Hebrew. A browser that
prefers no published language gets en-US. A choice made in the menu is kept
under a new storage key and always wins. The earlier key was written on every
visit, so it could not tell a choice from the former English default; it is
no longer read, which resets an earlier explicit choice once.
Hebrew does not mirror the page. The layout, the navigation and code keep
their left-to-right arrangement; only text follows the language. The onward
arrow points left in Hebrew, and a left-to-right mark keeps "Visual X#"
intact inside right-to-left text.
The forum placeholder no longer has a language menu. It shows its one notice
in the language of the browser, with English as the fallback, and stores no
language. Its assets get a new cache key.
The single documentation column may now shrink below its widest code line.
Before, a long command widened the page on narrow screens, which cut
right-aligned text off.
The Hebrew text was not reviewed by a native speaker.
Documentation gate
The backend applies Dokka 2.2.0 with reportUndocumented and failOnWarning,
its public declarations have KDoc, and CI runs dokkaGenerate. The dependency
lock file and the verification metadata include the new artifacts.
Verified locally: frontend tests, type check, prettier and build; backend
test, bootJar and dokkaGenerate, which was also shown to fail on an
undocumented declaration; the Hebrew pages in a browser. The forum page was
exercised by its tests only.
22 files changed, 937 insertions, 124 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ce6e207..f6db466 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -58,7 +58,9 @@ jobs: with: gradle-version: "9.6.0" cache-provider: basic - - run: gradle test jacocoTestReport bootJar --no-daemon + # dokkaGenerate is the documentation gate: an undocumented public + # declaration or a broken reference fails the build. + - run: gradle test jacocoTestReport bootJar dokkaGenerate --no-daemon working-directory: backend - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: diff --git a/backend/build.gradle.kts b/backend/build.gradle.kts index 0fbc2c0..70f805f 100644 --- a/backend/build.gradle.kts +++ b/backend/build.gradle.kts @@ -5,6 +5,7 @@ plugins { kotlin("jvm") version "2.3.21" kotlin("plugin.spring") version "2.3.21" id("org.springframework.boot") version "4.1.1" + id("org.jetbrains.dokka") version "2.2.0" jacoco } @@ -33,6 +34,17 @@ dependencies { tasks.test { useJUnitPlatform() } +dokka { + dokkaPublications.configureEach { + // The documentation build is a gate: a broken link, an unresolved + // reference or an undocumented declaration fails it. + failOnWarning = true + } + dokkaSourceSets.configureEach { + reportUndocumented = true + } +} + jacoco { toolVersion = "0.8.15" } tasks.jacocoTestReport { diff --git a/backend/gradle.lockfile b/backend/gradle.lockfile index 2213ea4..85d267d 100644 --- a/backend/gradle.lockfile +++ b/backend/gradle.lockfile @@ -1,15 +1,22 @@ # This is a Gradle generated file for dependency locking. # Manual edits can break the build and are not advised. # This file is expected to be part of source control. -# To regenerate this file, run: gradle dependencies --write-locks --no-daemon +# To regenerate this file, run: ./gradlew :dependencies --write-locks biz.aQute.bnd:biz.aQute.bnd.annotation:7.1.0=compileClasspath,testCompileClasspath ch.qos.logback:logback-classic:1.5.38=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath ch.qos.logback:logback-core:1.5.38=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.jackson.core:jackson-annotations:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal com.fasterxml.jackson.core:jackson-annotations:2.21=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.jackson.core:jackson-core:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal com.fasterxml.jackson.core:jackson-core:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.jackson.core:jackson-databind:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal com.fasterxml.jackson.core:jackson-databind:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal +com.fasterxml.jackson.module:jackson-module-kotlin:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal com.fasterxml.jackson.module:jackson-module-kotlin:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.jackson:jackson-bom:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal com.fasterxml.jackson:jackson-bom:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +com.fasterxml.woodstox:woodstox-core:6.5.1=dokkaHtmlGeneratorRuntimeResolver~internal com.google.errorprone:error_prone_annotations:2.38.0=compileClasspath,testCompileClasspath com.jayway.jsonpath:json-path:2.10.0=testCompileClasspath,testRuntimeClasspath com.vaadin.external.google:android-json:0.0.20131108.vaadin1=testCompileClasspath,testRuntimeClasspath @@ -32,11 +39,18 @@ org.apache.tomcat.embed:tomcat-embed-websocket:11.0.24=compileClasspath,producti org.apiguardian:apiguardian-api:1.1.2=testCompileClasspath org.assertj:assertj-core:3.27.7=testCompileClasspath,testRuntimeClasspath org.awaitility:awaitility:4.3.0=testCompileClasspath,testRuntimeClasspath +org.codehaus.woodstox:stax2-api:4.2.1=dokkaHtmlGeneratorRuntimeResolver~internal +org.freemarker:freemarker:2.3.32=dokkaHtmlGeneratorRuntimeResolver~internal org.hamcrest:hamcrest:3.0=testCompileClasspath,testRuntimeClasspath org.jacoco:org.jacoco.agent:0.8.15=jacocoAgent,jacocoAnt org.jacoco:org.jacoco.ant:0.8.15=jacocoAnt org.jacoco:org.jacoco.core:0.8.15=jacocoAnt org.jacoco:org.jacoco.report:0.8.15=jacocoAnt +org.jetbrains.dokka:analysis-kotlin-symbols:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.dokka:analysis-markdown:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.dokka:dokka-base:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal,dokkaHtmlPluginIntransitiveResolver~internal +org.jetbrains.dokka:dokka-core:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.dokka:templating-plugin:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal,dokkaHtmlPluginIntransitiveResolver~internal org.jetbrains.kotlin:abi-tools-api:2.3.21=kotlinInternalAbiValidation org.jetbrains.kotlin:abi-tools:2.3.21=kotlinInternalAbiValidation org.jetbrains.kotlin:kotlin-allopen-compiler-plugin-embeddable:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest @@ -52,18 +66,31 @@ org.jetbrains.kotlin:kotlin-klib-abi-reader:2.3.21=kotlinInternalAbiValidation org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:2.3.21=kotlinKlibCommonizerClasspath org.jetbrains.kotlin:kotlin-metadata-jvm:2.3.21=kotlinInternalAbiValidation org.jetbrains.kotlin:kotlin-reflect:1.6.10=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinKlibCommonizerClasspath +org.jetbrains.kotlin:kotlin-reflect:2.0.21=dokkaHtmlGeneratorRuntimeResolver~internal org.jetbrains.kotlin:kotlin-reflect:2.3.21=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.jetbrains.kotlin:kotlin-script-runtime:2.3.21=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest,kotlinKlibCommonizerClasspath org.jetbrains.kotlin:kotlin-scripting-common:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest org.jetbrains.kotlin:kotlin-scripting-jvm:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest +org.jetbrains.kotlin:kotlin-stdlib-common:2.0.21=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.20=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.20=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.kotlin:kotlin-stdlib:2.0.21=dokkaHtmlGeneratorRuntimeResolver~internal org.jetbrains.kotlin:kotlin-stdlib:2.3.21=compileClasspath,kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest,kotlinInternalAbiValidation,kotlinKlibCommonizerClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.jetbrains.kotlin:kotlin-test-junit5:2.3.21=testCompileClasspath,testRuntimeClasspath org.jetbrains.kotlin:kotlin-test:2.3.21=testCompileClasspath,testRuntimeClasspath org.jetbrains.kotlin:kotlin-tooling-core:2.3.21=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath +org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.7.3=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.3=dokkaHtmlGeneratorRuntimeResolver~internal org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.8.0=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinKlibCommonizerClasspath +org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains.kotlinx:kotlinx-html-jvm:0.9.1=dokkaHtmlGeneratorRuntimeResolver~internal org.jetbrains:annotations:13.0=compileClasspath,kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest,kotlinInternalAbiValidation,kotlinKlibCommonizerClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath +org.jetbrains:annotations:23.0.0=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains:markdown-jvm:0.7.3=dokkaHtmlGeneratorRuntimeResolver~internal +org.jetbrains:markdown:0.7.3=dokkaHtmlGeneratorRuntimeResolver~internal +org.jsoup:jsoup:1.16.1=dokkaHtmlGeneratorRuntimeResolver~internal org.jspecify:jspecify:1.0.1=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath org.junit.jupiter:junit-jupiter-api:6.0.3=testCompileClasspath,testRuntimeClasspath org.junit.jupiter:junit-jupiter-engine:6.0.3=testRuntimeClasspath @@ -123,4 +150,4 @@ org.yaml:snakeyaml:2.6=compileClasspath,productionRuntimeClasspath,runtimeClassp tools.jackson.core:jackson-core:3.1.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath tools.jackson.core:jackson-databind:3.1.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath tools.jackson:jackson-bom:3.1.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -empty=annotationProcessor,developmentOnly,implementationDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinNativeCompilerPluginClasspath,kotlinScriptDefExtensions,testAndDevelopmentOnly,testAnnotationProcessor,testImplementationDependenciesMetadata,testKotlinScriptDefExtensions +empty=annotationProcessor,developmentOnly,dokkaHtmlModuleOutputDirectoriesResolver~internal,dokkaHtmlPublicationPluginResolver~internal,implementationDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinNativeCompilerPluginClasspath,kotlinScriptDefExtensions,testAndDevelopmentOnly,testAnnotationProcessor,testImplementationDependenciesMetadata,testKotlinScriptDefExtensions diff --git a/backend/gradle/verification-metadata.xml b/backend/gradle/verification-metadata.xml index f22f4f6..8f77cc3 100644 --- a/backend/gradle/verification-metadata.xml +++ b/backend/gradle/verification-metadata.xml @@ -34,6 +34,16 @@ <sha256 value="2bce3a61a6449adb9a0722e1c0c1e391533880ba02916d3df83208999aea6c66" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml" name="oss-parent" version="38"> + <artifact name="oss-parent-38.pom"> + <sha256 value="c83f8f45dfdca8d0b6b3661c60b3f84780f671b12e06f91ad5d1c1a1d1f966e8" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="com.fasterxml" name="oss-parent" version="50"> + <artifact name="oss-parent-50.pom"> + <sha256 value="f5da55dd7b88fb170c46801d17774a652fb2f4581fb5b1d0a5fc86aa182b8577" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml" name="oss-parent" version="68"> <artifact name="oss-parent-68.pom"> <sha256 value="25eafd96dae242b6b5a7108f55b2c14015b828daa5abe234289fd6e774a1ce57" origin="Generated by Gradle"/> @@ -54,6 +64,11 @@ <sha256 value="4f4e2bea00ffe575f5ec054c07a4fbc34c1955d8635c01a3e88013bf2c71deff" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.jackson" name="jackson-bom" version="2.15.3"> + <artifact name="jackson-bom-2.15.3.pom"> + <sha256 value="66fc9945c16716bc202f4b9d7e6d969df3f509feffbe1acf1a31511b753d5c9d" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml.jackson" name="jackson-bom" version="2.19.1"> <artifact name="jackson-bom-2.19.1.pom"> <sha256 value="ba6d68eeab3a1cc13a77a8ade2197ff9a32aa1cffeac72847d49badd82e1b9ce" origin="Generated by Gradle"/> @@ -64,6 +79,11 @@ <sha256 value="57fe22dec659de0655357fad0582ef7c8b2fe5a8906a6f1ff1bcbbd1e4554846" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.jackson" name="jackson-parent" version="2.15"> + <artifact name="jackson-parent-2.15.pom"> + <sha256 value="6cdf97bc66f389f63e36850d2f552d1216688f8e5a58727d3f6a98edf8675cde" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml.jackson" name="jackson-parent" version="2.19.2"> <artifact name="jackson-parent-2.19.2.pom"> <sha256 value="639a2b63dd05da4e381081303985caadfbb7ad9f85b1d2320638f6b11f208365" origin="Generated by Gradle"/> @@ -74,6 +94,14 @@ <sha256 value="3851df627faeb46887b956104630b74a8bbb5f7de22e974cf15982e20e0373de" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.jackson.core" name="jackson-annotations" version="2.15.3"> + <artifact name="jackson-annotations-2.15.3.jar"> + <sha256 value="aae865c3d88256d61b11523cb1e88bd48d5b9ad5855fa1fc859504fd2204708a" origin="Generated by Gradle"/> + </artifact> + <artifact name="jackson-annotations-2.15.3.module"> + <sha256 value="6410c94b393e494d53d569dc4193a79187848ddb6ee3c2ee1f392477a21059cb" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml.jackson.core" name="jackson-annotations" version="2.21"> <artifact name="jackson-annotations-2.21.jar"> <sha256 value="53ca085f4a150f703f49e1aabd935bd03b43e1ea3d55d135438292af22cef56b" origin="Generated by Gradle"/> @@ -82,6 +110,14 @@ <sha256 value="cae8ffecec3328b6ecbb138e274218f2fe1c7729a0e824da559268810095ad44" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.jackson.core" name="jackson-core" version="2.15.3"> + <artifact name="jackson-core-2.15.3.jar"> + <sha256 value="51fab7aad51ed588482edc507fd542747936c5094d1ab76ed21ddb63b96b610d" origin="Generated by Gradle"/> + </artifact> + <artifact name="jackson-core-2.15.3.module"> + <sha256 value="138029bcb32b0bfa7010d3f646632bde5c98c187e2f1aa120a1cd413f23a6c28" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml.jackson.core" name="jackson-core" version="2.21.5"> <artifact name="jackson-core-2.21.5.jar"> <sha256 value="b64b5874162b503a0e58a8f7758266e8dd9f91bf49e3a59ae0b5f47589a231b7" origin="Generated by Gradle"/> @@ -90,6 +126,14 @@ <sha256 value="de113f4531def50feb12be04e7074a8f76f5f3ef290cf886b90086a4e274530f" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.jackson.core" name="jackson-databind" version="2.15.3"> + <artifact name="jackson-databind-2.15.3.jar"> + <sha256 value="c3c53333a2172a80678bda1803e39cff45bec6ae3e9c7d4f44a81ec4e2ab18dc" origin="Generated by Gradle"/> + </artifact> + <artifact name="jackson-databind-2.15.3.module"> + <sha256 value="51ba8d71f5a04ae768e84c91d4edf09a1fc8bc1244b03bd4f9b060b8fb395615" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml.jackson.core" name="jackson-databind" version="2.21.5"> <artifact name="jackson-databind-2.21.5.jar"> <sha256 value="507418c0fafd38b2b2cfb704521630da613a8e4cc8381195a6f418017883e2c0" origin="Generated by Gradle"/> @@ -98,6 +142,22 @@ <sha256 value="920e2a0211a31f54d2e7e4effdc580d02c3412a6fefdb632a8054e60c4758381" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.jackson.dataformat" name="jackson-dataformat-xml" version="2.15.3"> + <artifact name="jackson-dataformat-xml-2.15.3.jar"> + <sha256 value="39a34531dca5fca75eb547663c300855c968c8faca6861d92eca9e9747af0416" origin="Generated by Gradle"/> + </artifact> + <artifact name="jackson-dataformat-xml-2.15.3.module"> + <sha256 value="30ad1786f48af58048353d9be1374fc022610ceab921ebea6f62e5080b345bf2" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="com.fasterxml.jackson.module" name="jackson-module-kotlin" version="2.15.3"> + <artifact name="jackson-module-kotlin-2.15.3.jar"> + <sha256 value="8f72e6b99e6145e3284a5224355ca8ee6030afa8c1d6a3395b530d29026f8d52" origin="Generated by Gradle"/> + </artifact> + <artifact name="jackson-module-kotlin-2.15.3.module"> + <sha256 value="0dee29c18a90700a3a0457be88f7c41f67571947e6633d84a22433a4fb5d792c" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.fasterxml.jackson.module" name="jackson-module-kotlin" version="2.21.5"> <artifact name="jackson-module-kotlin-2.21.5.jar"> <sha256 value="6f45bbe434458d2ad1f5ea16c6abf67e7abea374b2c9ae5689cf4dd27c16c8b9" origin="Generated by Gradle"/> @@ -106,6 +166,14 @@ <sha256 value="1a9f780447658ddb47ec9d7dcc60979aab2a5b25f0e902946853dd292bd88581" origin="Generated by Gradle"/> </artifact> </component> + <component group="com.fasterxml.woodstox" name="woodstox-core" version="6.5.1"> + <artifact name="woodstox-core-6.5.1.jar"> + <sha256 value="c928d60665c6415fb1c39775cf95cfc44f7f4580cf5ab01b1c380ebffd76887f" origin="Generated by Gradle"/> + </artifact> + <artifact name="woodstox-core-6.5.1.pom"> + <sha256 value="4839654e16b1714e74f51abcb378d8356814ab8f4d5273d1dd2f1ce8a390addc" origin="Generated by Gradle"/> + </artifact> + </component> <component group="com.google.code.findbugs" name="jsr305" version="3.0.2"> <artifact name="jsr305-3.0.2.jar"> <sha256 value="766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7" origin="Generated by Gradle"/> @@ -432,6 +500,11 @@ <sha256 value="dc09cba98c25d3c06e4aec516885d4c3af03062ba55f4fe6283fc9cf176a60fb" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.apache" name="apache" version="17"> + <artifact name="apache-17.pom"> + <sha256 value="398044b74b5a719326be218ae08124e5e2f3318ab5d78fe199d504efc2e0d43f" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.apache" name="apache" version="27"> <artifact name="apache-27.pom"> <sha256 value="b2b0fc69e22a650c3892f1c366d77076f29575c6738df4c7a70a44844484cdf9" origin="Generated by Gradle"/> @@ -667,6 +740,14 @@ <sha256 value="7af9ce8a09581211557e6cc8e2909bd80666b34e922a28587c773096c1022093" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.codehaus.woodstox" name="stax2-api" version="4.2.1"> + <artifact name="stax2-api-4.2.1.jar"> + <sha256 value="678567e48b51a42c65c699f266539ad3d676d4b1a5b0ad7d89ece8b9d5772579" origin="Generated by Gradle"/> + </artifact> + <artifact name="stax2-api-4.2.1.pom"> + <sha256 value="79da410c8c0f46a3f8e8adb30d6c24ccd6065b6ef6bfde87bd97e9881ea0a2e7" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.eclipse.ee4j" name="project" version="1.0.7"> <artifact name="project-1.0.7.pom"> <sha256 value="205c039a42cbae3556efbeb04a483eb3a3cf9550bd75bf84260dc8f28218f105" origin="Generated by Gradle"/> @@ -687,6 +768,14 @@ <sha256 value="93366f7912df3e2f31494de93b21ad8d3e96bc7c453f7720f4e5cfcc0b01b1aa" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.freemarker" name="freemarker" version="2.3.32"> + <artifact name="freemarker-2.3.32.jar"> + <sha256 value="04d65ec1bde6cea20e3495d5e78ef96ab774d9936434861d3254bd88e7e94f92" origin="Generated by Gradle"/> + </artifact> + <artifact name="freemarker-2.3.32.pom"> + <sha256 value="07a07e2eaf0976022b540567c7df622712b9a0393a6c5f6d20e6ff1579222a01" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.glassfish.jersey" name="jersey-bom" version="4.0.2"> <artifact name="jersey-bom-4.0.2.pom"> <sha256 value="1233e0d0e57d7d20b311de46364f611782d096a324a4fb4acc40c55157a182e7" origin="Generated by Gradle"/> @@ -750,6 +839,80 @@ <sha256 value="965aeb2bedff369819bdde1bf7a0b3b89b8247dd69c88b86375d76163bb8c397" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.jetbrains" name="annotations" version="23.0.0"> + <artifact name="annotations-23.0.0.jar"> + <sha256 value="7b0f19724082cbfcbc66e5abea2b9bc92cf08a1ea11e191933ed43801eb3cd05" origin="Generated by Gradle"/> + </artifact> + <artifact name="annotations-23.0.0.pom"> + <sha256 value="c9490f655132328df2cfbcfdf743f53fc3916d6c1d10437175a6ca6e3a67771c" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains" name="markdown" version="0.7.3"> + <artifact name="markdown-0.7.3.module"> + <sha256 value="dbfae7aa853eb5ea1eeba31896538a8403646f55c59a99191d687fc037bdac39" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains" name="markdown-jvm" version="0.7.3"> + <artifact name="markdown-jvm-0.7.3.jar"> + <sha256 value="893abb31f15b6216f74dc704c0c6bf1e567dcf2b62cca29cf42e4f53153637ac" origin="Generated by Gradle"/> + </artifact> + <artifact name="markdown-jvm-0.7.3.module"> + <sha256 value="7029b63c74964e5b4334308ee729e95b538da5ed6ac12b2e477d478572d02252" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="analysis-kotlin-symbols" version="2.2.0"> + <artifact name="analysis-kotlin-symbols-2.2.0.jar"> + <sha256 value="31b4eabf7436083ae33200da6be7203675fb1fcdcd34d2f394f55e822dac8f0f" origin="Generated by Gradle"/> + </artifact> + <artifact name="analysis-kotlin-symbols-2.2.0.pom"> + <sha256 value="54573a79dfc16d0540a42594679feadbd36c11140213a0fe813c3a4716b53f88" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="analysis-markdown" version="2.2.0"> + <artifact name="analysis-markdown-2.2.0.jar"> + <sha256 value="7070de21dc5078013b53cc9c139321cceaf476c1630711cc5bda6d96e9da2087" origin="Generated by Gradle"/> + </artifact> + <artifact name="analysis-markdown-2.2.0.module"> + <sha256 value="f86033ab342a334b656d207a6b0b7041fea1732ff1f5560417e4a50dadf4b2ec" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="dokka-base" version="2.2.0"> + <artifact name="dokka-base-2.2.0.jar"> + <sha256 value="721c5a1647dc49d1680d884350b438a039b2426aec65b696baee8e5aeb6442f5" origin="Generated by Gradle"/> + </artifact> + <artifact name="dokka-base-2.2.0.module"> + <sha256 value="f377ca30b57f80262b4d50694102cc56f1f27d4d388682eaf6b84b0bedc19550" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="dokka-core" version="2.2.0"> + <artifact name="dokka-core-2.2.0.jar"> + <sha256 value="2ea7e1eeb158163b6e1109ebc5c8137ef713ae020189f87bc79d1cbe3702093d" origin="Generated by Gradle"/> + </artifact> + <artifact name="dokka-core-2.2.0.module"> + <sha256 value="7df767d1748176565443a4f3492da8c033d51fe0022ac0d7fe2212fd6aee068b" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="dokka-gradle-plugin" version="2.2.0"> + <artifact name="dokka-gradle-plugin-2.2.0.jar"> + <sha256 value="265cca65322df2d72f2647edf3c4e5290f95f8b119847f031fbd84582af55a8d" origin="Generated by Gradle"/> + </artifact> + <artifact name="dokka-gradle-plugin-2.2.0.module"> + <sha256 value="f3b4d024827b3db3c3f939be5c664bbf65fc203ae2b90f4317c02256e66079c1" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="org.jetbrains.dokka.gradle.plugin" version="2.2.0"> + <artifact name="org.jetbrains.dokka.gradle.plugin-2.2.0.pom"> + <sha256 value="7ed72c0e42d44be0146bfbe203e875f22ccc428566f99bd20e25df8f1728b671" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.dokka" name="templating-plugin" version="2.2.0"> + <artifact name="templating-plugin-2.2.0.jar"> + <sha256 value="710774a96e555421066cb0c99a7222129ab39be4d86add06acd88f28bedbb7ce" origin="Generated by Gradle"/> + </artifact> + <artifact name="templating-plugin-2.2.0.module"> + <sha256 value="66b32cbea904d79d9b88d3ebab01bce04a6d88b39025055c48a6ea42891b341b" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.jetbrains.kotlin" name="abi-tools" version="2.3.21"> <artifact name="abi-tools-2.3.21.jar"> <sha256 value="6761656205c3514050f68fde7c32b2beb47246786247dacfb279db432a70562b" origin="Generated by Gradle"/> @@ -963,6 +1126,14 @@ <sha256 value="57905524274a00ae028aaccc27283f6bc5925a934a046c1cc5d06c8ee4d6d5a9" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.jetbrains.kotlin" name="kotlin-reflect" version="2.0.21"> + <artifact name="kotlin-reflect-2.0.21.jar"> + <sha256 value="3ad2fcad0c09ddc0922debab4444d612144b7b465b75a8bb7587e20ddfafd799" origin="Generated by Gradle"/> + </artifact> + <artifact name="kotlin-reflect-2.0.21.pom"> + <sha256 value="02ab7aeab03c68f40103026e5e9c277360cbc360818a5b2e36b9a3a9d8e8b049" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.jetbrains.kotlin" name="kotlin-reflect" version="2.3.21"> <artifact name="kotlin-reflect-2.3.21.jar"> <sha256 value="33e37d9dfa86c7a29ab34e975b5f4a1287b458878611051f3485652220c1a2cb" origin="Generated by Gradle"/> @@ -1011,6 +1182,14 @@ <sha256 value="580b2c9857f3a662c53a3deb4851d7a1afa3bd5f4abbe9905f5b55fb5221f816" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="2.0.21"> + <artifact name="kotlin-stdlib-2.0.21.jar"> + <sha256 value="f31cc53f105a7e48c093683bbd5437561d1233920513774b470805641bedbc09" origin="Generated by Gradle"/> + </artifact> + <artifact name="kotlin-stdlib-2.0.21.module"> + <sha256 value="81fd6d181012487ee3246eff4e2bacb64b58c46e5b5aa72971a4ddf1bd1541ed" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="2.3.21"> <artifact name="kotlin-stdlib-2.3.21.jar"> <sha256 value="6f64eac736db9434dd6925b4a518b9d1d17177652320c37916cf9ba3ce7d7d7a" origin="Generated by Gradle"/> @@ -1019,6 +1198,42 @@ <sha256 value="7b4ea4b2242bb177a4b4abb63c3f3d857331d40d35865e36fcc3db666ec10174" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.8.20"> + <artifact name="kotlin-stdlib-common-1.8.20.pom"> + <sha256 value="605591b89b372127e6b29c69325fa2f6a8c46f468c45d09410e78eb59fc80a17" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.9.0"> + <artifact name="kotlin-stdlib-common-1.9.0.pom"> + <sha256 value="3660d36a70feb3abe49f11b90633e41d36273576f071b0e109da9b3a0df082a5" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="2.0.21"> + <artifact name="kotlin-stdlib-common-2.0.21.module"> + <sha256 value="6f5df8af633600a6b9cfb0fcc764af3d5119f376677677b91b6aee816b1d30ab" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="2.3.21"> + <artifact name="kotlin-stdlib-common-2.3.21.module"> + <sha256 value="6ad2f57891a54d96a6922112f758df957ce1ab8a3d5a57215cb74fa3e105e255" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk7" version="1.8.20"> + <artifact name="kotlin-stdlib-jdk7-1.8.20.jar"> + <sha256 value="af1ec40c3b951afdcc0c2a0173c7b81763c5281c2d5bafbf0a8544a24c5dcc0c" origin="Generated by Gradle"/> + </artifact> + <artifact name="kotlin-stdlib-jdk7-1.8.20.pom"> + <sha256 value="3622d106578cddcc0a9ec20f8ce815f7f49ff542f640228d2141fcaf80616b06" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk8" version="1.8.20"> + <artifact name="kotlin-stdlib-jdk8-1.8.20.jar"> + <sha256 value="e398b67977622718bf18ff99b739c7d9da060f33fb458a2e25203221c16af010" origin="Generated by Gradle"/> + </artifact> + <artifact name="kotlin-stdlib-jdk8-1.8.20.pom"> + <sha256 value="3a462214a336e995687769531b1e37b0c81d8e10c9949cd5ea7ae1d7803a0232" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.jetbrains.kotlin" name="kotlin-test" version="2.3.21"> <artifact name="kotlin-test-2.3.21.jar"> <sha256 value="038f7d2c7df1039450809c486068f301a29c6e90356c9a4b595e34f4f4a813e7" origin="Generated by Gradle"/> @@ -1082,11 +1297,34 @@ <sha256 value="faf0c6538e53ddc0499a63664d8e763c216580b2e18e722ccbdf1b431a6afe26" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-bom" version="1.7.3"> + <artifact name="kotlinx-coroutines-bom-1.7.3.pom"> + <sha256 value="4e5d1900e6379ef3f5970d04a8f30529adc82f859e8cc107c21ce8149ef666c4" origin="Generated by Gradle"/> + </artifact> + </component> <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-bom" version="1.8.0"> <artifact name="kotlinx-coroutines-bom-1.8.0.pom"> <sha256 value="1239e9dbe1397cd5971342956b2511bc3ace7b641842e4372a088dcfa8b9ad55" origin="Generated by Gradle"/> </artifact> </component> + <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core" version="1.7.3"> + <artifact name="kotlinx-coroutines-core-1.7.3.module"> + <sha256 value="7fb162396594ec28e1b6a4411b457949a7670f5e12019176774e1fd6b9471bbf" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core" version="1.8.0"> + <artifact name="kotlinx-coroutines-core-1.8.0.module"> + <sha256 value="144eecd5365de3e30d7b46226c058051e39955b5c189e31fa4c7cffb99d620ba" origin="Generated by Gradle"/> + </artifact> + </component> + <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core-jvm" version="1.7.3"> + <artifact name="kotlinx-coroutines-core-jvm-1.7.3.jar"> + <sha256 value="1ab3acc38f3e7355c4f9d |