fb963bfb6b
ci / JVM build + tests (push) Failing after 1m2s
- Introduced a new `:journal-inmemory` module implementing `:journal-api` with an in-memory backend. - Added `InMemoryJournalStore` for concurrent append, list, and clear operations using `Mutex` and `MutableList`. - Use cases include tests, dev mode, embedded scenarios, and client-side in-process caching. - Integrated the module into the project setup and documented usage in `:client/README.md`. - Added comprehensive
31 lines
953 B
Kotlin
31 lines
953 B
Kotlin
plugins {
|
|
alias(libs.plugins.kotlin.multiplatform)
|
|
}
|
|
|
|
// KMP-реализация [MutableJournalStore] на `MutableList` + `Mutex` — для
|
|
// тестов, dev-режима, embedded-сценариев (Android core, CLI, in-process кэш
|
|
// в клиенте) и как образец для своей реализации.
|
|
//
|
|
// `list` фильтрует по `conversationId`+`createdAt>after` и сортирует
|
|
// по `createdAt ASC`. Paging — поверх отфильтрованного списка.
|
|
//
|
|
// Зависимости: только `:journal-api`. Никакого I/O — pure in-memory.
|
|
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
|
|
jvm()
|
|
linuxX64()
|
|
mingwX64()
|
|
|
|
sourceSets {
|
|
commonMain.dependencies {
|
|
api(project(":journal-api"))
|
|
}
|
|
commonTest.dependencies {
|
|
implementation(kotlin("test"))
|
|
implementation(libs.kotlinx.coroutines.test)
|
|
}
|
|
}
|
|
}
|