From f870d859530b5d022d6d648de75d0e54472a4271 Mon Sep 17 00:00:00 2001 From: Zach Klippenstein Date: Mon, 9 Feb 2026 09:31:16 -0800 Subject: [PATCH] Upgrade Kotlin to 2.3.10. --- .github/workflows/codeql.yml | 3 + .../poetry/PerformancePoemsBrowserWorkflow.kt | 4 - .../runtime-microbenchmark/build.gradle.kts | 18 +- build-logic/settings.gradle.kts | 2 +- dependencies/classpath.txt | 59 +- gradle/libs.versions.toml | 6 +- kotlin-js-store/yarn.lock | 600 +++++++++++------- .../gameworkflow/TakeTurnsWorkflowTest.kt | 4 +- samples/tutorial/build.gradle | 2 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../dependencies/runtimeClasspath.txt | 10 +- workflow-core/api/workflow-core.api | 5 +- .../dependencies/jsRuntimeClasspath.txt | 8 +- .../dependencies/jvmMainRuntimeClasspath.txt | 10 +- .../dependencies/jvmRuntimeClasspath.txt | 8 +- .../squareup/workflow1/WorkflowActionTest.kt | 2 +- .../api/android/workflow-runtime.api | 28 +- workflow-runtime/api/jvm/workflow-runtime.api | 28 +- .../dependencies/androidRuntimeClasspath.txt | 10 +- .../dependencies/jsRuntimeClasspath.txt | 8 +- .../dependencies/jvmMainRuntimeClasspath.txt | 8 +- .../dependencies/jvmRuntimeClasspath.txt | 8 +- ...RenderWorkflowInSnapshotSaveRestoreTest.kt | 123 ++++ .../workflow1/RenderWorkflowInTest.kt | 119 ++-- .../workflow1/WorkflowInterceptorTest.kt | 2 +- .../workflow1/internal/WorkflowNodeTest.kt | 16 +- .../dependencies/runtimeClasspath.txt | 10 +- .../dependencies/runtimeClasspath.txt | 12 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../tracing/papa/WorkflowPapaTracerTest.kt | 6 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../tracing/WorkflowRuntimeMonitorTest.kt | 4 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- workflow-ui/compose/api/compose.api | 4 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- workflow-ui/core-android/api/core-android.api | 9 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../ui/ViewLaunchWhenAttachedTest.kt | 4 +- workflow-ui/core-common/api/core-common.api | 8 +- .../dependencies/runtimeClasspath.txt | 10 +- .../workflow1/ui/TypedViewRegistry.kt | 2 +- .../api/internal-testing-android.api | 14 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- 43 files changed, 743 insertions(+), 501 deletions(-) create mode 100644 workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInSnapshotSaveRestoreTest.kt diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index e471fd91ca..1ed147702d 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -73,6 +73,9 @@ jobs: with: languages: ${{ matrix.language }} build-mode: ${{ matrix.build-mode }} + # Nightly is required for now to support Kotlin 2.3.10. Once CodeQL stable supports it, we + # can remove this. + tools: nightly # If you wish to specify custom queries, you can do so here or in a config file. # By default, queries listed here will override any specified in a config file. # Prefix the list here with "+" to use these queries and those in the config file. diff --git a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt index d2923bce78..f33c51b420 100644 --- a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt +++ b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt @@ -214,10 +214,6 @@ class PerformancePoemsBrowserWorkflow( ) { clearSelection } return poems + poem } - - else -> { - throw IllegalStateException("State can't change while rendering.") - } } } } diff --git a/benchmarks/runtime-microbenchmark/build.gradle.kts b/benchmarks/runtime-microbenchmark/build.gradle.kts index 6023353272..045ccd9b53 100644 --- a/benchmarks/runtime-microbenchmark/build.gradle.kts +++ b/benchmarks/runtime-microbenchmark/build.gradle.kts @@ -2,6 +2,7 @@ import com.rickbusarow.kgx.libsCatalog import com.rickbusarow.kgx.version import com.squareup.workflow1.buildsrc.internal.javaTarget import com.squareup.workflow1.buildsrc.internal.javaTargetVersion +import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { // Must be applied before kotlin-android so the convention can detect that this is a benchmark. @@ -22,14 +23,8 @@ android { targetCompatibility = javaTargetVersion } - kotlinOptions { - jvmTarget = javaTarget - freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn" - } - defaultConfig { minSdk = 28 - targetSdk = libsCatalog.version("targetSdk").toInt() testInstrumentationRunner = "androidx.benchmark.junit4.AndroidBenchmarkRunner" @@ -46,6 +41,10 @@ android { } } + testOptions { + targetSdk = libsCatalog.version("targetSdk").toInt() + } + testBuildType = "release" buildTypes { debug { @@ -66,6 +65,13 @@ android { testNamespace = "$namespace.test" } +kotlin { + compilerOptions { + jvmTarget.set(JvmTarget.fromTarget(javaTarget)) + freeCompilerArgs.add("-opt-in=kotlin.RequiresOptIn") + } +} + dependencies { androidTestImplementation(project(":workflow-runtime")) androidTestImplementation(libs.androidx.benchmark) diff --git a/build-logic/settings.gradle.kts b/build-logic/settings.gradle.kts index 5c8522d509..1190b766bb 100644 --- a/build-logic/settings.gradle.kts +++ b/build-logic/settings.gradle.kts @@ -1,6 +1,6 @@ plugins { // Hardcoded as this is upstream of the version catalog. Keep this in sync with that. - kotlin("jvm") version "2.1.21" apply false + kotlin("jvm") version "2.3.10" apply false } dependencyResolutionManagement { diff --git a/dependencies/classpath.txt b/dependencies/classpath.txt index 60859c234b..fc34112992 100644 --- a/dependencies/classpath.txt +++ b/dependencies/classpath.txt @@ -2,10 +2,7 @@ androidx.benchmark:androidx.benchmark.gradle.plugin:1.3.4 androidx.benchmark:benchmark-gradle-plugin:1.3.4 androidx.databinding:databinding-common:8.11.1 androidx.databinding:databinding-compiler-common:8.11.1 -app.cash.burst:burst-gradle-plugin:2.5.0 -app.cash.burst:burst-jvm:2.5.0 -app.cash.burst:burst-kotlin-plugin:2.5.0 -app.cash.burst:burst:2.5.0 +app.cash.burst:burst-gradle-plugin:2.11.0 com.android.databinding:baseLibrary:8.11.1 com.android.tools.analytics-library:crash:31.11.1 com.android.tools.analytics-library:protos:31.11.1 @@ -63,9 +60,9 @@ com.google.code.findbugs:jsr305:3.0.2 com.google.code.gson:gson:2.11.0 com.google.crypto.tink:tink:1.7.0 com.google.dagger:dagger:2.28.3 -com.google.devtools.ksp:symbol-processing-api:2.1.21-2.0.2 -com.google.devtools.ksp:symbol-processing-common-deps:2.1.21-2.0.2 -com.google.devtools.ksp:symbol-processing-gradle-plugin:2.1.21-2.0.2 +com.google.devtools.ksp:symbol-processing-api:2.3.5 +com.google.devtools.ksp:symbol-processing-common-deps:2.3.5 +com.google.devtools.ksp:symbol-processing-gradle-plugin:2.3.5 com.google.errorprone:error_prone_annotations:2.30.0 com.google.flatbuffers:flatbuffers-java:1.12.0 com.google.guava:failureaccess:1.0.2 @@ -147,32 +144,32 @@ org.jdom:jdom2:2.0.6 org.jetbrains.dokka:dokka-core:2.0.0 org.jetbrains.dokka:dokka-gradle-plugin:2.0.0 org.jetbrains.dokka:org.jetbrains.dokka.gradle.plugin:2.0.0 -org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.1.21 -org.jetbrains.kotlin:compose-compiler-gradle-plugin:2.1.21 -org.jetbrains.kotlin:fus-statistics-gradle-plugin:2.1.21 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-build-statistics:2.1.21 -org.jetbrains.kotlin:kotlin-build-tools-api:2.1.21 -org.jetbrains.kotlin:kotlin-compiler-runner:2.1.21 -org.jetbrains.kotlin:kotlin-daemon-client:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugin-annotations:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugin-api:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugin-idea:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugin-model:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugin:2.1.21 -org.jetbrains.kotlin:kotlin-gradle-plugins-bom:2.1.21 -org.jetbrains.kotlin:kotlin-klib-commonizer-api:2.1.21 -org.jetbrains.kotlin:kotlin-native-utils:2.1.21 +org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.3.10 +org.jetbrains.kotlin:abi-tools-api:2.3.10 +org.jetbrains.kotlin:compose-compiler-gradle-plugin:2.3.10 +org.jetbrains.kotlin:fus-statistics-gradle-plugin:2.3.10 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-build-statistics:2.3.10 +org.jetbrains.kotlin:kotlin-build-tools-api:2.3.10 +org.jetbrains.kotlin:kotlin-compiler-runner:2.3.10 +org.jetbrains.kotlin:kotlin-daemon-client:2.3.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-annotations:2.3.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-api:2.3.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:2.3.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-idea:2.3.10 +org.jetbrains.kotlin:kotlin-gradle-plugin:2.3.10 +org.jetbrains.kotlin:kotlin-gradle-plugins-bom:2.3.10 +org.jetbrains.kotlin:kotlin-klib-commonizer-api:2.3.10 +org.jetbrains.kotlin:kotlin-native-utils:2.3.10 org.jetbrains.kotlin:kotlin-reflect:2.0.21 -org.jetbrains.kotlin:kotlin-serialization:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 +org.jetbrains.kotlin:kotlin-serialization:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 org.jetbrains.kotlin:kotlin-stdlib:2.0.21 -org.jetbrains.kotlin:kotlin-tooling-core:2.1.21 -org.jetbrains.kotlin:kotlin-util-io:2.1.21 -org.jetbrains.kotlin:kotlin-util-klib-metadata:2.1.21 -org.jetbrains.kotlin:kotlin-util-klib:2.1.21 +org.jetbrains.kotlin:kotlin-tooling-core:2.3.10 +org.jetbrains.kotlin:kotlin-util-io:2.3.10 +org.jetbrains.kotlin:kotlin-util-klib-metadata:2.3.10 +org.jetbrains.kotlin:kotlin-util-klib:2.3.10 org.jetbrains.kotlinx:binary-compatibility-validator:0.18.1 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.8.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.8.0 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e27f7b0d0d..26119ab740 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -37,7 +37,7 @@ androidx-tracing = "1.2.0" androidx-transition = "1.5.1" androidx-viewbinding = "8.1.2" -burst = "2.5.0" +burst = "2.11.0" detekt = "1.19.0" dokka = "2.0.0" @@ -47,7 +47,7 @@ filekit-dialogs-compose = "0.10.0-beta03" google-accompanist = "0.18.0" google-dagger = "2.40.5" -google-ksp = "2.1.21-2.0.2" +google-ksp = "2.3.5" google-material = "1.4.0" groovy = "3.0.9" @@ -59,7 +59,7 @@ kgx = "0.1.12" kotest = "5.1.0" # Keep this in sync with what is hard-coded in build-logic/settings.gradle.kts as that is upstream # of loading the library versions from this file but should be the same. -kotlin = "2.1.21" +kotlin = "2.3.10" kotlinx-binary-compatibility = "0.18.1" kotlinx-coroutines = "1.9.0" diff --git a/kotlin-js-store/yarn.lock b/kotlin-js-store/yarn.lock index 83e4663ff3..5a2555b985 100644 --- a/kotlin-js-store/yarn.lock +++ b/kotlin-js-store/yarn.lock @@ -7,10 +7,22 @@ resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== -"@discoveryjs/json-ext@^0.5.0": - version "0.5.7" - resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" - integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== +"@discoveryjs/json-ext@^0.6.1": + version "0.6.3" + resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.6.3.tgz#f13c7c205915eb91ae54c557f5e92bddd8be0e83" + integrity sha512-4B4OijXeVNOPZlYA2oEwWOTkzyltLao+xbotHQeqN++Rv27Y6s818+n2Qkp8q+Fxhn0t/5lA5X1Mxktud8eayQ== + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" "@jridgewell/gen-mapping@^0.3.0": version "0.3.2" @@ -70,6 +82,11 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + "@socket.io/component-emitter@~3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553" @@ -82,17 +99,28 @@ dependencies: "@types/node" "*" -"@types/estree@^1.0.5": - version "1.0.7" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" - integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== +"@types/eslint-scope@^3.7.7": + version "3.7.7" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" + integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "9.6.1" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584" + integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" -"@types/json-schema@^7.0.8": - version "7.0.11" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" - integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== +"@types/estree@*", "@types/estree@^1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== -"@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -102,7 +130,7 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.14.0.tgz#94c47b9217bbac49d4a67a967fdcdeed89ebb7d0" integrity sha512-5EWrvLmglK+imbCJY0+INViFWUHg1AHel1sq4ZVSfdcNqGy9Edv3UB9IIzzg+xPaUcAgZYcfVs2fBcwDeZzU0A== -"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.12.1": +"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": version "1.14.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6" integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ== @@ -168,7 +196,7 @@ resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz#917a20e93f71ad5602966c2d685ae0c6c21f60f1" integrity sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ== -"@webassemblyjs/wasm-edit@^1.12.1": +"@webassemblyjs/wasm-edit@^1.14.1": version "1.14.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597" integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ== @@ -203,7 +231,7 @@ "@webassemblyjs/wasm-gen" "1.14.1" "@webassemblyjs/wasm-parser" "1.14.1" -"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.12.1": +"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.14.1": version "1.14.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz#b3e13f1893605ca78b52c68e54cf6a865f90b9fb" integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ== @@ -223,20 +251,20 @@ "@webassemblyjs/ast" "1.14.1" "@xtuc/long" "4.2.2" -"@webpack-cli/configtest@^2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-2.1.1.tgz#3b2f852e91dac6e3b85fb2a314fb8bef46d94646" - integrity sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw== +"@webpack-cli/configtest@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-3.0.1.tgz#76ac285b9658fa642ce238c276264589aa2b6b57" + integrity sha512-u8d0pJ5YFgneF/GuvEiDA61Tf1VDomHHYMjv/wc9XzYj7nopltpG96nXN5dJRstxZhcNpV1g+nT6CydO7pHbjA== -"@webpack-cli/info@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-2.0.2.tgz#cc3fbf22efeb88ff62310cf885c5b09f44ae0fdd" - integrity sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A== +"@webpack-cli/info@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-3.0.1.tgz#3cff37fabb7d4ecaab6a8a4757d3826cf5888c63" + integrity sha512-coEmDzc2u/ffMvuW9aCjoRzNSPDl/XLuhPdlFRpT9tZHmJ/039az33CE7uH+8s0uL1j5ZNtfdv0HkfaKRBGJsQ== -"@webpack-cli/serve@^2.0.5": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-2.0.5.tgz#325db42395cd49fe6c14057f9a900e427df8810e" - integrity sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ== +"@webpack-cli/serve@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-3.0.1.tgz#bd8b1f824d57e30faa19eb78e4c0951056f72f00" + integrity sha512-sbgw03xQaCLiT6gcY/6u3qBDn01CWw/nbaXl3gTdTFuJJ75Gffv3E3DBpgvY2fkkrdS1fpjaXNOmJlnbtKauKg== "@xtuc/ieee754@^1.2.0": version "1.2.0" @@ -256,20 +284,20 @@ accepts@~1.3.4: mime-types "~2.1.34" negotiator "0.6.3" -acorn-import-attributes@^1.9.5: - version "1.9.5" - resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef" - integrity sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ== +acorn-import-phases@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz#16eb850ba99a056cb7cbfe872ffb8972e18c8bd7" + integrity sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ== acorn@^8.14.0: version "8.14.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== -acorn@^8.7.1: - version "8.8.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== +acorn@^8.15.0: + version "8.15.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" + integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== ajv-formats@^2.1.1: version "2.1.1" @@ -278,11 +306,6 @@ ajv-formats@^2.1.1: dependencies: ajv "^8.0.0" -ajv-keywords@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" - integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== - ajv-keywords@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" @@ -290,16 +313,6 @@ ajv-keywords@^5.1.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.12.5: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - ajv@^8.0.0, ajv@^8.9.0: version "8.17.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" @@ -310,16 +323,16 @@ ajv@^8.0.0, ajv@^8.9.0: json-schema-traverse "^1.0.0" require-from-string "^2.0.2" -ansi-colors@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" - integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== - ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" + integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== + ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" @@ -327,6 +340,11 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +ansi-styles@^6.1.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== + anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -350,6 +368,11 @@ base64id@2.0.0, base64id@~2.0.0: resolved "https://registry.yarnpkg.com/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== +baseline-browser-mapping@^2.9.0: + version "2.9.19" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz#3e508c43c46d961eb4d7d2e5b8d1dd0f9ee4f488" + integrity sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg== + binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -400,15 +423,16 @@ browser-stdout@^1.3.1: resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -browserslist@^4.21.10: - version "4.24.5" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.5.tgz#aa0f5b8560fe81fde84c6dcb38f759bafba0e11b" - integrity sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw== +browserslist@^4.24.0: + version "4.28.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.1.tgz#7f534594628c53c63101079e27e40de490456a95" + integrity sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA== dependencies: - caniuse-lite "^1.0.30001716" - electron-to-chromium "^1.5.149" - node-releases "^2.0.19" - update-browserslist-db "^1.1.3" + baseline-browser-mapping "^2.9.0" + caniuse-lite "^1.0.30001759" + electron-to-chromium "^1.5.263" + node-releases "^2.0.27" + update-browserslist-db "^1.2.0" buffer-from@^1.0.0: version "1.1.2" @@ -433,10 +457,10 @@ camelcase@^6.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001716: - version "1.0.30001718" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz#dae13a9c80d517c30c6197515a96131c194d8f82" - integrity sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw== +caniuse-lite@^1.0.30001759: + version "1.0.30001769" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001769.tgz#1ad91594fad7dc233777c2781879ab5409f7d9c2" + integrity sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg== chalk@^4.1.0: version "4.1.2" @@ -461,20 +485,12 @@ chokidar@^3.5.1: optionalDependencies: fsevents "~2.3.2" -chokidar@^3.5.3: - version "3.6.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" - integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== +chokidar@^4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" + integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" + readdirp "^4.0.1" chrome-trace-event@^1.0.2: version "1.0.3" @@ -490,6 +506,15 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + clone-deep@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" @@ -516,10 +541,10 @@ colorette@^2.0.14: resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== -commander@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" - integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== +commander@^12.1.0: + version "12.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3" + integrity sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA== commander@^2.20.0: version "2.20.3" @@ -568,6 +593,15 @@ cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + custom-event@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" @@ -619,10 +653,10 @@ di@^0.0.1: resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" integrity sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA== -diff@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" - integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== +diff@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-7.0.0.tgz#3fb34d387cd76d803f6eebea67b921dab0182a9a" + integrity sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw== dom-serialize@^2.2.1: version "2.2.1" @@ -634,21 +668,31 @@ dom-serialize@^2.2.1: extend "^3.0.0" void-elements "^2.0.0" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.5.149: - version "1.5.155" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz#809dd0ae9ae1db87c358e0c0c17c09a2ffc432d1" - integrity sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng== +electron-to-chromium@^1.5.263: + version "1.5.286" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz#142be1ab5e1cd5044954db0e5898f60a4960384e" + integrity sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A== emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -674,23 +718,23 @@ engine.io@~6.6.0: engine.io-parser "~5.2.1" ws "~8.17.1" -enhanced-resolve@^5.17.1: - version "5.18.2" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.2.tgz#7903c5b32ffd4b2143eeb4b92472bd68effd5464" - integrity sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ== +enhanced-resolve@^5.17.3: + version "5.19.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz#6687446a15e969eaa63c2fa2694510e17ae6d97c" + integrity sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg== dependencies: graceful-fs "^4.2.4" - tapable "^2.2.0" + tapable "^2.3.0" ent@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" integrity sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA== -envinfo@^7.7.3: - version "7.8.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" - integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== +envinfo@^7.14.0: + version "7.21.0" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.21.0.tgz#04a251be79f92548541f37d13c8b6f22940c3bae" + integrity sha512-Lw7I8Zp5YKHFCXL7+Dz95g4CcbMEpgvqZNNq3AmlT5XAV6CgAAk6gyAMqn2zjw08K9BHfcNuKrMiCPLByGafow== es-module-lexer@^1.2.1: version "1.3.1" @@ -757,16 +801,11 @@ extend@^3.0.0: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: +fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - fast-uri@^3.0.1: version "3.0.6" resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748" @@ -828,6 +867,14 @@ follow-redirects@^1.0.0: resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== +foreground-child@^3.1.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" + integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== + dependencies: + cross-spawn "^7.0.6" + signal-exit "^4.0.1" + format-util@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/format-util/-/format-util-1.0.5.tgz#1ffb450c8a03e7bccffe40643180918cc297d271" @@ -888,6 +935,18 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== +glob@^10.4.5: + version "10.5.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.5.0.tgz#8ec0355919cd3338c28428a23d4f24ecc5fe738c" + integrity sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + glob@^7.1.3, glob@^7.1.7: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -900,17 +959,6 @@ glob@^7.1.3, glob@^7.1.7: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" - integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^5.0.1" - once "^1.3.0" - graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" @@ -1046,6 +1094,11 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + is-plain-obj@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" @@ -1078,6 +1131,15 @@ isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jest-worker@^27.4.5: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" @@ -1099,11 +1161,6 @@ json-parse-even-better-errors@^2.3.1: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - json-schema-traverse@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" @@ -1146,10 +1203,9 @@ karma-webpack@5.0.1: minimatch "^9.0.3" webpack-merge "^4.1.5" -karma@6.4.4: +"karma@github:Kotlin/karma#6.4.5": version "6.4.4" - resolved "https://registry.yarnpkg.com/karma/-/karma-6.4.4.tgz#dfa5a426cf5a8b53b43cd54ef0d0d09742351492" - integrity sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w== + resolved "https://codeload.github.com/Kotlin/karma/tar.gz/239a8fc984584f0d96b1dd750e7a5e2c79da93a6" dependencies: "@colors/colors" "1.5.0" body-parser "^1.19.0" @@ -1181,10 +1237,10 @@ kind-of@^6.0.2: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== -kotlin-web-helpers@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/kotlin-web-helpers/-/kotlin-web-helpers-2.0.0.tgz#b112096b273c1e733e0b86560998235c09a19286" - integrity sha512-xkVGl60Ygn/zuLkDPx+oHj7jeLR7hCvoNF99nhwXMn8a3ApB4lLiC9pk4ol4NHPjyoCbvQctBqvzUcp8pkqyWw== +kotlin-web-helpers@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/kotlin-web-helpers/-/kotlin-web-helpers-3.0.0.tgz#3ed6b48f694f74bb60a737a9d7e2c0e3b29abdb9" + integrity sha512-kdQO4AJQkUPvpLh9aglkXDRyN+CfXO7pKq+GESEnxooBFkQpytLrqZis3ABvmFN1cGw/ZQ/K38u5sRGW+NfBnw== dependencies: format-util "^1.0.5" @@ -1231,6 +1287,11 @@ log4js@^6.4.1: rfdc "^1.3.0" streamroller "^3.1.5" +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -1265,14 +1326,7 @@ minimatch@^3.0.4, minimatch@^3.1.1: dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1, minimatch@^5.1.6: - version "5.1.6" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== - dependencies: - brace-expansion "^2.0.1" - -minimatch@^9.0.3: +minimatch@^9.0.3, minimatch@^9.0.4, minimatch@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== @@ -1284,6 +1338,11 @@ minimist@^1.2.3, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + mkdirp@^0.5.5: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" @@ -1291,30 +1350,31 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.6" -mocha@10.7.3: - version "10.7.3" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.7.3.tgz#ae32003cabbd52b59aece17846056a68eb4b0752" - integrity sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A== +mocha@11.7.5: + version "11.7.5" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-11.7.5.tgz#58f5bbfa5e0211ce7e5ee6128107cefc2515a627" + integrity sha512-mTT6RgopEYABzXWFx+GcJ+ZQ32kp4fMf0xvpZIIfSq9Z8lC/++MtcCnQ9t5FP2veYEP95FIYSvW+U9fV4xrlig== dependencies: - ansi-colors "^4.1.3" browser-stdout "^1.3.1" - chokidar "^3.5.3" + chokidar "^4.0.1" debug "^4.3.5" - diff "^5.2.0" + diff "^7.0.0" escape-string-regexp "^4.0.0" find-up "^5.0.0" - glob "^8.1.0" + glob "^10.4.5" he "^1.2.0" + is-path-inside "^3.0.3" js-yaml "^4.1.0" log-symbols "^4.1.0" - minimatch "^5.1.6" + minimatch "^9.0.5" ms "^2.1.3" + picocolors "^1.1.1" serialize-javascript "^6.0.2" strip-json-comments "^3.1.1" supports-color "^8.1.1" - workerpool "^6.5.1" - yargs "^16.2.0" - yargs-parser "^20.2.9" + workerpool "^9.2.0" + yargs "^17.7.2" + yargs-parser "^21.1.1" yargs-unparser "^2.0.0" ms@2.0.0: @@ -1342,10 +1402,10 @@ neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -node-releases@^2.0.19: - version "2.0.19" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" - integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== +node-releases@^2.0.27: + version "2.0.27" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.27.tgz#eedca519205cf20f650f61d56b070db111231e4e" + integrity sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA== normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" @@ -1416,6 +1476,11 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -1441,6 +1506,14 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + picocolors@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" @@ -1458,11 +1531,6 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -punycode@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" - integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== - qjobs@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/qjobs/-/qjobs-1.2.0.tgz#c45e9c61800bd087ef88d7e256423bdd49e5d071" @@ -1497,6 +1565,11 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" +readdirp@^4.0.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" + integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -1569,15 +1642,6 @@ safe-buffer@^5.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -schema-utils@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" - integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - schema-utils@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.2.tgz#0c10878bf4a73fd2b1dfd14b9462b26788c806ae" @@ -1588,6 +1652,16 @@ schema-utils@^4.3.0: ajv-formats "^2.1.1" ajv-keywords "^5.1.0" +schema-utils@^4.3.2: + version "4.3.3" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.3.tgz#5b1850912fa31df90716963d45d9121fdfc09f46" + integrity sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA== + dependencies: + "@types/json-schema" "^7.0.9" + ajv "^8.9.0" + ajv-formats "^2.1.1" + ajv-keywords "^5.1.0" + serialize-javascript@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" @@ -1628,6 +1702,11 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + socket.io-adapter@~2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz#5de9477c9182fdc171cd8c8364b9a8894ec75d12" @@ -1701,7 +1780,7 @@ streamroller@^3.1.5: debug "^4.3.4" fs-extra "^8.1.0" -string-width@^4.1.0, string-width@^4.2.0: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -1710,13 +1789,29 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" +strip-ansi@^7.0.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.2.tgz#132875abde678c7ea8d691533f2e7e22bb744dba" + integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== + dependencies: + ansi-regex "^6.0.1" + strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" @@ -1741,15 +1836,20 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -tapable@^2.1.1, tapable@^2.2.0: +tapable@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -terser-webpack-plugin@^5.3.10: - version "5.3.14" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06" - integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw== +tapable@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.3.0.tgz#7e3ea6d5ca31ba8e078b560f0d83ce9a14aa8be6" + integrity sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg== + +terser-webpack-plugin@^5.3.11: + version "5.3.16" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz#741e448cc3f93d8026ebe4f7ef9e4afacfd56330" + integrity sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q== dependencies: "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" @@ -1794,11 +1894,6 @@ type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" -typescript@5.5.4: - version "5.5.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" - integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== - ua-parser-js@^0.7.30: version "0.7.33" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.33.tgz#1d04acb4ccef9293df6f70f2c3d22f3030d8b532" @@ -1814,21 +1909,14 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" - integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== +update-browserslist-db@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz#64d76db58713136acbeb4c49114366cc6cc2e80d" + integrity sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w== dependencies: escalade "^3.2.0" picocolors "^1.1.1" -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" @@ -1852,24 +1940,24 @@ watchpack@^2.4.1: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" -webpack-cli@5.1.4: - version "5.1.4" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-5.1.4.tgz#c8e046ba7eaae4911d7e71e2b25b776fcc35759b" - integrity sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg== +webpack-cli@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-6.0.1.tgz#a1ce25da5ba077151afd73adfa12e208e5089207" + integrity sha512-MfwFQ6SfwinsUVi0rNJm7rHZ31GyTcpVE5pgVA3hwFRb7COD4TzjUUwhGWKfO50+xdc2MQPuEBBJoqIMGt3JDw== dependencies: - "@discoveryjs/json-ext" "^0.5.0" - "@webpack-cli/configtest" "^2.1.1" - "@webpack-cli/info" "^2.0.2" - "@webpack-cli/serve" "^2.0.5" + "@discoveryjs/json-ext" "^0.6.1" + "@webpack-cli/configtest" "^3.0.1" + "@webpack-cli/info" "^3.0.1" + "@webpack-cli/serve" "^3.0.1" colorette "^2.0.14" - commander "^10.0.1" + commander "^12.1.0" cross-spawn "^7.0.3" - envinfo "^7.7.3" + envinfo "^7.14.0" fastest-levenshtein "^1.0.12" import-local "^3.0.2" interpret "^3.1.1" rechoir "^0.8.0" - webpack-merge "^5.7.3" + webpack-merge "^6.0.1" webpack-merge@^4.1.5: version "4.2.2" @@ -1878,33 +1966,36 @@ webpack-merge@^4.1.5: dependencies: lodash "^4.17.15" -webpack-merge@^5.7.3: - version "5.8.0" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" - integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== +webpack-merge@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-6.0.1.tgz#50c776868e080574725abc5869bd6e4ef0a16c6a" + integrity sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg== dependencies: clone-deep "^4.0.1" - wildcard "^2.0.0" - -webpack-sources@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" - integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== - -webpack@5.94.0: - version "5.94.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.94.0.tgz#77a6089c716e7ab90c1c67574a28da518a20970f" - integrity sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg== - dependencies: - "@types/estree" "^1.0.5" - "@webassemblyjs/ast" "^1.12.1" - "@webassemblyjs/wasm-edit" "^1.12.1" - "@webassemblyjs/wasm-parser" "^1.12.1" - acorn "^8.7.1" - acorn-import-attributes "^1.9.5" - browserslist "^4.21.10" + flat "^5.0.2" + wildcard "^2.0.1" + +webpack-sources@^3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.3.3.tgz#d4bf7f9909675d7a070ff14d0ef2a4f3c982c723" + integrity sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg== + +webpack@5.101.3: + version "5.101.3" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.101.3.tgz#3633b2375bb29ea4b06ffb1902734d977bc44346" + integrity sha512-7b0dTKR3Ed//AD/6kkx/o7duS8H3f1a4w3BYpIriX4BzIhjkn4teo05cptsxvLesHFKK5KObnadmCHBwGc+51A== + dependencies: + "@types/eslint-scope" "^3.7.7" + "@types/estree" "^1.0.8" + "@types/json-schema" "^7.0.15" + "@webassemblyjs/ast" "^1.14.1" + "@webassemblyjs/wasm-edit" "^1.14.1" + "@webassemblyjs/wasm-parser" "^1.14.1" + acorn "^8.15.0" + acorn-import-phases "^1.0.3" + browserslist "^4.24.0" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.17.1" + enhanced-resolve "^5.17.3" es-module-lexer "^1.2.1" eslint-scope "5.1.1" events "^3.2.0" @@ -1914,11 +2005,11 @@ webpack@5.94.0: loader-runner "^4.2.0" mime-types "^2.1.27" neo-async "^2.6.2" - schema-utils "^3.2.0" + schema-utils "^4.3.2" tapable "^2.1.1" - terser-webpack-plugin "^5.3.10" + terser-webpack-plugin "^5.3.11" watchpack "^2.4.1" - webpack-sources "^3.2.3" + webpack-sources "^3.3.3" which@^1.2.1: version "1.3.1" @@ -1934,17 +2025,17 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -wildcard@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" - integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== +wildcard@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" + integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== -workerpool@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" - integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== +workerpool@^9.2.0: + version "9.3.4" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.3.4.tgz#f6c92395b2141afd78e2a889e80cb338fe9fca41" + integrity sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg== -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -1953,6 +2044,15 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -1973,11 +2073,16 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yargs-parser@^20.2.2, yargs-parser@^20.2.9: +yargs-parser@^20.2.2: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== + yargs-unparser@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" @@ -1988,7 +2093,7 @@ yargs-unparser@^2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@^16.1.1, yargs@^16.2.0: +yargs@^16.1.1: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -2001,6 +2106,19 @@ yargs@^16.1.1, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yargs@^17.7.2: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== + dependencies: + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" diff --git a/samples/tictactoe/common/src/test/java/com/squareup/sample/gameworkflow/TakeTurnsWorkflowTest.kt b/samples/tictactoe/common/src/test/java/com/squareup/sample/gameworkflow/TakeTurnsWorkflowTest.kt index ca73a29308..278eb83216 100644 --- a/samples/tictactoe/common/src/test/java/com/squareup/sample/gameworkflow/TakeTurnsWorkflowTest.kt +++ b/samples/tictactoe/common/src/test/java/com/squareup/sample/gameworkflow/TakeTurnsWorkflowTest.kt @@ -101,10 +101,10 @@ class TakeTurnsWorkflowTest { RealTakeTurnsWorkflow().launchForTestingFromStartWith( TakeTurnsProps.resumeGame( PlayerInfo("higgledy", "piggledy"), - output!!.lastTurn + output.lastTurn ) ) { - assertThat(awaitNextRendering().gameState).isEqualTo(output!!.lastTurn) + assertThat(awaitNextRendering().gameState).isEqualTo(output.lastTurn) } } } diff --git a/samples/tutorial/build.gradle b/samples/tutorial/build.gradle index 3ac052f19c..cfa4b89b51 100644 --- a/samples/tutorial/build.gradle +++ b/samples/tutorial/build.gradle @@ -3,7 +3,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext { - kotlin_version = '2.1.21' + kotlin_version = '2.3.10' workflow_version = "1.24.04" deps = [ diff --git a/workflow-config/config-android/dependencies/releaseRuntimeClasspath.txt b/workflow-config/config-android/dependencies/releaseRuntimeClasspath.txt index 4461d2b976..39cba340f3 100644 --- a/workflow-config/config-android/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-config/config-android/dependencies/releaseRuntimeClasspath.txt @@ -55,11 +55,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-config/config-jvm/dependencies/runtimeClasspath.txt b/workflow-config/config-jvm/dependencies/runtimeClasspath.txt index aa339f76a8..9ded774818 100644 --- a/workflow-config/config-jvm/dependencies/runtimeClasspath.txt +++ b/workflow-config/config-jvm/dependencies/runtimeClasspath.txt @@ -1,10 +1,10 @@ com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-core/api/workflow-core.api b/workflow-core/api/workflow-core.api index 368dd6fd66..0375d62939 100644 --- a/workflow-core/api/workflow-core.api +++ b/workflow-core/api/workflow-core.api @@ -28,6 +28,7 @@ public abstract interface class com/squareup/workflow1/BaseRenderContext { public abstract fun getWorkflowTracer ()Lcom/squareup/workflow1/WorkflowTracer; public abstract fun remember (Ljava/lang/String;Lkotlin/reflect/KType;[Ljava/lang/Object;Lkotlin/jvm/functions/Function0;)Ljava/lang/Object; public abstract fun renderChild (Lcom/squareup/workflow1/Workflow;Ljava/lang/Object;Ljava/lang/String;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object; + public static synthetic fun renderChild$default (Lcom/squareup/workflow1/BaseRenderContext;Lcom/squareup/workflow1/Workflow;Ljava/lang/Object;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/Object; public abstract fun runningSideEffect (Ljava/lang/String;Lkotlin/jvm/functions/Function2;)V } @@ -121,7 +122,7 @@ public abstract interface class com/squareup/workflow1/IdCacheable { } public abstract interface class com/squareup/workflow1/ImpostorWorkflow { - public abstract fun describeRealIdentifier ()Ljava/lang/String; + public fun describeRealIdentifier ()Ljava/lang/String; public abstract fun getRealIdentifier ()Lcom/squareup/workflow1/WorkflowIdentifier; } @@ -372,7 +373,7 @@ public final class com/squareup/workflow1/TypedWorker : com/squareup/workflow1/W public abstract interface class com/squareup/workflow1/Worker { public static final field Companion Lcom/squareup/workflow1/Worker$Companion; public static final field WORKER_OUTPUT_ACTION_NAME Ljava/lang/String; - public abstract fun doesSameWorkAs (Lcom/squareup/workflow1/Worker;)Z + public fun doesSameWorkAs (Lcom/squareup/workflow1/Worker;)Z public abstract fun run ()Lkotlinx/coroutines/flow/Flow; } diff --git a/workflow-core/dependencies/jsRuntimeClasspath.txt b/workflow-core/dependencies/jsRuntimeClasspath.txt index 46d10b4790..14fca9f84e 100644 --- a/workflow-core/dependencies/jsRuntimeClasspath.txt +++ b/workflow-core/dependencies/jsRuntimeClasspath.txt @@ -1,9 +1,9 @@ com.squareup.okio:okio-js:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-dom-api-compat:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-js:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-dom-api-compat:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-js:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlin:kotlinx-atomicfu-runtime:2.0.0 org.jetbrains.kotlinx:atomicfu-js:0.25.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-js:1.9.0 diff --git a/workflow-core/dependencies/jvmMainRuntimeClasspath.txt b/workflow-core/dependencies/jvmMainRuntimeClasspath.txt index aa339f76a8..9ded774818 100644 --- a/workflow-core/dependencies/jvmMainRuntimeClasspath.txt +++ b/workflow-core/dependencies/jvmMainRuntimeClasspath.txt @@ -1,10 +1,10 @@ com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-core/dependencies/jvmRuntimeClasspath.txt b/workflow-core/dependencies/jvmRuntimeClasspath.txt index bc167212db..0c95642f7a 100644 --- a/workflow-core/dependencies/jvmRuntimeClasspath.txt +++ b/workflow-core/dependencies/jvmRuntimeClasspath.txt @@ -1,9 +1,9 @@ com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/WorkflowActionTest.kt b/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/WorkflowActionTest.kt index 7a976ccb3f..2a875e6793 100644 --- a/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/WorkflowActionTest.kt +++ b/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/WorkflowActionTest.kt @@ -44,7 +44,7 @@ internal class WorkflowActionTest { assertEquals("state: state, props: props", state) assertNotNull(result) assertNotNull(result.output) - assertNull(result.output!!.value) + assertNull(result.output.value) assertTrue(result.stateChanged) } diff --git a/workflow-runtime/api/android/workflow-runtime.api b/workflow-runtime/api/android/workflow-runtime.api index a982e92a50..4a592e5395 100644 --- a/workflow-runtime/api/android/workflow-runtime.api +++ b/workflow-runtime/api/android/workflow-runtime.api @@ -55,15 +55,15 @@ public final class com/squareup/workflow1/TreeSnapshot$Companion { } public abstract interface class com/squareup/workflow1/WorkflowInterceptor { - public abstract fun onInitialState (Ljava/lang/Object;Lcom/squareup/workflow1/Snapshot;Lkotlinx/coroutines/CoroutineScope;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; - public abstract fun onPropsChanged (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; - public abstract fun onRender (Ljava/lang/Object;Ljava/lang/Object;Lcom/squareup/workflow1/BaseRenderContext;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; - public abstract fun onRenderAndSnapshot (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/RenderingAndSnapshot; - public abstract fun onRuntimeUpdate (Lcom/squareup/workflow1/WorkflowInterceptor$RuntimeUpdate;)V - public abstract fun onSessionCancelled (Ljava/util/concurrent/CancellationException;Ljava/util/List;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V - public abstract fun onSessionStarted (Lkotlinx/coroutines/CoroutineScope;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V - public abstract fun onSnapshotState (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/Snapshot; - public abstract fun onSnapshotStateWithChildren (Lkotlin/jvm/functions/Function0;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/TreeSnapshot; + public fun onInitialState (Ljava/lang/Object;Lcom/squareup/workflow1/Snapshot;Lkotlinx/coroutines/CoroutineScope;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; + public fun onPropsChanged (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; + public fun onRender (Ljava/lang/Object;Ljava/lang/Object;Lcom/squareup/workflow1/BaseRenderContext;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; + public fun onRenderAndSnapshot (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/RenderingAndSnapshot; + public fun onRuntimeUpdate (Lcom/squareup/workflow1/WorkflowInterceptor$RuntimeUpdate;)V + public fun onSessionCancelled (Ljava/util/concurrent/CancellationException;Ljava/util/List;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V + public fun onSessionStarted (Lkotlinx/coroutines/CoroutineScope;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V + public fun onSnapshotState (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/Snapshot; + public fun onSnapshotStateWithChildren (Lkotlin/jvm/functions/Function0;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/TreeSnapshot; } public final class com/squareup/workflow1/WorkflowInterceptor$DefaultImpls { @@ -79,10 +79,10 @@ public final class com/squareup/workflow1/WorkflowInterceptor$DefaultImpls { } public abstract interface class com/squareup/workflow1/WorkflowInterceptor$RenderContextInterceptor { - public abstract fun onActionSent (Lcom/squareup/workflow1/WorkflowAction;Lkotlin/jvm/functions/Function1;)V - public abstract fun onRemember (Ljava/lang/String;Lkotlin/reflect/KType;[Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; - public abstract fun onRenderChild (Lcom/squareup/workflow1/Workflow;Ljava/lang/Object;Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; - public abstract fun onRunningSideEffect (Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;)V + public fun onActionSent (Lcom/squareup/workflow1/WorkflowAction;Lkotlin/jvm/functions/Function1;)V + public fun onRemember (Ljava/lang/String;Lkotlin/reflect/KType;[Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; + public fun onRenderChild (Lcom/squareup/workflow1/Workflow;Ljava/lang/Object;Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; + public fun onRunningSideEffect (Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;)V } public final class com/squareup/workflow1/WorkflowInterceptor$RenderContextInterceptor$DefaultImpls { @@ -131,7 +131,7 @@ public abstract interface class com/squareup/workflow1/WorkflowInterceptor$Workf public abstract fun getRuntimeContext ()Lkotlin/coroutines/CoroutineContext; public abstract fun getSessionId ()J public abstract fun getWorkflowTracer ()Lcom/squareup/workflow1/WorkflowTracer; - public abstract fun isRootWorkflow ()Z + public fun isRootWorkflow ()Z } public final class com/squareup/workflow1/WorkflowInterceptor$WorkflowSession$DefaultImpls { diff --git a/workflow-runtime/api/jvm/workflow-runtime.api b/workflow-runtime/api/jvm/workflow-runtime.api index fd61348223..e707b7fe9b 100644 --- a/workflow-runtime/api/jvm/workflow-runtime.api +++ b/workflow-runtime/api/jvm/workflow-runtime.api @@ -55,15 +55,15 @@ public final class com/squareup/workflow1/TreeSnapshot$Companion { } public abstract interface class com/squareup/workflow1/WorkflowInterceptor { - public abstract fun onInitialState (Ljava/lang/Object;Lcom/squareup/workflow1/Snapshot;Lkotlinx/coroutines/CoroutineScope;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; - public abstract fun onPropsChanged (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; - public abstract fun onRender (Ljava/lang/Object;Ljava/lang/Object;Lcom/squareup/workflow1/BaseRenderContext;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; - public abstract fun onRenderAndSnapshot (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/RenderingAndSnapshot; - public abstract fun onRuntimeUpdate (Lcom/squareup/workflow1/WorkflowInterceptor$RuntimeUpdate;)V - public abstract fun onSessionCancelled (Ljava/util/concurrent/CancellationException;Ljava/util/List;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V - public abstract fun onSessionStarted (Lkotlinx/coroutines/CoroutineScope;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V - public abstract fun onSnapshotState (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/Snapshot; - public abstract fun onSnapshotStateWithChildren (Lkotlin/jvm/functions/Function0;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/TreeSnapshot; + public fun onInitialState (Ljava/lang/Object;Lcom/squareup/workflow1/Snapshot;Lkotlinx/coroutines/CoroutineScope;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; + public fun onPropsChanged (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; + public fun onRender (Ljava/lang/Object;Ljava/lang/Object;Lcom/squareup/workflow1/BaseRenderContext;Lkotlin/jvm/functions/Function3;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Ljava/lang/Object; + public fun onRenderAndSnapshot (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/RenderingAndSnapshot; + public fun onRuntimeUpdate (Lcom/squareup/workflow1/WorkflowInterceptor$RuntimeUpdate;)V + public fun onSessionCancelled (Ljava/util/concurrent/CancellationException;Ljava/util/List;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V + public fun onSessionStarted (Lkotlinx/coroutines/CoroutineScope;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)V + public fun onSnapshotState (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/Snapshot; + public fun onSnapshotStateWithChildren (Lkotlin/jvm/functions/Function0;Lcom/squareup/workflow1/WorkflowInterceptor$WorkflowSession;)Lcom/squareup/workflow1/TreeSnapshot; } public final class com/squareup/workflow1/WorkflowInterceptor$DefaultImpls { @@ -79,10 +79,10 @@ public final class com/squareup/workflow1/WorkflowInterceptor$DefaultImpls { } public abstract interface class com/squareup/workflow1/WorkflowInterceptor$RenderContextInterceptor { - public abstract fun onActionSent (Lcom/squareup/workflow1/WorkflowAction;Lkotlin/jvm/functions/Function1;)V - public abstract fun onRemember (Ljava/lang/String;Lkotlin/reflect/KType;[Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; - public abstract fun onRenderChild (Lcom/squareup/workflow1/Workflow;Ljava/lang/Object;Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; - public abstract fun onRunningSideEffect (Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;)V + public fun onActionSent (Lcom/squareup/workflow1/WorkflowAction;Lkotlin/jvm/functions/Function1;)V + public fun onRemember (Ljava/lang/String;Lkotlin/reflect/KType;[Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; + public fun onRenderChild (Lcom/squareup/workflow1/Workflow;Ljava/lang/Object;Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function4;)Ljava/lang/Object; + public fun onRunningSideEffect (Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;)V } public final class com/squareup/workflow1/WorkflowInterceptor$RenderContextInterceptor$DefaultImpls { @@ -131,7 +131,7 @@ public abstract interface class com/squareup/workflow1/WorkflowInterceptor$Workf public abstract fun getRuntimeContext ()Lkotlin/coroutines/CoroutineContext; public abstract fun getSessionId ()J public abstract fun getWorkflowTracer ()Lcom/squareup/workflow1/WorkflowTracer; - public abstract fun isRootWorkflow ()Z + public fun isRootWorkflow ()Z } public final class com/squareup/workflow1/WorkflowInterceptor$WorkflowSession$DefaultImpls { diff --git a/workflow-runtime/dependencies/androidRuntimeClasspath.txt b/workflow-runtime/dependencies/androidRuntimeClasspath.txt index 4461d2b976..39cba340f3 100644 --- a/workflow-runtime/dependencies/androidRuntimeClasspath.txt +++ b/workflow-runtime/dependencies/androidRuntimeClasspath.txt @@ -55,11 +55,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-runtime/dependencies/jsRuntimeClasspath.txt b/workflow-runtime/dependencies/jsRuntimeClasspath.txt index 46d10b4790..14fca9f84e 100644 --- a/workflow-runtime/dependencies/jsRuntimeClasspath.txt +++ b/workflow-runtime/dependencies/jsRuntimeClasspath.txt @@ -1,9 +1,9 @@ com.squareup.okio:okio-js:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-dom-api-compat:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-js:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-dom-api-compat:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-js:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlin:kotlinx-atomicfu-runtime:2.0.0 org.jetbrains.kotlinx:atomicfu-js:0.25.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-js:1.9.0 diff --git a/workflow-runtime/dependencies/jvmMainRuntimeClasspath.txt b/workflow-runtime/dependencies/jvmMainRuntimeClasspath.txt index a15771969c..a8d5555de0 100644 --- a/workflow-runtime/dependencies/jvmMainRuntimeClasspath.txt +++ b/workflow-runtime/dependencies/jvmMainRuntimeClasspath.txt @@ -8,10 +8,10 @@ org.jetbrains.dokka:all-modules-page-plugin:2.0.0 org.jetbrains.dokka:analysis-markdown:2.0.0 org.jetbrains.dokka:dokka-base:2.0.0 org.jetbrains.dokka:templating-plugin:2.0.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-reflect:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-reflect:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-runtime/dependencies/jvmRuntimeClasspath.txt b/workflow-runtime/dependencies/jvmRuntimeClasspath.txt index bc167212db..0c95642f7a 100644 --- a/workflow-runtime/dependencies/jvmRuntimeClasspath.txt +++ b/workflow-runtime/dependencies/jvmRuntimeClasspath.txt @@ -1,9 +1,9 @@ com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInSnapshotSaveRestoreTest.kt b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInSnapshotSaveRestoreTest.kt new file mode 100644 index 0000000000..7cfe1d6669 --- /dev/null +++ b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInSnapshotSaveRestoreTest.kt @@ -0,0 +1,123 @@ +package com.squareup.workflow1 + +import app.cash.burst.Burst +import com.squareup.workflow1.RuntimeConfigOptions.Companion.RuntimeOptions +import com.squareup.workflow1.RuntimeConfigOptions.Companion.RuntimeOptions.NONE +import kotlinx.coroutines.ExperimentalCoroutinesApi +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.test.StandardTestDispatcher +import kotlinx.coroutines.test.TestScope +import kotlinx.coroutines.test.UnconfinedTestDispatcher +import kotlinx.coroutines.test.runTest +import kotlin.test.BeforeTest +import kotlin.test.Test +import kotlin.test.assertEquals + +/** + * This only contains the single test ([saves_to_and_restores_from_snapshot]) from + * [RenderWorkflowInTest] that uses [runtime2], since in Kotlin 2.3.10 passing [runtime2] as a test + * method parameter causes a compiler crash. It should be possible to merge this test back into the + * main suite once that bug is fixed. + */ +@OptIn(ExperimentalCoroutinesApi::class, WorkflowExperimentalRuntime::class) +@Burst +class RenderWorkflowInSnapshotSaveRestoreTest( + useTracer: Boolean = false, + private val useUnconfined: Boolean = true, + private val runtime: RuntimeOptions = NONE, + private val runtime2: RuntimeOptions = NONE, +) { + + private val runtimeConfig = runtime.runtimeConfig + private val traces: StringBuilder = StringBuilder() + private val testTracer: WorkflowTracer? = if (useTracer) { + object : WorkflowTracer { + var prefix: String = "" + override fun beginSection(label: String) { + traces.appendLine("${prefix}Starting$label") + prefix += " " + } + + override fun endSection() { + prefix = prefix.substring(0, prefix.length - 2) + traces.appendLine("${prefix}Ending") + } + } + } else { + null + } + + private val myStandardTestDispatcher = StandardTestDispatcher() + private val dispatcherUsed = + if (useUnconfined) UnconfinedTestDispatcher() else myStandardTestDispatcher + + private fun advanceIfStandard() { + if (dispatcherUsed == myStandardTestDispatcher) { + dispatcherUsed.scheduler.advanceUntilIdle() + dispatcherUsed.scheduler.runCurrent() + } + } + + @BeforeTest + public fun setup() { + traces.clear() + } + + @Test fun saves_to_and_restores_from_snapshot() = runTest(dispatcherUsed) { + val workflow = Workflow.stateful Unit>>( + initialState = { _, snapshot -> + snapshot?.bytes?.parse { it.readUtf8WithLength() } ?: "initial state" + }, + snapshot = { state -> + Snapshot.write { it.writeUtf8WithLength(state) } + }, + render = { _, renderState -> + Pair( + renderState, + { newState -> actionSink.send(action("") { state = newState }) } + ) + } + ) + val props = MutableStateFlow(Unit) + val renderings = renderWorkflowIn( + workflow = workflow, + scope = backgroundScope, + props = props, + runtimeConfig = runtimeConfig, + workflowTracer = null, + ) {} + advanceIfStandard() + + // Interact with the workflow to change the state. + renderings.value.rendering.let { (state, updateState) -> + assertEquals("initial state", state) + updateState("updated state") + } + advanceIfStandard() + + val snapshot = renderings.value.let { (rendering, snapshot) -> + val (state, updateState) = rendering + assertEquals("updated state", state) + updateState("ignored rendering") + return@let snapshot + } + advanceIfStandard() + + // Create a new scope to launch a second runtime to restore. + val restoreScope = TestScope(dispatcherUsed) + val restoredRenderings = + renderWorkflowIn( + workflow = workflow, + scope = restoreScope, + props = props, + initialSnapshot = snapshot, + workflowTracer = null, + runtimeConfig = runtime2.runtimeConfig + ) {} + advanceIfStandard() + assertEquals( + "updated state", + restoredRenderings.value.rendering.first + ) + } +} diff --git a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInTest.kt b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInTest.kt index 20a46b2558..ee03acd866 100644 --- a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInTest.kt +++ b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/RenderWorkflowInTest.kt @@ -249,65 +249,66 @@ class RenderWorkflowInTest( assertEquals(2, interceptedRenderingsCount, "Should have intercepted 2 rendering.") } - @Test fun saves_to_and_restores_from_snapshot( - runtime2: RuntimeOptions = NONE - ) = runTest(dispatcherUsed) { - val workflow = Workflow.stateful Unit>>( - initialState = { _, snapshot -> - snapshot?.bytes?.parse { it.readUtf8WithLength() } ?: "initial state" - }, - snapshot = { state -> - Snapshot.write { it.writeUtf8WithLength(state) } - }, - render = { _, renderState -> - Pair( - renderState, - { newState -> actionSink.send(action("") { state = newState }) } - ) - } - ) - val props = MutableStateFlow(Unit) - val renderings = renderWorkflowIn( - workflow = workflow, - scope = backgroundScope, - props = props, - runtimeConfig = runtimeConfig, - workflowTracer = null, - ) {} - advanceIfStandard() - - // Interact with the workflow to change the state. - renderings.value.rendering.let { (state, updateState) -> - assertEquals("initial state", state) - updateState("updated state") - } - advanceIfStandard() - - val snapshot = renderings.value.let { (rendering, snapshot) -> - val (state, updateState) = rendering - assertEquals("updated state", state) - updateState("ignored rendering") - return@let snapshot - } - advanceIfStandard() - - // Create a new scope to launch a second runtime to restore. - val restoreScope = TestScope(dispatcherUsed) - val restoredRenderings = - renderWorkflowIn( - workflow = workflow, - scope = restoreScope, - props = props, - initialSnapshot = snapshot, - workflowTracer = null, - runtimeConfig = runtime2.runtimeConfig - ) {} - advanceIfStandard() - assertEquals( - "updated state", - restoredRenderings.value.rendering.first - ) - } + // // This test is broken in 2.3.10. Burst bug? + // @Test fun saves_to_and_restores_from_snapshot( + // // runtime2: RuntimeOptions = NONE + // ) = runTest(dispatcherUsed) { + // // val workflow = Workflow.stateful Unit>>( + // // initialState = { _, snapshot -> + // // snapshot?.bytes?.parse { it.readUtf8WithLength() } ?: "initial state" + // // }, + // // snapshot = { state -> + // // Snapshot.write { it.writeUtf8WithLength(state) } + // // }, + // // render = { _, renderState -> + // // Pair( + // // renderState, + // // { newState -> actionSink.send(action("") { state = newState }) } + // // ) + // // } + // // ) + // // val props = MutableStateFlow(Unit) + // // val renderings = renderWorkflowIn( + // // workflow = workflow, + // // scope = backgroundScope, + // // props = props, + // // runtimeConfig = runtimeConfig, + // // workflowTracer = null, + // // ) {} + // // advanceIfStandard() + // // + // // // Interact with the workflow to change the state. + // // renderings.value.rendering.let { (state, updateState) -> + // // assertEquals("initial state", state) + // // updateState("updated state") + // // } + // // advanceIfStandard() + // // + // // val snapshot = renderings.value.let { (rendering, snapshot) -> + // // val (state, updateState) = rendering + // // assertEquals("updated state", state) + // // updateState("ignored rendering") + // // return@let snapshot + // // } + // // advanceIfStandard() + // // + // // // Create a new scope to launch a second runtime to restore. + // // val restoreScope = TestScope(dispatcherUsed) + // // val restoredRenderings = + // // renderWorkflowIn( + // // workflow = workflow, + // // scope = restoreScope, + // // props = props, + // // initialSnapshot = snapshot, + // // workflowTracer = null, + // // runtimeConfig = runtime2.runtimeConfig + // // ) {} + // // advanceIfStandard() + // // assertEquals( + // // "updated state", + // // restoredRenderings.value.rendering.first + // // ) + // } // https://github.com/square/workflow-kotlin/issues/223 @Test fun snapshots_are_lazy() = runTest(dispatcherUsed) { diff --git a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/WorkflowInterceptorTest.kt b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/WorkflowInterceptorTest.kt index c6f7bce89b..d865986c06 100644 --- a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/WorkflowInterceptorTest.kt +++ b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/WorkflowInterceptorTest.kt @@ -229,7 +229,7 @@ internal class WorkflowInterceptorTest { ) assertEquals(1, capturedDroppedActions!!.size) - assertEquals("TestAction", capturedDroppedActions!![0].debuggingName) + assertEquals("TestAction", capturedDroppedActions[0].debuggingName) } private val Workflow<*, *, *>.session: WorkflowSession diff --git a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/WorkflowNodeTest.kt b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/WorkflowNodeTest.kt index 525ff06adb..d68707e3c3 100644 --- a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/WorkflowNodeTest.kt +++ b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/WorkflowNodeTest.kt @@ -1488,7 +1488,7 @@ internal class WorkflowNodeTest { node.cancel() assertEquals(1, capturedDroppedActions!!.size) - assertTrue(capturedDroppedActions!![0].debuggingName.startsWith("TestAction(action1)")) + assertTrue(capturedDroppedActions[0].debuggingName.startsWith("TestAction(action1)")) } @Test fun cancel_with_multiple_pending_actions_returns_all_in_order() { @@ -1527,9 +1527,9 @@ internal class WorkflowNodeTest { node.cancel() assertEquals(3, capturedDroppedActions!!.size) - assertTrue(capturedDroppedActions!![0].debuggingName.startsWith("TestAction(action1)")) - assertTrue(capturedDroppedActions!![1].debuggingName.startsWith("TestAction(action2)")) - assertTrue(capturedDroppedActions!![2].debuggingName.startsWith("TestAction(action3)")) + assertTrue(capturedDroppedActions[0].debuggingName.startsWith("TestAction(action1)")) + assertTrue(capturedDroppedActions[1].debuggingName.startsWith("TestAction(action2)")) + assertTrue(capturedDroppedActions[2].debuggingName.startsWith("TestAction(action3)")) } @Test fun cancel_does_not_apply_pending_actions() { @@ -1631,8 +1631,8 @@ internal class WorkflowNodeTest { node.cancel() assertEquals(workflow.identifier, capturedSession!!.identifier) - assertEquals("test-key", capturedSession!!.renderKey) - assertEquals(99, capturedSession!!.parent!!.sessionId) + assertEquals("test-key", capturedSession.renderKey) + assertEquals(99, capturedSession.parent!!.sessionId) } @Test fun cancel_with_event_handler_actions_returns_them() { @@ -1677,8 +1677,8 @@ internal class WorkflowNodeTest { assertEquals(2, capturedDroppedActions!!.size) // Event handler actions have a specific format - assertTrue(capturedDroppedActions!![0].debuggingName.startsWith("eH: handler")) - assertTrue(capturedDroppedActions!![1].debuggingName.startsWith("eH: handler")) + assertTrue(capturedDroppedActions[0].debuggingName.startsWith("eH: handler")) + assertTrue(capturedDroppedActions[1].debuggingName.startsWith("eH: handler")) } private class TestSession(override val sessionId: Long = 0) : WorkflowSession { diff --git a/workflow-rx2/dependencies/runtimeClasspath.txt b/workflow-rx2/dependencies/runtimeClasspath.txt index 97232d42e1..7e8cb8b261 100644 --- a/workflow-rx2/dependencies/runtimeClasspath.txt +++ b/workflow-rx2/dependencies/runtimeClasspath.txt @@ -1,11 +1,11 @@ com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 io.reactivex.rxjava2:rxjava:2.2.21 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-testing/dependencies/runtimeClasspath.txt b/workflow-testing/dependencies/runtimeClasspath.txt index 16f7f1b9db..df6fb8b7cd 100644 --- a/workflow-testing/dependencies/runtimeClasspath.txt +++ b/workflow-testing/dependencies/runtimeClasspath.txt @@ -2,12 +2,12 @@ app.cash.turbine:turbine-jvm:1.0.0 app.cash.turbine:turbine:1.0.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-reflect:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-reflect:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-tracing-papa/dependencies/releaseRuntimeClasspath.txt b/workflow-tracing-papa/dependencies/releaseRuntimeClasspath.txt index f88b715770..1d3e6420e0 100644 --- a/workflow-tracing-papa/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-tracing-papa/dependencies/releaseRuntimeClasspath.txt @@ -56,11 +56,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-tracing-papa/src/test/java/com/squareup/workflow1/tracing/papa/WorkflowPapaTracerTest.kt b/workflow-tracing-papa/src/test/java/com/squareup/workflow1/tracing/papa/WorkflowPapaTracerTest.kt index 11dd88d5d3..17963ba716 100644 --- a/workflow-tracing-papa/src/test/java/com/squareup/workflow1/tracing/papa/WorkflowPapaTracerTest.kt +++ b/workflow-tracing-papa/src/test/java/com/squareup/workflow1/tracing/papa/WorkflowPapaTracerTest.kt @@ -289,14 +289,10 @@ internal class WorkflowPapaTracerTest { override val renderIncomingCauses: MutableList = mutableListOf() override var previousRenderCause: RenderCause? = null override var currentRenderCause: RenderCause? = null - override lateinit var configSnapshot: ConfigSnapshot + override var configSnapshot: ConfigSnapshot = ConfigSnapshot(TestRuntimeConfig()) override fun addRuntimeUpdate(event: RuntimeUpdateLogLine) { // No-op for testing } - - init { - configSnapshot = ConfigSnapshot(TestRuntimeConfig()) - } } } diff --git a/workflow-tracing/dependencies/releaseRuntimeClasspath.txt b/workflow-tracing/dependencies/releaseRuntimeClasspath.txt index 0a98c61734..336652d48c 100644 --- a/workflow-tracing/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-tracing/dependencies/releaseRuntimeClasspath.txt @@ -55,11 +55,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-tracing/src/test/java/com/squareup/workflow1/tracing/WorkflowRuntimeMonitorTest.kt b/workflow-tracing/src/test/java/com/squareup/workflow1/tracing/WorkflowRuntimeMonitorTest.kt index cac16f2aa3..0736f2268a 100644 --- a/workflow-tracing/src/test/java/com/squareup/workflow1/tracing/WorkflowRuntimeMonitorTest.kt +++ b/workflow-tracing/src/test/java/com/squareup/workflow1/tracing/WorkflowRuntimeMonitorTest.kt @@ -593,8 +593,8 @@ internal class WorkflowRuntimeMonitorTest { val renderPassInfo = renderPassTracker.renderPassInfoReceived!! assertEquals(runtimeName, renderPassInfo.runnerName) assertTrue(renderPassInfo.renderCause is RenderCause.Callback) - assertEquals("testAction", (renderPassInfo.renderCause as RenderCause.Callback).actionName) - assertEquals("TestWorkflow", (renderPassInfo.renderCause as RenderCause.Callback).workflowName) + assertEquals("testAction", renderPassInfo.renderCause.actionName) + assertEquals("TestWorkflow", renderPassInfo.renderCause.workflowName) assertTrue(renderPassInfo.durationUptime.inWholeNanoseconds > 0) } diff --git a/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt index 9fc98108cf..9f1bd5add9 100644 --- a/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt @@ -76,11 +76,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-ui/compose/api/compose.api b/workflow-ui/compose/api/compose.api index 5c5a794399..db7986bdb6 100644 --- a/workflow-ui/compose/api/compose.api +++ b/workflow-ui/compose/api/compose.api @@ -28,7 +28,7 @@ public final class com/squareup/workflow1/ui/compose/RenderAsStateKt { public abstract interface class com/squareup/workflow1/ui/compose/ScreenComposableFactory : com/squareup/workflow1/ui/ViewRegistry$Entry { public abstract fun Content (Lcom/squareup/workflow1/ui/Screen;Landroidx/compose/runtime/Composer;I)V - public abstract fun getKey ()Lcom/squareup/workflow1/ui/ViewRegistry$Key; + public fun getKey ()Lcom/squareup/workflow1/ui/ViewRegistry$Key; public abstract fun getType ()Lkotlin/reflect/KClass; } @@ -38,7 +38,7 @@ public final class com/squareup/workflow1/ui/compose/ScreenComposableFactory$Def public abstract interface class com/squareup/workflow1/ui/compose/ScreenComposableFactoryFinder { public static final field Companion Lcom/squareup/workflow1/ui/compose/ScreenComposableFactoryFinder$Companion; - public abstract fun getComposableFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/Screen;)Lcom/squareup/workflow1/ui/compose/ScreenComposableFactory; + public fun getComposableFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/Screen;)Lcom/squareup/workflow1/ui/compose/ScreenComposableFactory; } public final class com/squareup/workflow1/ui/compose/ScreenComposableFactoryFinder$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { diff --git a/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt index ebc2cb41f4..2c5a8fd3b6 100644 --- a/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt @@ -70,11 +70,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-ui/core-android/api/core-android.api b/workflow-ui/core-android/api/core-android.api index 1f462ae976..1075ae15e8 100644 --- a/workflow-ui/core-android/api/core-android.api +++ b/workflow-ui/core-android/api/core-android.api @@ -36,7 +36,8 @@ public final class com/squareup/workflow1/ui/ParcelableTextController$CREATOR : public abstract interface class com/squareup/workflow1/ui/ScreenViewFactory : com/squareup/workflow1/ui/ViewRegistry$Entry { public static final field Companion Lcom/squareup/workflow1/ui/ScreenViewFactory$Companion; public abstract fun buildView (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;Landroid/view/ViewGroup;)Lcom/squareup/workflow1/ui/ScreenViewHolder; - public abstract fun getKey ()Lcom/squareup/workflow1/ui/ViewRegistry$Key; + public static synthetic fun buildView$default (Lcom/squareup/workflow1/ui/ScreenViewFactory;Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;Landroid/view/ViewGroup;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/ScreenViewHolder; + public fun getKey ()Lcom/squareup/workflow1/ui/ViewRegistry$Key; public abstract fun getType ()Lkotlin/reflect/KClass; } @@ -50,7 +51,7 @@ public final class com/squareup/workflow1/ui/ScreenViewFactory$DefaultImpls { public abstract interface class com/squareup/workflow1/ui/ScreenViewFactoryFinder { public static final field Companion Lcom/squareup/workflow1/ui/ScreenViewFactoryFinder$Companion; - public abstract fun getViewFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/Screen;)Lcom/squareup/workflow1/ui/ScreenViewFactory; + public fun getViewFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/Screen;)Lcom/squareup/workflow1/ui/ScreenViewFactory; } public final class com/squareup/workflow1/ui/ScreenViewFactoryFinder$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { @@ -295,7 +296,7 @@ public final class com/squareup/workflow1/ui/navigation/LayeredDialogSessions$Sa public abstract interface class com/squareup/workflow1/ui/navigation/OverlayDialogFactory : com/squareup/workflow1/ui/ViewRegistry$Entry { public static final field Companion Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory$Companion; public abstract fun buildDialog (Lcom/squareup/workflow1/ui/navigation/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; - public abstract fun getKey ()Lcom/squareup/workflow1/ui/ViewRegistry$Key; + public fun getKey ()Lcom/squareup/workflow1/ui/ViewRegistry$Key; public abstract fun getType ()Lkotlin/reflect/KClass; } @@ -308,7 +309,7 @@ public final class com/squareup/workflow1/ui/navigation/OverlayDialogFactory$Def public abstract interface class com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder { public static final field Companion Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder$Companion; - public abstract fun getDialogFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/navigation/Overlay;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory; + public fun getDialogFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/navigation/Overlay;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory; } public final class com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { diff --git a/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt index 774b0387af..1d98faaa43 100644 --- a/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt @@ -64,11 +64,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 diff --git a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/ViewLaunchWhenAttachedTest.kt b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/ViewLaunchWhenAttachedTest.kt index 25ba8b2377..94d1122c87 100644 --- a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/ViewLaunchWhenAttachedTest.kt +++ b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/ViewLaunchWhenAttachedTest.kt @@ -110,7 +110,7 @@ internal class ViewLaunchWhenAttachedTest { // Action: detach view! performViewDetach() - assertThat(innerJob!!.isCancelled).isTrue() + assertThat(innerJob.isCancelled).isTrue() } @Test fun `launchWhenAttached launches when reattached`() = runTest { @@ -160,7 +160,7 @@ internal class ViewLaunchWhenAttachedTest { (view.findViewTreeLifecycleOwner() as TestLifecycleOwner) .handleLifecycleEvent(ON_DESTROY) - assertThat(innerJob!!.isCancelled).isTrue() + assertThat(innerJob.isCancelled).isTrue() } @Test fun `launchWhenAttached includes view classname in coroutine name`() = runTest { diff --git a/workflow-ui/core-common/api/core-common.api b/workflow-ui/core-common/api/core-common.api index e849399234..29b1a5da21 100644 --- a/workflow-ui/core-common/api/core-common.api +++ b/workflow-ui/core-common/api/core-common.api @@ -14,7 +14,7 @@ public final class com/squareup/workflow1/ui/CompatibleKt { public abstract interface class com/squareup/workflow1/ui/Composite : com/squareup/workflow1/ui/Unwrappable { public abstract fun asSequence ()Lkotlin/sequences/Sequence; - public abstract fun getUnwrapped ()Ljava/lang/Object; + public fun getUnwrapped ()Ljava/lang/Object; } public final class com/squareup/workflow1/ui/Composite$DefaultImpls { @@ -152,10 +152,10 @@ public final class com/squareup/workflow1/ui/ViewRegistryKt { } public abstract interface class com/squareup/workflow1/ui/Wrapper : com/squareup/workflow1/ui/Compatible, com/squareup/workflow1/ui/Container { - public abstract fun asSequence ()Lkotlin/sequences/Sequence; - public abstract fun getCompatibilityKey ()Ljava/lang/String; + public fun asSequence ()Lkotlin/sequences/Sequence; + public fun getCompatibilityKey ()Ljava/lang/String; public abstract fun getContent ()Ljava/lang/Object; - public abstract fun getUnwrapped ()Ljava/lang/Object; + public fun getUnwrapped ()Ljava/lang/Object; public abstract fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper; } diff --git a/workflow-ui/core-common/dependencies/runtimeClasspath.txt b/workflow-ui/core-common/dependencies/runtimeClasspath.txt index aa339f76a8..9ded774818 100644 --- a/workflow-ui/core-common/dependencies/runtimeClasspath.txt +++ b/workflow-ui/core-common/dependencies/runtimeClasspath.txt @@ -1,10 +1,10 @@ com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0 diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/TypedViewRegistry.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/TypedViewRegistry.kt index 17171bfe37..5af05f9e49 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/TypedViewRegistry.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/TypedViewRegistry.kt @@ -23,7 +23,7 @@ internal class TypedViewRegistry private constructor( check(keys.size == bindings.size) { "${bindings.map { it.key }} must not have duplicate entries." } - } as Map, Entry<*>> + } ) override val keys: Set> get() = bindings.keys diff --git a/workflow-ui/internal-testing-android/api/internal-testing-android.api b/workflow-ui/internal-testing-android/api/internal-testing-android.api index b7b5fa73de..dcbe9ad880 100644 --- a/workflow-ui/internal-testing-android/api/internal-testing-android.api +++ b/workflow-ui/internal-testing-android/api/internal-testing-android.api @@ -28,13 +28,13 @@ public class com/squareup/workflow1/ui/internal/test/AbstractLifecycleTestActivi } public abstract interface class com/squareup/workflow1/ui/internal/test/AbstractLifecycleTestActivity$ViewObserver { - public abstract fun onAttachedToWindow (Landroid/view/View;Ljava/lang/Object;)V - public abstract fun onDetachedFromWindow (Landroid/view/View;Ljava/lang/Object;)V - public abstract fun onRestoreInstanceState (Landroid/view/View;Ljava/lang/Object;)V - public abstract fun onSaveInstanceState (Landroid/view/View;Ljava/lang/Object;)V - public abstract fun onShowRendering (Landroid/view/View;Ljava/lang/Object;)V - public abstract fun onViewCreated (Landroid/view/View;Ljava/lang/Object;)V - public abstract fun onViewTreeLifecycleStateChanged (Ljava/lang/Object;Landroidx/lifecycle/Lifecycle$Event;)V + public fun onAttachedToWindow (Landroid/view/View;Ljava/lang/Object;)V + public fun onDetachedFromWindow (Landroid/view/View;Ljava/lang/Object;)V + public fun onRestoreInstanceState (Landroid/view/View;Ljava/lang/Object;)V + public fun onSaveInstanceState (Landroid/view/View;Ljava/lang/Object;)V + public fun onShowRendering (Landroid/view/View;Ljava/lang/Object;)V + public fun onViewCreated (Landroid/view/View;Ljava/lang/Object;)V + public fun onViewTreeLifecycleStateChanged (Ljava/lang/Object;Landroidx/lifecycle/Lifecycle$Event;)V } public final class com/squareup/workflow1/ui/internal/test/AbstractLifecycleTestActivity$ViewObserver$DefaultImpls { diff --git a/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt index ab279c9a41..5afc9c9fa2 100644 --- a/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt @@ -66,11 +66,11 @@ com.squareup.curtains:curtains:1.2.2 com.squareup.okio:okio-jvm:3.3.0 com.squareup.okio:okio:3.3.0 com.squareup.radiography:radiography:2.4.1 -org.jetbrains.kotlin:kotlin-bom:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-common:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.21 -org.jetbrains.kotlin:kotlin-stdlib:2.1.21 +org.jetbrains.kotlin:kotlin-bom:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-common:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.3.10 +org.jetbrains.kotlin:kotlin-stdlib:2.3.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0