diff --git a/build.gradle.kts b/build.gradle.kts index d9ee81613..2eb7b2272 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -29,3 +29,14 @@ tasks.register("publishAllToMavenLocal") { dependsOn(":python-multiplatform-ksp:publishToMavenLocal") dependsOn(gradle.includedBuild("python-multiplatform-gradle-plugin").task(":publishToMavenLocal")) } + +// The build's single Kotlin/Wasm npm lock (one workspace for every wasm module) lives next to the +// version catalog instead of a root `kotlin-js-store/` (issue #110). KGP only allows this on the +// root project; the `*Property` forms are the non-deprecated API from Kotlin 2.4 on. Mismatch +// reporting keeps its default (FAIL), so CI notices a drifted lock. +plugins.withType { + extensions.getByType().apply { + lockFileDirectoryProperty.set(layout.projectDirectory.dir("gradle")) + lockFileNameProperty.set("wasm-yarn.lock") + } +} diff --git a/kotlin-js-store/wasm/yarn.lock b/gradle/wasm-yarn.lock similarity index 100% rename from kotlin-js-store/wasm/yarn.lock rename to gradle/wasm-yarn.lock