Compare commits

...

2 Commits

Author SHA1 Message Date
Claude
93c67b2824 chore(deps): route remaining inline deps through the version catalog
Move the last hardcoded coordinates into gradle/libs.versions.toml so the
catalog is the single source of truth for every dependency version:

- nestsClient jvmTest: club.minnced:opus-java, net.java.dev.jna:jna
- quartz: io.github.andreypfau:kotlinx-crypto-hmac / -sha2 (common + jvm)
- commons: io.github.kdroidfilter:nucleus.notification-macos/windows/linux

No version changes — pure refactor to libs.* references.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TreeiMiHrhWce6PbnA5qWz
2026-07-19 14:34:46 +00:00
Claude
4019b7fe79 chore(deps): update dependencies across all modules
Bump to latest stable (or latest within an existing pre-release track),
skipping stable→alpha/beta jumps for production safety.

- kotlin 2.4.0 → 2.4.10 (+ kotlinTest, compose compiler); ksp 2.3.9 → 2.3.10
- composeBom 2026.06.00 → 2026.06.01; composeRuntimeAnnotation 1.11.3 → 1.11.4
- firebaseBom 34.15.0 → 34.16.0; jacksonModuleKotlin 2.22.0 → 2.22.1
- kotlinxCollectionsImmutable 0.5.0 → 0.5.1; sqlite 2.6.2 → 2.7.0
- composemediaplayer 0.10.0 → 0.11.3; zoomable 2.12.0 → 2.13.0
- jlatexmath 1.4 → 1.5; jna 5.14.0 → 5.19.1 (nestsClient)
- benchmark 1.5.0-alpha06 → alpha07; genaiPrompt 1.0.0-beta2 → beta3
- bump DisableCacheInKotlinVersion guard 2_4_0 → 2_4_10 (iOS test workaround)

appfunctions held at alpha09 (appfunctions-service has no alpha10 published).
AGP 9.3.0, gms 4.5.0, kotlin stable, ktor, coil, media3, navigation, and other
androidx libs already at their newest stable; alpha-only newer releases skipped.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TreeiMiHrhWce6PbnA5qWz
2026-07-19 14:34:38 +00:00
4 changed files with 36 additions and 25 deletions

View File

@@ -8,13 +8,13 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.TestExecutable
// Disables the Kotlin/Native compiler cache for an iOS test binary so the
// Compose ui-uikit klib recompiles fresh instead of linking the broken prebuilt
// cache (see the call site in the `kotlin {}` block). The version guard makes
// Kotlin re-surface this workaround once we move past 2.4.0, so it can be
// Kotlin re-surface this workaround once we move past 2.4.10, so it can be
// dropped when a newer Compose/Kotlin pairing fixes the cache. Wrapped in a
// helper because @OptIn only applies to declarations, not bare statements.
@OptIn(KotlinNativeCacheApi::class)
fun TestExecutable.disableUiKitPrebuiltCache() =
disableNativeCache(
DisableCacheInKotlinVersion.`2_4_0`,
DisableCacheInKotlinVersion.`2_4_10`,
"Compose ui-uikit prebuilt cache references UIViewLayoutRegion (iOS 17+); " +
"linking the iOS test binary fails under Xcode 16.4.",
)
@@ -196,9 +196,9 @@ kotlin {
// macOS: UNUserNotificationCenter. Windows: WinRT Toasts. Linux: freedesktop D-Bus.
// Only the matching-OS module's native lib loads at runtime; the others
// stay dormant on the classpath.
implementation("io.github.kdroidfilter:nucleus.notification-macos:1.15.7")
implementation("io.github.kdroidfilter:nucleus.notification-windows:1.15.7")
implementation("io.github.kdroidfilter:nucleus.notification-linux:1.15.7")
implementation(libs.nucleus.notification.macos)
implementation(libs.nucleus.notification.windows)
implementation(libs.nucleus.notification.linux)
}
}

View File

