Source code:
https://gitpull.it/source/libre-busto-ci-cd/browse/master/bin/publish-latest-branch-build.sh
(ex P23)
This step will copy the built .apk to an indexed HTTP directory exposed by Apache, signing them:
| Passed |
Source code:
https://gitpull.it/source/libre-busto-ci-cd/browse/master/bin/publish-latest-branch-build.sh
(ex P23)
This step will copy the built .apk to an indexed HTTP directory exposed by Apache, signing them:
| 6087 | 12789516 res/z-.9.png (OK) |
|---|---|
| 6088 | 12789780 res/z9.9.png (OK) |
| 6089 | 12790240 res/zE.png (OK) |
| 6090 | 12790604 res/zG.xml (OK - compressed) |
| 6091 | 12790924 res/zR.png (OK) |
| 6092 | 12793725 res/zR.xml (OK - compressed) |
| 6093 | 12794216 res/zV.9.png (OK) |
| 6094 | 12796719 res/zc.xml (OK - compressed) |
| 6095 | 12797168 res/ze.png (OK) |
| 6096 | 12805523 res/zp.xml (OK - compressed) |
| 6097 | 12805781 res/zq.xml (OK - compressed) |
| 6098 | 12806092 res/zr.png (OK) |
| 6099 | 12808911 res/zs.xml (OK - compressed) |
| 6100 | 12809183 res/zu.xml (OK - compressed) |
| 6101 | 12810213 res/zv.xml (OK - compressed) |
| 6102 | 12811489 res/zz.xml (OK - compressed) |
| 6103 | 12811680 resources.arsc (OK) |
| 6104 | Verification succesful |
| 6105 | [INFO][2025-05-15 11:49:15] APK ALIGNED D191-x86_64-aligned.apk: apksigner... creating D191-x86_64-aligned-signed.apk |
| 6106 | [INFO][2025-05-15 11:49:17] APK ALIGNED SIGNED D191-x86_64-aligned-signed.apk: calculating sha256sum... |
| 6107 | DEBUG TELEGRAM CONTENT |
| 6108 | ⚙ Dear Android hackers, please review this promising patch: |
| 6109 | https://gitpull\.it/D191 |
| 6110 | |
| 6111 | Here the related fresh test builds: |
| 6112 | |
| 6113 | [Download D191\-arm64\-v8a\-aligned\-signed\.apk](https://lab.reyboz.it/builds/libre-busto/D191-arm64-v8a-aligned-signed.apk) |
| 6114 | |
| 6115 | APK sha256 `69f97ff0971ded0f58d0382416a019dcc011902f4ab67bddf4be5010d730adc3` |
| 6116 | |
| 6117 | [Download D191\-armeabi\-v7a\-aligned\-signed\.apk](https://lab.reyboz.it/builds/libre-busto/D191-armeabi-v7a-aligned-signed.apk) |
| 6118 | |
| 6119 | APK sha256 `99411feee0729fa0f79af203221577790abd449a927720c8d591f9d591e2d4cb` |
| 6120 | |
| 6121 | [Download D191\-universal\-aligned\-signed\.apk](https://lab.reyboz.it/builds/libre-busto/D191-universal-aligned-signed.apk) |
| 6122 | |
| 6123 | APK sha256 `9ae6c07d2895306a87b686dbb78df187622285f18ff278acf8dc9de956daa2a2` |
| 6124 | |
| 6125 | [Download D191\-x86\-aligned\-signed\.apk](https://lab.reyboz.it/builds/libre-busto/D191-x86-aligned-signed.apk) |
| 6126 | |
| 6127 | APK sha256 `92d9b57d4fa07acda08c65a53ca0394c83ab5cba999ddcec915ff1d49f0e5a52` |
| 6128 | |
| 6129 | [Download D191\-x86\_64\-aligned\-signed\.apk](https://lab.reyboz.it/builds/libre-busto/D191-x86_64-aligned-signed.apk) |
| 6130 | |
| 6131 | APK sha256 `a7dd449513991c4b36daa2f0a2f522904edc053ea86da567cc0593c7b96094e9` |
| 6132 | |
| 6133 | Adding bipbop Comment to D191 |
| 6134 | [INFO][2025-05-15 11:49:18] Cleaning old artifacts |
| 6135 | [INFO][2025-05-15 11:49:18] Done |
| 6136 |
| Passed |
This step will build an .apk using Gradle using this fantastic Docker image:
https://gitlab.com/fabmazz/android-fdroid-build-container/-/tree/ubuntu
Source code of this build step:
https://gitpull.it/source/libre-busto-ci-cd/browse/master/bin/fdroid-docker-builder.sh
TODO: Use the official image by Fabio Mazza, when the "DESIRED_UID" / "DESIRED_GID" features will be merged.
| 1 | Note: Some input files use or override a deprecated API. |
|---|---|
| 2 | Note: Recompile with -Xlint:deprecation for details. |
| 3 | /var/drydock/workingcopy-79/repo/libre-busto/app/src/gitpull/AndroidManifest.xml:4: Error: Mock locations should only be requested in a test or debug-specific manifest file (typically src/debug/AndroidManifest.xml) [MockLocation] |
| 4 | <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> |
| 5 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 6 | |
| 7 | Explanation for issues of type "MockLocation": |
| 8 | Using a mock location provider (by requiring the permission |
| 9 | android.permission.ACCESS_MOCK_LOCATION) should only be done in debug |
| 10 | builds (or from tests). In Gradle projects, that means you should only |
| 11 | request this permission in a test or debug source set specific manifest |
| 12 | file. |
| 13 | |
| 14 | To fix this, create a new manifest file in the debug folder and move the |
| 15 | <uses-permission> element there. A typical path to a debug manifest |
| 16 | override file in a Gradle project is src/debug/AndroidManifest.xml. |
| 17 | |
| 18 | /var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:132: Error: Expected non-nullable value [NullSafeMutableLiveData from androidx.lifecycle] |
| 19 | palinaLiveData.postValue(palina) |
| 20 | ~~~~~~ |
| 21 | |
| 22 | Explanation for issues of type "NullSafeMutableLiveData": |
| 23 | This check ensures that LiveData values are not null when explicitly |
| 24 | declared as non-nullable. |
| 25 | |
| 26 | Kotlin interoperability does not support enforcing explicit |
| 27 | null-safety when using generic Java type parameters. Since |
| 28 | LiveData is a Java class its value can always be null even |
| 29 | when its type is explicitly declared as non-nullable. This can lead |
| 30 | to runtime exceptions from reading a null LiveData value that is |
| 31 | assumed to be non-nullable. |
| 32 | |
| 33 | Vendor: Android Open Source Project |
| 34 | Identifier: androidx.lifecycle |
| 35 | Feedback: https://issuetracker.google.com/issues/new?component=413132 |
| 36 | |
| 37 | 2 errors, 0 warnings |
| 38 | |
| 39 |
| 63 | > Task :app:compileGitpullKotlin |
|---|---|
| 64 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/ActivityAbout.kt:100:13 'fun onBackPressed(): Unit' is deprecated. Deprecated in Java. |
| 65 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:147:21 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 66 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:152:30 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 67 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:324:29 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 68 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:383:29 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 69 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:473:21 Condition is always 'true'. |
| 70 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:538:33 Condition is always 'true'. |
| 71 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:540:20 Condition is always 'true'. |
| 72 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:603:21 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 73 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:652:66 'fun execute(vararg p0: Stop!): AsyncTask<Stop!, Void!, Boolean!>!' is deprecated. Deprecated in Java. |
| 74 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:693:13 Condition is always 'false'. |
| 75 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/IntroFragment.kt:172:43 'fun setColorFilter(p0: Int, p1: PorterDuff.Mode): Unit' is deprecated. Deprecated in Java. |
| 76 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/IntroFragment.kt:213:24 'fun setColorFilter(p0: Int, p1: PorterDuff.Mode): Unit' is deprecated. Deprecated in Java. |
| 77 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:176:16 Condition is always 'false'. |
| 78 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt:1011:25 'fun requestSingleUpdate(p0: String, p1: LocationListener, p2: Looper?): Unit' is deprecated. Deprecated in Java. |
| 79 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:27 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 80 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:44 'static field OUT_OF_SERVICE: Int' is deprecated. Deprecated in Java. |
| 81 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:72 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 82 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:89 'static field TEMPORARILY_UNAVAILABLE: Int' is deprecated. Deprecated in Java. |
| 83 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:188:34 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 84 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:188:51 'static field AVAILABLE: Int' is deprecated. Deprecated in Java. |
| 85 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:216:48 'class Criteria : Any, Parcelable' is deprecated. Deprecated in Java. |
| 86 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/util/ImportExport.kt:53:40 Unchecked cast of 'kotlin.Any!' to 'kotlin.collections.Map<kotlin.String?, kotlin.Any>?'. |
| 87 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/util/ImportExport.kt:83:56 Unchecked cast of 'kotlin.collections.Set<*>' to 'kotlin.collections.Set<kotlin.String?>'. |
| 88 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:124:17 Condition is always 'false'. |
| 89 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:143:13 Condition is always 'true'. |
| 90 | w: file:///var/drydock/workingcopy-79/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:163:17 Expression under 'when' is never equal to null. |
| 91 | |
| 92 | > Task :app:compileGitpullJavaWithJavac |
| 93 | |
| 94 | > Task :app:generateGitpullLintVitalReportModel |
| 95 | > Task :app:dexBuilderGitpull |
| 96 | > Task :app:processGitpullJavaRes |
| 97 | > Task :app:mergeGitpullGlobalSynthetics |
| 98 | > Task :app:mergeGitpullJavaResource |
| 99 | > Task :app:mergeDexGitpull |
| 100 | > Task :app:compileGitpullArtProfile |
| 101 | > Task :app:packageGitpull |
| 102 | > Task :app:createGitpullApkListingFileRedirect |
| 103 | > Task :app:lintVitalAnalyzeGitpull |
| 104 | > Task :app:lintVitalReportGitpull |
| 105 | |
| 106 | > Task :app:lintVitalGitpull |
| 107 | |
| 108 | > Task :app:assembleGitpull |
| 109 | |
| 110 | BUILD SUCCESSFUL in 1m |
| 111 | 55 actionable tasks: 54 executed, 1 up-to-date |
| 112 |
| Passed |
| 1 | Found 8.7 via distributionUrl |
|---|---|
| 2 | Running /home/phabricator-android-builder/versions/8.7/bin/gradle clean |
| 3 | > Task :app:clean |
| 4 | |
| 5 | BUILD SUCCESSFUL in 3s |
| 6 | 1 actionable task: 1 executed |
| 7 |
| Passed |
| Passed |