avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 1 | # Release cycle |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 2 | |
| 3 | *** aside |
| 4 | See more information at |
| 5 | [shortn/twpt-internal-release-cycle](http://shortn/twpt-internal-release-cycle). |
| 6 | *** |
| 7 | |
avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 8 | When the code in the `master` branch is considered to be stable, a release can |
| 9 | be made. This is the procedure: |
| 10 | |
| 11 | 1. Tag the last commit with a version number (in the format `vx`, where x is the |
| 12 | extension's [version number](https://developer.chrome.com/extensions/manifest/version) |
| 13 | for that release) by running `bash tagRelease.bash --version vx`. Note that the |
| 14 | tag must be pushed to Gerrit after being created. |
Adrià Vilanova Martínez | b670b19 | 2021-09-07 13:10:26 +0200 | [diff] [blame] | 15 | 1. Sync the features with the TWPT-server via the `syncfeatures` command. (e.g. |
| 16 | `cat src/common/optionsPrototype.json5 | json5 | syncfeatures --grpcEndpoint __ENTER_ENDPOINT__ --jwt __ENTER_JWT__`). |
| 17 | 1. [Build the extension](build.md) for both the stable and beta channels. This |
avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 18 | will output a ZIP file for each release channel and each supported browser. |
| 19 | |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 20 | Afterwards, the release should be published in GitHub along with a changelog, |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 21 | a notice should be published in the |
| 22 | [private extension Google Group](https://groups.google.com/g/twpowertools-discuss/), |
| 23 | and the release/build files must be submitted to the Chrome Web Store and |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 24 | addons.mozilla.org. |
| 25 | |
| 26 | ## Create release at GitHub |
| 27 | 1. Go to https://github.com/avm99963/infinitegforums/releases. |
| 28 | 2. Click the newly created tag and click **Edit tag**. |
| 29 | 3. Fill in the description with the changelog. You can use this as a template: |
| 30 | ``` md |
| 31 | ## Changes |
| 32 | |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 33 | - **More Dark theme improvements** |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 34 | |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 35 | As in the previous release, [please keep the reports coming][new-dark-theme-issue] |
| 36 | if you find something which is not styled correctly! :) |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 37 | |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 38 | - **Convert dark mode to green mode** |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 39 | |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 40 | - **Introduce lollipops** |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 41 | |
Adrià Vilanova Martínez | a740bfc | 2024-02-10 15:13:34 +0100 | [diff] [blame] | 42 | *Note: This feature is not yet ready for launch and is only available as an |
| 43 | experiment in the [Canary channel][canary].* |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 44 | |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 45 | - **Updated French translation**, thanks to @medelinor-1! |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 46 | |
Adrià Vilanova Martínez | e67e87b | 2024-02-10 13:38:10 +0100 | [diff] [blame] | 47 | And many other minor/under-the-hood improvements that you can check out in the |
| 48 | complete changelog: |
| 49 | https://gerrit.avm99963.com/plugins/gitiles/infinitegforums/+log/refs/tags/{previous_version}..refs/tags/{new_version} |
| 50 | |
| 51 | [new-dark-theme-issue]: https://bugs.avm99963.com/p/twpowertools/issues/entry?template=Feature+Request&components=Features%3EDarkTheme&summary=Dark%20theme%20issue&description=Please%20describe%20the%20dark%20theme%20issue: |
| 52 | [canary]: https://gerrit.avm99963.com/plugins/gitiles/infinitegforums/+/HEAD/docs/contributing.md#canary-channel |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 53 | ``` |
| 54 | 4. Upload the Chromium stable and Gecko stable release files (alternatively |
| 55 | upload the Chromium beta and Gecko stable packages and mark the release as a |
| 56 | pre-release if there is no intention of promoting this release to stable in the |
| 57 | future). |
avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 58 | |
| 59 | ## Submitting to the Chrome Web Store |
| 60 | 1. [Upload both release files](https://developer.chrome.com/webstore/publish#upload-your-item) |
| 61 | to the Chrome Web Store, one for each release channel. |
Adrià Vilanova Martínez | b8e442b | 2021-07-28 15:53:16 +0200 | [diff] [blame] | 62 | |
| 63 | You can use the following links: [[stable]](http://go/twpt-cwsd-stable), |
| 64 | [[beta]](http://go/twpt-cwsd-beta) (internal-only). |
| 65 | |
avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 66 | 2. [Submit both releases](https://developer.chrome.com/webstore/publish#submit-your-item-for-publishing) |
| 67 | to be reviewed by the Chrome Web Store team, but in the case of the stable |
| 68 | channel uncheck the "Publish automatically after it has passed review" option. |
avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 69 | |
| 70 | ## Submitting to addons.mozilla.org |
| 71 | The procedure is similar to the one with the Chrome Web Store, except for the |
| 72 | fact that the stable version is directly uploaded to the store. |
| 73 | |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 74 | You can upload the new version using the following link: |
| 75 | https://addons.mozilla.org/en-US/developers/addon/tw-power-tools/versions/submit/. |
| 76 | |
Adrià Vilanova Martínez | b313e2a | 2021-08-30 18:25:21 +0200 | [diff] [blame] | 77 | In the "notes to reviewer", add the following message: |
| 78 | |
| 79 | ``` |
| 80 | For instructions on how to build the extension: |
| 81 | |
| 82 | - Set up your environment: https://gerrit.avm99963.com/plugins/gitiles/infinitegforums/+/HEAD/docs/developers/set_up.md |
| 83 | - Build the extension: https://gerrit.avm99963.com/plugins/gitiles/infinitegforums/+/HEAD/docs/developers/build.md |
| 84 | |
| 85 | (These files are also included inside the source code ZIP) |
| 86 | ``` |
| 87 | |
Adrià Vilanova Martínez | 613aab5 | 2021-06-02 12:06:56 +0200 | [diff] [blame] | 88 | ## Promoting the beta release to stable |
| 89 | After the beta release is reviewed and approved by Google, the following should |
| 90 | be done: |
| 91 | |
| 92 | 1. Test again the extension by using the beta channel. Check if the options have |
| 93 | been transfered correctly from version to version, and wait some days (for |
| 94 | instance between 3 and 5 days) to see if other people report issues with the |
| 95 | updated version. |
| 96 | 2. If everything goes well, publish the update in the stable channel. The |
| 97 | updated version should have already been reviewed by the Chrome Web Store team |
| 98 | at this time. |
| 99 | |
| 100 | If during this process the release wasn't approved by Google or an issue was |
| 101 | found during beta testing, a new release which fixes this should be created and |
| 102 | the previous stable update should be canceled and superseded by the new release. |