Files
agentik/storage-ksqlite/build.gradle.kts
T
subochev 161be41adf fix(deps): bump ksqlite 0.1.1-SNAPSHOT → 0.1.2, text-embedding-kmp → v4
ksqlite 0.1.2 опубликован в Maven Central (был только в локальном ~/.m2);
text-embedding-kmp v4 — в caffeine Nexus (поддержка нативных целей):
jvm, android, linuxX64/Arm64, macosX64/Arm64, iosX64/Arm64/SimulatorArm64.

Без этих апдейтов CI release-пайплайн падал с unresolved-dependencies
на любом свежем коммите после acc7237e5 (введение ksqlite).

Дополнительно: игнорируем локальный opencode config.json.
2026-09-21 23:10:19 +03:00

54 lines
2.5 KiB
Kotlin
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
plugins {
alias(libs.plugins.kotlin.multiplatform)
alias(libs.plugins.kotlin.serialization)
}
// KMP-реализация EventStore поверх ksqlite (https://github.com/caffeine-mgn/ksqlite).
//
// Цели сборки:
// - jvm() — основная, тесты гоняются здесь (in-memory DB без файла)
// - linuxX64() / mingwX64() — smoke-проверка что KMP реально KMP
// - androidNative* — НЕ включены, нужны NDK headers иначе gradle падает.
// Когда дойдём до Android-агента — добавим.
//
// Apple targets (macos*, ios*, tvos*, watchos*) невозможно собрать на Linux —
// Kotlin Multiplatform plugin auto-disables их, так что даже не пытаемся.
//
// ksqlite 0.1.2 опубликован в Maven Central (см. settings.gradle.kts —
// mavenCentral() уже в списке репозиториев), так что CI его видит.
// Предыдущая зависимость `pw.binom.db:ksqlite:0.1.1-SNAPSHOT` жила только
// в локальном ~/.m2 и ломала CI.
// text-embedding-kmp с v4 (2026-09-21) опубликован в caffeine Nexus.
kotlin {
jvmToolchain(21)
jvm()
linuxX64()
mingwX64()
sourceSets {
commonMain.dependencies {
// :message-store-api / :working-memory-api / :message-log-api объявлены
// как api-зависимости здесь, в commonMain — без этого commonMain
// не скомпилируется (KsqliteConversationStore, KsqliteMessageStore
// и т.д. используют их типы в commonMain). У них самих есть Apple
// targets (macosX64/Arm64, iosX64/Arm64/SimulatorArm64, linuxArm64),
// так что KMP-метаданные корректно резолвятся для всех таргетов.
// ksqlite 0.1.2 опубликован в Maven Central — обычный
// `mavenCentral()` в settings.gradle.kts его подтянет.
implementation("pw.binom.db:ksqlite:0.1.2")
implementation(libs.kotlinx.serialization.json)
api(project(":journal-api"))
api(project(":reflection-api"))
api(project(":context-api"))
}
commonTest.dependencies {
implementation(kotlin("test"))
implementation(libs.kotlinx.coroutines.test)
}
}
}