Repository navigation
fix(release): version code 8, and release notes from the changelog - #6
Merged
Merged
Conversation
The published 1.1.0 carried versionCode 2, and a device that already had 1.0.1-release at code 7 refused it: installing it was a downgrade, and Android reports that as a conflict with the existing package. The version code has to be higher than any build already installed on a user's device, not simply one more than the previous release in the repository. The repository said 1, the device said 7, so this is 8. The certificate was never the problem: the build on the device and this one are signed with the same release key, and the install over it succeeded without an uninstall, preserving the wishlist. The release notes are now generated from CHANGELOG.md rather than written by hand, so the two cannot drift apart. The extraction uses awk's index() rather than a regular expression: inside an awk string, "\[" is an unknown escape and is silently reduced to "[", which turns the pattern into a character class and matches nothing at all.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The published 1.1.0 carried
versionCode 2, and a device that already had 1.0.1-release at code 7refused it — installing it was a downgrade, which Android reports as a conflict with the existing
package.
The version code has to be higher than any build already installed on a user's device, not
simply one more than the previous release in the repository. The repository said 1, the device said
7, so this is 8.
The certificate was never the problem. The build already on the device and this one are signed
with the same release key (CN=Ivan Bizimoski, SHA-256
129281c5…), and the install over itsucceeded without an uninstall — so the wishlist and settings were preserved.
Release notes now come from the changelog
The notes are generated from the
CHANGELOG.mdsection for the version being released, so the twocannot drift apart. Hand-copying a changelog into a release body is how the two start disagreeing.
The extraction uses awk's
index()rather than a regular expression: inside an awk string,\[isan unknown escape and is silently reduced to
[, which turns the pattern into a character class andmatches nothing at all. That was found by running the extraction locally, where it returned an
empty section rather than failing loudly.