-
Notifications
You must be signed in to change notification settings - Fork 493
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
p2p: upgrade libp2p #6142
p2p: upgrade libp2p #6142
Conversation
* these are the last go1.21 compatible
After multiformats/go-multiaddr#235 the test example became invalid, fixed
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #6142 +/- ##
==========================================
- Coverage 56.27% 56.27% -0.01%
==========================================
Files 494 494
Lines 69943 69946 +3
==========================================
+ Hits 39358 39359 +1
- Misses 27910 27916 +6
+ Partials 2675 2671 -4
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm good with this in general, would like @jannotti to skim on thoughts around any libraries affecting AVM.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like the crypto changes are minimal, so I don't see any problems.
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.