feat: mqtt (#4841)

This commit is contained in:
James Rich 2026-03-18 13:39:20 -05:00 committed by GitHub
parent eae5a6bdac
commit d314ee2d8a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 371 additions and 200 deletions

View file

@ -109,16 +109,12 @@ Formerly found in 3 prefs files:
**Outcome:** These caches now use `AtomicRef<PersistentMap<...>>` helpers in `commonMain`, eliminating the last `ConcurrentHashMap` usage from shared prefs code.
### B3. MQTT is Android-only
### B3. MQTT (Resolved)
`MQTTRepositoryImpl` in `core:network/androidMain` uses Eclipse Paho (Java-only). Desktop and future iOS stub it.
`MQTTRepositoryImpl` has been migrated to `commonMain` using KMQTT, replacing Eclipse Paho.
**Fix:** Evaluate KMP MQTT options:
- `mqtt-kmp` library
- Ktor WebSocket-based MQTT
- `hivemq-mqtt-client` (JVM-only, acceptable for `jvmAndroidMain`)
Short-term: Move to `jvmAndroidMain` if using a JVM-compatible lib. Long-term: Full KMP MQTT in `commonMain`.
**Fix:** Completed.
- `kmqtt` library integrated for full KMP support.
### B4. Vico charts *(resolved)*