Meshtastic-Android
Meshtastic-Android copied to clipboard
[Bug]: Build of 2.6.4 F-Droid flavor fails thanks to Crashlytics
Contact Details
No response
What happened?
The build failed, at :app:uploadCrashlyticsMappingFileFdroidRelease – something that should not even exist for a FOSS flavor. Hence F-Droid will be unable to build –and we at IzzyOnDroid cannot confirm your APK as reproducible.
App Version
2.6.4
Phone
n/a
Device
n/a
Firmware
n/a
Relevant log output
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:uploadCrashlyticsMappingFileFdroidRelease'.
> java.io.IOException: Unknown error while sending file, check network [/build/repo/app/build/crashlytics/fdroidRelease/.crashlytics-mappings-tmp/6a9e954530
Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Fun :)
Update: adding -x :app:uploadCrashlyticsMappingFileFdroidRelease to the gradlew call successfully skipped that task, but then the APK was not RB. Bunch of differences in resources.arsc, like
ENTRY [id=0x7f1100ae, key='default_web_client_id']
- VALUE: 'XXXXXXXXXXXXhhgbj.apps.googleusercontent.com'
+ VALUE: '111-xxx.apps.googleusercontent.com'
ENTRY [id=0x7f1100b0, key='delete']
VALUE: 'Delete'
ENTRY [id=0x7f1100b1, key='delete_for_everyone']
@@ -9950,7 +9950,7 @@
ENTRY [id=0x7f11010a, key='favorite_remove']
VALUE: "Remove '%s' as a favorite node?"
ENTRY [id=0x7f110110, key='firebase_database_url']
- VALUE: 'https://XXXXXX.firebaseio.com'
+ VALUE: 'https://xxx.firebaseio.com'
ENTRY [id=0x7f110111, key='firmware']
VALUE: 'Firmware'
ENTRY [id=0x7f110112, key='firmware_old']
@@ -10006,7 +10006,7 @@
ENTRY [id=0x7f11012b, key='gateway']
VALUE: 'Gateway'
ENTRY [id=0x7f11012c, key='gcm_defaultSenderId']
- VALUE: 'XXXXXX'
+ VALUE: '1111'
ENTRY [id=0x7f11012d, key='generate_input_event_on_ccw']
plus the Google API keys etc, which I rather do not quote here (I've also used XXXXX to sanitize other possible identifiers in above diff). Guess you added some Google stuff to the app and forgot to disable it for the FOSS build?
thanks checking it out
Our build was using: ./gradlew clean assembleFdroidRelease --no-build-cache --no-configuration-cache --no-daemon -x :app:uploadCrashlyticsMappingFileFdroidRelease, just for completeness. Forgot that detail, apologies.
Changed some build files - fixed in #1948
That was fast, thanks! So it will be fixed for the next release then (APK for the current one was already distributed, so we cannot RB that one anymore). Same for F-Droid, as the APK at the current release would not match a build from the newer commit. Maybe making a "maintenance release" with the fixed APK?Make it pre-release and give us a ping if you want a test run to be sure.
i'll cut a 2.6.5-alpha shortly 🤠
Btw, while I'm here:
! repo/com.geeksville.mesh_30604.apk declares flag(s): usesCleartextTraffic
Could you please clarify what that is used/needed for? Seems to be missing in our "green list" (to make it transparent). Guess some devices (cannot) have any proper certs?
@IzzySoft https://github.com/meshtastic/Meshtastic-Android/releases/tag/2.6.5 build here to check out - lmk if this passes your scans
Btw, while I'm here:
! repo/com.geeksville.mesh_30604.apk declares flag(s): usesCleartextTrafficCould you please clarify what that is used/needed for? Seems to be missing in our "green list" (to make it transparent). Guess some devices (cannot) have any proper certs?
Isn't this the same issue we just tried to resolve? https://github.com/meshtastic/Meshtastic-Android/issues/829#issuecomment-2908133496
Isn't this the same issue we just tried to resolve?
Ah, right, yes. I had that issue "ticked off" already as the path seemed clear, expecting it gone with the next release 🙈 Too many parallel tasks I guess…
build here to check out - lmk if this passes your scans
Scanners say all fine. Build still running… done, RB, thanks! I hope you'll simply convert it to a proper release, removing the "pre" check-box? Then I'd commit the new logs on our end.
convert it to a proper release, removing the "pre" check-box?
yep promoting now, thanks
Thanks! Changes persisted here then. Also pulled it to the staging area for the repo itself already. Will go live with the next sync then. Thanks a lot for the swift fix!
@IzzySoft it seems like the builds on fdroid are stuck at 2.6.3. We recently promoted https://github.com/meshtastic/Meshtastic-Android/releases/tag/2.6.15 to production on google play, it'd be great to get fdroid up to speed!
Can you provide any assistance, here?
On a quick look, checkupdate job can't use https://github.com/meshtastic/Meshtastic-Android/blob/2.6.4/app/build.gradle#L35-L36 it needs static versions
2.6.15 is active at IzzyOnDroid, and confirmed as reproducible build – so nothing to do on our end.
Thanks to @licaon-kter for having jumped in directly for the F-Droid part! You could look here to find the versionCode maybe?
yes those values are still static.. just stored in a separate buildSrc module buildSrc/src/main/kotlin/Configs.kt
thanks @IzzySoft for the assist
Thanks for guidance :)
update, https://gitlab.com/fdroid/fdroiddata/-/commit/3fa53ddee02d4e17019d7021619f53dfd7a68bb1 thanke
@licaon-kter when can we expect the regular updates to resume?
re-opening/re-purposing as the Fdroid site listing still hasn't updated at the time of this comment.
https://gitlab.com/fdroid/wiki/-/wikis/FAQ#how-long-does-it-take-for-my-app-to-show-up-on-website-and-client
A cycle is ending today-ish, fyi
https://monitor.f-droid.org/builds/log/com.geeksville.mesh/30620#site-footer @licaon-kter it doesn't look like the build passed - any idea why?
Typo on my part, sorry