2.6.24 beta
Get ready for a node-worthy update! We've packed in new features and squashed bugs for a smoother experience.
- Node Details on Tap: Long-press map markers for info & distance! 🗺️
- Message Replies: Respond directly in chats. 💬
- Smarter Filters: Find nodes by ID/number. 🔍
- Security Boosts: Key export & regeneration prompts. 🔑
- Plus, tons of fixes & performance tweaks! 🛠️⚡
What's Changed
🛠️Fixes & Features
- feat: filter node list by user id or node number by @lkosson in #2078
- Fixed nodeDB reset even on remote nodeDB reset by @RCGV1 in #2087
- chore(l10n): New Crowdin Translations by @github-actions in #2074
- chore: update device hardware list from Meshtastic API by @github-actions in #2081
- refactor: Client Notification Support by @jamesarich in #2095
- feat: adaptive nav by @jamesarich in #2079
- Added connection indicator by @RCGV1 in #2073
- Fix: Device selection lags by @jeremiah-k in #2086
- chore: update firmware releases list from Meshtastic API by @github-actions in #2096
- Refactor: split position precision constants by @jamesarich in #2099
- chore(l10n): New Crowdin Translations by @github-actions in #2101
- feat: show node details by long-pressing a node marker on map by @lkosson in #2104
- Refactor: Use Alt+Enter to send messages by @jamesarich in #2108
- Refactor: unwrap map graph by @jamesarich in #2111
- Persist node sort preference across app restarts by @jeremiah-k in #2115
- Refactor: Remove unused dependencies by @jamesarich in #2116
- chore: update firmware releases list from Meshtastic API by @github-actions in #2106
- chore(l10n): New Crowdin Translations by @github-actions in #2107
- refactor: NodeDetail screen and firmware version display by @jamesarich in #2120
- feat: show distance to the node on node details screen by @lkosson in #2122
- add copy button to pbk for node status icon by @DaneEvans in #2119
- Refactor: Implement global cooldown for Traceroute button by @jamesarich in #2129
- Fix node removal hang by adding navigation callback by @jeremiah-k in #2134
- Fix bottom navigation back stack accumulation by @jeremiah-k in #2133
- chore: update firmware releases list from Meshtastic API by @github-actions in #2130
- chore(l10n): New Crowdin Translations by @github-actions in #2117
- fix (#2128): MQTT map reporting interval input by @jamesarich in #2135
- feat: prompt user to regenerate compromised keys by @jamesarich in #2131
- feat: generate random PSK on clear by @jamesarich in #2136
- Increase MIN_SDK_VERSION to 26 by @jamesarich in #2140
- Refactor: Improve MessageItem layout and display of reactions by @jamesarich in #2141
- chore(l10n): New Crowdin Translations by @github-actions in #2138
- fix(#2094): remove redundant mapView.onDetach() call by @jamesarich in #2143
- Update Node.kt by @rcarteraz in #2146
- feat: Implement message reply functionality by @jamesarich in #2147
- chore(l10n): New Crowdin Translations by @github-actions in #2144
- fix: Fetch original message when displaying a reply by @jamesarich in #2152
- chore: update firmware releases list from Meshtastic API by @github-actions in #2151
- fix: refactor MainActivity to use lifecycleScope for coroutines by @jamesarich in #2153
- feat: Add key export functionality by @jamesarich in #2158
- detekt cleanup by @jamesarich in #2159
- Fix: Ensure valid private key generation by @jamesarich in #2160
- Fix text input not clearing after sending message by @jeremiah-k in #2161
- chore(l10n): New Crowdin Translations by @github-actions in #2163
- Fix hidden client freeze issue when viewing node details by @jeremiah-k in #2164
- feat (#2105): debug panel by @DaneEvans in #2148
- chore(l10n): New Crowdin Translations by @github-actions in #2166
- [chore] Restrict GH action runs to the main repository by @jsoberg in #2170
- chore(l10n): New Crowdin Translations by @github-actions in #2168
- fix (#2165): position exchange not working by @jeremiah-k in #2169
- fix (#2172): replace string template for
Hops Away:
by @jamesarich in #2173 - fix: Propagate reply ID for DataPackets by @jamesarich in #2177
- fix: Use string template for hops away by @jamesarich in #2184
- fix: Drop text buttons in favor of icons by @DaneEvans in #2185
- feat:add extra filters, including own address by @DaneEvans in #2183
- Fix/2100 graph labels by @DaneEvans in #2182
- fix: add workflow_dispatch to enable manual CI runs & readme fix by @jeremiah-k in #2186
- chore: update firmware releases list from Meshtastic API by @github-actions in #2181
- Revert "Fix/2100 graph labels" by @jamesarich in #2187
- chore(l10n): New Crowdin Translations by @github-actions in #2171
- fix: clear public key when private key edited by @jamesarich in #2190
- Refactor message item actions and reactions by @jamesarich in #2191
- feat: Allow unlocking excluded modules by @jamesarich in #2180
- fix: unintended line break in node chip by @lkosson in #2199
- refactor: Add remote node indicator and node chip to app bar by @jamesarich in #2195
- chore(l10n): New Crowdin Translations by @github-actions in #2189
- feat: Add send message service example by @jamesarich in #2203
- fix: message input clearing with proper state management (#1474 & #2150) by @jeremiah-k in #2208
- fix: ignore non-local localStats telemetry by @lkosson in #2206
- chore: update firmware releases list from Meshtastic API by @github-actions in #2204
- chore(l10n): New Crowdin Translations by @github-actions in #2200
- feat: show online and total node count in the title bar by @jamesarich in #2209
- Refactor: Use default FAB shape for MapButton by @jamesarich in #2211
- Refactor node count display in MainAppBar by @jamesarich in #2210
- Fix/2100 graph labels by @jamesarich in #2188
- feat: split message notifications into direct- and broadcast messages by @lkosson in #2217
- Refactor DebugSearch.kt by @jamesarich in #2219
- chore(l10n): New Crowdin Translations by @github-actions in #2215
- Fix string formatting issues by @jamesarich in #2222
- Refactor: Navigate to NodeDetail with singleTop by @jamesarich in #2223
- Refactor: Extract MessageActions components by @jamesarich in #2225
- Refactor: Improve UI consistency and animations by @jamesarich in #2226
- Refactor: Inject BluetoothViewModel into ConnectionsScreen by @jamesarich in #2228
- chore(l10n): New Crowdin Translations by @github-actions in #2221
- Refactor message input to use BasicTextField2 by @jamesarich in #2231
👷Dependencies
- chore(deps): update mesh_service_example/src/main/proto digest to 0c11288 by @renovate in #2085
- chore(deps): update app/src/main/proto digest to 0c11288 - autoclosed by @renovate in #2084
- chore(deps): update app/src/main/proto digest to c758376 by @renovate in #2123
- chore(deps): update mesh_service_example/src/main/proto digest to c758376 by @renovate in #2124
- chore(deps): update adaptive to v1.2.0-alpha07 by @renovate in #2154
- chore(deps): update androidx.compose.material3:material3 to v1.4.0-alpha16 by @renovate in #2155
- chore(deps): update androidx.work:work-runtime-ktx to v2.10.2 by @renovate in #2156
- chore(deps): update room to v2.7.2 by @renovate in #2157
- chore(deps): update androidx.compose:compose-bom to v2025.06.01 by @renovate in #2176
- chore(deps): update app/src/main/proto digest to b818a00 by @renovate in #2178
- chore(deps): update mesh_service_example/src/main/proto digest to b818a00 by @renovate in #2179
- chore(deps): update app/src/main/proto digest to 6791138 by @renovate in #2196
- chore(deps): update mesh_service_example/src/main/proto digest to 6791138 by @renovate in #2197
New Contributors
- @jeremiah-k made their first contribution in #2086
- @DaneEvans made their first contribution in #2119
Full Changelog: 2.6.15...2.6.24