blob: 29a14a24819b33b5256d6069f0aebdab4d40b15a [file] [log] [blame] [view]
avm99963ea37fdf2021-02-03 01:27:13 +01001# Release cycle
2When the code in the `master` branch is considered to be stable, a release can
3be made. This is the procedure:
4
51. Tag the last commit with a version number (in the format `vx`, where x is the
6extension's [version number](https://developer.chrome.com/extensions/manifest/version)
7for that release) by running `bash tagRelease.bash --version vx`. Note that the
8tag must be pushed to Gerrit after being created.
92. [Build the extension](build.md) for both the stable and beta channels. This
10will output a ZIP file for each release channel and each supported browser.
11
Adrià Vilanova Martínez613aab52021-06-02 12:06:56 +020012Afterwards, the release should be published in GitHub along with a changelog,
13a notice should be published in the private extension Google Group, and the
14release/build files must be submitted to the Chrome Web Store and
15addons.mozilla.org.
16
17## Create release at GitHub
181. Go to https://github.com/avm99963/infinitegforums/releases.
192. Click the newly created tag and click **Edit tag**.
203. Fill in the description with the changelog. You can use this as a template:
21``` md
22## Changes
23
24**Complete git changelog:**
25https://gerrit.avm99963.com/plugins/gitiles/infinitegforums/+log/refs/tags/{previous_version}..refs/tags/{new_version}?pretty=full
26
27### Summary of changes:
28
29- abcdef0 Commit example 1
30
31 This is a description of the commit, which explains more about what it does.
32
33 Fixes: #42
34
35- 41d1aff Convert dark mode to green mode
36- 52dbca8 Introduce lollipops
37
38 **Note:** This feature is not yet ready for launch and not available yet
39 inside the options section.
40```
414. Upload the Chromium stable and Gecko stable release files (alternatively
42upload the Chromium beta and Gecko stable packages and mark the release as a
43pre-release if there is no intention of promoting this release to stable in the
44future).
455. Mark the option **Create a discussion for this release** and select category
46**Releases**.
476. Click **Publish release**.
487. Click **Join release discussion**.
498. Add something like this to the beginning of the discussion:
50``` md
51# Version 1.9.3
52
53## Status
54
55- **Beta channel:** pending review. It will probably take some hours to be reviewed and automatically
56published.
57- **Stable channel:** it will be available by the end of the week.
58```
avm99963ea37fdf2021-02-03 01:27:13 +010059
60## Submitting to the Chrome Web Store
611. [Upload both release files](https://developer.chrome.com/webstore/publish#upload-your-item)
62to the Chrome Web Store, one for each release channel.
632. [Submit both releases](https://developer.chrome.com/webstore/publish#submit-your-item-for-publishing)
64to be reviewed by the Chrome Web Store team, but in the case of the stable
65channel uncheck the "Publish automatically after it has passed review" option.
avm99963ea37fdf2021-02-03 01:27:13 +010066
67## Submitting to addons.mozilla.org
68The procedure is similar to the one with the Chrome Web Store, except for the
69fact that the stable version is directly uploaded to the store.
70
Adrià Vilanova Martínez613aab52021-06-02 12:06:56 +020071You can upload the new version using the following link:
72https://addons.mozilla.org/en-US/developers/addon/tw-power-tools/versions/submit/.
73
74## Promoting the beta release to stable
75After the beta release is reviewed and approved by Google, the following should
76be done:
77
781. Test again the extension by using the beta channel. Check if the options have
79been transfered correctly from version to version, and wait some days (for
80instance between 3 and 5 days) to see if other people report issues with the
81updated version.
822. If everything goes well, publish the update in the stable channel. The
83updated version should have already been reviewed by the Chrome Web Store team
84at this time.
85
86If during this process the release wasn't approved by Google or an issue was
87found during beta testing, a new release which fixes this should be created and
88the previous stable update should be canceled and superseded by the new release.