Files
davotoulaandClaude Opus 4.8 d7e163111a build: remove Kover coverage plugin
Reverts the Kover coverage aggregation (introduced in dca345212b) from every
module, the root aggregation block, the Sonar coverage import, the version
catalog, and BUILDING.md. With the plugin present the 16 GB CI runner OOM-killed
during the Android test+build job even with Kover opt-in disabled; removing it
entirely clears the OOM. No other CI changes — the diff versus main is exactly
the inverse of dca345212b.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 16:52:29 +01:00

43 lines
1.4 KiB
Kotlin

import org.jetbrains.kotlin.gradle.dsl.JvmTarget
plugins {
alias(libs.plugins.jetbrainsKotlinJvm)
application
}
application {
mainClass.set("com.vitorpamplona.relaybench.MainKt")
applicationName = "relaybench"
// Percentile latencies get skewed by GC pauses in the *client* — give the
// harness enough heap that it never becomes the bottleneck being measured.
// The sync phase also materializes the whole corpus as Event objects (plus
// a dedup map) to derive the 80% slices, so a million-event run needs more
// than 2g or `SyncBenchmark.effectiveEvents` OOMs. -Xmx is a ceiling, not a
// reservation, so small runs don't pay for it. Override with JAVA_OPTS.
applicationDefaultJvmArgs = listOf("-Xmx8g")
}
kotlin {
jvmToolchain(21)
compilerOptions {
jvmTarget.set(JvmTarget.JVM_21)
}
}
dependencies {
// Event model, Schnorr signing, Filter + wire-format JSON. The harness
// reuses quartz so the corpus is byte-identical to what Amethyst emits.
implementation(project(":quartz"))
implementation(libs.kotlinx.coroutines.core)
implementation(libs.jackson.module.kotlin)
implementation(libs.okhttp)
// JNI secp256k1 backend quartz needs at runtime on plain JVM.
runtimeOnly(libs.secp256k1.kmp.jni.jvm)
testImplementation(libs.kotlin.test)
testImplementation(libs.kotlinx.coroutines.test)
testImplementation(libs.secp256k1.kmp.jni.jvm)
}