GitHub Copilot CLI
c1c01d7765
chore(r8): remove redundant keep rules covered by consumer rules
...
Removes explicit -keep/-dontwarn wildcards whose behavior is already
provided by the library's own bundled consumer-rules.pro, by Room's
generated static references, or by narrower annotation-targeted keeps.
The merged R8 configuration shrinks by 34 lines (1981→1947 googleRelease,
1653→1619 fdroidRelease), giving R8 more tree-shaking freedom.
Removed (covered by library-bundled consumer rules):
- kotlin.Metadata, kotlin.reflect.**, kotlin.coroutines.Continuation,
kotlinx.coroutines.** (kotlin-stdlib + kotlinx-coroutines-core)
- androidx.datastore.**, androidx.paging.**, androidx.lifecycle.**,
androidx.navigation3.**, androidx.sqlite.**
- coil3.**, okio.**, co.touchlab.kermit.**,
com.mikepenz.aboutlibraries.**, com.mikepenz.markdown.**,
com.juul.kable.**, io.ktor.**, io.ktor.client.engine.java.**
(HttpClientEngineFactory ServiceLoader keep retained)
Room (room3) narrowed:
- Dropped org.meshtastic.core.database.{dao,entity,Converters}.** and
**_Impl wildcards. RoomDatabaseConstructor +
MeshtasticDatabaseConstructor/MeshtasticDatabase keeps retained.
Room 3.0 KMP generates static references rather than reflective
lookups, so reachable DAO/entity/_Impl code survives tree-shaking.
Wire protobuf narrowed:
- Dropped com.squareup.wire.**, org.meshtastic.proto.**, meshtastic.**
wildcards and deleted core/proto/consumer-rules.pro (20 per-class keeps).
- Replaced with targeted -keepclassmembers for ADAPTER fields on
Message subclasses and ProtoAdapter member preservation. Verified
no Class.forName lookups into org.meshtastic.proto namespace.
Meshtastic model + DI:
- Dropped org.meshtastic.core.model.** wildcard and deleted
core/model/consumer-rules.pro (DataPacket is @CommonParcelize'd;
no reflective access to core.model).
- Replaced org.meshtastic.**.di.** wildcard with a narrow
@KoinViewModel class annotation keep (the @Module, @ComponentScan,
@Single, @Factory keeps above already cover the rest of Koin).
Compose resources refinement:
- Narrowed org.meshtastic.core.resources.** to Res + Res$* members
only (sufficient for the fdroid startup-crash workaround in #5146 ).
Intentionally retained (documented workarounds / policy):
- -dontoptimize, -dontobfuscate, -printconfiguration
- All Koin annotation keeps + org.koin.**
- kotlinx-serialization @Serializable keeps
- Room RoomDatabaseConstructor + MeshtasticDatabase(-Constructor)
- Ktor HttpClientEngineFactory ServiceLoader keep
- Desktop MainKt + org.meshtastic.desktop.** entry points
- All -dontwarn rules for JVM/Android platform gaps
- app/proguard-rules.pro Compose runtime/ui/animation/foundation/
material3 keeps (defence-in-depth with -dontoptimize; may interact
with the parallel CMP freeze RCA investigation).
Verified:
- ./gradlew :app:assembleFdroidRelease — SUCCESS (after each batch)
- ./gradlew :app:assembleGoogleRelease — SUCCESS
- ./gradlew spotlessApply detekt — SUCCESS
- :desktop:createReleaseDistributable — pre-existing failure on
origin/main (Vico/Skia warnings), unrelated to these changes.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-17 11:59:39 -05:00
James Rich
cdeb1ac532
fix: redact MeshLog proto secrets and centralize Compose keep-rules ( #5166 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-17 16:20:50 +00:00
James Rich
17e69c6d4c
chore: review-cleanup fleet (audit + fix + hardening) ( #5158 )
2026-04-17 00:02:59 +00:00
James Rich
12f7fe30b9
chore(lint): Disable ForbiddenComment detekt rule ( #4344 )
2026-01-27 19:38:14 -06:00
James Rich
edb5569f5b
build: Upgrade build configuration and dependencies ( #4311 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-01-25 17:07:07 +00:00
James Rich
6950c8f01b
Fix: Use dynamic year for copyright headers ( #4116 )
2026-01-02 14:06:05 -06:00
James Rich
b3ebe760dd
feat: Refactor MeshService into smaller, single-responsibility components ( #4108 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-01-02 17:13:38 +00:00
James Rich
ddb19b959f
refactor(settings)!: standardize radio config screens ( #3167 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-09-23 02:59:33 +00:00
James Rich
295e0aa298
feat(build): Convention Plugins ( #3081 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
Co-authored-by: Dane Evans <dane@goneepic.com>
2025-09-15 10:47:03 +00:00
James Rich
c5535b9a1c
chore(ci): remove Crowdin integration from scheduled updates ( #2708 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-08-14 02:47:47 +00:00
James Rich
87e50e03ea
refactor: maps ( #2097 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-08-13 17:51:19 +00:00
James Rich
c05f434ff2
fix(crowdin): correct update_option typo and update workflow ( #2695 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-08-13 11:48:02 +00:00
James Rich
c61d31c3b8
refactor(build): update Spotless config ( #2516 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-07-23 19:45:46 +00:00
James Rich
d369a63faf
refactor(spotless): configure spotless via editorconfig ( #2513 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-07-23 15:38:03 +00:00
Pedro
f1d2dacf4f
rename region ( #2476 )
...
Signed-off-by: DaneEvans <dane@goneepic.com>
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
Co-authored-by: DaneEvans <dane@goneepic.com>
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-07-22 01:52:30 +00:00
James Rich
024dc9ec34
chore(spotless): apply code style improvements and formatting ( #2459 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-07-21 23:31:35 +00:00
James Rich
152b2d27c9
Update Crowdin config ( #2346 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-07-04 20:54:46 +00:00
Joshua Soberg
4500ba0c0a
ui update/cleanup: Message padding updates ( #2289 )
2025-06-28 22:23:33 +00:00
DaneEvans
17e3e1a257
feat ( #2105 ): debug panel ( #2148 )
...
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-06-19 14:04:58 +00:00
James Rich
c757224269
feat: add MeshServiceExample project to repo ( #2038 )
...
Co-authored-by: niccellular <79813408+niccellular@users.noreply.github.com>
2025-06-06 15:43:32 -05:00
James Rich
ad1897c564
Refactor: organize ui screens to separate packages ( #1982 )
2025-05-29 18:18:45 -05:00
James Rich
0057a6f2de
feat: Add request metadata action to NodeDetail ( #1896 )
2025-05-21 15:50:33 +00:00
James Rich
990cd103d7
Refactor: Improve shared contact import dialog ( #1888 )
2025-05-20 21:57:14 -05:00
James Rich
4cba13ea14
feat: material3 ( #1862 )
2025-05-17 11:39:53 -05:00
James Rich
8cde47bdf9
refactor: migrate to Compose navigation ( #1835 )
...
Co-authored-by: andrekir <andrekir@pm.me>
2025-05-15 08:05:30 -05:00
James Rich
9a875dcfd0
fix: correct base path in crowdin.yml ( #1799 )
2025-04-29 12:54:04 -05:00
James Rich
17cd4cdc19
chore(l10n): Add Crowdin localization workflow and configuration ( #1798 )
2025-04-29 12:35:02 -05:00
Joshua Soberg
2f48e8e68a
chore: Unused code cleanup ( #1612 )
...
* Remove unused SoftwareUpdateService code and commented out service reg in manifest
* Remove unused methods that had unnecessary version checks
* Regenerate baseline to remove detekt issues that are no longer present
2025-02-27 16:18:42 -06:00
andrekir
ad9a3a5e49
refactor: move RadioConfig files to separate package
2025-01-11 08:02:54 -03:00
andrekir
13b615a470
chore: update license header
2025-01-02 07:00:51 -03:00
andrekir
165f5a2b49
chore: enable detekt license header template
2024-12-10 12:14:21 -03:00
James Rich
2234f5a713
feat: add emoji reactions to message bubbles ( #1421 )
...
* Add tapback emojis to message bubbles
Added TapBackEmojiItem composable to display tapback emojis.
Included it in MessageItem composable for incoming messages.
Added a FlowRow to show tapback emojis below the message bubble.
* feat: Add EmojiPicker View
* feat: show emojis for local messages
* feat: Add emoji tapbacks to messages
This commit introduces the ability to send and receive emoji tapbacks for messages.
- Adds emoji and replyId fields to DataPacket.
- Adds emoji tapback support to the MeshService
- Modifies UIState to handle emojis in message lists.
* feat: store tapbacks in database
Store tapbacks in the database and display them in the message list.
- Add a new table to the database to store tapbacks.
- Add a new DAO method to insert and retrieve tapbacks.
- Update the message list UI to display tapbacks.
* refactor: relation db and other changes
---------
Co-authored-by: Andre K <andrekir@pm.me>
2024-12-03 08:57:35 -03:00
Tom Fifield
65d832ef99
Change max message length to 200 ( #1429 )
2024-11-25 19:57:10 -03:00
andrekir
f73d909cd0
refactor: consolidate QR code scanning methods
2024-11-21 10:32:37 -03:00
andrekir
e33cf85df6
refactor: migrate DebugPanel to Compose
2024-11-19 17:07:51 -03:00
Andre K
227c65f191
feat: node map position history log ( #1384 )
2024-11-06 11:00:38 -03:00
andrekir
c6cc33e16c
refactor: extract MapView extensions from MapFragment
2024-11-04 17:50:34 -03:00
andrekir
d4137a7dc4
refactor: scale requiredZoomLevel() by 0.8 to improve fit
2024-11-04 12:57:00 -03:00
andrekir
adbe5952fc
feat: position logs
2024-11-02 17:22:54 -03:00
andrekir
3ac0e8c28e
refactor: extract NavGraph from RadioConfig
2024-10-21 06:07:28 -03:00
andrekir
fe56d257f5
chore: add detekt formatting rule set
...
https://detekt.dev/docs/next/rules/formatting/
2024-10-14 07:56:29 -03:00
andrekir
300904d337
chore(detekt): enable UnusedImports rule
2024-08-31 09:00:15 -03:00
AddisonTustin
e4c6000a10
feat: support add=true in QR codes ( #1151 )
2024-07-28 08:50:54 -03:00
andrekir
a65cc7699e
feat: add adaptive two-pane layout to ChannelScreen
2024-07-28 08:23:14 -03:00
andrekir
36e78d1f45
chore(detekt): add @PreviewLightDark to ignore list
2024-07-06 08:57:10 -03:00
James Rich
3dd0f8ceed
feat: add detekt Android CI workflow, migrate to ktlint plugin ( #1122 )
2024-07-02 23:01:51 -03:00
James Rich
c7a3488a78
Adds ktlint gradle plugin and baseline files ( #1120 )
2024-07-01 22:54:27 -03:00
James Rich
38f26b7128
Adds detekt, generated config, and baseline file.
2024-07-01 22:39:07 -03:00