release-checklist.md (6202B)
layout: page title: Release checklist permalink: /contributing/release-checklist
Release Checklist
These are instructions for preparing a release branch for Firefox Android and starting the next Nightly development cycle.
[Release Engineering / Release Management] Beta release branch creation & updates
This part is covered by the Release Engineering and Release Management teams. The dev team should not perform these steps.
- Description:
- Description:
- Migrating tip of mozilla-central to mozilla-beta
- Updating version.txt on mozilla-central for the new Nightly version
- Updating version.txt on mozilla-beta to change the version string from [beta_version].0a1 to [beta_version].0b1
- Description:
- Description:
- Set VERSION to [major-version].0
- Set CHANNEL to ApplicationServicesChannel.RELEASE
`diff
--- a/mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
+++ b/mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
-val VERSION = "121.20231118050255"
-val CHANNEL = ApplicationServicesChannel.NIGHTLY
+val VERSION = "121.0"
+val CHANNEL = ApplicationServicesChannel.RELEASE
`
- Create a commit named Switch to Application Services Release. (Note: application-services releases directly after the nightly cycle, there's no beta cycle).
- Description:
[Dev team] Starting the next Nightly development cycle
Please handle this part once Release Management gives you the go.
Now that we made the Beta cut, we can remove all the unused strings marked moz:removedIn <= [EXPIRED_STRING_VERSION].
If CURRENT_VERSION is the nightly version number before the Beta cut, then EXPIRED_STRING_VERSION = CURRENT_VERSION - 2.
It corresponds to the RELEASE_VERSION number before the release of the new version.
We will also want to bump the Android Component's changelog.md with the new Nightly development section.
- Description:
- Description:
- Description:
- Update the changelog.md
- Search and remove all strings marked moz:removedIn="[EXPIRED_STRING_VERSION]" across Fenix, Focus and Android Components, limit changes only to values/strings.xml (the localized strings.xml should not be changed).
- Create a commit using the BUG_ID you provided, and describing all the changes that were applied.
- Add SERP telemetry json to the search-telemetry-v2.json, copying the content from the desktop telemetry dump located at desktop-search-telemetry-v2.json
Please read carefully the output of the script and follow the instructions it provides. More specifically, you will need to:
- Remove the remaining uses of the removed strings and amend the commit, if the output shows remaining uses of removed strings. (⚠️ This output is purely indicative and might show false positives, see more details bellow)
- Review the changes and make sure they are correct (Some header comments might become useless after the strings removal)
- Submit the patch and push to
try - Please also check if the strings that were removed are used in Reference Browser, and open a PR to remove them if it is the case.
More details on removing remaining uses of the removed strings:
beta-cut.py will try to show you potential remaining usages of the removed strings, but keep in mind that it is purely indicative and might show false positives. Please check if they are legitimate before removing the corresponding uses.
For example, if the string xyz was removed from Fenix, but another xyz string exists in Android Components, the output will suggest to remove the uses of xyz in Android Components although they shouldn't be removed.
Ask for Help
- Issues related to releases
#releasedutyon Element - Topics about CI (and the way we use Taskcluster)
#Firefox CIon Element - Breakage in PRs due to Gradle issues, usage of
beta-cut.pyor GV upgrade problems#mobile-android-teamon Slack