James Rich
2cf4e8f80e
feat(map): replace Google Maps + OSMDroid with unified MapLibre Compose Multiplatform
...
Replace the dual flavor-specific map implementations (Google Maps for google,
OSMDroid for fdroid) with a single MapLibre Compose Multiplatform implementation
in feature:map/commonMain, eliminating ~8,500 lines of duplicated code.
Key changes:
- Add maplibre-compose v0.12.1 dependency (KMP: Android, Desktop, iOS)
- Create unified MapViewModel with camera persistence via MapCameraPrefs
- Create MapScreen, MaplibreMapContent, NodeTrackLayers, TracerouteLayers,
InlineMap, NodeTrackMap, TracerouteMap, NodeMapScreen in commonMain
- Create MapStyle enum with predefined OpenFreeMap tile styles
- Create GeoJsonConverters for Node/Waypoint/Position to GeoJSON
- Move TracerouteMapScreen from feature:node/androidMain to commonMain
- Wire navigation to use direct imports instead of CompositionLocal providers
- Delete 61 flavor-specific map files (google + fdroid source sets)
- Remove 8 CompositionLocal map providers from core:ui
- Remove SharedMapViewModel (replaced by new MapViewModel)
- Remove dead google-maps and osmdroid entries from version catalog
- Add MapViewModelTest with 10 test cases in commonTest
Baseline verified: spotlessCheck, detekt, assembleGoogleDebug, allTests all pass.
2026-04-13 11:40:48 -05:00
James Rich
048c74db13
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5105 )
...
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com >
v2.7.14-internal.52
2026-04-13 12:37:53 +00:00
James Rich
39620d063b
fix(nav): restore broken traceroute map navigation ( #5104 )
2026-04-13 12:25:21 +00:00
James Rich
35bf1fded5
build: align Compose Multiplatform versions and exclude transitive BOMs ( #5103 )
2026-04-13 12:02:52 +00:00
James Rich
4dd591af25
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5101 )
...
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com >
2026-04-13 11:04:58 +00:00
James Rich
a8cdec7f55
fix(ci): isolate JetBrains Compose Multiplatform in Renovate config ( #5102 )
2026-04-13 06:09:22 -05:00
renovate[bot]
1e29fec469
chore(deps): update androidx (general) to v1.11.0-rc01 ( #5099 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: James Rich <james.a.rich@gmail.com >
2026-04-12 22:33:44 -05:00
James Rich
b0c603c7ed
fix(build): align AndroidX Compose versions with CMP and migrate to runComposeUiTest ( #5096 )
v2.7.14-internal.51
2026-04-13 02:49:11 +00:00
James Rich
e424d4d076
fix(build): add explicit compose-multiplatform-animation dependency ( #5095 )
v2.7.14-internal.50
2026-04-12 22:36:37 +00:00
James Rich
17d85c88c4
fix(release): publish GitHub release on promotion instead of staying draft ( #5094 )
v2.7.14-internal.49
2026-04-12 16:04:13 -05:00
James Rich
5c47256b3f
test(prefs): migrate DataStore tests from androidHostTest to commonTest ( #5092 )
2026-04-12 20:45:19 +00:00
James Rich
a11dee42a7
test: migrate Compose UI tests from androidTest to commonTest ( #5091 )
2026-04-12 20:20:00 +00:00
James Rich
4156acf297
ci: fix Gradle cache path validation warning for Robolectric jars ( #5093 )
2026-04-12 15:18:02 -05:00
James Rich
c059f19cc6
ci: reduce CI costs by ~54% — skip desktop builds in PR/main, reduce scheduled frequency ( #5090 )
2026-04-12 18:59:21 +00:00
James Rich
ade314d503
build: upgrade TARGET_SDK to 37 and update AGP to 9.2.0-alpha08 ( #5089 )
2026-04-12 17:42:58 +00:00
James Rich
bc44af1597
fix(connections): show device name during connecting state ( #5085 )
2026-04-12 17:29:25 +00:00
James Rich
eeed780e51
chore(ai): modernize and unify agent tooling and instructions ( #5087 )
2026-04-12 17:29:05 +00:00
James Rich
d03e61af6f
fix(build): remove Compose BOM to resolve compileSdk 37 conflict ( #5088 )
2026-04-12 17:05:52 +00:00
renovate[bot]
916eb51b94
chore(deps): update androidx.compose:compose-bom-alpha to v2026.04.00 ( #5086 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-12 10:01:40 -05:00
James Rich
7ca7179197
build: migrate Compose dependencies to Compose Multiplatform ( #5084 )
2026-04-12 14:45:11 +00:00
James Rich
9281324be3
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5082 )
v2.7.14-internal.48
2026-04-12 06:44:03 -05:00
renovate[bot]
6da9f088a9
chore(deps): update softprops/action-gh-release action to v3 ( #5081 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-12 06:43:45 -05:00
James Rich
e85300531e
refactor(transport): complete transport architecture overhaul — extract callback, wire BleReconnectPolicy, fix safety issues ( #5080 )
2026-04-12 04:22:18 +00:00
James Rich
962c619c4c
chore(deps): bump Kotlin 2.3.21-RC, Koin plugin 1.0.0-RC1, drop datetime compat ( #5079 )
2026-04-12 02:09:23 +00:00
James Rich
19502cd1e0
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5078 )
2026-04-12 01:48:42 +00:00
James Rich
9468bc6ebe
refactor(service): unify dual connectionState flows into single source of truth ( #5077 )
2026-04-12 00:50:52 +00:00
James Rich
5e44cbd3a9
fix(data): make MeshConnectionManagerImpl.onConnectionChanged atomic ( #5076 )
2026-04-12 00:49:09 +00:00
James Rich
62264b10c6
refactor(model): remove ConnectionState helper methods and fix updateStatusNotification return type ( #5074 )
2026-04-11 23:41:34 +00:00
James Rich
174315b21f
refactor(data): replace lateinit var scope + start() with constructor injection ( #5075 )
2026-04-11 23:39:29 +00:00
James Rich
172680fd46
fix(mqtt): replace yield() with proper connection readiness signal ( #5073 )
2026-04-11 23:38:33 +00:00
James Rich
a3c0a4832d
fix(transport): Kable BLE audit + thread-safety, MQTT, and logging fixes across transport layers ( #5071 )
2026-04-11 22:56:29 +00:00
James Rich
5f0e60eb21
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5067 )
2026-04-11 22:07:04 +00:00
James Rich
40ea45a4fe
fix(settings): hide Status Message config until firmware v2.8.0 ( #5070 )
2026-04-11 22:06:53 +00:00
James Rich
1fe3f4423d
fix(ui): add missing @ParameterName annotations on actual rememberReadTextFromUri declarations ( #5072 )
2026-04-11 22:06:44 +00:00
James Rich
0441093ce8
refactor(node): move Position to last in telemetry list on node details ( #5068 )
2026-04-11 17:06:17 +00:00
James Rich
b3d0c97206
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5065 )
v2.7.14-internal.47
2026-04-11 04:53:07 -05:00
James Rich
1f88a26d51
feat(desktop): align versioning with Android, build runnable distributions in CI ( #5064 )
2026-04-11 03:50:32 +00:00
James Rich
6b77658cb1
ci: remove mesh_service_example from CI checks and Codecov ( #5066 )
2026-04-11 03:48:09 +00:00
James Rich
3794c79dae
refactor: adopt M3 Expressive components from material3 1.11.0-alpha06 ( #5063 )
2026-04-11 02:10:03 +00:00
James Rich
a6423d0a0f
feat(metrics): redesign position log with SelectableMetricCard and add CSV export to all metrics screens ( #5062 )
2026-04-11 01:26:26 +00:00
James Rich
37e9e2c8f0
fix(charts): hoist rememberVicoZoomState above vararg layers to prevent ClassCastException ( #5060 )
2026-04-11 00:05:56 +00:00
James Rich
9c8532f80d
refactor: leverage new dependency features from recent updates ( #5057 )
v2.7.14-internal.46
2026-04-10 22:51:08 +00:00
James Rich
929e273978
fix(build): resolve all actionable compile-time warnings ( #5058 )
2026-04-10 22:42:30 +00:00
James Rich
3d139d32fd
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5059 )
2026-04-10 22:15:59 +00:00
James Rich
ce32e640de
fix(icons): replace outline (FILL=0) pathData with filled (FILL=1) from upstream Material Symbols ( #5056 )
2026-04-10 22:15:43 +00:00
James Rich
77e30b60e1
chore(build): enable AboutLibraries offlineMode by default ( #5054 )
2026-04-10 21:34:38 +00:00
James Rich
520fa717a9
refactor(metrics/map): DRY up charts, decompose MapView monoliths, add test coverage ( #5049 )
2026-04-10 20:54:09 +00:00
James Rich
56332f4d77
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #5053 )
2026-04-10 20:41:55 +00:00
James Rich
02f6fd67b8
fix: clean up flaky, duplicated, and misplaced tests; remove redundant deps ( #5048 )
2026-04-10 19:46:45 +00:00
James Rich
e70dabe94d
test(navigation): add tests for NavigationConfig, DeepLinkRouter, and… ( #5052 )
2026-04-10 19:18:59 +00:00