morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
-
4c1be3be
by Morgan at 2024-11-18T22:17:10+00:00
5 changed files:
- .gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Mullvad Browser Stable.md
- .gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Tor Browser Legacy.md
- .gitlab/issue_templates/Release Prep - Tor Browser Stable.md
Changes:
... | ... | @@ -41,13 +41,17 @@ |
41 | 41 | |
42 | 42 | - [ ] Tag `mullvad-browser` commit:
|
43 | 43 | - **example**: `mullvad-browser-128.4.0esr-14.5-1-build1`
|
44 | + - Run:
|
|
45 | + ```bash
|
|
46 | + ./tools/browser/sign-tag.mullvadbrowser alpha ${BUILD_N}
|
|
47 | + ```
|
|
44 | 48 | |
45 | 49 | ### tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build.git
|
46 | 50 | Mullvad Browser Alpha (and Nightly) are on the `main` branch
|
47 | 51 | |
48 | 52 | - [ ] Changelog bookkeeping:
|
49 | - - [ ] Ensure all commits to `mullvad-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
50 | - - [ ] Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
53 | + - Ensure all commits to `mullvad-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
54 | + - Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
51 | 55 | - [ ] Create a release preparation branch from the `main` branch
|
52 | 56 | - [ ] Run release preparation script:
|
53 | 57 | - **NOTE**: You can omit the `--mullvad-browser` argument if this is for a joint Tor and Mullvad Browser release
|
... | ... | @@ -71,24 +75,24 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
71 | 75 | - [ ] `steps/base-browser/git_hash`: updated with `HEAD` commit of project's `base-browser` branch
|
72 | 76 | - [ ] `steps/mullvad-browser/git_hash`: updated with `HEAD` commit of project's `mullvad-browser` branch
|
73 | 77 | - [ ] ***(Optional)*** `projects/browser/config`:
|
74 | - - [ ] NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
78 | + - [ ] ***(Optional)*** NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
75 | 79 | - [ ] `URL` updated
|
76 | 80 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
77 | 81 | - [ ] `sha256sum` updated
|
78 | - - [ ] uBlock-origin: https://addons.mozilla.org/en-US/firefox/addon/ublock-origin
|
|
82 | + - [ ] ***(Optional)*** uBlock-origin: https://addons.mozilla.org/en-US/firefox/addon/ublock-origin
|
|
79 | 83 | - [ ] `URL` updated
|
80 | 84 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
81 | 85 | - [ ] `sha256sum` updated
|
82 | - - [ ] Mullvad Browser extension: https://github.com/mullvad/browser-extension/releases
|
|
86 | + - [ ] ***(Optional)*** Mullvad Browser extension: https://github.com/mullvad/browser-extension/releases
|
|
83 | 87 | - [ ] `URL` updated
|
84 | 88 | - [ ] `sha256sum` updated
|
85 | 89 | - [ ] `ChangeLog-MB.txt`: ensure correctness
|
86 | - - [ ] Browser name correct
|
|
87 | - - [ ] Release date correct
|
|
88 | - - [ ] No Android updates
|
|
89 | - - [ ] All issues added under correct platform
|
|
90 | - - [ ] ESR updates correct
|
|
91 | - - [ ] Component updates correct
|
|
90 | + - Browser name correct
|
|
91 | + - Release date correct
|
|
92 | + - No Android updates
|
|
93 | + - All issues added under correct platform
|
|
94 | + - ESR updates correct
|
|
95 | + - Component updates correct
|
|
92 | 96 | - [ ] Open MR with above changes, using the template for release preparations
|
93 | 97 | - **NOTE**: target the `main` branch
|
94 | 98 | - [ ] Merge
|
... | ... | @@ -99,13 +103,13 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
99 | 103 | - ma1
|
100 | 104 | - morgan
|
101 | 105 | - pierov
|
102 | - - [ ] Run:
|
|
106 | + - Run:
|
|
103 | 107 | ```bash
|
104 | 108 | make mullvadbrowser-signtag-alpha
|
105 | 109 | ```
|
106 | - - [ ] Push tag to `upstream`
|
|
110 | +- [ ] Push tag to `upstream`
|
|
107 | 111 | - [ ] Build the tag:
|
108 | - - [ ] Run:
|
|
112 | + - Run:
|
|
109 | 113 | ```bash
|
110 | 114 | make mullvadbrowser-alpha && make mullvadbrowser-incrementals-alpha
|
111 | 115 | ```
|
... | ... | @@ -113,8 +117,8 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
113 | 117 | - [ ] Local developer machine
|
114 | 118 | - [ ] Submit build request to Mullvad infrastructure:
|
115 | 119 | - **NOTE** this requires a devmole authentication token
|
116 | - - **NOTE** this also requires you be connected to a Swedish Mulvad VPN exit
|
|
117 | - - [ ] Run:
|
|
120 | + - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
|
|
121 | + - Run:
|
|
118 | 122 | ```bash
|
119 | 123 | make mullvadbrowser-kick-devmole-build
|
120 | 124 | ```
|
... | ... | @@ -148,7 +152,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
148 | 152 | - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
|
149 | 153 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
|
150 | 154 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
|
151 | - - [ ] Run:
|
|
155 | + - Run:
|
|
152 | 156 | ```bash
|
153 | 157 | cd tor-browser-build/tools/signing/ && ./do-all-signing.mullvadbrowser
|
154 | 158 | ```
|
... | ... | @@ -162,7 +166,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
162 | 166 | ### website
|
163 | 167 | - [ ] On `staticiforme.torproject.org`, remove old release and publish new:
|
164 | 168 | - [ ] `/srv/dist-master.torproject.org/htdocs/mullvadbrowser`
|
165 | - - [ ] Run:
|
|
169 | + - Run:
|
|
166 | 170 | ```bash
|
167 | 171 | static-update-component dist.torproject.org
|
168 | 172 | ```
|
... | ... | @@ -200,7 +204,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
200 | 204 | - Mullvad support alias: support@mullvadvpn.net
|
201 | 205 | - Rui Hildt: rui@mullvad.net
|
202 | 206 | ```
|
203 | - support@mullvadvpn.net rui@mullvad.net
|
|
207 | + support@mullvadvpn.net, rui@mullvad.net,
|
|
204 | 208 | ```
|
205 | 209 | - **Subject**
|
206 | 210 | ```
|
... | ... | @@ -228,7 +232,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch |
228 | 232 | - arch package maintainer: bootctl@gmail.com
|
229 | 233 | - nixOS package maintainer: dev@felschr.com
|
230 | 234 | ```
|
231 | - proletarius101@protonmail.com bootctl@gmail.com dev@felschr.com
|
|
235 | + proletarius101@protonmail.com, bootctl@gmail.com, dev@felschr.com,
|
|
232 | 236 | ```
|
233 | 237 | - **Subject**
|
234 | 238 | ```
|
... | ... | @@ -41,13 +41,17 @@ |
41 | 41 | |
42 | 42 | - [ ] Tag `mullvad-browser` commit:
|
43 | 43 | - **example**: `mullvad-browser-128.3.0esr-14.0-1-build1`
|
44 | + - Run:
|
|
45 | + ```bash
|
|
46 | + ./tools/browser/sign-tag.mullvadbrowser stable ${BUILD_N}
|
|
47 | + ```
|
|
44 | 48 | |
45 | 49 | ### tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build.git
|
46 | 50 | Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWSER_MINOR}` branch
|
47 | 51 | |
48 | 52 | - [ ] Changelog bookkeeping:
|
49 | - - [ ] Ensure all commits to `mullvad-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
50 | - - [ ] Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
53 | + - Ensure all commits to `mullvad-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
54 | + - Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
51 | 55 | - [ ] Create a release preparation branch from the current `maint-XX.Y` branch
|
52 | 56 | - [ ] Run release preparation script:
|
53 | 57 | - **NOTE**: You can omit the `--mullvad-browser` argument if this is for a joint Tor and Mullvad Browser release
|
... | ... | @@ -71,24 +75,24 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS |
71 | 75 | - [ ] `steps/base-browser/git_hash`: updated with `HEAD` commit of project's `base-browser` branch
|
72 | 76 | - [ ] `steps/mullvad-browser/git_hash`: updated with `HEAD` commit of project's `mullvad-browser` branch
|
73 | 77 | - [ ] ***(Optional)*** `projects/browser/config`:
|
74 | - - [ ] NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
78 | + - [ ] ***(Optional)*** NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
75 | 79 | - [ ] `URL` updated
|
76 | 80 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
77 | 81 | - [ ] `sha256sum` updated
|
78 | - - [ ] uBlock-origin: https://addons.mozilla.org/en-US/firefox/addon/ublock-origin
|
|
82 | + - [ ] ***(Optional)*** uBlock-origin: https://addons.mozilla.org/en-US/firefox/addon/ublock-origin
|
|
79 | 83 | - [ ] `URL` updated
|
80 | 84 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
81 | 85 | - [ ] `sha256sum` updated
|
82 | - - [ ] Mullvad Browser extension: https://github.com/mullvad/browser-extension/releases
|
|
86 | + - [ ] ***(Optional)*** Mullvad Browser extension: https://github.com/mullvad/browser-extension/releases
|
|
83 | 87 | - [ ] `URL` updated
|
84 | 88 | - [ ] `sha256sum` updated
|
85 | 89 | - [ ] `ChangeLog-MB.txt`: ensure correctness
|
86 | - - [ ] Browser name correct
|
|
87 | - - [ ] Release date correct
|
|
88 | - - [ ] No Android updates
|
|
89 | - - [ ] All issues added under correct platform
|
|
90 | - - [ ] ESR updates correct
|
|
91 | - - [ ] Component updates correct
|
|
90 | + - Browser name correct
|
|
91 | + - Release date correct
|
|
92 | + - No Android updates
|
|
93 | + - All issues added under correct platform
|
|
94 | + - ESR updates correct
|
|
95 | + - Component updates correct
|
|
92 | 96 | - [ ] Open MR with above changes, using the template for release preparations
|
93 | 97 | - **NOTE**: target the `maint-14.0` branch
|
94 | 98 | - [ ] Merge
|
... | ... | @@ -99,22 +103,22 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS |
99 | 103 | - ma1
|
100 | 104 | - morgan
|
101 | 105 | - pierov
|
102 | - - [ ] Run:
|
|
106 | + - Run:
|
|
103 | 107 | ```bash
|
104 | 108 | make mullvadbrowser-signtag-release
|
105 | 109 | ```
|
106 | - - [ ] Push tag to `upstream`
|
|
110 | +- [ ] Push tag to `upstream`
|
|
107 | 111 | - [ ] Build the tag:
|
108 | - - [ ] Run:
|
|
112 | + - Run:
|
|
109 | 113 | ```bash
|
110 | 114 | make mullvadbrowser-release && make mullvadbrowser-incrementals-release
|
111 | 115 | ```
|
112 | - - [ ] Tor Project build machine
|
|
113 | - - [ ] Local developer machine
|
|
116 | + - Tor Project build machine
|
|
117 | + - Local developer machine
|
|
114 | 118 | - [ ] Submit build request to Mullvad infrastructure:
|
115 | 119 | - **NOTE** this requires a devmole authentication token
|
116 | - - **NOTE** this also requires you be connected to a Swedish Mulvad VPN exit
|
|
117 | - - [ ] Run:
|
|
120 | + - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
|
|
121 | + - Run:
|
|
118 | 122 | ```bash
|
119 | 123 | make mullvadbrowser-kick-devmole-build
|
120 | 124 | ```
|
... | ... | @@ -148,7 +152,7 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS |
148 | 152 | - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
|
149 | 153 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
|
150 | 154 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
|
151 | - - [ ] Run:
|
|
155 | + - Run:
|
|
152 | 156 | ```bash
|
153 | 157 | cd tor-browser-build/tools/signing/ && ./do-all-signing.mullvadbrowser
|
154 | 158 | ```
|
... | ... | @@ -162,7 +166,7 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS |
162 | 166 | ### website
|
163 | 167 | - [ ] On `staticiforme.torproject.org`, remove old release and publish new:
|
164 | 168 | - [ ] `/srv/dist-master.torproject.org/htdocs/mullvadbrowser`
|
165 | - - [ ] Run:
|
|
169 | + - Run:
|
|
166 | 170 | ```bash
|
167 | 171 | static-update-component dist.torproject.org
|
168 | 172 | ```
|
... | ... | @@ -200,7 +204,7 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS |
200 | 204 | - Mullvad support alias: support@mullvadvpn.net
|
201 | 205 | - Rui Hildt: rui@mullvad.net
|
202 | 206 | ```
|
203 | - support@mullvadvpn.net rui@mullvad.net
|
|
207 | + support@mullvadvpn.net, rui@mullvad.net
|
|
204 | 208 | ```
|
205 | 209 | - **Subject**
|
206 | 210 | ```
|
... | ... | @@ -227,7 +231,7 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS |
227 | 231 | - arch package maintainer: bootctl@gmail.com
|
228 | 232 | - nixOS package maintainer: dev@felschr.com
|
229 | 233 | ```
|
230 | - proletarius101@protonmail.com bootctl@gmail.com dev@felschr.com
|
|
234 | + proletarius101@protonmail.com, bootctl@gmail.com, dev@felschr.com,
|
|
231 | 235 | ```
|
232 | 236 | - **Subject**
|
233 | 237 | ```
|
... | ... | @@ -41,13 +41,17 @@ |
41 | 41 | |
42 | 42 | - [ ] Tag `tor-browser` in tor-browser.git
|
43 | 43 | - **example**: `tor-browser-128.4.0esr-14.5-1-build1`
|
44 | + - Run:
|
|
45 | + ```bash
|
|
46 | + ./tools/browser/sign-tag.torbrowser alpha ${BUILD_N}
|
|
47 | + ```
|
|
44 | 48 | |
45 | 49 | ### tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build.git
|
46 | 50 | Tor Browser Alpha (and Nightly) are on the `main` branch
|
47 | 51 | |
48 | 52 | - [ ] Changelog bookkeeping:
|
49 | - - [ ] Ensure all commits to `tor-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
50 | - - [ ] Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Android, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
53 | + - Ensure all commits to `tor-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
54 | + - Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Android, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
51 | 55 | - [ ] Create a release preparation branch from the `main` branch
|
52 | 56 | - [ ] Run release preparation script:
|
53 | 57 | - **NOTE**: You can omit the `--tor-browser` argument if this is for a jointt Tor and Mullvad Browser release
|
... | ... | @@ -75,7 +79,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch |
75 | 79 | - [ ] `steps/tor-browser/git_hash`: updated with `HEAD` commit of project's `tor-browser` branch
|
76 | 80 | - [ ] `steps/fenix/git_hash`: updated with `HEAD` commit of project's `fenix-torbrowserstringsxml` branch
|
77 | 81 | - [ ] ***(Optional)*** `projects/browser/config`:
|
78 | - - [ ] NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
82 | + - [ ] ***(Optional)*** NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
79 | 83 | - [ ] `URL` updated
|
80 | 84 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
81 | 85 | - [ ] `sha256sum` updated
|
... | ... | @@ -101,18 +105,18 @@ Tor Browser Alpha (and Nightly) are on the `main` branch |
101 | 105 | - [ ] `input_files/shasum` for `manual`: updated to manual hash
|
102 | 106 | - [ ] Upload the downloaded `manual_${PIPELINEID}.zip` file to `tb-build-02.torproject.org`
|
103 | 107 | - [ ] Deploy to `tb-builder`'s `public_html` directory:
|
104 | - - [ ] Run:
|
|
108 | + - Run:
|
|
105 | 109 | ```bash
|
106 | 110 | sudo -u tb-builder cp manual_${PIPELINEID}.zip ~tb-builder/public_html/.
|
107 | 111 | ```
|
108 | 112 | - `sudo` documentation for TPO machines: https://gitlab.torproject.org/tpo/tpa/team/-/wikis/doc/accounts#changingresetting-your-passwords
|
109 | 113 | - [ ] `ChangeLog-TBB.txt`: ensure correctness
|
110 | - - [ ] Browser name correct
|
|
111 | - - [ ] Release date correct
|
|
112 | - - [ ] No Android updates on a desktop-only release and vice-versa
|
|
113 | - - [ ] All issues added under correct platform
|
|
114 | - - [ ] ESR updates correct
|
|
115 | - - [ ] Component updates correct
|
|
114 | + - Browser name correct
|
|
115 | + - Release date correct
|
|
116 | + - No Android updates on a desktop-only release and vice-versa
|
|
117 | + - All issues added under correct platform
|
|
118 | + - ESR updates correct
|
|
119 | + - Component updates correct
|
|
116 | 120 | - [ ] Open MR with above changes, using the template for release preparations
|
117 | 121 | - **NOTE**: target the `main` branch
|
118 | 122 | - [ ] Merge
|
... | ... | @@ -123,13 +127,13 @@ Tor Browser Alpha (and Nightly) are on the `main` branch |
123 | 127 | - ma1
|
124 | 128 | - morgan
|
125 | 129 | - pierov
|
126 | - - [ ] Run:
|
|
130 | + - Run:
|
|
127 | 131 | ```bash
|
128 | 132 | make torbrowser-signtag-alpha
|
129 | 133 | ```
|
130 | - - [ ] Push tag to `upstream`
|
|
134 | +- [ ] Push tag to `upstream`
|
|
131 | 135 | - [ ] Build the tag:
|
132 | - - [ ] Run:
|
|
136 | + - Run:
|
|
133 | 137 | ```bash
|
134 | 138 | make torbrowser-alpha && make torbrowser-incrementals-alpha
|
135 | 139 | ```
|
... | ... | @@ -137,8 +141,8 @@ Tor Browser Alpha (and Nightly) are on the `main` branch |
137 | 141 | - [ ] Local developer machine
|
138 | 142 | - [ ] Submit build request to Mullvad infrastructure:
|
139 | 143 | - **NOTE** this requires a devmole authentication token
|
140 | - - **NOTE** this also requires you be connected to a Swedish Mulvad VPN exit
|
|
141 | - - [ ] Run:
|
|
144 | + - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
|
|
145 | + - Run:
|
|
142 | 146 | ```bash
|
143 | 147 | make torbrowser-kick-devmole-build
|
144 | 148 | ```
|
... | ... | @@ -160,9 +164,14 @@ Tor Browser Alpha (and Nightly) are on the `main` branch |
160 | 164 | - **⚠️ WARNING**: Do not deploy yet!
|
161 | 165 | |
162 | 166 | ### blog: https://gitlab.torproject.org/tpo/web/blog.git
|
163 | - - [ ] Run `tools/signing/create-blog-post` which should create the new blog post from a template (edit set-config.blog to set you local blog directory)
|
|
164 | - - [ ] Note any ESR update
|
|
165 | - - [ ] Thank any users which have contributed patches
|
|
167 | + - [ ] Generate release blog post
|
|
168 | + - Run:
|
|
169 | + ```bash
|
|
170 | + ./tools/signing/create-blog-post.torbrowser
|
|
171 | + ```
|
|
172 | + - **NOTE** this script creates the new blog post from a template (edit `./tools/signing/set-config.blog` to set you local blog directory)
|
|
173 | + - [ ] **(Optional)** Note any ESR update
|
|
174 | + - [ ] **(Optional)** Thank any users which have contributed patches
|
|
166 | 175 | - [ ] **(Optional)** Draft any additional sections for new features which need testing, known issues, etc
|
167 | 176 | - [ ] Push to origin as new branch and open MR
|
168 | 177 | - [ ] Review
|
... | ... | @@ -198,7 +207,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch |
198 | 207 | - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
|
199 | 208 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
|
200 | 209 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
|
201 | - - [ ] Run:
|
|
210 | + - Run:
|
|
202 | 211 | ```bash
|
203 | 212 | cd tor-browser-build/tools/signing/ && ./do-all-signing.torbrowser
|
204 | 213 | ```
|
... | ... | @@ -244,14 +253,14 @@ popd |
244 | 253 | |
245 | 254 | ### website
|
246 | 255 | - [ ] On `staticiforme.torproject.org`, static update components:
|
247 | - - [ ] Run:
|
|
256 | + - Run:
|
|
248 | 257 | ```bash
|
249 | 258 | static-update-component cdn.torproject.org && static-update-component dist.torproject.org
|
250 | 259 | ```
|
251 | 260 | - [ ] Deploy `tor-website` MR
|
252 | 261 | - [ ] Deploy `tor-blog` MR
|
253 | 262 | - [ ] On `staticiforme.torproject.org`, enable update responses:
|
254 | - - [ ] Run:
|
|
263 | + - Run:
|
|
255 | 264 | ```bash
|
256 | 265 | sudo -u tb-release ./deploy_update_responses-alpha.sh
|
257 | 266 | ```
|
... | ... | @@ -259,7 +268,7 @@ popd |
259 | 268 | - **NOTE**: Skip this step if we need to hold on to older versions for some reason (for example, this is an Andoid or Desktop-only release, or if we need to hold back installers in favor of build-to-build updates if there are signing issues, etc)
|
260 | 269 | - [ ] `/srv/cdn-master.torproject.org/htdocs/aus1/torbrowser`
|
261 | 270 | - [ ] `/srv/dist-master.torproject.org/htdocs/torbrowser`
|
262 | - - [ ] Run:
|
|
271 | + - Run:
|
|
263 | 272 | ```bash
|
264 | 273 | static-update-component cdn.torproject.org && static-update-component dist.torproject.org
|
265 | 274 | ```
|
... | ... | @@ -314,7 +323,7 @@ popd |
314 | 323 | - torbrowser-launcher: mail@asciiwolf.com <!-- Gitlab user asciiwolf -->
|
315 | 324 | - Anti-Censorship: meskio@torproject.org <!-- Gitlab user meskio -->
|
316 | 325 | ```
|
317 | - tails-dev@boum.org nathan@guardianproject.info freebsd@sysctl.cz caspar@schutijser.com mail@asciiwolf.com meskio@torproject.org
|
|
326 | + tails-dev@boum.org, nathan@guardianproject.info, freebsd@sysctl.cz, caspar@schutijser.com, mail@asciiwolf.com, meskio@torproject.org,
|
|
318 | 327 | ```
|
319 | 328 | - **Subject**
|
320 | 329 | ```
|
... | ... | @@ -40,13 +40,17 @@ |
40 | 40 | |
41 | 41 | - [ ] Tag `tor-browser` in tor-browser.git
|
42 | 42 | - **example**: `tor-browser-115.17.0esr-13.5-1-build1`
|
43 | + - Run:
|
|
44 | + ```bash
|
|
45 | + ./tools/browser/sign-tag.torbrowser legacy ${BUILD_N}
|
|
46 | + ```
|
|
43 | 47 | |
44 | 48 | ### tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build.git
|
45 | 49 | Tor Browser Legacy is on the `maint-13.5` branch
|
46 | 50 | |
47 | 51 | - [ ] Changelog bookkeeping:
|
48 | - - [ ] Ensure all commits to `tor-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
49 | - - [ ] Ensure each issue has a platform (~Windows, ~MacOS, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
52 | + - Ensure all commits to `tor-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
53 | + - Ensure each issue has a platform (~Windows, ~MacOS, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
50 | 54 | - [ ] Create a release preparation branch from the `maint-13.5` branch
|
51 | 55 | - [ ] Run release preparation script:
|
52 | 56 | - **⚠️ WARNING**: You may need to manually update the `firefox/config` file's `browser_build` field if `tor-browser.git` has not yet been tagged (e.g. if security backports have not yet been merged and tagged)
|
... | ... | @@ -69,7 +73,7 @@ Tor Browser Legacy is on the `maint-13.5` branch |
69 | 73 | - [ ] `steps/base-browser/git_hash`: updated with `HEAD` commit of project's `base-browser` branch
|
70 | 74 | - [ ] `steps/tor-browser/git_hash`: updated with `HEAD` commit of project's `tor-browser` branch
|
71 | 75 | - [ ] ***(Optional)*** `projects/browser/config`:
|
72 | - - [ ] NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
76 | + - [ ] ***(Optional)*** NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
73 | 77 | - [ ] `URL` updated
|
74 | 78 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
75 | 79 | - [ ] `sha256sum` updated
|
... | ... | @@ -94,18 +98,18 @@ Tor Browser Legacy is on the `maint-13.5` branch |
94 | 98 | - [ ] `input_files/shasum` for `manual`: updated to manual hash
|
95 | 99 | - [ ] Upload the downloaded `manual_${PIPELINEID}.zip` file to `tb-build-02.torproject.org`
|
96 | 100 | - [ ] Deploy to `tb-builder`'s `public_html` directory:
|
97 | - - [ ] Run:
|
|
101 | + - Run:
|
|
98 | 102 | ```bash
|
99 | 103 | sudo -u tb-builder cp manual_${PIPELINEID}.zip ~tb-builder/public_html/.
|
100 | 104 | ```
|
101 | 105 | - `sudo` documentation for TPO machines: https://gitlab.torproject.org/tpo/tpa/team/-/wikis/doc/accounts#changingresetting-your-passwords
|
102 | 106 | - [ ] `ChangeLog-TBB.txt`: ensure correctness
|
103 | - - [ ] Browser name correct
|
|
104 | - - [ ] Release date correct
|
|
105 | - - [ ] No Android updates
|
|
106 | - - [ ] All issues added under correct platform
|
|
107 | - - [ ] ESR updates correct
|
|
108 | - - [ ] Component updates correct
|
|
107 | + - Browser name correct
|
|
108 | + - Release date correct
|
|
109 | + - No Android updates
|
|
110 | + - All issues added under correct platform
|
|
111 | + - ESR updates correct
|
|
112 | + - Component updates correct
|
|
109 | 113 | - [ ] Open MR with above changes, using the template for release preparations
|
110 | 114 | - **NOTE**: target the `maint-13.5` branch
|
111 | 115 | - [ ] Merge
|
... | ... | @@ -116,13 +120,13 @@ Tor Browser Legacy is on the `maint-13.5` branch |
116 | 120 | - ma1
|
117 | 121 | - morgan
|
118 | 122 | - pierov
|
119 | - - [ ] Run:
|
|
123 | + - Run:
|
|
120 | 124 | ```bash
|
121 | 125 | make torbrowser-signtag-release
|
122 | 126 | ```
|
123 | - - [ ] Push tag to `upstream`
|
|
127 | +- [ ] Push tag to `upstream`
|
|
124 | 128 | - [ ] Build the tag:
|
125 | - - [ ] Run:
|
|
129 | + - Run:
|
|
126 | 130 | ```bash
|
127 | 131 | make torbrowser-release && make torbrowser-incrementals-release
|
128 | 132 | ```
|
... | ... | @@ -130,8 +134,8 @@ Tor Browser Legacy is on the `maint-13.5` branch |
130 | 134 | - [ ] Local developer machine
|
131 | 135 | - [ ] Submit build request to Mullvad infrastructure:
|
132 | 136 | - **NOTE** this requires a devmole authentication token
|
133 | - - **NOTE** this also requires you be connected to a Swedish Mulvad VPN exit
|
|
134 | - - [ ] Run:
|
|
137 | + - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
|
|
138 | + - Run:
|
|
135 | 139 | ```bash
|
136 | 140 | make torbrowser-kick-devmole-build
|
137 | 141 | ```
|
... | ... | @@ -142,9 +146,14 @@ Tor Browser Legacy is on the `maint-13.5` branch |
142 | 146 | <summary>Website</summary>
|
143 | 147 | |
144 | 148 | ### blog: https://gitlab.torproject.org/tpo/web/blog.git
|
145 | - - [ ] Run `tools/signing/create-blog-post` which should create the new blog post from a template (edit set-config.blog to set you local blog directory)
|
|
146 | - - [ ] Note any ESR update
|
|
147 | - - [ ] Thank any users which have contributed patches
|
|
149 | + - [ ] Generate release blog post
|
|
150 | + - Run:
|
|
151 | + ```bash
|
|
152 | + ./tools/signing/create-blog-post.torbrowser
|
|
153 | + ```
|
|
154 | + - **NOTE** this script creates the new blog post from a template (edit `./tools/signing/set-config.blog` to set you local blog directory)
|
|
155 | + - [ ] **(Optional)** Note any ESR update
|
|
156 | + - [ ] **(Optional)** Thank any users which have contributed patches
|
|
148 | 157 | - [ ] **(Optional)** Draft any additional sections for new features which need testing, known issues, etc
|
149 | 158 | - [ ] Push to origin as new branch and open MR
|
150 | 159 | - [ ] Review
|
... | ... | @@ -178,7 +187,7 @@ Tor Browser Legacy is on the `maint-13.5` branch |
178 | 187 | - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
|
179 | 188 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
|
180 | 189 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
|
181 | - - [ ] Run:
|
|
190 | + - Run:
|
|
182 | 191 | ```bash
|
183 | 192 | cd tor-browser-build/tools/signing/ && ./do-all-signing.torbrowser
|
184 | 193 | ```
|
... | ... | @@ -224,7 +233,7 @@ popd |
224 | 233 | |
225 | 234 | ### website
|
226 | 235 | - [ ] On `staticiforme.torproject.org`, static update components:
|
227 | - - [ ] Run:
|
|
236 | + - Run:
|
|
228 | 237 | ```bash
|
229 | 238 | static-update-component cdn.torproject.org && static-update-component dist.torproject.org
|
230 | 239 | ```
|
... | ... | @@ -233,7 +242,7 @@ popd |
233 | 242 | - **NOTE**: Skip this step if we need to hold on to older versions for some reason (for example, this is an Andoid or Desktop-only release, or if we need to hold back installers in favor of build-to-build updates if there are signing issues, etc)
|
234 | 243 | - [ ] `/srv/cdn-master.torproject.org/htdocs/aus1/torbrowser`
|
235 | 244 | - [ ] `/srv/dist-master.torproject.org/htdocs/torbrowser`
|
236 | - - [ ] Run:
|
|
245 | + - Run:
|
|
237 | 246 | ```bash
|
238 | 247 | static-update-component cdn.torproject.org && static-update-component dist.torproject.org
|
239 | 248 | ```
|
... | ... | @@ -247,12 +256,12 @@ popd |
247 | 256 | - [ ] `var/torbrowser_legacy_platform_version`: update to `${ESR_VERSION}`
|
248 | 257 | - **NOTE** this is ESR version for the legacy branch, not the 14.0 branch
|
249 | 258 | - [ ] Generate update responses:
|
250 | - - [ ] Run:
|
|
259 | + - Run:
|
|
251 | 260 | ```bash
|
252 | 261 | make torbrowser-update_responses-release
|
253 | 262 | ```
|
254 | 263 | - [ ] Commit new update responses to tor-browser-update-responses.git:
|
255 | - - [ ] Run:
|
|
264 | + - Run:
|
|
256 | 265 | ```bash
|
257 | 266 | updaterespdir=/path/to/tor-browser-update-responses.git
|
258 | 267 | cp torbrowser/release/update-responses/update-responses-release-${TOR_BROWSER_VERSION}.tar "$updaterespdir"
|
... | ... | @@ -41,13 +41,17 @@ |
41 | 41 | |
42 | 42 | - [ ] Tag `tor-browser` in tor-browser.git
|
43 | 43 | - **example**: `tor-browser-128.4.0esr-14.0-1-build1`
|
44 | + - Run:
|
|
45 | + ```bash
|
|
46 | + ./tools/browser/sign-tag.torbrowser stable ${BUILD_N}
|
|
47 | + ```
|
|
44 | 48 | |
45 | 49 | ### tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build.git
|
46 | 50 | Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` branch
|
47 | 51 | |
48 | 52 | - [ ] Changelog bookkeeping:
|
49 | - - [ ] Ensure all commits to `tor-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
50 | - - [ ] Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Android, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
53 | + - Ensure all commits to `tor-browser` and `tor-browser-build` for this release have an associated issue linked to this release preparation issue
|
|
54 | + - Ensure each issue has a platform (~Windows, ~MacOS, ~Linux, ~Android, ~Desktop, ~"All Platforms") and potentially ~"Build System" labels
|
|
51 | 55 | - [ ] Create a release preparation branch from the current `maint-XX.Y` branch
|
52 | 56 | - [ ] Run release preparation script:
|
53 | 57 | - **NOTE**: You can omit the `--tor-browser` argument if this is for a joint Tor and Mullvad Browser release
|
... | ... | @@ -64,9 +68,9 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b |
64 | 68 | - [ ] ***(Desktop Only)*** `var/torbrowser_incremental_from`: updated to previous Desktop version
|
65 | 69 | - **NOTE**: We try to build incrementals for the previous 3 desktop versions
|
66 | 70 | - **⚠️ WARNING**: Really *actually* make sure this is the previous Desktop version or else the `make torbrowser-incrementals-*` step will fail
|
67 | -- [ ] `projects/firefox/config`
|
|
68 | - - [ ] `browser_build`: updated to match `tor-browser` tag
|
|
69 | - - [ ] ***(Optional)*** `var/firefox_platform_version`: updated to latest `${ESR_VERSION}` if rebased
|
|
71 | + - [ ] `projects/firefox/config`
|
|
72 | + - [ ] `browser_build`: updated to match `tor-browser` tag
|
|
73 | + - [ ] ***(Optional)*** `var/firefox_platform_version`: updated to latest `${ESR_VERSION}` if rebased
|
|
70 | 74 | - [ ] `projects/geckoview/config`
|
71 | 75 | - [ ] `browser_build`: updated to match `tor-browser` tag
|
72 | 76 | - [ ] ***(Optional)*** `var/firefox_platform_version`: updated to latest `${ESR_VERSION}` if rebased
|
... | ... | @@ -75,7 +79,7 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b |
75 | 79 | - [ ] `steps/tor-browser/git_hash`: updated with `HEAD` commit of project's `tor-browser` branch
|
76 | 80 | - [ ] `steps/fenix/git_hash`: updated with `HEAD` commit of project's `fenix-torbrowserstringsxml` branch
|
77 | 81 | - [ ] ***(Optional)*** `projects/browser/config`:
|
78 | - - [ ] NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
82 | + - [ ] ***(Optional)*** NoScript: https://addons.mozilla.org/en-US/firefox/addon/noscript
|
|
79 | 83 | - [ ] `URL` updated
|
80 | 84 | - **⚠️ WARNING**: If preparing the release manually, updating the version number in the url is not sufficient, as each version has a random unique id in the download url
|
81 | 85 | - [ ] `sha256sum` updated
|
... | ... | @@ -101,18 +105,18 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b |
101 | 105 | - [ ] `input_files/shasum` for `manual`: updated to manual hash
|
102 | 106 | - [ ] Upload the downloaded `manual_${PIPELINEID}.zip` file to `tb-build-02.torproject.org`
|
103 | 107 | - [ ] Deploy to `tb-builder`'s `public_html` directory:
|
104 | - - [ ] Run:
|
|
108 | + - Run:
|
|
105 | 109 | ```bash
|
106 | 110 | sudo -u tb-builder cp manual_${PIPELINEID}.zip ~tb-builder/public_html/.
|
107 | 111 | ```
|
108 | 112 | - `sudo` documentation for TPO machines: https://gitlab.torproject.org/tpo/tpa/team/-/wikis/doc/accounts#changingresetting-your-passwords
|
109 | 113 | - [ ] `ChangeLog-TBB.txt`: ensure correctness
|
110 | - - [ ] Browser name correct
|
|
111 | - - [ ] Release date correct
|
|
112 | - - [ ] No Android updates on a desktop-only release and vice-versa
|
|
113 | - - [ ] All issues added under correct platform
|
|
114 | - - [ ] ESR updates correct
|
|
115 | - - [ ] Component updates correct
|
|
114 | + - Browser name correct
|
|
115 | + - Release date correct
|
|
116 | + - No Android updates on a desktop-only release and vice-versa
|
|
117 | + - All issues added under correct platform
|
|
118 | + - ESR updates correct
|
|
119 | + - Component updates correct
|
|
116 | 120 | - [ ] Open MR with above changes, using the template for release preparations
|
117 | 121 | - **NOTE**: target the `maint-14.0` branch
|
118 | 122 | - [ ] Merge
|
... | ... | @@ -123,22 +127,22 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b |
123 | 127 | - ma1
|
124 | 128 | - morgan
|
125 | 129 | - pierov
|
126 | - - [ ] Run:
|
|
130 | + - Run:
|
|
127 | 131 | ```bash
|
128 | 132 | make torbrowser-signtag-release
|
129 | 133 | ```
|
130 | - - [ ] Push tag to `upstream`
|
|
134 | +- [ ] Push tag to `upstream`
|
|
131 | 135 | - [ ] Build the tag:
|
132 | - - [ ] Run:
|
|
136 | + - Run:
|
|
133 | 137 | ```bash
|
134 | 138 | make torbrowser-release && make torbrowser-incrementals-release
|
135 | 139 | ```
|
136 | - - [ ] Tor Project build machine
|
|
137 | - - [ ] Local developer machine
|
|
140 | + - Tor Project build machine
|
|
141 | + - Local developer machine
|
|
138 | 142 | - [ ] Submit build request to Mullvad infrastructure:
|
139 | 143 | - **NOTE** this requires a devmole authentication token
|
140 | - - **NOTE** this also requires you be connected to a Swedish Mulvad VPN exit
|
|
141 | - - [ ] Run:
|
|
144 | + - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
|
|
145 | + - Run:
|
|
142 | 146 | ```bash
|
143 | 147 | make torbrowser-kick-devmole-build
|
144 | 148 | ```
|
... | ... | @@ -160,9 +164,14 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b |
160 | 164 | - **⚠️ WARNING**: Do not deploy yet!
|
161 | 165 | |
162 | 166 | ### blog: https://gitlab.torproject.org/tpo/web/blog.git
|
163 | - - [ ] Run `tools/signing/create-blog-post` which should create the new blog post from a template (edit set-config.blog to set you local blog directory)
|
|
164 | - - [ ] Note any ESR update
|
|
165 | - - [ ] Thank any users which have contributed patches
|
|
167 | + - [ ] Generate release blog post
|
|
168 | + - Run:
|
|
169 | + ```bash
|
|
170 | + ./tools/signing/create-blog-post.torbrowser
|
|
171 | + ```
|
|
172 | + - **NOTE** this script creates the new blog post from a template (edit `./tools/signing/set-config.blog` to set you local blog directory)
|
|
173 | + - [ ] **(Optional)** Note any ESR update
|
|
174 | + - [ ] **(Optional)** Thank any users which have contributed patches
|
|
166 | 175 | - [ ] **(Optional)** Draft any additional sections for new features which need testing, known issues, etc
|
167 | 176 | - [ ] Push to origin as new branch and open MR
|
168 | 177 | - [ ] Review
|
... | ... | @@ -201,7 +210,7 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b |
201 | 210 | - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
|
202 | 211 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
|
203 | 212 | - [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
|
204 | - - [ ] Run:
|
|
213 | + - Run:
|
|
205 | 214 | ```bash
|
206 | 215 | cd tor-browser-build/tools/signing/ && ./do-all-signing.torbrowser
|
207 | 216 | ```
|
... | ... | @@ -247,14 +256,14 @@ popd |
247 | 256 | |
248 | 257 | ### website
|
249 | 258 | - [ ] On `staticiforme.torproject.org`, static update components:
|
250 | - - [ ] Run:
|
|
259 | + - Run:
|
|
251 | 260 | ```bash
|
252 | 261 | static-update-component cdn.torproject.org && static-update-component dist.torproject.org
|
253 | 262 | ```
|
254 | 263 | - [ ] Deploy `tor-website` MR
|
255 | 264 | - [ ] Deploy `tor-blog` MR
|
256 | 265 | - [ ] On `staticiforme.torproject.org`, enable update responses:
|
257 | - - [ ] Run:
|
|
266 | + - Run:
|
|
258 | 267 | ```bash
|
259 | 268 | sudo -u tb-release ./deploy_update_responses-release.sh
|
260 | 269 | ```
|
... | ... | @@ -262,7 +271,7 @@ popd |
262 | 271 | - **NOTE**: Skip this step if we need to hold on to older versions for some reason (for example, this is an Andoid or Desktop-only release, or if we need to hold back installers in favor of build-to-build updates if there are signing issues, etc)
|
263 | 272 | - [ ] `/srv/cdn-master.torproject.org/htdocs/aus1/torbrowser`
|
264 | 273 | - [ ] `/srv/dist-master.torproject.org/htdocs/torbrowser`
|
265 | - - [ ] Run:
|
|
274 | + - Run:
|
|
266 | 275 | ```bash
|
267 | 276 | static-update-component cdn.torproject.org && static-update-component dist.torproject.org
|
268 | 277 | ```
|
... | ... | @@ -317,7 +326,7 @@ popd |
317 | 326 | - torbrowser-launcher: mail@asciiwolf.com <!-- Gitlab user asciiwolf -->
|
318 | 327 | - Anti-Censorship: meskio@torproject.org <!-- Gitlab user meskio -->
|
319 | 328 | ```
|
320 | - tails-dev@boum.org nathan@guardianproject.info freebsd@sysctl.cz caspar@schutijser.com mail@asciiwolf.com meskio@torproject.org
|
|
329 | + tails-dev@boum.org, nathan@guardianproject.info, freebsd@sysctl.cz, caspar@schutijser.com, mail@asciiwolf.com, meskio@torproject.org,
|
|
321 | 330 | ```
|
322 | 331 | - **Subject**
|
323 | 332 | ```
|