@@ -15,37 +15,38 @@ android-targetSdk = "37"
androidxJunit = "1.3.0"
appcompat = "1.7.1"
audiowaveform = "1.1.2"
benchmark = "1.5.0-alpha06"
benchmark = "1.5.0-alpha07"
biometricKtx = "1.2.0-alpha05"
coil = "3.5.0"
composeBom = "2026.06.00"
composeRuntimeAnnotation = "1.11.3"
composeBom = "2026.06.01"
composeRuntimeAnnotation = "1.11.4"
coreKtx = "1.19.0"
datastore = "1.2.1"
devWhyolegCryptography = "0.6.0"
espressoCore = "3.7.0"
firebaseBom = "34.15.0"
firebaseBom = "34.16.0"
fragmentKtx = "1.8.9"
gms = "4.5.0"
healthConnect = "1.1.0"
jacksonModuleKotlin = "2.22.0"
jacksonModuleKotlin = "2.22.1"
javaKeyring = "1.0.4"
kmpTorRuntime = "2.6.0"
kmpTorResource = "409.5.0"
junit = "4.13.2"
kchesslib = "1.0.5"
kotlin = "2.4.0"
kotlinxCollectionsImmutable = "0.5.0"
kotlin = "2.4.10"
kotlinxCollectionsImmutable = "0.5.1"
kotlinxCoroutinesCore = "1.11.0"
kotlinxCrypto = "0.0.4"
kotlinxSerialization = "1.11.0"
genaiProofreading = "1.0.0-beta1"
genaiPrompt = "1.0.0-beta2"
genaiPrompt = "1.0.0-beta3"
genaiRewriting = "1.0.0-beta1"
genaiImageDescription = "1.0.0-beta1"
languageId = "17.0.6"
lifecycleRuntimeKtx = "2.11.0"
lightcompressor-enhanced = "2.2.1"
jlatexmath = "1.4"
jlatexmath = "1.5"
markdown = "f92ef49c9d"
highlights = "1.1.0"
material3 = "1.9.0"
@@ -71,8 +72,11 @@ unifiedpush = "3.0.10"
playServicesCast = "22.3.1"
vico-charts-compose = "3.2.3"
zelory = "3.0.1"
zoomable = "2.12.0"
composemediaplayer = "0.10.0"
zoomable = "2.13.0"
composemediaplayer = "0.11.3"
nucleusNotification = "1.15.7"
opusJava = "1.1.1"
jna = "5.19.1"
jcodec = "0.2.5"
commonsImaging = "1.0.0-alpha6"
thumbnailator = "0.4.21"
@@ -86,10 +90,10 @@ workRuntime = "2.11.2"
androidxCamera = "1.6.1"
androidxCollection = "1.6.0"
androidxExifinterface = "1.4.2"
kotlinTest = "2.4.0"
kotlinTest = "2.4.10"
core = "1.7.0"
mavenPublish = "0.37.0"
sqlite = "2.6.2"
sqlite = "2.7.0"
ktor = "3.5.1"
fourkoma = "1.2.0"
@@ -97,7 +101,7 @@ fourkoma = "1.2.0"
# Scoped to the play flavor only (see amethyst/build.gradle.kts) so the
# fdroid channel doesn't pull in Google alpha dependencies.
appfunctions = "1.0.0-alpha09"
ksp = "2.3.9"
ksp = "2.3.10"
[libraries]
abedElazizShe-video-compressor-fork = { group = "com.github.davotoula", name = "LightCompressor-enhanced", version.ref = "lightcompressor-enhanced" }
@@ -158,6 +162,11 @@ commons-imaging = { group = "org.apache.commons", name = "commons-imaging", vers
thumbnailator = { group = "net.coobird", name = "thumbnailator", version.ref = "thumbnailator" }
slf4j-nop = { module = "org.slf4j:slf4j-nop", version.ref = "slf4j" }
composemediaplayer = { group = "io.github.kdroidfilter", name = "composemediaplayer", version.ref = "composemediaplayer" }
nucleus-notification-macos = { group = "io.github.kdroidfilter", name = "nucleus.notification-macos", version.ref = "nucleusNotification" }
nucleus-notification-windows = { group = "io.github.kdroidfilter", name = "nucleus.notification-windows", version.ref = "nucleusNotification" }
nucleus-notification-linux = { group = "io.github.kdroidfilter", name = "nucleus.notification-linux", version.ref = "nucleusNotification" }
opus-java = { group = "club.minnced", name = "opus-java", version.ref = "opusJava" }
jna = { group = "net.java.dev.jna", name = "jna", version.ref = "jna" }
jcodec = { group = "org.jcodec", name = "jcodec", version.ref = "jcodec" }
jcodec-javase = { group = "org.jcodec", name = "jcodec-javase", version.ref = "jcodec" }
dev-whyoleg-cryptography-provider-apple-optimal = { module = "dev.whyoleg.cryptography:cryptography-provider-optimal", version.ref = "devWhyolegCryptography" }
@@ -186,6 +195,8 @@ kchesslib = { module = "io.github.cvb941:kchesslib", version.ref = "kchesslib" }
kotlinx-collections-immutable = { group = "org.jetbrains.kotlinx", name = "kotlinx-collections-immutable", version.ref = "kotlinxCollectionsImmutable" }
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinxCoroutinesCore" }
kotlinx-coroutines-swing = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-swing", version.ref = "kotlinxCoroutinesCore" }
kotlinx-crypto-hmac = { module = "io.github.andreypfau:kotlinx-crypto-hmac", version.ref = "kotlinxCrypto" }
kotlinx-crypto-sha2 = { module = "io.github.andreypfau:kotlinx-crypto-sha2", version.ref = "kotlinxCrypto" }
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinxSerialization" }
kotlinx-serialization-cbor = { module = "org.jetbrains.kotlinx:kotlinx-serialization-cbor", version.ref = "kotlinxSerialization" }
jlatexmath-android = { module = "com.github.rikkahub.jlatexmath-android:jlatexmath", version.ref = "jlatexmath" }

View File

@@ -84,8 +84,8 @@ kotlin {
// JNA as runtime-scope; Kotlin needs it at compile time to
// resolve the `tomp2p.opuswrapper.Opus extends com.sun.jna.Library`
// supertype, so pull it explicitly.
implementation("club.minnced:opus-java:1.1.1")
implementation("net.java.dev.jna:jna:5.14.0")
implementation(libs.opus.java)
implementation(libs.jna)
}
}

View File

@@ -153,8 +153,8 @@ kotlin {
// Negentropy set reconciliation (NIP-77)
api(libs.negentropy.kmp)
implementation("io.github.andreypfau:kotlinx-crypto-hmac:0.0.4")
implementation("io.github.andreypfau:kotlinx-crypto-sha2:0.0.4")
implementation(libs.kotlinx.crypto.hmac)
implementation(libs.kotlinx.crypto.sha2)
}
}
@@ -289,8 +289,8 @@ kotlin {
implementation(libs.charlietap.cachemap)
implementation(libs.net.thauvin.erik.urlencoder.lib)
implementation(libs.dev.whyoleg.cryptography.provider.apple.optimal)
implementation("io.github.andreypfau:kotlinx-crypto-hmac:0.0.4")
implementation("io.github.andreypfau:kotlinx-crypto-sha2:0.0.4")
implementation(libs.kotlinx.crypto.hmac)
implementation(libs.kotlinx.crypto.sha2)
}
}