Could it be that latest-version.yaml is out of sync?
XML ELEM START [lineno=2, name='manifest', #attributes=7]
- ATTR: http://schemas.android.com/apk/res/android:versionCode=420509001
+ ATTR: http://schemas.android.com/apk/res/android:versionCode=420509000
ATTR: http://schemas.android.com/apk/res/android:versionName='2.5.9'
off-by-one. Same then in DEX:
|: const-string v0, "User-Agent"
-|: const-string v8, "Owntracks-Android/oss/420509001"
+|: const-string v8, "Owntracks-Android/oss/420509000"
|: invoke-virtual {v2, v0, v8}, Lokhttp3/Request$Builder;.header:(Ljava/lang/String;Ljava/lang/String;)V
plus a couple more differences. Now, even if we adjust that in latest-version.yaml by increasing it by one, that seems to be ignored: I see the very same sha256sums for our builds as before. In your GHA I see you now use fastlane to evaluate versionCode – but I see it nowhere taken from nor written to the version file.
So is the VERSION_CODE environment variable still honored? Where can we take it from? The values in latest-version.yaml seem way of:
versionName: 2.5.7
versionCode: 420507014
I see there's logic in your build.gradle to calculate versionCode – but I don't see how that could end up in 420509001, unless "manually" overridden by the environment variable – which in our build, didn't seem to have any effect (aaaargh! because the one we ended up with from latest-version.yaml was lower). Gnaa… Sorry, but this way we cannot reach RB – we need to have the same settings. If you override things manually, we'd need to do the same, which cannot be automated.
So can we agree upon release builds NOT having any "manual overrides"? Especially with "flaky builds" like here (where 10 builds in a row produce 2 or more different APKs), such things are hard to track down. This one took me more than an hour now – and it was not the only failed build today 😢
OK, finally succeeded by explicitly exporting the VERSION_CODE you used. That means, the next release again needs adjustments (at least if you again manually override)…
Could it be that
latest-version.yamlis out of sync?off-by-one. Same then in DEX:
plus a couple more differences. Now, even if we adjust that in
latest-version.yamlby increasing it by one, that seems to be ignored: I see the very samesha256sums for our builds as before. In your GHA I see you now usefastlaneto evaluateversionCode– but I see it nowhere taken from nor written to the version file.So is the
VERSION_CODEenvironment variable still honored? Where can we take it from? The values inlatest-version.yamlseem way of:I see there's logic in your
build.gradleto calculateversionCode– but I don't see how that could end up in420509001, unless "manually" overridden by the environment variable – which in our build, didn't seem to have any effect (aaaargh! because the one we ended up with fromlatest-version.yamlwas lower). Gnaa… Sorry, but this way we cannot reach RB – we need to have the same settings. If you override things manually, we'd need to do the same, which cannot be automated.So can we agree upon release builds NOT having any "manual overrides"? Especially with "flaky builds" like here (where 10 builds in a row produce 2 or more different APKs), such things are hard to track down. This one took me more than an hour now – and it was not the only failed build today 😢
OK, finally succeeded by explicitly exporting the
VERSION_CODEyou used. That means, the next release again needs adjustments (at least if you again manually override)…