2.6.15 beta
✨ Sleek Material 3 UI refresh
📢 Reply to DMs directly from notifications!
🗺️ Waypoint expiration settings
📊 New Host Metrics Log screen
🔗 Share contacts easily via QR codes
Plus many more fixes & improvements!
What's Changed
🛠️Fixes & Features
- refactor: remove deprecated
AppCompatTheme
by @andrekir in #1524 - refactor: migrate
ShareFragment
to Compose by @andrekir in #1525 - refactor: replace
Scaffold
with internal component by @andrekir in #1526 - refactor: move
RadioConfig
files to separate package by @andrekir in #1540 - refactor: move
NavGraph
to navigation package by @andrekir in #1541 - feat: Add 'dependencies' label to Renovate PRs by @jamesarich in #1585
- fix: Add missing sensor value units to Node Details cards by @Kealper in #1583
- feat: Add RAK2560 hardware model and graphic by @jamesarich in #1543
- fixes #1557: Filter out emojis when creating short names by @jsoberg in #1578
- Power graph by @Robert-0410 in #1556
- fix: limit quick chat append, prevent duplicates by @jamesarich in #1522
- feat: Initial implementation of adding nodes to favorites by @Kealper in #1520
- Introduction of stable Compose UI State and some simple animations in Debug Panel by @jsoberg in #1575
- [Quick UI Update] Apply a background to the filter search sticky header by @jsoberg in #1588
- chore: update proto submodule to v2.5.22 by @jamesarich in #1589
- [Quick UI Update] Animate user node list items on details expansion by @jsoberg in #1590
- 2.5.17 by @jamesarich in #1591
- [DevEx] Update project name and icon by @jsoberg in #1601
- Graphs Blue Color by @Robert-0410 in #1597
- Fixes #1561: Accommodate large font for node filter by @jsoberg in #1602
- Fixes #1604: Stop overriding surface/onSurface in theme by @jsoberg in #1605
- Include image/video tag examples in PR Template comment by @jsoberg in #1606
- feat: Introduce Version Catalog for Dependency Management by @jamesarich in #1607
- chore: Unused code cleanup by @jsoberg in #1612
- fix: New message notifications now correctly show the receive time in the notification drawer by @Kealper in #1628
- fix: Refactor NodeDetail.kt to use has*() functions by @jamesarich in #1627
- fix #1616 (a11y): Use SP font size for marker labels on the map by @jsoberg in #1630
- fix #1615: Add explicit signed int editing preference by @jsoberg in #1629
- fix #1554 (a11y): Add content description to tabs for screen reader support by @jsoberg in #1631
- fix #1616: Calculate DP to pixel value for map label offset by @jsoberg in #1637
- feat #1611: Add confirmation dialog when changing to router role by @jamesarich in #1636
- feat: Show ALERT_APP notifications and override DND by @jamesarich in #1515
- fix: Update Paxcount display condition by @jamesarich in #1635
- 2.5.18 by @jamesarich in #1643
- fix: add crashlytics version reference by @jamesarich in #1644
- fix #1645: Ensure test run completion on Android by killing crashpad_handler by @jamesarich in #1646
- fix #1654: Move the app rating dependency to googleImplementation by @jamesarich in #1656
- feat: expand role confirmation to include REPEATER by @jamesarich in #1657
- chore: Update minimum required firmware version 2.3.2 -> 2.3.15 by @jamesarich in #1658
- feat: Initial implementation of low battery notifications for nodes by @Kealper in #1653
- 2.5.19 by @jamesarich in #1659
- feat: Improve (battery) notification behavior by @jamesarich in #1661
- feat: Updated the env metrics graph to use the latest graph features by @Robert-0410 in #1667
- chore(proto): Meshtastic Protobufs v2.6.1 by @jamesarich in #1677
- fix #1484: Filter out ignored nodes from map by @jamesarich in #1676
- fix #1678: Update MeshService.kt to store the channel for received packets. by @jamesarich in #1683
- feat: support custom ports in TCP interface by @andrekir in #1534
- feat #1688: Add UDP mesh toggle by @jamesarich in #1689
- Update README.md by @AndrewReitz in #1687
- Graph Barometric Pressure by @Robert-0410 in #1684
- fix: Add some smarts to low battery notification triggers by @Kealper in #1686
- chore(protos): Meshtastic Protobufs v2.6.2 by @jamesarich in #1693
- feat: Update README.md to add repository statistics by @jamesarich in #1694
- feat: Add a bit more info to the node marker popup by @Kealper in #1691
- fix: Conditionally show UDP settings by @jamesarich in #1702
- Allow sorting by favorite nodes for issue #1608 by @todd2982 in #1700
- Clarify request options to exchange for issue #1692 by @todd2982 in #1701
- Expose wantAck in Mesh Packet by @niccellular in #1703
- Accessibility #1632 by @todd2982 in #1705
- chore(renovate): Update Renovate config to group Kotlin and KSP dependencies by @jamesarich in #1706
- chore(renovate): Group Kotlin and KSP take 2 by @jamesarich in #1708
- chore(renovate): revert grouping by @jamesarich in #1710
- chore(dependencies): Upgrade Kotlin to 2.1.20 and KSP to 2.1.20-1.0.31 by @jamesarich in #1711
- 2.5.20 by @jamesarich in #1712
- fix: Handle node public key mismatch and show warning by @jamesarich in #1720
- fix: use the appropriate min when scaling the barometric pressure data by @Robert-0410 in #1719
- fix: display udp toggle when hasWifi OR hasEthernet by @jamesarich in #1728
- 2.5.21 by @jamesarich in #1729
- chore(repo): Add release template by @jamesarich in #1731
- fix: remove notification grouping by @jamesarich in #1735
- fix: Remove nodeDb size from status string by @jamesarich in #1734
- fix: disable editing of Public Key field by @jamesarich in #1737
- Fix: NaN Blank Environment Graph by @Robert-0410 in #1744
- fix: clear local DB after reset by @jamesarich in #1746
- 2.5.22 by @jamesarich in #1775
- fix: Remove imePadding modifier to internal scaffold box by @jsoberg in #1771
- Update connected count string in strings.xml and MeshService.kt by @jamesarich in #1776
- feat: Add copy button to public/private key fields by @jamesarich in #1782
- fix(#1787): handle unknown hardware details crash by @jamesarich in #1789
- chore(translations): update crowdin translations by @jamesarich in #1791
- 2.5.23 by @jamesarich in #1792
- Fix: actually copy public key by @jamesarich in #1793
- refactor (i18n): extract string resources from config for translation by @jamesarich in #1794
- 2.5.24 by @jamesarich in #1795
- chore(l10n): Add Crowdin localization workflow and configuration by @jamesarich in #1798
- fix: correct base path in crowdin.yml by @jamesarich in #1799
- chore(l10n): New Crowdin Translations by @github-actions in #1800
- fix (#1647): Satellite icon sizing by @jamesarich in #1801
- feat: Add GitHub workflow to update hardware list by @jamesarich in #1802
- chore(l10n): New Crowdin Translations by @github-actions in #1803
- chore: update device hardware list from Meshtastic API by @github-actions in #1806
- chore(l10n): New Crowdin Translations by @github-actions in #1807
- refactor: Remove automatic short name generation from long name. by @jamesarich in #1813
- refactor: extract hardcoded NodeDetail strings by @jamesarich in #1814
- refactor(l10n): Split Crowdin Action into Upload and Download Workflows by @jamesarich in #1815
- chore(submodules): Enable submodule support in renovate config by @jamesarich in #1816
- chore(submodules): Add changelog URLs and package rules to renovate config by @jamesarich in #1820
- chore: extract string resources for import and export config by @jamesarich in #1822
- fix(gradle): resourceConfigurations replaces resconfigs by @jamesarich in #1824
- Missing iaq by @Robert-0410 in #1752
- chore(l10n): New Crowdin Translations by @github-actions in #1811
- chore: update device hardware list from Meshtastic API by @github-actions in #1830
- chore(l10n): New Crowdin Translations by @github-actions in #1832
- chore: update versionName 2.5.25 and versionCode 30525 by @jamesarich in #1831
- Node detail work by @Robert-0410 in #1836
- chore(i18n): Upload translations workflow by @jamesarich in #1845
- chore(renovate): Auto-merge minor and patch updates by @jamesarich in #1846
- refactor: migrate to Compose navigation by @jamesarich in #1835
- chore(l10n): New Crowdin Translations by @github-actions in #1837
- chore(repo): stale.yml by @jamesarich in #1849
- chore(repo): let stale-bot have more operations by @jamesarich in #1851
- chore(l10n): New Crowdin Translations by @github-actions in #1853
- 2.5.26 by @jamesarich in #1852
- fix: Messages UI Tweaks by @jamesarich in #1856
- 2.5.27 by @jamesarich in #1857
- feat: material3 by @jamesarich in #1862
- chore(l10n): New Crowdin Translations by @github-actions in #1867
- 2.6.0 by @jamesarich in #1866
- fix #1567: Allow using a different TCP port than default 4403 by @slush0 in #1861
- fix: M3 bug squashing by @jamesarich in #1872
- Create a resend option for failed messages by @RCGV1 in #1876
- Refactor: Move "provide location" preference to DataStore by @jamesarich in #1877
- feat: Add Contact Sharing via QR code by @jamesarich in #1859
- feat: Unmessageable by @jamesarich in #1858
- Channel Configuration by @Robert-0410 in #1873
- Refactor: Improve shared contact import dialog by @jamesarich in #1888
- Refactor: Remove "include unmessageable" filter by @jamesarich in #1889
- fix: Ensure handleReceivedUser is called when adding contacts by @jamesarich in #1886
- fix(#1874): Check that Meshtastic URL is for a channel set by @jamesarich in #1890
- chore(l10n): New Crowdin Translations by @github-actions in #1870
- feat: Use node colors for contact chip by @jamesarich in #1891
- 2.6.1 by @jamesarich in #1892
- fix: NodeMenu hiding details action by @jamesarich in #1894
- feat: Add request metadata action to NodeDetail by @jamesarich in #1896
- Refactor: Adjust padding and sizes in MessageItem and Reaction compon… by @jamesarich in #1898
- feat: Add node to favorites when sending a direct message by @jamesarich in #1899
- 2.6.2 by @jamesarich in #1900
- chore(repo): Create parallel-release action by @jamesarich in #1901
- feat: network module by @jamesarich in #1905
- build: Add submodule checkout and Gradle setup to CodeQL workflow by @jamesarich in #1911
- chore: update firmware releases list from Meshtastic API by @github-actions in #1908
- Generate more specific client ID for MQTT proxy by @jamesarich in #1912
- Refactor: Move ApiModule to flavor specific directories by @jamesarich in #1913
- chore(l10n): New Crowdin Translations by @github-actions in #1909
- Potential fix for code scanning alert no. 30: Improper verification of intent by broadcast receiver by @jamesarich in #1914
- feat: filter visibility, add unmessageable toggle by @jamesarich in #1915
- feat(#1755): Add setting to display time in 12h format by @jamesarich in #1918
- chore(codeql): run only weekly by @jamesarich in #1920
- chore: Upgrade minSdkVersion to 23 by @jamesarich in #1921
- refactor: Improved Node List Items by @RCGV1 in #1904
- refactor: add tooltips, unmessageable tweaks by @jamesarich in #1925
- chore: Update workflow files to update workflows to 'main' by @jamesarich in #1927
- Distinguish between an empty response and a network error by @jamesarich in #1938
- chore(codeql): Update codeql.yml by @jamesarich in #1939
- chore: update firmware releases list from Meshtastic API by @github-actions in #1937
- fix : prevent crash on geo: intent when no compatible map app is inst… by @emp3r0r7 in #1936
- chore(l10n): New Crowdin Translations by @github-actions in #1931
- refactor: Support Meshtastic URL deep link scheme in HTTPS only by @jamesarich in #1942
- feat(node): consolidate node chip and menu by @jamesarich in #1941
- chore(build): Refactor Gradle build scripts to Kotlin DSL by @jamesarich in #1944
- refactor: Move MIN_DEVICE_VERSION to build config by @jamesarich in #1946
- fix(#1947): Disable Crashlytics for fdroid builds by @jamesarich in #1948
- chore(crowdin): run download action every hour by @jamesarich in #1950
- chore(l10n): New Crowdin Translations by @github-actions in #1951
- refactor(#1940): Improve firmware version comparison by @jamesarich in #1952
- refactor: settings screen ui updates by @jamesarich in #1955
- refactor: edgeToEdge tweaks, chip elevation by @jamesarich in #1962
- chore: update device hardware list from Meshtastic API by @github-actions in #1961
- chore(l10n): New Crowdin Translations by @github-actions in #1956
- Refactor: clean up sharedTransition from more places by @jamesarich in #1963
- refactor: use
is_unmessagable
flag by @jamesarich in #1965 - fix: update LoraSignalIndicator GOOD color by @jamesarich in #1966
- Fix: Handle null or empty release list in
getLatestRelease
by @jamesarich in #1967 - fix: respect keyboard, edgeToEdge tweaks by @jamesarich in #1968
- feat: add Host Metrics Log screen by @jamesarich in #1969
- feat: host metrics part 2 by @jamesarich in #1972
- chore(l10n): New Crowdin Translations by @github-actions in #1974
- Refactor: organize ui screens to separate packages by @jamesarich in #1982
- Refactor: Settings to Connections, ui updates by @jamesarich in #1984
- chore: update device hardware list from Meshtastic API by @github-actions in #1975
- fix: clear data when changing devices by @jamesarich in #1985
- chore(l10n): New Crowdin Translations by @github-actions in #1976
- feat: add cooldown to Traceroute action button by @jamesarich in #1987
- Channel qr clean by @Robert-0410 in #1983
- feat: add Direct Message button to Node Detail screen by @jamesarich in #1988
- Fix: Update
isUnmessageable
based onuserInput.role
for older firmware by @jamesarich in #1990 - chore(l10n): New Crowdin Translations by @github-actions in #1986
- refactor: FirmwareReleaseDao to return non-nullable lists by @jamesarich in #1991
- fix: Only show DM button if node is messageable by @jamesarich in #1992
- refactor: Update notification and service handling by @jamesarich in #1993
- Refactor: Move version checks to Main.kt by @jamesarich in #1995
- feat: Allow direct message replies from notifications by @jamesarich in #1994
- chore(l10n): New Crowdin Translations by @github-actions in #1997
- Provide Navigation to Input Timezone by @Robert-0410 in #2003
- feat: add MQTT Map Reporting consent by @jamesarich in #2006
- Refactor node detail navigation by @jamesarich in #2009
- Fix location sharing by @jamesarich in #2010
- refactor: recommended and required firmware updates by @jamesarich in #2012
- revert: do not clear databases on disconnect by @jamesarich in #2011
- chore: update device hardware list from Meshtastic API by @github-actions in #2005
- chore(l10n): New Crowdin Translations by @github-actions in #1998
- chore: update firmware releases list from Meshtastic API by @github-actions in #2015
- chore(l10n): New Crowdin Translations by @github-actions in #2014
- fix: connections ui and unmessageable logic by @jamesarich in #2016
- Refactor: Nest NodeDetailScreen and related routes in a NodeDetailGraph by @jamesarich in #2018
- chore(l10n): New Crowdin Translations by @github-actions in #2017
- Refactor: Use FLAG_ACTIVITY_SINGLE_TOP for MainActivity intents by @jamesarich in #2022
- chore(l10n): New Crowdin Translations by @github-actions in #2030
- feat: show per-message SNR, RSSI and hop count by @lkosson in #2040
- chore(l10n): New Crowdin Translations by @github-actions in #2033
- feat: add MeshServiceExample project to repo by @jamesarich in #2038
- refactor: organize navigation by @jamesarich in #2042
- Refactor: Migrate app build.gradle to Kotlin DSL by @jamesarich in #2046
- fix: ensure bg loc permissions, unbind service by @jamesarich in #2050
- Added waypoint expiration picker by @RCGV1 in #2051
- chore(l10n): New Crowdin Translations by @github-actions in #2047
- chore(l10n): New Crowdin Translations by @github-actions in #2053
- fix: update start destination to NodesGraph when connected by @jamesarich in #2058
- Refactor: Consolidate DropdownMenu into RegularPreference by @jamesarich in #2059
- feat: allow hiding offline and/or non-direct nodes from list and map by @lkosson in #2052
- fix: cancel new message notification when message is marked as read by @lkosson in #2057
- feat(#2060): Enforce valid names for UserConfig by @jamesarich in #2063
- chore(l10n): New Crowdin Translations by @github-actions in #2054
- docs: Updated screenshots for Fdroid by @jamesarich in #2067
- chore(l10n): New Crowdin Translations by @github-actions in #2070
- Added map filter + small waypoint fix by @RCGV1 in #2065
- refactor: ClientNotification messages as an alert dialog by @jamesarich in #2072
- chore(l10n): New Crowdin Translations by @github-actions in #2071
👷Dependencies
- chore(deps): update gradle to v8.12.1 by @renovate in #1563
- chore(deps): update androidx.compose:compose-bom to v2025 by @renovate in #1550
- chore(deps): update kotlin_version to v2.1.10 by @renovate in #1436
- chore(deps): update protobuf_version to v4.29.3 by @renovate in #1532
- chore(deps): update com.google.firebase:firebase-bom to v33.9.0 by @renovate in #1564
- chore(deps): update hilt_version to v2.55 by @renovate in #1537
- chore(deps): update com.google.firebase:firebase-crashlytics-gradle to v3.0.3 by @renovate in #1587
- chore(deps): update org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.0 by @renovate in #1523
- chore(deps): update coroutines_version to v1.10.1 by @renovate in #1491
- chore(deps): update com.suddenh4x.ratingdialog:awesome-app-rating to v2.8.0 by @renovate in #1570
- chore(deps): update nav_version to v2.8.7 by @renovate in #1569
- chore(deps): update androidx.datastore:datastore to v1.1.2 by @renovate in #1549
- chore(deps): update androidx.fragment:fragment-ktx to v1.8.6 by @renovate in #1586
- chore(deps): update com.android.tools.build:gradle to v8.8.1 by @renovate in #1536
- chore(deps): update plugin com.google.devtools.ksp to v2.1.10-1.0.30 by @renovate in #1437
- chore(deps): update io.gitlab.arturbosch.detekt:detekt-formatting to v1.23.8 by @renovate in #1599
- chore(deps): update plugin io.gitlab.arturbosch.detekt to v1.23.8 by @renovate in #1600
- chore(deps): update gradle to v8.13 - autoclosed by @renovate in #1614
- chore(deps): update androidx.constraintlayout:constraintlayout to v2.2.1 by @renovate in #1617
- chore(deps): update androidx.datastore:datastore to v1.1.3 by @renovate in #1618
- chore(deps): update com.android.tools.build:gradle to v8.8.2 by @renovate in #1619
- chore(deps): update com.google.devtools.ksp to v2.1.10-1.0.31 by @renovate in #1622
- chore(deps): update navigation to v2.8.8 by @renovate in #1620
- chore(deps): update com.google.firebase:firebase-bom to v33.10.0 by @renovate in #1623
- chore(deps): update com.android.tools.build:gradle to v8.9.0 by @renovate in #1639
- chore(deps): update navigation to v2.8.9 by @renovate in #1672
- chore(deps): update androidx.compose:compose-bom to v2025.03.00 by @renovate in #1673
- chore(deps): update protobuf.kotlin to v4.30.1 by @renovate in #1642
- chore(deps): update com.github.mik3y:usb-serial-for-android to v3.9.0 - abandoned by @renovate in #1666
- chore(deps): update hilt to v2.56 by @renovate in #1695
- chore(deps): update com.google.firebase:firebase-bom to v33.11.0 by @renovate in #1698
- chore(deps): update com.android.tools.build:gradle to v8.9.1 by @renovate in #1717
- chore(deps): update hilt to v2.56.1 by @renovate in #1721
- chore(deps): update androidx.datastore:datastore to v1.1.4 by @renovate in #1724
- chore(deps): update protobuf.kotlin to v4.30.2 by @renovate in #1727
- chore(deps): update androidx.compose:compose-bom to v2025.03.01 by @renovate in #1723
- chore(deps): update com.google.devtools.ksp to v2.1.20-1.0.32 by @renovate in #1699
- chore(deps): update com.google.firebase:firebase-bom to v33.12.0 by @renovate in #1743
- chore(deps): update com.google.protobuf:protobuf-gradle-plugin to v0.9.5 by @renovate in #1745
- chore(deps): update org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.1 by @renovate in #1747
- chore(deps): update androidx.compose:compose-bom to v2025.04.00 by @renovate in #1757
- chore(deps): update androidx.core:core-ktx to v1.16.0 by @renovate in #1758
- chore(deps): update room to v2.7.0 by @renovate in #1759
- chore(deps): update kotlinx.coroutines.android to v1.10.2 by @renovate in #1754
- chore(deps): update hilt to v2.56.2 by @renovate in #1768
- chore(deps): update com.google.devtools.ksp to v2.1.20-2.0.0 by @renovate in #1756
- chore(deps): update com.android.tools.build:gradle to v8.9.2 - autoclosed by @renovate in #1774
- chore(deps): update androidx.compose:compose-bom to v2025.04.01 by @renovate in #1777
- chore(deps): update androidx.datastore:datastore to v1.1.5 by @renovate in #1778
- chore(deps): update room to v2.7.1 by @renovate in #1780
- chore(deps): update androidx.work:work-runtime-ktx to v2.10.1 by @renovate in #1779
- chore(deps): update com.google.firebase:firebase-bom to v33.13.0 by @renovate in #1783
- chore(deps): update gradle to v8.14 by @renovate in #1785
- chore(deps): update node to v22 by @renovate in #1804
- chore(deps): update peter-evans/create-pull-request action to v7 by @renovate in #1805
- chore(deps): update com.google.devtools.ksp to v2.1.20-2.0.1 by @renovate in #1809
- chore(deps): update app/src/main/proto digest to 078ac8d by @renovate in #1817
- chore(deps): update design digest to 2a39241 by @renovate in #1818
- chore(deps): update com.android.tools.build:gradle to v8.10.0 by @renovate in #1823
- chore(deps): update androidx.compose:compose-bom to v2025.05.00 by @renovate in #1827
- chore(deps): update androidx.datastore:datastore to v1.1.6 by @renovate in #1826
- chore(deps): update androidx.navigation:navigation-compose to v2.9.0 by @renovate in #1828
- chore(deps): update lifecycle to v2.9.0 by @renovate in #1829
- chore(deps): update protobuf.kotlin to v4.31.0 by @renovate in #1847
- chore(deps): update coil to v3.2.0 by @renovate in #1840
- chore(deps): update org.jetbrains.kotlinx:kotlinx-collections-immutable to v0.4.0 by @renovate in #1844
- chore(deps): update kotlin to v2.1.21 by @renovate in #1841
- chore(deps): update com.google.devtools.ksp to v2.1.21-2.0.1 by @renovate in #1842
- chore(deps): update app/src/main/proto digest to 4eb0aeb by @renovate in #1839
- chore(deps): update actions/stale action to v9.1.0 by @renovate in #1850
- chore(deps): update app/src/main/proto digest to 475694e by @renovate in #1865
- chore(deps): update app/src/main/proto digest to d8b709a by @renovate in #1868
- chore(deps): update androidx.compose:compose-bom to v2025.05.01 by @renovate in #1881
- chore(deps): update androidx.fragment:fragment-compose to v1.8.7 by @renovate in #1882
- chore(deps): update com.google.firebase:firebase-bom to v33.14.0 by @renovate in #1885
- chore(deps): update androidx.fragment:fragment-ktx to v1.8.7 by @renovate in #1883
- chore(deps): update datastore to v1.1.7 by @renovate in #1884
- chore(deps): update app/src/main/proto digest to 0b32ce2 by @renovate in #1887
- chore(deps): update retrofit to v2.12.0 by @renovate in #1906
- chore(deps): update retrofit to v3 (major) by @renovate in #1907
- chore(deps): update gradle to v8.14.1 by @renovate in #1910
- feat: Update osmdroid-android to 6.1.20 and adjust map view by @jamesarich in #1922
- chore: Update zxing-core to version 3.5.3 by @jamesarich in #1923
- chore(deps): update app/src/main/proto digest to 9148453 by @renovate in #1935
- chore(deps): update app/src/main/proto digest to 9148453 by @renovate in #1943
- chore(deps): update app/src/main/proto digest to 0b815a6 by @renovate in #1949
- chore(deps): update app/src/main/proto digest to 022ea79 by @renovate in #1953
- chore(deps): update app/src/main/proto digest to 24c7a3d by @renovate in #1960
- chore(deps): update app/src/main/proto digest to 24c7a3d by @renovate in #1970
- chore(deps): update protobuf.kotlin to v4.31.1 by @renovate in #1973
- chore(deps): update com.android.tools.build:gradle to v8.10.1 by @renovate in #1971
- chore(deps): update androidx.compose:compose-bom to v2025.06.00 by @renovate in #2027
- chore(deps): update appcompat to v1.7.1 by @renovate in #2025
- chore(deps): update androidx.fragment:fragment-ktx to v1.8.8 by @renovate in #2024
- chore(deps): update androidx.fragment:fragment-compose to v1.8.8 by @renovate in #2023
- chore(deps): update lifecycle to v2.9.1 by @renovate in #2026
- chore(deps): update com.google.firebase:firebase-bom to v33.15.0 by @renovate in #2045
- chore(deps): update com.google.firebase:firebase-crashlytics-gradle to v3.0.4 by @renovate in #2041
- chore(deps): update app/src/main/proto digest to cec9223 by @renovate in #2036
- chore(deps): update design digest to 90014f4 by @renovate in #2037
- chore(deps): update mesh_service_example/src/main/proto digest to cec9223 by @renovate in #2043
- chore(deps): update gradle to v8.14.2 by @renovate in #2044
- chore(deps): update app/src/main/proto digest to db60f07 by @renovate in #2048
- chore(deps): update mesh_service_example/src/main/proto digest to db60f07 by @renovate in #2049
- chore(deps): update com.google.devtools.ksp to v2.1.21-2.0.2 by @renovate in #2066
- chore(deps): update app/src/main/proto digest to b448d4a by @renovate in #2068
- chore(deps): update mesh_service_example/src/main/proto digest to b448d4a by @renovate in #2069
New Contributors
- @Kealper made their first contribution in #1583
- @jsoberg made their first contribution in #1578
- @AndrewReitz made their first contribution in #1687
- @todd2982 made their first contribution in #1700
- @niccellular made their first contribution in #1703
- @github-actions made their first contribution in #1800
- @slush0 made their first contribution in #1861
- @emp3r0r7 made their first contribution in #1936
- @lkosson made their first contribution in #2040
Full Changelog: 2.5.16...2.6.15