update node
diff --git a/build.gradle.kts b/build.gradle.kts
index 185c1c1..1133e4c 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1089,13 +1089,21 @@
plugins.withType(org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin::class) {
extensions.configure(org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension::class.java) {
- nodeVersion = "16.13.0"
+ nodeVersion = "18.0.0-v8-canary20220323849445f546"
+ nodeDownloadBaseUrl = "https://nodejs.org/download/v8-canary/"
+
npmInstallTaskProvider?.configure {
args += listOf("--network-concurrency", "1", "--mutex", "network")
} ?: error("kotlinNpmInstall task should exist inside NodeJsRootExtension")
}
}
+//plugins.withType(org.jetbrains.kotlin.gradle.targets.js.yarn.YarnPlugin::class) {
+// extensions.configure(org.jetbrains.kotlin.gradle.targets.js.yarn.YarnRootExtension::class.java) {
+// ignoreEngines = true
+// }
+//}
+
afterEvaluate {
val cacheRedirectorEnabled = findProperty("cacheRedirectorEnabled")?.toString()?.toBoolean() == true
if (cacheRedirectorEnabled) {
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 99dbeef..2ed6fba 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -7900,6 +7900,20 @@
<sha256 value="8cf1fb277154b82d2774143be2575e1690af1b5c05e2a1b9a54b50b4efc73e8e" origin="https://nodejs.org/es/blog/release/v16.2.0/"/>
</artifact>
</component>
+ <component group="org.nodejs" name="node" version="18.0.0-v8-canary20220323849445f546">
+ <artifact name="node-18.0.0-v8-canary20220323849445f546-darwin-arm64.tar.gz">
+ <sha256 value="686e0cc1b39db72610ec53c9a70c3405cb0a39d9ca239b9017b34b955d6df8c4" origin="https://nodejs.org/download/v8-canary/v18.0.0-v8-canary20220323849445f546/SHASUMS256.txt"/>
+ </artifact>
+ <artifact name="node-18.0.0-v8-canary20220323849445f546-darwin-x64.tar.gz">
+ <sha256 value="ffd1c28fc0a936994d374770db024faca6cb261137dbc374e938d72b314704b8" origin="https://nodejs.org/download/v8-canary/v18.0.0-v8-canary20220323849445f546/SHASUMS256.txt"/>
+ </artifact>
+ <artifact name="node-18.0.0-v8-canary20220323849445f546-linux-x64.tar.gz">
+ <sha256 value="e3cfd1c10802f1e0a010e6e5307eae438ccef07b2537bf3e740f4abf803963c5" origin="https://nodejs.org/download/v8-canary/v18.0.0-v8-canary20220323849445f546/SHASUMS256.txt"/>
+ </artifact>
+ <artifact name="node-18.0.0-v8-canary20220323849445f546-win-x64.zip">
+ <sha256 value="02c518a1b1f7671c038e2b1ced1a880ab336f0241fea5349aa54eb9d8a349ee3" origin="https://nodejs.org/download/v8-canary/v18.0.0-v8-canary20220323849445f546/SHASUMS256.txt"/>
+ </artifact>
+ </component>
<component group="org.openjdk.jmh" name="jmh-core" version="1.21">
<artifact name="jmh-core-1.21.jar">
<md5 value="87fe00275cdaa76a31f73906fc8ee9d7" origin="Generated by Gradle"/>
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnBasics.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnBasics.kt
index 89ad412..9c7a3fa 100644
--- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnBasics.kt
+++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnBasics.kt
@@ -41,7 +41,8 @@
)
.plus(
if (yarn.ignoreScripts) "--ignore-scripts" else ""
- ).filter { it.isNotEmpty() }
+ ).filter { it.isNotEmpty() } + yarn.extraArgs
+
val nodeExecutable = nodeJs.nodeExecutable
if (!yarn.ignoreScripts) {
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnEnv.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnEnv.kt
index 1b0daf5..eadd7bb 100644
--- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnEnv.kt
+++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnEnv.kt
@@ -17,4 +17,5 @@
val ivyDependency: String,
val standalone: Boolean,
val ignoreScripts: Boolean,
+ val extraArgs: List<String>
) : Serializable
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnRootExtension.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnRootExtension.kt
index 9dd89c0..f264ba6 100644
--- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnRootExtension.kt
+++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnRootExtension.kt
@@ -43,6 +43,7 @@
var lockFileDirectory: File by Property(project.rootDir.resolve("kotlin-js-store"))
var ignoreScripts by Property(true)
+ var ignoreEngines by Property(false)
val yarnSetupTaskProvider: TaskProvider<YarnSetupTask>
get() = project.tasks
@@ -99,6 +100,10 @@
else
finalCommand
}
+ val extraArgs = mutableListOf<String>()
+ if (ignoreEngines)
+ extraArgs += "--ignore-enignes"
+
return YarnEnv(
downloadUrl = downloadBaseUrl,
cleanableStore = cleanableStore,
@@ -107,6 +112,7 @@
standalone = !download,
ivyDependency = "com.yarnpkg:yarn:$version@tar.gz",
ignoreScripts = ignoreScripts,
+ extraArgs = extraArgs
)
}