There are some outdated nodes at your records, please update them to recent version.
like only including nodes with version 5.4.x+? excluding alpha and beta nodes? those nodes do not belong to me and are discovered on Grin’s P2P, should i force it to not include nodes older than a specific version? but they work with updated nodes anyways, so i guess it wouldn’t be an issue.
Yes, its better to keep recent node versions, especially at seeds for better sync
done. now it only includes nodes with user agent prefix "MW/Grin " + version where version has to be 5.4.0+, i will update the minimum version from time to time.
But there are also valid peers running a Grin++ node. If anything, I would rather limit this to your node, or only to connected nodes.
it only shows connected nodes already, i might limit it to only my nodes then, but it would be a huge plus in sync speed right now because the syncing peer wouldn’t have to discover all the peers itself. or i just track Grin++ versions as well.
It would not be a bad idea to enforce a minimum protocol version in grin-server.toml.
handshake.rs
/// Select a protocol version here that we know is supported by both us and the remote peer.
///
/// Current strategy is to simply use `min(local, remote)`.
///
/// We can enforce "minimum" protocol version here in the future
/// by raising an error and forcing the connection to close.
///
fn negotiate_protocol_version(&self, other: ProtocolVersion) -> Result<ProtocolVersion, Error> {
let version = std::cmp::min(self.protocol_version, other);
Ok(version)
}