Skip to content

Commit da054bb

Browse files
authored
Update RELEASE_INSTRUCTIONS.md formatting (#9473)
The main thing I want to address here is that the major steps aren't really numbered. This is because they are written as headings (h3 and h4). I just hardcoded step numbers here. Also fixed some indentation bugs, and list item bugs.
1 parent 5f51687 commit da054bb

File tree

1 file changed

+80
-74
lines changed

1 file changed

+80
-74
lines changed

tool/RELEASE_INSTRUCTIONS.md

Lines changed: 80 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,15 @@ bash for quality assurance and to prevent regressions from slipping into the rel
4343
4444
2. Ensure your Dart SDK is configured:
4545

46-
a. You have a local checkout of the Dart SDK
47-
- (for getting started instructions, see
46+
1. You have a local checkout of the Dart SDK
47+
(for getting started instructions, see
4848
[sdk/CONTRIBUTING.md](https://github.com/dart-lang/sdk/blob/main/CONTRIBUTING.md)).
4949

50-
b. Ensure your `.bashrc` sets `$LOCAL_DART_SDK`
51-
```shell
52-
DART_SDK_REPO_DIR=<Path to cloned dart sdk>
53-
export LOCAL_DART_SDK=$DART_SDK_REPO_DIR/sdk
54-
```
50+
2. Ensure your `.bashrc` sets `$LOCAL_DART_SDK`
51+
```shell
52+
DART_SDK_REPO_DIR=<Path to cloned dart sdk>
53+
export LOCAL_DART_SDK=$DART_SDK_REPO_DIR/sdk
54+
```
5555

5656
3. Ensure you have goma [configured](http://go/ma-mac-setup)
5757

@@ -65,7 +65,7 @@ bash for quality assurance and to prevent regressions from slipping into the rel
6565

6666
## Full release into the Dart SDK master branch
6767

68-
### Configure/Refresh environment
68+
### 1) Configure/Refresh environment
6969

7070
Make sure:
7171

@@ -80,9 +80,9 @@ Make sure:
8080
dt update-flutter-sdk --update-on-path
8181
```
8282

83-
### Prepare the release
83+
### 2) Prepare the release
8484

85-
#### Create a release PR
85+
#### 2.1) Create a release PR
8686

8787
> [!NOTE]
8888
> If you need to install the [Github CLI](https://cli.github.com/manual/installation) you
@@ -113,7 +113,7 @@ Finally, update your Flutter to the commit you just spcified.
113113
dt update-flutter-sdk --update-on-path
114114
```
115115

116-
#### Verify the version changes for the Release PR
116+
#### 2.2) Verify the version changes for the Release PR
117117

118118
Verify the changes in the release PR contain:
119119
1. an updated the `devtools_app` pubspec version
@@ -125,7 +125,7 @@ and `devtools_shared`, we adhere to semantic versioning where breaking changes s
125125
be versioned with a major version bump, and all other changes should be minor or patch
126126
version bumps.
127127

128-
### Test the release PR
128+
### 3) Test the release PR
129129

130130
1. Build DevTools in release mode and serve it from a locally running DevTools
131131
server instance:
@@ -154,11 +154,11 @@ server instance:
154154
git clean -f -d;
155155
```
156156

157-
#### Submit the Release PR
157+
### 4) Submit the Release PR
158158

159159
Receive an LGTM for the PR, squash and commit.
160160

161-
### Wait for the binary to be uploaded CIPD
161+
### 5) Wait for the binary to be uploaded CIPD
162162

163163
On each DevTools commit, DevTools is built and uploaded to CIPD. You can check the
164164
status of the builds on this
@@ -169,7 +169,7 @@ Within minutes, a build should be uploaded for the commit you just merged and ta
169169
> If the CIPD build times out, instructions for re-triggering can be found at
170170
[go/dart-engprod/release.md](http://go/dart-engprod/release.md)
171171

172-
### Update the DevTools hash in the Dart SDK
172+
### 6) Update the DevTools hash in the Dart SDK
173173

174174
Run the tool script with the commit hash you just merged and tagged:
175175
```shell
@@ -179,7 +179,7 @@ dt update-sdk-deps -c <commit-hash>
179179
This automatically creates a Gerrit CL with the DEPS update for DevTools.
180180
Quickly test the build and then add a reviewer:
181181

182-
1. Build the dart sdk locally
182+
1. Build the Dart SDK locally
183183

184184
```shell
185185
cd $LOCAL_DART_SDK && \
@@ -197,15 +197,16 @@ Quickly test the build and then add a reviewer:
197197
out/ReleaseX64/dart-sdk/bin/dart devtools
198198
```
199199

200-
3. If the version of DevTools you just published to CIPD does not load properly,
201-
you may need to hard reload and clear your browser cache.
200+
3. If the version of DevTools you just published to CIPD does not load properly,
201+
you may need to hard reload and clear your browser cache.
202202

203203
4. Add a reviewer and submit once approved.
204204

205-
### Tag the release
205+
### 7) Tag the release
206+
206207
1. In your terminal from the `devtools` directory, checkout the commit that you
207208
just released into the Dart SDK (the hash you updated the DEPS file with):
208-
```
209+
```shell
209210
git fetch upstream; git checkout <release-commit>`
210211
```
211212
@@ -217,7 +218,7 @@ just released into the Dart SDK (the hash you updated the DEPS file with):
217218
version for the tag is automatically determined from `packages/devtools/pubspec.yaml`
218219
so there is no need to manually enter the version.
219220
220-
### Verify and Submit the release notes
221+
### 8) Verify and Submit the release notes
221222
222223
1. Follow the instructions outlined in the release notes
223224
[README.md](https://github.com/flutter/devtools/blob/master/packages/devtools_app/release_notes/README.md)
@@ -226,7 +227,7 @@ to add DevTools release notes to Flutter website and test them in DevTools.
226227
[g/flutter-internal-announce](http://g/flutter-internal-announce) with a link to
227228
the new release notes.
228229
229-
### Prepare DevTools for the next beta release
230+
### 9) Prepare DevTools for the next beta release
230231
231232
**The `daily-dev-bump` workflow is currently broken: [#8558](https://github.com/flutter/devtools/issues/8558). Until it's fixed, manually update the DevTools version for the next release and open a PR with the changes:**
232233
```shell
@@ -253,53 +254,53 @@ of the full release process.
253254
254255
## Cherry-pick releases
255256
256-
### Prepare the release in the `flutter/devtools` repo
257+
### 1) Prepare the release in the `flutter/devtools` repo
257258
258259
1. Find the [DevTools tag](https://github.com/flutter/devtools/tags) that you want
259-
to perform the cherry-pick release on top of.
260+
to perform the cherry-pick release on top of.
260261
261262
For example, if you want to perform a cherry pick release of DevTools into
262263
the Flutter / Dart beta branch, you can see what the current version of DevTools
263264
is on Flutter / Dart beta by doing the following:
264265
265-
a. Find the latest [beta
266-
release](https://github.com/flutter/flutter/blob/beta/bin/internal/release-candidate-branch.version)
267-
candidate (or [stable
268-
release](https://github.com/flutter/flutter/blob/stable/bin/internal/release-candidate-branch.version)
269-
candidate) that you will cherry-pick into.
266+
1. Find the latest [beta
267+
release](https://github.com/flutter/flutter/blob/beta/bin/internal/release-candidate-branch.version)
268+
candidate (or [stable
269+
release](https://github.com/flutter/flutter/blob/stable/bin/internal/release-candidate-branch.version)
270+
candidate) that you will cherry-pick into.
270271
271-
b. In your terminal, in the flutter/flutter repository, run `git checkout
272-
<latest-beta-version>`.
272+
2. In your terminal, in the flutter/flutter repository, run `git checkout
273+
<latest-beta-version>`.
273274
274-
c. Run `flutter --version` to see which version _of DevTools_ is on current
275-
Flutter / Dart beta (assuming `which flutter` points to your local
276-
Flutter git repository). For example, you might see:
277-
278-
> Tools • Dart 3.8.1 • DevTools 2.45.1
275+
3. Run `flutter --version` to see which version _of DevTools_ is on current
276+
Flutter / Dart beta (assuming `which flutter` points to your local
277+
Flutter git repository). For example, you might see:
279278
280-
indicating that DevTools version 2.45.1 is used in this Flutter version.
279+
> Tools • Dart 3.8.1 • DevTools 2.45.1
280+
281+
indicating that DevTools version 2.45.1 is used in this Flutter version.
281282
282-
2. Checkout that tag in your local DevTools repo. For this
283+
3. Checkout that tag in your local DevTools repo. For this
283284
example, we'll use `v2.29.0` as the base branch and `2.29.1` as the cherry-pick branch.
284-
```
285+
```shell
285286
git fetch upstream
286287
git checkout v2.29.0
287288
```
288289
289-
3. Create a new branch for your cherry pick release.
290-
```
290+
4. Create a new branch for your cherry pick release.
291+
```shell
291292
git checkout -b 2.29.1
292293
```
293294
294-
4. Cherry pick the commit(s) you want in this cherry-pick release, and bump the
295+
5. Cherry pick the commit(s) you want in this cherry-pick release, and bump the
295296
DevTools version number:
296-
```
297+
```shell
297298
git cherry-pick <commit>
298299
dt update-version auto -t patch
299300
```
300301
301-
5. Commit your changes and push to the `upstream` remote.
302-
```
302+
6. Commit your changes and push to the `upstream` remote.
303+
```shell
303304
git add .;
304305
git commit -m "Prepare cherry-pick release - DevTools 2.29.1";
305306
git push upstream 2.29.1
@@ -308,20 +309,20 @@ DevTools version number:
308309
**To move on to the next step, you will need to take note of two values:**
309310
1) The name of the DevTools branch you just created (e.g. `2.29.1`)
310311
2) The commit hash that is at the tip of this branch
311-
(see https://github.com/flutter/devtools/branches).
312+
(see https://github.com/flutter/devtools/branches).
312313
313-
### Manually run the DevTools Builder
314+
### 2) Manually run the DevTools Builder
314315
315316
Follow the instructions at
316317
[go/dart-engprod/devtools.md#cherry-picks](http://go/dart-engprod/devtools.md#cherry-picks)
317318
to trigger the DevTools builder.
318319
319-
### Create the cherry-pick CL in the Dart SDK
320+
### 3) Create the cherry-pick CL in the Dart SDK
320321
321322
Checkout the Dart SDK branch you want to perform the cherry-pick on top of
322323
(e.g. `stable` or `beta`), and create a new branch:
323324
324-
```
325+
```shell
325326
git new-branch --upstream origin/<stable or beta> cherry-pick-devtools
326327
```
327328
@@ -335,7 +336,7 @@ above).
335336
[CHANGELOG entry](https://github.com/dart-lang/sdk/blob/main/docs/Cherry-picks-to-a-release-channel.md#changelog).
336337
337338
3. Commit your changes and upload your CL:
338-
```
339+
```shell
339340
git add .
340341
git commit -m "Cherry-pick DevTools 2.29.1"
341342
git cl upload -s
@@ -347,7 +348,7 @@ the cherry-pick
347348
348349
The CL description should look like this:
349350
350-
```
351+
```none
351352
[stable or beta] Cherry-pick DevTools <new version number> into the SDK <stable or beta> branch.
352353
353354
Issue description: When attempting to use foo under certain conditions, users are unable to
@@ -366,11 +367,12 @@ the CL yet.
366367
**Do not move on to the next steps unless your cherry-pick CL has been approved
367368
and merged.**
368369
369-
### Create a DevTools tag for the cherry-pick release
370+
### 4) Create a DevTools tag for the cherry-pick release
370371
372+
> [!IMPORTANT]
371373
> **If your cherry-pick CL has not been approved and merged, wait.**
372374
373-
Once your cherry pick has been approved and merged, create a tag for this cherry-pick
375+
Once your cherry-pick has been approved and merged, create a tag for this cherry-pick
374376
release. This will ensure that we have a tag we can branch from if we need to
375377
create another DevTools cherry-pick release from the tip of the one we just created.
376378
@@ -380,47 +382,51 @@ git checkout upstream/2.29.1
380382
dt tag-version
381383
```
382384
383-
### Create the merge commit in the `flutter/devtools` repo
385+
### 5) Create the merge commit in the `flutter/devtools` repo
384386
387+
> [!IMPORTANT]
385388
> **If your cherry-pick CL has not been approved and merged, wait.**
386389
387390
In order to ensure that the cherry-picked DevTools commit does not get GC'ed, we
388391
need to perform a merge commit from the branch we just created (e.g. `2.29.1`)
389392
onto the `flutter/devtools` protected branch (`master`).
390393
391394
1. Create a pull request in the GitHub UI from the cherry-pick branch to the
392-
`master` branch.
393-
- Navigate to `https://github.com/flutter/devtools/compare/<cherry-pick-branch>`,
394-
where `<cherry-pick-branch>` is the branch you pushed up to the `upstream`
395-
remote with the cherry-picked commit(s) (e.g. `2.29.1`).
396-
- Click "Create pull request", and then create a PR with a descriptive title:
397-
"Merge commit for cherry-pick release 2.29.1"
398-
- Once created, you should see several merge conflicts at the bottom of the PR.
399-
Click "Resolve conflicts" in the GitHub UI, and resolve any merge conflicts by
400-
**accepting whatever is on master**. Once you do this, the PR should show changes
401-
in **zero** lines of code.
402-
- Ask a member of the DevTools team for review, but **DO NOT** squash and merge yet.
403-
404-
2. Message @kenzieschmoll directly with the following request. If you cannot message
405-
@kenzieschmoll directly, create an [issue](https://github.com/flutter/devtools/issues/new)
406-
and assign it to @kenzieschmoll.
395+
`master` branch.
396+
1. Navigate to `https://github.com/flutter/devtools/compare/<cherry-pick-branch>`,
397+
where `<cherry-pick-branch>` is the branch you pushed up to the `upstream`
398+
remote with the cherry-picked commit(s) (e.g. `2.29.1`).
399+
2. Click "Create pull request", and then create a PR with a descriptive title:
400+
"Merge commit for cherry-pick release 2.29.1"
401+
3. Once created, you should see several merge conflicts at the bottom of the PR.
402+
Click "Resolve conflicts" in the GitHub UI, and resolve any merge conflicts by
403+
**accepting whatever is on master**. Once you do this, the PR should show changes
404+
in **zero** lines of code.
405+
4. Ask a member of the DevTools team for review, but **DO NOT** squash and merge yet.
406+
407+
2. Message @kenzieschmoll or @elliette directly with the following request. If you cannot
408+
message @kenzieschmoll or @elliette directly, create an
409+
[issue](https://github.com/flutter/devtools/issues/new) and assign it to
410+
@kenzieschmoll or @elliette.
407411
408412
409413
Title:
410414
411-
Create merge commit for flutter/devtools cherry-pick.
415+
> Create merge commit for flutter/devtools cherry-pick.
412416
413417
Body:
414418
415-
1. Temporarily modify the settings of https://github.com/flutter/devtools to "allow merge
416-
commits at the repo level and remove `require linear history`".
417-
2. IMPORTANT: Merge <link to PR> as a MERGE COMMIT. When merging, use the merge button dropdown menu to select "Create a merge commit", NOT "Squash and merge".
418-
3. Revert the settings.
419+
> 1\. Temporarily modify the settings of https://github.com/flutter/devtools to "allow merge
420+
> commits at the repo level and remove `require linear history`".\
421+
> 2\. IMPORTANT: Merge <link to PR> as a MERGE COMMIT. When merging, use the merge button dropdown
422+
> menu to select "Create a merge commit", NOT "Squash and merge".\
423+
> 3\. Revert the settings.
419424
420425
If @kenzieschmoll is unavailable to complete the merge commit, please ask another member of the Dash
421426
team who has Admin access to the `flutter/devtools` repository settings (@piinks or @tvolkert).
422427
423428
### Additional resources
429+
424430
- `dart-lang/sdk` cherry-pick [docs](https://github.com/dart-lang/sdk/blob/main/docs/Cherry-picks-to-a-release-channel.md)
425431
- Flutter cherry-pick [docs](https://github.com/flutter/flutter/blob/master/docs/releases/Flutter-Cherrypick-Process.md)
426432
- Example cherry-pick cl: https://dart-review.googlesource.com/c/sdk/+/336827

0 commit comments

Comments
 (0)