fix(identify): make agentversion dynamic and add it to the peerstore #724
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.
The AgentVersion in identify shouldn't be static. In go-libp2p the AgentVersion is generated by the application name and version, so for go-ipfs this looks like
go-ipfs/<version>
. Ideally we would replicate this, however this is a trickier to handle in JS as we need to account for browser usage. At the very least we need to default to the js-libp2p version, so this adds that basic level of support.This is extremely helpful for understanding what versions are being used on the network, which helps us when determining upgrade strategies and change rollouts on the network.
go-libp2p also tracks the AgentVersion of peers in the metadata book, so I added that here as well, which is necessary for actually checking this data (we were previously ignoring this).