Skip to content

Commit 9b86cc5

Browse files
authored
docs(release): v1.29.1 release template improvements (#12473)
* docs: update release process based on v1.29.1 process * Update RELEASE_ISSUE_TEMPLATE.md Added in the things I saw from reading this again after going through it today with v1.29.1 * Additional updates about branch `branch` Version string updates
1 parent 9c266bf commit 9b86cc5

File tree

1 file changed

+31
-31
lines changed

1 file changed

+31
-31
lines changed

documentation/misc/RELEASE_ISSUE_TEMPLATE.md

+31-31
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
1-
> Release Issue Template
2-
31
# Lotus Node|Miner X.Y.Z Release
42

53
[//]: # (Below are non-visible steps intended for the issue creator)
64
[//]: # (❗️ Complete the steps below as part of creating a release issue and mark them complete with an X or ✅ when done.)
75
[//]: # ([ ] Start an issue with title "[WIP] Lotus Node|Miner vX.Y.Z Release" and adjust the title for whether it's a Node or Miner release.)
86
[//]: # ([ ] Copy in the content of https://github.com/filecoin-project/lotus/blob/master/documentation/misc/RELEASE_ISSUE_TEMPLATE.md)
9-
[//]: # ([ ] Find/Replace "X.Y.Z+1" with the actual values. This is intentionally done before the find/replace X.Y.Z step because that will also match.)
10-
[//]: # ([ ] Find/Replace "X.Y.Z" with the actual values.)
7+
[//]: # ([ ] Find/Replace "X.Y.(Z+1)" with the actual values (e.g., v1.30.1).
8+
[//]: # ([ ] Find/Replace "X.Y.Z" with the actual values.
119
[//]: # ([ ] If this isn't a release tied to a network upgrade, remove all items with "\(network upgrade\)")
1210
[//]: # ([ ] If this is a patch release, remove all items with "\(minor release\)")
1311
[//]: # ([ ] If this is a minor release, remove all items with "\(patch release\)")
14-
[//]: # ([ ] Copy/paste the "Release Checklist > RCX" section to "Release Checklist > Stable \(non-RC\) Release" and apply the "diff" called out there.)
15-
[//]: # ([ ] Find/Replace "RCX" with "RC1".)
12+
[//]: # ([ ] Copy/paste the "Release Checklist > rcX" section to "Release Checklist > Stable \(non-RC\) Release" and apply the "diff" called out there.)
13+
[//]: # ([ ] Find/Replace "rcX" with "rc1".)
1614
[//]: # ([ ] Adjust the "Meta" section values.)
1715
[//]: # ([ ] Apply the `tpm` label to the issue)
1816
[//]: # ([ ] Create the issue)
@@ -42,7 +40,7 @@
4240
> 3. They are presented here for quick reference, but backporting is tracked in each `Release Checklist`.
4341
4442
[//]: # (Copy/paste this for each RC, and increment "X")
45-
### RCX
43+
### rcX
4644
- [ ] To Be Added
4745

4846
### Stable (non-RC)
@@ -57,21 +55,24 @@
5755
- Link to PR:
5856
- There likely aren't any changes at this point, but this can be opened with a small whitespace change so the PR is open and we can more easily hold the standard of making improvements incrementally since improvements are usually better done by collecting changes/notes along the way rather than just thinking about it at the end.
5957
- This will get merged in a `Post Release` step.
60-
- [ ] (patch release) Fork a new branch (`release/vX.Y.Z` or `release/miner/vX.Y.Z`) from the last stable `release/vX.Y.Z` or `release/miner/vX.Y.Z` and make any further release-related changes to this branch.
58+
- [ ] (patch release) Fork a new branch (`release/vX.Y.Z` or `release/miner/vX.Y.Z`) from the last stable `release/vX.Y.x` or `release/miner/vX.Y.x` and make any further release-related changes to this branch.
6159
- [ ] (minor release) Fork a new branch (`release/vX.Y.Z` or `release/miner/vX.Y.Z`) from `master` and make any further release-related changes to this branch.
62-
- (minor release) `master` branch Version string updates
60+
- `master` branch Version string updates
61+
- Skip this set of steps if you are patching a previos minor release.
6362
- [ ] bump the version(s) in `build/version.go` to `vX.Y.(Z+1)-dev`.
6463
- Ensure to update the appropriate version string based on whether you are creating a node release (`NodeBuildVersion`), a miner release (`MinerBuildVersion`), or both.
6564
- [ ] Run `make gen && make docsgen-cli` before committing changes.
66-
- [ ] Remove the contents in the `Unreleased Changelog` section.
67-
- [ ] Create a PR with title `build: update Lotus Node|Miner version to vX.Y.Z+1-dev in master`
65+
- [ ] Update the CHANGELOG
66+
- [ ] Change the `UNRELEASED` section to `UNRELEASED vX.Y.Z` and set the section's content to be `See https://github.com/filecoin-project/lotus/blob/release/vX.Y.Z/CHANGELOG.md`
67+
- [ ] Add a new `UNRELEASED` header to top.
68+
- [ ] Create a PR with title `build: update Lotus Node|Miner version to vX.Y.(Z+1)-dev in master`
6869
- Link to PR:
6970
- [ ] Merge PR
7071

7172
### RCs
7273

73-
[//]: # (Copy/paste this "RCX" section for each additional RC, and increment "X")
74-
#### RCX
74+
[//]: # (Copy/paste this whole "rcX" section for each additional RC, and increment "X")
75+
#### rcX
7576
> [!IMPORTANT]
7677
> These PRs should be done in and target the `release/vX.Y.Z` or `release/miner/vX.Y.Z` branch.
7778
@@ -93,48 +94,47 @@
9394
- [ ] Update the version string(s) in `build/version.go` to one ending with '-rcX'.
9495
- Ensure to update the appropriate version string based on whether you are creating a node release (`NodeBuildVersion`), a miner release (`MinerBuildVersion`), or both.
9596
- [ ] Run `make gen && make docsgen-cli` to generate documentation
96-
- [ ] Create a PR with title `build: release Lotus node|miner vX.Y.Z-rcX`
97+
- [ ] Create a draft PR with title `build: release Lotus node|miner vX.Y.Z-rcX`
9798
- Link to PR:
9899
- Opening a PR will trigger a CI run that will build assets, create a draft GitHub release, and attach the assets.
99100
- [ ] Changelog prep
100-
- [ ] Go to the [releases page](https://github.com/filecoin-project/lotus/releases) and copy the auto generated changelog into your release PR and adjust the changelog accordingly.
101-
- [ ] Editorial review (e.g., callout breaking changes, new features, FIPs, actor bundles)
101+
- [ ] Go to the [releases page](https://github.com/filecoin-project/lotus/releases) and copy the auto-generated release notes into the CHANGELOG
102+
- [ ] Perform editorial review (e.g., callout breaking changes, new features, FIPs, actor bundles)
102103
- [ ] (network upgrade) Specify whether the Calibration or Mainnet upgrade epoch has been specified or not yet.
103104
- Example where these weren't specified yet: [PR #12169](https://github.com/filecoin-project/lotus/pull/12169)
104105
- [ ] Ensure no missing content when spot checking git history
105106
- Example command looking at git commits: `git log --oneline --graph vA.B.C..`, where A.B.C correspond to the previous release.
106107
- Example GitHub UI search looking at merged PRs into master: https://github.com/filecoin-project/lotus/pulls?q=is%3Apr+base%3Amaster+merged%3A%3EYYYY-MM-DD
107108
- Example `gh` cli command looking at merged PRs into master and sorted by title to group similar areas (where `YYYY-MM-DD` is the start search date): `gh pr list --repo filecoin-project/lotus --search "base:master merged:>YYYY-MM-DD" --json number,mergedAt,author,title | jq -r '.[] | [.number, .mergedAt, .author.login, .title] | @tsv' | sort -k4`
109+
- [ ] Update the PR with the commit(s) made to the CHANGELOG
110+
- [ ] Mark the PR "ready for review" (non-draft)
108111
- [ ] Merge the PR
109-
- Opening the PR will trigger a CI run that will build assets, attach the assets to the GitHub release, publish the GitHub release, and create the corresponding git tag.
112+
- Merging the PR will trigger a CI run that will build assets, attach the assets to the GitHub release, publish the GitHub release, and create the corresponding git tag.
110113
- [ ] Update `🚢 Estimated shipping date` table
111114
- [ ] Comment on this issue announcing the RC
112115
- Link to issue comment:
113116

114-
### Testing
117+
**Testing**
115118
> [!NOTE]
116119
> Link to any special steps for testing releases beyond ensuring CI is green. Steps can be inlined here or tracked elsewhere.
117120
118121
### Stable (non-RC) Release
119122

120-
[//]: # (This "NOTE" below with the "diff" to apply to the "RC copy/pasted content" is here to avoid the duplication in the template itself.)
123+
[//]: # (This "NOTE" below with the "diff" to apply to the "rcX copy/pasted content" is here to avoid the duplication in the template itself.)
121124
[//]: # (This is done as a visible NOTE rather than a comment to make sure it's clear what needs to be added to this section.)
122125
[//]: # (These comments ^^^ can be removed once the NOTE steps below are completed.)
123126
> [!NOTE]
124-
> Copy/paste in the `RCX` section above and then make these changes:
125-
> 1. Under "Release PR > Update the version string...", edit:
126-
>
127-
> Update the version string in `build/version.go` to one **NOT** ending with '-rcX'
127+
> 1️⃣ Copy/paste in the `rcX` section above to below this `[!Note]`
128128
>
129-
> 2. Under "Release PR > Changelog prep...", add:
129+
> 2️⃣ make these changes:
130+
> 1. Release PR > Update the version string...
131+
> * Update the version string in `build/version.go` to one **NOT** ending with '-rcX'
132+
> 2. Release PR > Changelog prep...
133+
> * Add `(network upgrade) Ensure the Mainnet upgrade epoch is specified.`
134+
> 3. Release PR > Update the version string...
135+
> * Create a PR with title `build: release vX.Y.Z`
130136
>
131-
> (network upgrade) Ensure the Mainnet upgrade epoch is specified.
132-
>
133-
> 3. Under "Release PR > Update the version string...", edit:
134-
>
135-
> Create a PR with title `build: release vX.Y.Z`
136-
>
137-
> 4. Remove this `[!Note]` and the related invisible comments.
137+
> 3️⃣ Remove this `[!Note]` and the related invisible comments.
138138
139139
### Post-Release
140140

0 commit comments

Comments
 (0)