Lotus Release v1.29.2
rjan90 opened this issue Β· 6 comments
πΆβπ« Meta
- Scope: Node PATCH
- Is this linked with a network upgrade, and thus mandatory? No
π’ Estimated shipping date
Candidate | Date | Release URL |
---|---|---|
rc1 | Week of 2024-09-23 | https://github.com/filecoin-project/lotus/releases/tag/v1.29.2-rc1 |
Stable (non-RC) | Week of 2024-10-03 | https://github.com/filecoin-project/lotus/releases/tag/v1.29.2 |
πͺ’ Dependencies for releases
Note
- This is the set of changes that need to make it in for a given RC. This is effectively the set of changes to cherry-pick from master.
- They can be checked as done once they land in
master
. - They are presented here for quick reference, but backporting is tracked in each
Release Checklist
.
rc1
Stable (non-RC)
β Release Checklist
Before RC1
- Open PR against RELEASE_ISSUE_TEMPLATE.md with title
docs(release): v1.29.2 release template improvements
for improving future releases.- Link to PR: #12479
- 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.
- This will get merged in a
Post Release
step.
- (patch release) Fork a new branch (
release/v1.29.2
orrelease/miner/v1.29.2
) from the last stablerelease/vX.Y.x
orrelease/miner/vX.Y.x
and make any further release-related changes to this branch. master
branch Version string updates- Skip this set of steps if you are patching a previos minor release.
- bump the version(s) in
build/version.go
tov1.29.3-dev
.- Ensure to update the appropriate version string based on whether you are creating a node release (
NodeBuildVersion
), a miner release (MinerBuildVersion
), or both.
- Ensure to update the appropriate version string based on whether you are creating a node release (
- Run
make gen && make docsgen-cli
before committing changes. - Update the CHANGELOG
- Change the
UNRELEASED
section toUNRELEASED v1.29.2
and set the section's content to beSee https://github.com/filecoin-project/lotus/blob/release/v1.29.2/CHANGELOG.md
- Add a new
UNRELEASED
header to top.
- Change the
- Create a PR with title
build: update Lotus Node version to v1.29.3-dev in master
- Link to PR: #12483
- Merge PR
RCs
rc1
Important
These PRs should be done in and target the release/v1.29.2
or release/miner/v1.29.2
branch.
Backport PR
- All explicitly tracked items from
Dependencies for releases
have landed - Backported everything with the "backport" label
- Removed the "backport" label from all backported PRs (no "backport" issues)
- Create a PR with title
build: backport changes for node|miner v1.29.2-rc1
- Link to PR: #12515
- Merge PR
Release PR
- Update the version string(s) in
build/version.go
to one ending with '-rc1'.- Ensure to update the appropriate version string based on whether you are creating a node release (
NodeBuildVersion
), a miner release (MinerBuildVersion
), or both.
- Ensure to update the appropriate version string based on whether you are creating a node release (
- Run
make gen && make docsgen-cli
to generate documentation - Create a draft PR with title
build: release Lotus node|miner v1.29.2-rc1
- Link to PR: #12515
- Opening a PR will trigger a CI run that will build assets, create a draft GitHub release, and attach the assets.
- Changelog prep
- Go to the releases page and copy the auto-generated release notes into the CHANGELOG
- Perform editorial review (e.g., callout breaking changes, new features, FIPs, actor bundles)
- Ensure no missing content when spot checking git history
- Example command looking at git commits:
git log --oneline --graph vA.B.C..
, where A.B.C correspond to the previous release. - 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
- Example
gh
cli command looking at merged PRs into master and sorted by title to group similar areas (whereYYYY-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
- Example command looking at git commits:
- Update the PR with the commit(s) made to the CHANGELOG
- Mark the PR "ready for review" (non-draft)
- Merge the PR
- 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.
- Update
π’ Estimated shipping date
table - Comment on this issue announcing the RC
- Link to issue comment: #12464 (comment)
Testing
Note
Link to any special steps for testing releases beyond ensuring CI is green. Steps can be inlined here or tracked elsewhere.
Stable (non-RC) Release
Backport PR
- All explicitly tracked items from
Dependencies for releases
have landed - Backported everything with the "backport" label
- Removed the "backport" label from all backported PRs (no "backport" issues)
- Create a PR with title
build: backport changes for node v1.29.2
- Link to PR: #12541
- Merge PR
Release PR
- Update the version string in
build/version.go
to one NOT ending with '-rc1'- Ensure to update the appropriate version string based on whether you are creating a node release (
NodeBuildVersion
), a miner release (MinerBuildVersion
), or both.
- Ensure to update the appropriate version string based on whether you are creating a node release (
- Run
make gen && make docsgen-cli
to generate documentation - Create a PR with title
build: release Lotus node v1.29.2
- Link to PR: #12541
- Opening a PR will trigger a CI run that will build assets, create a draft GitHub release, and attach the assets.
- Changelog prep
- Go to the releases page and copy the auto-generated release notes into the CHANGELOG
- Perform editorial review (e.g., callout breaking changes, new features, FIPs, actor bundles)
- Ensure no missing content when spot checking git history
- Example command looking at git commits:
git log --oneline --graph vA.B.C..
, where A.B.C correspond to the previous release. - 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
- Example
gh
cli command looking at merged PRs into master and sorted by title to group similar areas (whereYYYY-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
- Example command looking at git commits:
- Update the PR with the commit(s) made to the CHANGELOG
- Mark the PR "ready for review" (non-draft)
- Merge the PR
- 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.
- Update
π’ Estimated shipping date
table - Comment on this issue announcing the RC
- Link to issue comment: #12464 (comment)
Testing
Note
Link to any special steps for testing releases beyond ensuring CI is green. Steps can be inlined here or tracked elsewhere.
Post-Release
- Open a pull request against
master
cherry-picking the CHANGELOG commits from therelease/v1.29.2
branch.- Link to PR:
- Assuming we followed the process of merging changes into
master
first before backporting to the release branch, the only changes should be CHANGELOG updates.
- Finish updating/merging the RELEASE_ISSUE_TEMPLATE.md PR from
Before RC1
with any improvements determined from this latest release iteration.
β€οΈ Contributors
See the final release notes!
βοΈ Do you have questions?
Leave a comment in this ticket!
I've renamed this to v1.29.2 since we're pushing a v1.29.1 imminently as part of resolving #12467
@rjan90 : FYI I populated this with the latest changes from https://github.com/filecoin-project/lotus/blob/master/documentation/misc/RELEASE_ISSUE_TEMPLATE.md and I started the release template improvements PR: #12479
@rjan90 : I'm not sure if you were still planning to get a release this week, but it seems likely to me that the "open for RC1" items won't land this week:
@rjan90 : I'm not sure if you were still planning to get a release this week, but it seems likely to me that the "open for RC1" items won't land this week:
Yes, it seems likely that these will only be able to land in the Week of 2024-09-23
. I have adjusted the Estimated Shipping Dates table for RC1 accordingly.
2024-09-27
The first release candidate for v1.29.2 has now been shipped: https://github.com/filecoin-project/lotus/releases/tag/v1.29.2-rc1
2024-10-03
The stable release has now been shipped: https://github.com/filecoin-project/lotus/releases/tag/v1.29.2