Skip to content

Releases: meshtastic/Meshtastic-Android

Snapshot 29321981 (10d52c8e33b2a19baf901fa307c126caff3064ec)

Choose a tag to compare

@jamesarich jamesarich released this 21 Aug 19:32
10d52c8

Automated debug build from the latest commit on main (10d52c8), versionCode 29321981.
Unsigned/debug-keyed, F-Droid and Google flavors. Not for production use — this release is replaced on every push to main.

Also includes unsigned desktop installers (macOS .dmg, Windows .msi/.exe, Linux .deb/.rpm/.AppImage)
built from the same commit, when that platform's build succeeded.

Obtainium: enable Include prereleases. Each build's APK filename carries the versionCode, so updates are detected.

v2.8.1 (29321949)

Choose a tag to compare

@github-actions github-actions released this 20 Aug 13:13
7c6a6cc

Note

This release spans everything since v2.7.14 — the 2.8.0 line never rolled out to Google Play production, so for most users this is the 2.7.14 → 2.8.1 upgrade. Sideloaded/GitHub installs that already ran v2.8.0 can find just the incremental changes in the v2.8.0...v2.8.1 compare.

What's Changed

🏗️ Features

  • feat(export): add hop start and relay node columns to CSV export by @jamesarich in #5822
  • feat(mqtt): add phone-local MQTT proxy cutoff control by @jamesarich in #5823
  • feat(node): show our node shortname chip on the Nodes tab by @jamesarich in #5820
  • feat(settings): add remote "Set time" admin action by @jamesarich in #5821
  • feat(network): on-device capture-replay transport + ingestion fuzzing/hardening by @jamesarich in #5846
  • perf(node): add stable keys and contentType to telemetry chart lists by @jamesarich in #5869
  • feat(connections): list only BLE devices visible via scan by @jamesarich in #5877
  • feat(ui): use modem-preset-relative SNR thresholds for signal quality by @jamesarich in #5903
  • feat(firmware): link OTAFIX bootloader from slow-DFU success screen by @jamesarich in #5917
  • feat(node): add GPX export to position log screen by @jamesarich in #5919
  • feat: offline-first event firmware metadata (JSON schema + bundled asset) by @jamesarich in #5920
  • feat(firmware): drive event firmware branding from bundled metadata by @jamesarich in #5929
  • feat(lora): consume region→preset compatibility map + TINY presets (protobufs #951) by @jamesarich in #5834
  • feat(lockdown): firmware lockdown mode (provision / unlock / lock-now) by @jamesarich in #5939
  • feat(lora): gate region→preset map + TINY presets on firmware capability by @jamesarich in #5941
  • feat(security): surface XEdDSA packet signing in node & messaging UI by @jamesarich in #5976
  • fix(security): make XEdDSA signing shield green & prominent by @jamesarich in #5980
  • Prevent Range Test from running on public/default channel by @dubsector in #5986
  • feat(network): migrate TcpTransport to ktor-network (commonMain) by @jamesarich in #5995
  • feat(ui): StatusSurface AA legibility + node-details signing/transport polish by @jamesarich in #5985
  • feat: NFC tag writing for shared contacts and channels by @jamesarich in #6030
  • feat: Waypoint geofences (editor, map overlays, alert engine) by @jamesarich in #6014
  • feat(lora): default US region to LongTurbo preset by @jamesarich in #6009
  • feat(connections): add deep link to trigger a connection by address by @jamesarich in #6036
  • feat(desktop): add Flathub screenshots to metainfo.xml by @jamesarich in #6042
  • feat(testing): debug-only skip_onboarding intent extra for AI/CI tooling by @jamesarich in #6044
  • feat(discovery): surface received Mesh Beacon invitations by @jamesarich in #6043
  • feat(firmware): nRF52 legacy BLE DFU — stock-bootloader fixes + stranded-device recovery by @jamesarich in #6041
  • feat(settings): wire is_unmessagable/is_licensed into DeviceProfile export/import by @jamesarich in #6065
  • Style GeoJSON overlays from simplestyle-spec (fill/stroke) by @garthvh in #6088
  • feat(discovery): Mesh Beacon client with iOS 014-mesh-beacons parity by @jamesarich in #6097
  • feat(messaging): translate chat messages in-place with on-device ML Kit (google flavor only) by @thebentern in #6103
  • feat(database): unify device database across transports by @jamesarich in #6096
  • feat: compute EPA NowCast AQI from PM2.5 history by @jamesarich in #6102
  • Add secure key backup/restore/delete for security config by @jamesarich in #6105
  • feat(messaging): @mention with deep-link to node detail (#6098) by @jamesarich in #6108
  • feat(node): label power channels and fix pressure axis scale by @jamesarich in #6111
  • Show outgoing message status text by @RCGV1 in #6121
  • feat(map): Site Planner coverage integration — import + estimate by @jamesarich in #6136
  • feat(node): show CO₂ sensor temperature & humidity on Air Quality page by @jamesarich in #6143
  • feat(node): histogram of nodes per hop distance (#5745) by @jamesarich in #6146
  • feat(map): F-Droid map-layer parity — share layer UI + logic in common source (#6138) by @jamesarich in #6148
  • Promote CO2 temperatures to summary if no other temp is present. by @DaneEvans in #6153
  • feat(firmware): Confirm local firmware files before flashing by @jeremiah-k in #6083
  • feat(messaging): split Conversations into collapsible Channels/DM sections by @jamesarich in #6169
  • perf(mqtt): drop payload-less client-proxy downlinks before forwarding by @thebentern in #6171
  • feat(map): send a waypoint as a DM or to a specific channel by @joeyleake in #6218
  • feat(firmware): nightly preview channel behind the hidden-features unlock by @jamesarich in #6225
  • perf(r8): enable optimization for release builds (keep unobfuscated) by @jamesarich in #6275
  • feat(analytics): restore RUM view tracking on Nav3 (Google flavor) by @jamesarich in #6281
  • perf(analytics): match iOS Datadog RUM monitoring, drop dead timber dep by @jamesarich in #6278
  • Align NFC contact import and share dialogs with Design Standards v1.4 by @thebentern in #6332
  • feat(settings): add packet authenticity policy by @RCGV1 in #6178
  • feat(messaging): redesign message bubbles toward the M3 conversation pattern by @jamesarich in #6368
  • feat(notifications): align message notifications with Android best practices by @jamesarich in #6371
  • feat(node): group related metric cards into vertical columns by @jamesarich in #6431
  • feat(node): show AQI in the air quality graph and table by @jamesarich in #6434
  • feat(event): DEF CON 34 logo and full brand palette in event theming by @jamesarich in #6483
  • feat(settings): add 2.8 amateur and EU Lite/Narrow LoRa regions by @jamesarich in #6548
  • feat(takserver): surface mesh nodes to ATAK as CoT contacts (mesh-to-CoT) by @jamesarich in #6554
  • feat: distinguish saved coverage estimates in the map layers sheet by @jamesarich in #6578
  • Align Android message status wording by @RCGV1 in #6133
  • feat(settings): export the node database as JSON by @jamesarich in #6610
  • feat(tak): show local server status by @RCGV1 in #6599
  • feat(messaging): add optional full message timestamps by @simulationstation in #6639
  • feat(settings): warn before enabling licensed (ham) mode by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/p...
Read more

v2.8.0 (29321705)

Choose a tag to compare

@github-actions github-actions released this 29 Jul 02:40
5a3b555

What's Changed

🏗️ Features

  • feat(export): add hop start and relay node columns to CSV export by @jamesarich in #5822
  • feat(mqtt): add phone-local MQTT proxy cutoff control by @jamesarich in #5823
  • feat(node): show our node shortname chip on the Nodes tab by @jamesarich in #5820
  • feat(settings): add remote "Set time" admin action by @jamesarich in #5821
  • feat(network): on-device capture-replay transport + ingestion fuzzing/hardening by @jamesarich in #5846
  • perf(node): add stable keys and contentType to telemetry chart lists by @jamesarich in #5869
  • feat(connections): list only BLE devices visible via scan by @jamesarich in #5877
  • feat(ui): use modem-preset-relative SNR thresholds for signal quality by @jamesarich in #5903
  • feat(firmware): link OTAFIX bootloader from slow-DFU success screen by @jamesarich in #5917
  • feat(node): add GPX export to position log screen by @jamesarich in #5919
  • feat: offline-first event firmware metadata (JSON schema + bundled asset) by @jamesarich in #5920
  • feat(firmware): drive event firmware branding from bundled metadata by @jamesarich in #5929
  • feat(lora): consume region→preset compatibility map + TINY presets (protobufs #951) by @jamesarich in #5834
  • feat(lockdown): firmware lockdown mode (provision / unlock / lock-now) by @jamesarich in #5939
  • feat(lora): gate region→preset map + TINY presets on firmware capability by @jamesarich in #5941
  • feat(security): surface XEdDSA packet signing in node & messaging UI by @jamesarich in #5976
  • fix(security): make XEdDSA signing shield green & prominent by @jamesarich in #5980
  • Prevent Range Test from running on public/default channel by @dubsector in #5986
  • feat(network): migrate TcpTransport to ktor-network (commonMain) by @jamesarich in #5995
  • feat(ui): StatusSurface AA legibility + node-details signing/transport polish by @jamesarich in #5985
  • feat: NFC tag writing for shared contacts and channels by @jamesarich in #6030
  • feat: Waypoint geofences (editor, map overlays, alert engine) by @jamesarich in #6014
  • feat(lora): default US region to LongTurbo preset by @jamesarich in #6009
  • feat(connections): add deep link to trigger a connection by address by @jamesarich in #6036
  • feat(desktop): add Flathub screenshots to metainfo.xml by @jamesarich in #6042
  • feat(testing): debug-only skip_onboarding intent extra for AI/CI tooling by @jamesarich in #6044
  • feat(discovery): surface received Mesh Beacon invitations by @jamesarich in #6043
  • feat(firmware): nRF52 legacy BLE DFU — stock-bootloader fixes + stranded-device recovery by @jamesarich in #6041
  • feat(settings): wire is_unmessagable/is_licensed into DeviceProfile export/import by @jamesarich in #6065
  • Style GeoJSON overlays from simplestyle-spec (fill/stroke) by @garthvh in #6088
  • feat(discovery): Mesh Beacon client with iOS 014-mesh-beacons parity by @jamesarich in #6097
  • feat(messaging): translate chat messages in-place with on-device ML Kit (google flavor only) by @thebentern in #6103
  • feat(database): unify device database across transports by @jamesarich in #6096
  • feat: compute EPA NowCast AQI from PM2.5 history by @jamesarich in #6102
  • Add secure key backup/restore/delete for security config by @jamesarich in #6105
  • feat(messaging): @mention with deep-link to node detail (#6098) by @jamesarich in #6108
  • feat(node): label power channels and fix pressure axis scale by @jamesarich in #6111
  • Show outgoing message status text by @RCGV1 in #6121
  • feat(map): Site Planner coverage integration — import + estimate by @jamesarich in #6136
  • feat(node): show CO₂ sensor temperature & humidity on Air Quality page by @jamesarich in #6143
  • feat(node): histogram of nodes per hop distance (#5745) by @jamesarich in #6146
  • feat(map): F-Droid map-layer parity — share layer UI + logic in common source (#6138) by @jamesarich in #6148
  • Promote CO2 temperatures to summary if no other temp is present. by @DaneEvans in #6153
  • feat(firmware): Confirm local firmware files before flashing by @jeremiah-k in #6083
  • feat(messaging): split Conversations into collapsible Channels/DM sections by @jamesarich in #6169
  • perf(mqtt): drop payload-less client-proxy downlinks before forwarding by @thebentern in #6171
  • feat(map): send a waypoint as a DM or to a specific channel by @joeyleake in #6218
  • feat(firmware): nightly preview channel behind the hidden-features unlock by @jamesarich in #6225
  • perf(r8): enable optimization for release builds (keep unobfuscated) by @jamesarich in #6275
  • feat(analytics): restore RUM view tracking on Nav3 (Google flavor) by @jamesarich in #6281
  • perf(analytics): match iOS Datadog RUM monitoring, drop dead timber dep by @jamesarich in #6278
  • Align NFC contact import and share dialogs with Design Standards v1.4 by @thebentern in #6332
  • feat(settings): add packet authenticity policy by @RCGV1 in #6178
  • feat(messaging): redesign message bubbles toward the M3 conversation pattern by @jamesarich in #6368
  • feat(notifications): align message notifications with Android best practices by @jamesarich in #6371
  • feat(node): group related metric cards into vertical columns by @jamesarich in #6431
  • feat(node): show AQI in the air quality graph and table by @jamesarich in #6434
  • feat(event): DEF CON 34 logo and full brand palette in event theming by @jamesarich in #6483

🖥️ Desktop

  • fix(data): stale firmware/hardware caches — stop cancelling slow API refreshes, prune pulled releases, seed from newer bundles by @jamesarich in #6060
  • fix(geofence): restrict crossing alerts to creator, add per-geofence opt-in by @jamesarich in #6117
  • fix(ble): refresh GATT cache around ESP32 OTA profile changes by @jeremiah-k in #6166
  • Add firmware update notice by @RCGV1 in #6309
  • fix: make NotificationManager.dispatch await the platform send by @jamesarich in #6326
  • fix(database): make DB updates atomic across device switches by @jeremiah-k in #6256
  • fix(ci): defer desktop packaging toolchain resolution by @jeremiah-k in #6401
  • fix(settings): retain config session across navigation by @jeremiah-k in #6449
  • fix(event): honor disabled node events, gate brand URLs, observe the manifest by @jamesarich in #6499

🛠️ Fixes

Read more

v2.7.14 (29321034)

Choose a tag to compare

@github-actions github-actions released this 03 Jun 21:13
cf68c86

What's Changed

🏗️ Features

  • feat: event firmware easter egg with ambient branding by @jamesarich in #5354
  • feat: align theme with Design Standards v1.3, remove contrast setting by @jamesarich in #5355
  • feat(desktop): fix mac notifications, new desktop icons by @jamesarich in #5403
  • Update notification intents and deep link URI format by @jamesarich in #5408
  • fix: clarify position precision as ± radius by @jamesarich in #5428
  • feat: TAK v2 protocol integration with zstd compression and full CoT type support by @thebentern in #5434
  • feat(flatpak): reconstruct standard maven filenames from local Gradle cache by @jamesarich in #5538
  • fix: use single-shot low battery notifications by @jamesarich in #5550
  • feat: align node list context menu to canonical 6-item order by @jamesarich in #5548
  • feat: enable WAL connection pool for parallel reads by @jamesarich in #5372
  • feat: node list density switching with compact layout and field toggles by @jamesarich in #5444
  • feat(ai): upgrade Chirpy on-device AI with proper APIs, download UX, and streaming by @jamesarich in #5579
  • feat: replace LoRa bandwidth text input with constrained dropdown by @jamesarich in #5687
  • feat: Save unsent chat message as draft by @Copilot in #5686

🖥️ Desktop

  • fix(desktop): keep Vico package to prevent bytecode verification errors by @jamesarich in #5424

🛠️ Fixes

  • fix(mqtt): harden TLS enforcement, add user CA trust, and improve error diagnostics by @jamesarich in #5365
  • fix: clamp future lastHeard timestamps to current time on ingestion by @jamesarich in #5418
  • revert: Update retry settings in gradle-wrapper.properties by @jamesarich in #5430
  • fix: update screenshots by @jamesarich in #5435
  • fix(database): make withDb retry logic resilient to varying close messages by @jamesarich in #5474
  • fix(settings): add input validation for BLE PIN, LoRa modem, and ambient lighting by @jamesarich in #5477
  • fix(nav): remote admin nodenum + Nav3 consolidation and improvements by @jamesarich in #5478
  • fix(database): update @relation annotations for Room 3.0.0-alpha05 by @jamesarich in #5507
  • fix: prevent node details hang when device hardware API is unreachable by @jamesarich in #5514
  • fix(settings): remote admin always showed local node config by @jamesarich in #5560
  • fix: hide battery indicator when level is 0 (never reported) by @jamesarich in #5595
  • fix: consistent column width for compact node list items by @jamesarich in #5596
  • fix(emoji): enable androidResources for core:ui to package emoji-data.json by @jamesarich in #5597
  • fix(proto): prune TakTalkMessage and TakTalkRoomData from Wire codegen by @jamesarich in #5624
  • fix(database): stabilize flaky DatabaseManagerWithDbRetryTest by @jamesarich in #5635
  • fix(ble): stop BLE scan on background and downgrade connection priority by @jamesarich in #5644
  • fix: remove Android Auto manifest entry causing Play Store rejection by @jamesarich in #5662
  • fix(takserver): emit *:-1:stcp contact endpoint so directed TAK-Talk/GeoChat routes over the mesh by @thebentern in #5661
  • fix(takserver): drop CoT the mesh delivers more than once by @thebentern in #5667
  • fix: address top Crashlytics crashes in beta 2.7.14 by @jamesarich in #5672
  • fix(flatpak): source desktop metadata from in-repo packaging dir by @jamesarich in #5673
  • Rename Desktop application to 'Meshtastic Desktop' by @jamesarich in #5677
  • fix: address top Crashlytics crashes and non-fatals for build 29320984 by @jamesarich in #5684
  • fix: show loading overlay immediately for remote config sub-screens by @jamesarich in #5694
  • fix(node): restore view-tree owners on map dispose so node-list popups aren't invisible by @jamesarich in #5699
  • fix(firmware): surface error state when BLE OTA connection attempts are exhausted by @jamesarich in #5700
  • fix(map): replace MarkerComposable with Canvas-rendered bitmaps by @jamesarich in #5702
  • fix(map): remove manual ViewTree lifecycle owner workarounds by @jamesarich in #5704
  • fix(map): scope cluster-renderer ViewTreeLifecycleOwner to map host view by @jamesarich in #5708
  • fix(map): initialize Maps SDK before building marker bitmap descriptors by @jamesarich in #5709
  • fix(map): eliminate cluster-renderer FATAL and harden black-map paths by @jamesarich in #5715
  • fix(map): revert app-side Maps SDK init to library-idiomatic, fix inline-map crash by @jamesarich in #5719
  • fix(map): render cluster markers in-scope to kill ClusterRenderer FATAL by @jamesarich in #5723
  • fix(map): apply kotlinx-serialization compiler plugin to androidApp by @jamesarich in #5726
  • fix(map): keep compass icon visible while following bearing by @jamesarich in #5728

📝 Other Changes

  • Extract node list display settings to dedicated screen by @jamesarich in #5580
  • Upgrade takpacket-sdk to version 0.3.0 by @jamesarich in #5621
  • repo: Add Meshtastic Desktop icon SVGs by @vidplace7 in #5623
  • Enhance TAKTALK support with message and room handling, update SDK to v0.3.2 by @thebentern in #5634
  • Revert "feat: replace LoRa bandwidth text input with constrained dropdown" by @jamesarich in #5691

Full Changelog: v2.7.14-closed.21...v2.7.14-internal.123

v2.7.13 (29320069)

Choose a tag to compare

@github-actions github-actions released this 19 Feb 15:59
7a68802

What's Changed

🏗️ Features

🛠️ Fixes

📝 Other Changes

  • refactor(build): Introduce AndroidLibraryFlavors convention plugin by @jamesarich in #4449
  • chore(ci): Simplify jitpack.yml build steps by @jamesarich in #4460
  • build(ksp): ksp and publishing tuning by @jamesarich in #4462
  • Enhancement - optional transparent homoglyph encoding of a few characters in certain languages for more compact and efficient text messages by @LuigiVampa92 in #4491
  • fix: Defer setting connected state until after nodeDB load by @jamesarich in #4505
  • Revert "chore(deps): update nordic.ble to v2.0.0-alpha13" by @jamesarich in #4536

New Contributors

Full Changelog: v2.7.12...v2.7.13

v2.7.12 (29319940)

Choose a tag to compare

@github-actions github-actions released this 03 Feb 02:17

What's Changed

🏗️ Features

  • feat: word-based message filtering with quarantine approach (stored but hidden) by @mdecourcy in #4241
  • feat(node): Refactor Node Detail screen and enhance user feedback by @jamesarich in #4291
  • Refactor: Only show advanced and app settings for local node by @jamesarich in #4290
  • feat: Add Status Message module support by @jamesarich in #4163
  • refactor(ui): Icon audit and node list item refactor by @jamesarich in #4313
  • feat(ui): Remove uptime from SignalInfo by @jamesarich in #4328
  • feat(messaging): Improve message bubble UI and add delivery status action by @jamesarich in #4330
  • Refactor: Replace custom charts with Vico library by @jamesarich in #4348
  • Refactor: Create core:api module and set up publishing by @jamesarich in #4362
  • feat(charts): voltage, colors, legends, and adaptive ui by @jamesarich in #4383

🛠️ Fixes

  • feat(service): Introduce fallback worker to ensure service stays alive by @jamesarich in #4295
  • feat: Improve channel migration logic and add tests by @jamesarich in #4294
  • fix(ui): Prevent NaN values in environment metrics by @jamesarich in #4316
  • fix(usb): Add error handling for serial write operations by @jamesarich in #4318
  • fix(service): Add error handling for invalid StoreForward++ packets by @jamesarich in #4319
  • fix: map cluster crash by @jamesarich in #4317
  • refactor(core): Optimize and share network state flows by @jamesarich in #4320
  • fix(notifications): Suppress notifications for muted contacts an… by @jamesarich in #4323
  • fix(mesh): Set hopStart to match hopLimit in sent packets by @jamesarich in #4324
  • fix(node): list and detail usability fixes by @jamesarich in #4336
  • refactor(firmware): Inject dispatcher into BleOtaTransport by @jamesarich in #4339
  • fix(caps): Correct firmware version for canMuteNode by @jamesarich in #4341
  • chore(lint): Disable ForbiddenComment detekt rule by @jamesarich in #4344
  • fix(neighborinfo): disable neighbor info dialog temporarily by @jamesarich in #4345
  • fix(reactions): fix sent message reaction alignment by @jamesarich in #4355
  • refactor(build): Centralize Android SDK and Java versions by @jamesarich in #4377
  • fix(node): fix regressions since node ui refactor by @jamesarich in #4379
  • refactor(build): Centralize Develocity and build cache configuration by @jamesarich in #4382
  • Refactor PR workflow to include check-changes step by @jamesarich in #4397
  • chore: fix regressions in the release by @jamesarich in #4398
  • ci18n: Add fastlane metadata to Crowdin by @jamesarich in #4402
  • feat(settings): Add firmware capability checks for settings by @jamesarich in #4403
  • ci: fix scheduled-updates workflow by explicitly adding paths by @jamesarich in #4405
  • feat(release): Automate changelog, asset updates, and tagging by @jamesarich in #4407
  • fix(ci): ensure release commit is pushed to branch and validate SHA by @jamesarich in #4409
  • fix(ci): robust SHA passing for release workflow by @jamesarich in #4410
  • fix(ci): ensure release SHA is passed correctly and validate inputs by @jamesarich in #4411
  • fix(l10n): update translation paths in Crowdin config to use locale by @jamesarich in #4420
  • fix(l10n): update translation paths in Crowdin config to use locale by @jamesarich in #4422

📝 Other Changes

New Contributors

Full Changelog: v2.7.11...v2.7.12-internal.9

v2.7.11 (29319823)

Choose a tag to compare

@github-actions github-actions released this 21 Jan 23:44
9266caa

What's Changed

🏗️ Features

🛠️Fixes

New Contributors

Full Changelog: v2.7.10...v2.7.11

v2.7.10 (29319661)

Choose a tag to compare

@github-actions github-actions released this 27 Dec 18:50
3177609

What's Changed

🏗️ Features

  • feat(messaging): Add double-tap to react with 👍 by @jamesarich in #3972
  • feat: Port “Compass view” bottom sheet from Meshtastic-Apple PR #1504 by @jakevis in #3896
  • feat(settings): add about screen with open source licenses by @jamesarich in #4012
  • feat: add SNR/RSSI/Hops Away metrics and timestamp to the reaction dialog by @1nv in #3964
  • feat: Traceroute map visualisation by @DivineOmega in #4002
  • refactor(build): Migrate core/common to KMP and cleanup build logic by @jamesarich in #4026
  • feat(ui): Animate icon changes with Crossfade by @jamesarich in #4028
  • ci: Cache AVD snapshots to speed up Android tests by @jamesarich in #4030
  • feat(build): add module dependency graph generation by @jamesarich in #4042
  • Feat request neighbours by @DaneEvans in #3709
  • feat: Add ability to request telemetry from a remote node by @jamesarich in #4059
  • Add elevation to places where LatLong is listed. by @DaneEvans in #4071
  • Implements#4054 - Add channel name to channel message notification by @RaspberryProgramming in #4069

🛠️Fixes

👷Dependencies

  • chore(deps): update com.google.firebase:firebase-bom to v34.7.0 by @renovate[bot] in #3973
  • chore(deps): update ktorfit to v2.7.1 by @renovate[bot] in #3974
  • chore(deps): update io.nlopez.compose.rules:detekt to v0.5.2 by @renovate[bot] in #3975
  • chore(deps): update github artifact actions (major) by @renovate[bot] in #3987
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in #3991
  • chore(deps): update core/proto/src/main/proto digest to 4095e59 by @renovate[bot] in #3998
  • chore(deps): update core/proto/src/main/proto digest to 9beb80f by @renovate[bot] in #4014
  • chore(deps): update devtools.ksp to v2.3.4 by @renovate[bot] in #4018
  • chore(deps): update plugin protobuf to v0.9.6 by @renovate[bot] in #4022
  • chore(deps): update ruby to v3.4.8 by @renovate[bot] in #4023
  • chore(deps): update androidx.compose:compose-bom-alpha to v2025.12.01 by @renovate[bot] in #4027
  • chore(deps): update kotlin ecosystem to v2.3.0 by @renovate[bot] in #4015
  • chore(deps): update core/proto/src/main/proto digest to 62ef17b by @renovate[bot] in #4029
  • chore(deps): update actions/cache action to v5 by @renovate[bot] in #4031
  • chore(deps): update google maps compose to v7 (major) by @renovate[bot] in #4032
  • chore(deps): update fastlane to v2.230.0 by @renovate[bot] in #4038
  • chore(deps): update io.nlopez.compose.rules:detekt to v0.5.3 by @renovate[bot] in #4041
  • chore(deps): update markdown renderer (mike penz) by @renovate[bot] in #4048
  • chore(deps): update core/proto/src/main/proto digest to c474fd3 by @renovate[bot] in #4050
  • chore(deps): update ruby to v4 by @renovate[bot] in #4062

🧱Repo

🤖Automated

  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3980
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3984
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3985
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3989
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3997
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3999
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #4001
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #4003
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #4004
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #4006
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #4008
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #4013
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in https://github.c...
Read more

v2.7.9 (29319572)

Choose a tag to compare

@github-actions github-actions released this 11 Dec 14:38
5006fa3

What's Changed

🏗️ Features

  • feat: add infrastructure shutdown safeguards and enhance shutdown dialog text by @mdecourcy in #3858
  • feat(firmware): Implement USB DFU updates for supported devices by @jamesarich in #3901
  • chore(build-logic): Apply Spotless and Detekt to build-logic module by @jamesarich in #3962

🛠️Fixes

👷Dependencies

  • chore(deps): update ktorfit to v2.6.5 by @renovate[bot] in #3875
  • chore(deps): update actions/ai-inference action to v2 by @renovate[bot] in #3888
  • chore(deps): update actions/github-script action to v8 by @renovate[bot] in #3889
  • chore(deps): update actions/stale action to v10.1.1 by @renovate[bot] in #3890
  • chore(deps): update io.nlopez.compose.rules:detekt to v0.5.0 by @renovate[bot] in #3891
  • chore(deps): update io.nlopez.compose.rules:detekt to v0.5.1 by @renovate[bot] in #3900
  • chore(deps): update androidx (general) by @renovate[bot] in #3895
  • chore(deps): update com.github.mik3y:usb-serial-for-android to v3.10.0 by @renovate[bot] in #3906
  • chore(deps): update protobuf runtime to v4.33.2 by @renovate[bot] in #3908
  • chore(deps): update core/proto/src/main/proto digest to 4095e59 by @renovate[bot] in #3905
  • chore(deps): update plugin kover to v0.9.4 by @renovate[bot] in #3938
  • chore(deps): update peter-evans/create-pull-request action to v8 by @renovate[bot] in #3939
  • chore(deps): update plugin com.gradle.develocity to v4.3 by @renovate[bot] in #3950
  • chore(deps): update actions/upload-artifact action to v5 by @renovate[bot] in #3955
  • chore(deps): update mikepenz/release-changelog-builder-action action to v6 by @renovate[bot] in #3953
  • chore(deps): update core/proto/src/main/proto digest to 4095e59 by @renovate[bot] in #3958
  • chore(deps): update com.android.tools:common to v31.13.2 by @renovate[bot] in #3968
  • chore(deps): update datadog to v3.4.0 by @renovate[bot] in #3969
  • chore(deps): update agp to v8.13.2 by @renovate[bot] in #3967

🧱Repo

🤖Automated

  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3861
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3864
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3871
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3872
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3879
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3887
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3892
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3893
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3918
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3920
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3922
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3927
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3928
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3940
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3943
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3944
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3945
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3957
  • chore: Scheduled updates (Firmware, Hardware, Translations) by @jamesarich in #3965

New Contributors

Full Changelog: https://github....

Read more

v2.7.8 (29319501)

Choose a tag to compare

@github-actions github-actions released this 30 Nov 02:36
89e82ed

What's Changed

🏗️ Features

  • feat: Add firmware update module for Nordic nRF devices by @jamesarich in #3782
  • feat(settings): Add RTTTL ringtone playback in settings by @jamesarich in #3799
  • dupe internal builds to an alt repo to allow obtanium by @DaneEvans in #3809
  • feat: Keep screen on during firmware update by @jamesarich in #3806
  • feat: prevent QR imports from overriding local TX power by @mdecourcy in #3845
  • feat(navigation): Implement adaptive list-detail for contacts and nodes by @jamesarich in #3850
  • feat: firmware bootloader ota warnings by @mdecourcy in #3846
  • feat: per device persistant dismissal of bootloader nags by @mdecourcy in #3859

🛠️Fixes

  • docs: Overhaul and rename agent guide by @jamesarich in #3757
  • chore(ci): Add Crowdin sync to scheduled updates by @jamesarich in #3760
  • chore(ci): Use CROWDIN_GITHUB_TOKEN for scheduled updates PR by @jamesarich in #3761
  • chore(crowdin): Remove preserve_hierarchy option by @jamesarich in #3764
  • chore(renovate): Configure more aggressive automerge by @jamesarich in #3772
  • chore: Update VERSION_NAME_BASE to 2.7.8 by @jamesarich in #3779
  • fix: unread count racecondition by @mdecourcy in #3784
  • fix: skip nodeinfo upsert when we recieve defaults from the node by @mdecourcy in #3796
  • feat: Add Jetpack Paging 3 support for messages and threads/contacts by @mdecourcy in #3795
  • refactor: Improve RSSI reading robustness in connection info by @jamesarich in #3798
  • refactor(connections): Improve RSSI reading robustness by @jamesarich in #3804
  • Added relays count by @RCGV1 in #3773
  • fix: message list paged lifecycle resulting in notifications being cleared by @mdecourcy in #3815
  • fix: skip default nodeinfo upsert in handleReceivedUser for live packets by @mdecourcy in #3819
  • fix stop the connections screen from jumping during connections by @DaneEvans in #3821
  • fix: allow forgetting of network nodes by @DaneEvans in #3820
  • Fix add qr acting like replace instead of add by @RCGV1 in #3823
  • fix: loadCachedDb() before backfill to ensure in-mem nodedb isn't stale, show filtered count in nodelist by @mdecourcy in #3827
  • fix: Prevent message list jumping during pagination updates by @mdecourcy in #3829
  • fix: Multiple bugs - settings text fields, dropdowns, missing override duty cycle, and MQTT icon display by @mdecourcy in #3833
  • fix: node search by keeping denormalized name columns up to date and backfilling existing nodes by @mdecourcy in #3839
  • fix: duplicate LazyColumn keys for broadcast contacts by @mdecourcy in #3840
  • fix: fdroid device hardware fallback using bundled JSON for incomplete cache entries by @mdecourcy in #3844
  • fix: further fixes for fdroid json fallbacks by @mdecourcy in #3847
  • fix: prevent text fields from auto-focusing on screen load by @mdecourcy in #3857
  • refactor(navigation): Simplify adaptive back nav and state by @jamesarich in #3860

👷Dependencies

  • chore(deps): update plugin dependency-analysis to v3.5.0 by @renovate[bot] in #3751
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in #3755
  • chore(deps): update androidx datastore to v1.2.0 by @renovate[bot] in #3756
  • chore(deps): update devtools.ksp to v2.3.3 by @renovate[bot] in #3759
  • chore(deps): update no.nordicsemi.kotlin.ble:client-android to v2.0.0-alpha11 by @renovate[bot] in #3776
  • chore(deps): update core/proto/src/main/proto digest to 52fa252 by @renovate[bot] in #3775
  • chore(deps): update io.nlopez.compose.rules:detekt to v0.4.28 by @renovate[bot] in #3781
  • chore(deps): update fastlane to v2.229.0 by @renovate[bot] in #3783
  • chore(deps): update androidx (general) to v3.3.6 by @renovate[bot] in #3797
  • chore(deps): update fastlane to v2.229.1 by @renovate[bot] in #3801
  • chore(deps): update ruby to v3.4.7 by @renovate[bot] in #3802
  • chore(deps): update ktor to v3.3.3 by @renovate[bot] in #3825
  • chore(deps): update plugin dependency-analysis to v3.5.1 by @renovate[bot] in #3831
  • chore(deps): update no.nordicsemi.kotlin.ble:client-android to v2.0.0-alpha12 by @renovate[bot] in #3849

🧱Repo

🤖Automated

Read more