What's Changed
🏗️ Features
- Decouple
MessageScreen
fromUiViewModel
by @poliver in #3210 - Decouple
MapView
fromUiViewModel
by @poliver in #3213 - Move some repo classes to
:core:data
by @poliver in #3214 - Decouple contacts nav graph from
UiViewModel
by @poliver in #3215 - Decouple
MainAppBar
fromUiViewModel
by @poliver in #3216 - feat(map): add last heard filter for map nodes by @jamesarich in #3219
- feat(map): Add last heard filter for node tracks by @jamesarich in #3222
- add colour coding to traceroutes by @DaneEvans in #3227
- feat(bluetooth): expose and display bluetooth signal strength (RSSI) by @jamesarich in #3235
- Migrate node sort prefs to datastore by @poliver in #3241
- Clearer node filter options by @poliver in #3250
- Add
:core:service
by @poliver in #3253 - Decouple
NodeMapScreen
fromUIViewModel
by @poliver in #3257 - refactor(analytics)!: modularize analytics - remove Logging by @jamesarich in #3256
- feat(map): set minimum cluster size to 10 by @jamesarich in #3260
- refactor(ui)!: update NodeItem display with new components by @jamesarich in #3273
- Add
:feature:node
by @poliver in #3275 - Modularize common composables by @poliver in #3286
- feat(network): add http cache to OkHttpClient by @jamesarich in #3290
- feat(contact): add manually verified shared contact support by @jamesarich in #3283
- feat(settings): add link to system app settings by @jamesarich in #3293
ConnectionsScreen
available BLE devices by @poliver in #3298- Finish migration away from global app bar by @poliver in #3297
- Add
BuildConfigProvider
by @poliver in #3318 - More map modularization by @poliver in #3319
- Decouple
NodeMapScreen
fromMetricsViewModel
by @poliver in #3323
🛠️Fixes
- Decouple
NodeDetail
fromUiViewModel
by @poliver in #3212 - ci(release): add build provenance and streamline release process by @jamesarich in #3217
- Spruce up
LoRaConfigScreen
by @poliver in #3224 - fix(service): clear nodeDB when device address changes by @jamesarich in #3232
- build: use git commit count for versionCode by @jamesarich in #3233
- Remove
NodeChip
long-click by @poliver in #3220 - fix(build): apply Datadog and Firebase plugins only to google flavor by @jamesarich in #3240
- Remove node card expansion by @poliver in #3243
- fix(crash): pass in navcontroller and specify viewmodel type by @jamesarich in #3244
- fix(ui): handle ActivityNotFoundException when opening firmware links by @jamesarich in #3245
- fix(service): Update foreground service type and error handling by @jamesarich in #3246
- fix(deps): update Kotlin Serialization plugin version by @jamesarich in #3261
- Remove noisy error disconnected toast by @thebentern in #3263
- Modularize more maps files by @poliver in #3262
- chore(analytics): Disable Google services for F-Droid builds by @jamesarich in #3264
- chore(fdroid): Configure F-Droid build variant by @jamesarich in #3265
- ci(release): simplify artifact paths for GitHub Release by @jamesarich in #3267
- feat(analytics): Set session sample rate for RUM by @jamesarich in #3277
- Fix
NodeChip
click handling by @poliver in #3278 - fix(debug): replace top app bar with actions (delete) by @jamesarich in #3276
- Move
MapViewExtensions
to:feature:map
by @poliver in #3284 - Decouple
ChannelScreen
fromUIViewModel
by @poliver in #3295 - Decouple
ScannedQrCodeDialog
fromUiViewModel
by @poliver in #3300 - Fix shared contact deeplink by @poliver in #3302
- feat(ci): overhaul release workflow for hotfixes and promotions by @jamesarich in #3307
- Update strings.xml - PKI required for DMs by @b8b8 in #3301
- refactor(release)!: simplify and streamline release workflow by @jamesarich in #3309
- ci(github-actions): add Release environment to workflows by @jamesarich in #3310
- ci(workflows): configure git user for release workflows by @jamesarich in #3311
- ci(github-actions): move release environment to correct workflow by @jamesarich in #3314
- ci(release): trigger release workflow from promotion and internal builds by @jamesarich in #3315
- chore(ci): remove release environment from prepare-build-info job by @jamesarich in #3316
- ci(release): check for existing versionCode on Google Play before build by @jamesarich in #3320
- ci(promote-release): enhance stage promotion logic by @jamesarich in #3321
- ci(release): refine promotion logic and enhance Datadog integration by @jamesarich in #3322
- Revert by @jamesarich in #3325
- Revert markdown message rendering by @jamesarich in #3328
- feat(chat): (re)allow multi-line messages in text input by @jamesarich in #3329
- fix: update foreground service type to manifest by @jamesarich in #3332
- ci(release): refactor release workflow to be callable by @jamesarich in #3330
- feat(workflow): update permissions for release workflow by @jamesarich in #3333
- fix(release): simplify build condition for internal channel by @jamesarich in #3336
- Refactor build steps to check channel input by @jamesarich in #3337
- fix(release): update track names for Google Play promotion by @jamesarich in #3338
- refactor(ci): separate release and promotion workflows by @jamesarich in #3339
- feat(fastlane): copypasta typo by @jamesarich in #3342
👷Dependencies
- chore(deps): update core/proto/src/main/proto digest to 082bb7c by @renovate[bot] in #3223
- chore(deps): update core/proto/src/main/proto digest to 394268b by @renovate[bot] in #3252
- chore(deps): update gradle/actions action to v5 by @renovate[bot] in #3270
- chore(deps): update google maps compose to v6.12.0 by @renovate[bot] in #3274
- chore(deps): update core/proto/src/main/proto digest to 60c3e66 by @renovate[bot] in #3279
- chore(deps): update plugin com.gradle.develocity to v4.2.1 by @renovate[bot] in #3288
- chore(deps): update datadog to v1.21.0 by @renovate[bot] in #3292
- chore(deps): update core/proto/src/main/proto digest to c1e31a9 by @renovate[bot] in #3305
- chore(deps): update actions/stale action to v10.1.0 by @renovate[bot] in #3317
- chore(deps): update core/proto/src/main/proto digest to a1b8c3d by @renovate[bot] in #3326
🧱Repo
- chore(repo): Update VERSION_NAME_BASE to 2.7.2 by @jamesarich in #3294
- ci: Add environment specification for promote-release job by @jamesarich in #3340
- fix(ci): replace build lanes by @jamesarich in #3341
🤖Automated
- New Crowdin updates by @jamesarich in #3211
- chore: Scheduled updates (Firmware, Hardware) by @jamesarich in #3218
- New Crowdin updates by @jamesarich in #3221
- New Crowdin updates by @jamesarich in #3229
- New Crowdin updates by @jamesarich in #3236
- New Crowdin updates by @jamesarich in #3237
- New Crowdin updates by @jamesarich in #3239
- New Crowdin updates by @jamesarich in #3242
- New Crowdin updates by @jamesarich in #3247
- New Crowdin updates by @jamesarich in #3269
- New Crowdin updates by @jamesarich in #3271
- chore: Scheduled updates (Firmware, Hardware) by @jamesarich in #3280
- chore: Scheduled updates (Firmware, Hardware) by @jamesarich in #3285
- New Crowdin updates by @jamesarich in #3296
- New Crowdin updates by @jamesarich in #3299
- New Crowdin updates by @jamesarich in #3303
- New Crowdin updates by @jamesarich in #3304
- New Crowdin updates by @jamesarich in #3306
- New Crowdin updates by @jamesarich in #3312
- New Crowdin updates by @jamesarich in #3327
- New Crowdin updates by @jamesarich in #3331
- New Crowdin updates by @jamesarich in #3334
- chore: Scheduled updates (Firmware, Hardware) by @jamesarich in #3335
Full Changelog: v2.7.1...2.7.2