Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Upgraded go-libp2p, go-libp2p-pubsub, go-libp2p-pubsub to the latest versions supporting go1.21 (go-libp2p is one patch version behind).
Fixed
*basichost.BasicHost
casting sincelibp2p.New
does not return*basichost.BasicHost
anymore.Fixed private addresses test:
/ip6/2001:db8::/ipcidr/32
is supported natively by multiaddr lib (i.e. fixed a known TODO item)/ip6/200:11::/tcp/1234
ended up to be a bad example for testing public IPv6 addresses after some improvements in multiaddrExtra upgrades
Upgrading libp2p also triggered some other dependencies upgrades, notable
golang.org/x/crypto
v0.21 -> v0.26.go-algorand directly uses
acme/autocert
,,blake2b
,sha3
,hkdf
,nacl/secretbox
andscrypt
submodules.The 4 latter (
sha3
...scrypt
) might potentially affect on-chain data through AVM and kmd.Version history v0.21 -> v0.26 shows only
sha3
was changed and both changes (xor, buf) looks good/safe.Test Plan
Existing unit tests. Performance test showed some regression but we have to upgrade anyway.