-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make LibP2PVersion configurable and dedup with UserAgent #714
Comments
This would also break DHT compatibility with any such nodes. This isn't an ipfs issue, it's a libp2p gx/6.0.20 (October 2018) issue.
I believe the idea was to have one set by the application to identify the application and one set by libp2p to identify the libp2p protocol version. It could be used, e.g., to signal support for certain libp2p features (multistream etc.). |
Ok, all old nodes have been kicked off the network as SECIO has been removed. So, this can now (finally) move forward. |
Allows the protocolVersion field of the Idenfity protocol to be configured on the host. The current value is fixed for what appears to be for backwards compatibility with IPFS which makes it difficult for non-IPFS protocols to use the library. References: - libp2p#714 - libp2p#1137 - https://github.com/libp2p/rust-libp2p/blob/6855ab943bd7427a2135b46ad3d08f48fbf10872/protocols/identify/src/identify.rs#L125-L127
* Configure protocolVersion for Identify protocol Allows the protocolVersion field of the Idenfity protocol to be configured on the host. The current value is fixed for what appears to be for backwards compatibility with IPFS which makes it difficult for non-IPFS protocols to use the library. References: - #714 - #1137 - https://github.com/libp2p/rust-libp2p/blob/6855ab943bd7427a2135b46ad3d08f48fbf10872/protocols/identify/src/identify.rs#L125-L127 * Fix protocol version assignment Fix an issue where the protocolVersion string for the Identify protocol was wrongly being assigned the agentVersion string. * Delete trailing whitespace
This is now configurable via |
See:
go-libp2p/p2p/protocol/identify/id.go
Line 34 in c73d2b9
As explained in the following comment introduced in #702, IPFS needs this value to stay fixed, but libp2p is an independent project and many downstream users don't care about IPFS compatibility:
Proposed path forward:
LibP2PVersion
signals the go-libp2p version, and it's overridable but discouraged to do so. Only used by IPFS to force the backwards compatibility they need.UserAgent
announces the name/version of the application using libp2p. It is strongly encouraged for the application to set it, and it defaults toLibP2PVersion
if unset.The text was updated successfully, but these errors were encountered: