go-libp2p
go-libp2p copied to clipboard
go-libp2p v0.22
🗺 What's left for release
AutoRelay Polling
- [x] https://github.com/libp2p/go-libp2p/pull/1569
Consolidation
Tracking issue: #1556
Misc
- [ ] https://github.com/libp2p/go-libp2p/pull/1576
- [ ] https://github.com/libp2p/go-libp2p/issues/1597
- [ ] https://github.com/libp2p/go-libp2p/pull/1615
- [ ] https://github.com/libp2p/go-libp2p-resource-manager/issues/64
🔦 Highlights
- When no
Identityis passed tolibp2p.New, we generate a private key for you. We now generate an Ed25519 key instead of a RSA key (#1576).
< top highlights for this release notes >
Changelog
< changelog generated by scripts/mkreleaselog >
✅ Release Checklist
- [ ] Stage 0 - Finishing Touches
- [ ] Go through relevant libp2p repos looking for unreleased changes that should make it into the release. If you find any, cut releases.
- [ ] Run
go get -u ./...to see if there are any out-of-date deps that look important. If there are, bubble them. Try to avoid directly updating indirect deps in go-libp2p's go.mod when possible. - [ ] Make sure local tests are passing.
- [ ] Stage 1 - Upstream Testing
- Create testing branches in lotus & go-ipfs with the new go-libp2p release and run CI/tests. Many upstream projects are tested in CI, but lotus & go-ipfs are not.
- [ ] filecoin-project/lotus
- [ ] ipfs/go-ipfs
- (someday) Run upstream testground tests. Unfortunately, this is too time consuming at the moment.
- (someday) Run bitswap testground tests.
- (someday) Run DHT testground tests.
- Create testing branches in lotus & go-ipfs with the new go-libp2p release and run CI/tests. Many upstream projects are tested in CI, but lotus & go-ipfs are not.
- [ ] Stage 2 - Infrastructure Testing
- How: Using the testing branches created above, work with the infrastructure team to deploy the new libp2p versions to our infrastructure.
- Where:
- [ ] A go-ipfs gateway.
- [ ] Deploy
- [ ] Analyze
- [ ] Look at pprof profile dumps, especially CPU profiles and heap allocation profiles, noting any significant changes.
- [ ] A go-ipfs bootstrapper.
- [ ] Deploy
- [ ] Analyze
- [ ] Look at pprof profile dumps, especially CPU profiles and heap allocation profiles, noting any significant changes.
- [ ] Check peers (e.g.,
ipfs swarm peers) to make sure we're connecting to peers on all transports. - [ ] Check advertised addresses and protocols (e.g.,
ipfs id) to make sure they're sane.
- [ ] A go-ipfs gateway.
- [ ] Stage 3 - Release
- [ ] Tag the release on master.
- [ ] Publish the release through the GitHub UI, adding the release notes. Some users rely on this to receive notifications of new releases.
- [ ] Announce the release on the discuss.libp2p.io.
- [ ] Stage 4 - Update Upstream
- [ ] Update the examples to the final release
- [ ] Update the upstream testing branches to the final release and create PRs.
- [ ] Make required changes to the release process.