Skip to content

v2.3.0: Kotlin 2.3.21 upgrade, observability APIs, CI/release fixes - #6

Merged
vietnguyentuan2019 merged 8 commits into
mainfrom
chore/kotlin-upgrade-ci-fixes
Sep 30, 2026
Merged

vietnguyentuan2019 merged 8 commits into
mainfrom
chore/kotlin-upgrade-ci-fixes

Conversation

@vietnguyentuan2019

Copy link
Copy Markdown
Contributor

Summary

  • Toolchain: Kotlin 2.1.0 → 2.3.21, Compose Multiplatform 1.10.3, Decompose 3.5.0. API dumps gained only synthetic $default entries. Removed stale JS kotlin-js-store/yarn.lock (clears the qs / serialize-javascript / webpack Dependabot alerts — dev/test-only deps).
  • v2.3.0 features: KRelayLog (levels + sinks), KRelayMetricsReporter, dispatchPersistedSuspend in krelay-flow. Fixes per-instance metrics attribution and expiry counting.
  • CI/release: Central Portal staging API instead of retired s01.oss.sonatype.org; github-release now needs: validate; removed publish-snapshot job (published the release version on every push to main, errors swallowed); secrets preflight; blank signing secrets treated as unset; CI now runs apiCheck, jvm and wasm tests; actions bumped to Node 24 majors.

Test plan

  • testDebugUnitTest, jvmTest, wasmJsBrowserTest, iosSimulatorArm64Test (krelay, krelay-flow)
  • apiCheck, lintDebug, assemble for all 5 modules, composeApp:assembleRelease
  • Local signing of krelay-bom with the maven-central key
  • CI green on this PR
  • Tag v2.3.0 after merge and confirm the Central Portal hand-over step (manual/upload) succeeds

…ompose to 3.5.0

Regenerated API dumps (only additive synthetic $default entries from the new compiler).
Removed the stale JS kotlin-js-store/yarn.lock; the active wasm lockfile no longer
resolves the vulnerable qs / serialize-javascript / webpack versions.
- github-release now needs validate so version/notes outputs resolve
- move publishing to the Central Portal OSSRH staging API (s01 is retired) and hand the staged repo over after upload
- bump checkout/setup-java/setup-gradle/upload-artifact/action-gh-release to Node 24-ready majors
…Suspend

- KRelayLog / KRelayLogSink / KRelayLogLevel for pluggable structured logging
- KRelayMetricsReporter + KRelayMetricEvent for exporting metrics to external sinks
- krelay-flow: dispatchPersistedSuspend
- fix per-instance metrics attribution (scopeName was never passed) and record expiry
- bump all modules to 2.3.0; update CHANGELOG, ROADMAP, docs/MONITORING.md
…h secrets, treat blank signing secrets as unset

- publish-snapshot published the non-SNAPSHOT release version on every push to main and
  swallowed failures via continue-on-error
- release: fail fast with a clear message when maven-central secrets are empty
- build: blank SIGNING_KEY/SIGNING_PASSWORD no longer reach useInMemoryPgpKeys
- ci: run apiCheck, krelay jvmTest and wasm tests like the release pipeline
- KRelayLog: mark sink/minLevel volatile
…demo on rotation, migrate to modular moko-permissions

- MainActivity/BasicDemo/RealIntegrations registered inline instances held only by WeakRef, so
  they were GC'd and dispatches were queued ('Implementation missing')
- App: selected demo survives rotation (rememberSaveable)
- moko-permissions 0.18.0 -> 0.20.1 (modular API): 0.18.0 klib crashed the Kotlin/Native 2.3
  linker ('IrSimpleFunctionSymbolImpl is already bound'), which broke the iOS framework link in CI
- remove dead 'if (false)' block in IntegrationsDemo
…rmance, security and coverage tests; Kover; compose instrumented tests; docs
@vietnguyentuan2019
vietnguyentuan2019 merged commit 2b69f76 into main Sep 30, 2026
4 checks passed
@vietnguyentuan2019
vietnguyentuan2019 deleted the chore/kotlin-upgrade-ci-fixes branch September 30, 2026 20:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant