Skip to content
Raphael Mack edited this page Dec 8, 2019 · 13 revisions

For building a new release of Piwigo-Android we want to follow those steps:

Beta release

  • check all issues associated with the next milestone
  • check all issues not associated with any milestone
  • drop summary of changes since last revision into release_notes/en-US/default.txt
  • check for needed updates in the privacy policy (new permissions?, new privacy-related features?)
  • check if the database scheme changed and there is a robust upgrader in place
  • merge latest translations
  • notify translators and ask for updates on crowdin
  • update versionCode and versionName in app/build.gradle (to an odd version code and a '-beta' suffix)
  • check for needed updates in User Guide
  • create new screenshots and put them into /app/src/main/play/listings/en-US/graphics/
  • update translations in crowdin (what we can translate ourselves)
  • create a tag git tag vX.Y.Z-beta git push upstream vX.Y.Z-beta (beta versions will not be included in f-droid)
  • create new release notes from github tag
  • Generate Signed AAB and publish it to GPlay on the beta-track by ./gradlew publishReleaseBundle
  • notify testers and ask them to test
  • wait 7-14 days for feedback, new translations and new bugs

Final release

  • fix newly reported bugs
  • check all issues not associated with any milestone
  • check for needed updates in the privacy policy
  • merge new translations (and remove translations that are too incomplete)
  • close the milestone on github
  • update versionCode and versionName in app/build.gradle (to an even version code and no '-beta' suffix)
  • create new screenshots (if relevant translations done)
  • create a tag git tag vX.Y.Z git push upstream vX.Y.Z (this tag will automatically trigger inclusion in f-droid)
  • create new release notes from github tag
  • publish updates on the GPlay content ./gradlew publishReleaseListing
  • Generate Signed AAB and publish it to GPlay on the beta-track by ./gradlew publishReleaseBundle
  • manually shift it to production in Play Console
  • create a new milestone for a new release after the latest currently planned one
  • update versionCode and versionName in app/build.gradle (to an odd version code and a '-dev' suffix)
  • review the issues linked to the next milestone, put a tentative deadline to the milestone
  • assign issues of the next release to developers and get started with what is left
Clone this wiki locally