ipfs / ipfs/go-graphsync

Backward compatibility for graphsync 2.1 protocol

Open
#376 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
103
Forks
41
PR merge metrics
No merged PRs in 30d

Description

# Goals

If we are successful in building out the graphsync metadata requests, in order to ship it, we need to make it backward compatbile.

# Suggested Implementation

I am inclined to defer to Libp2p versioning, even though I think it makes sense to wrap messages in a 2_1 header, wrather than try to do versioning with wrappers.

The actions to take are:
- If I make a metadata only request to a peer, and in connecting we find out they only support 2.0 requests, just error.
- You really don't need to do anything on the responder side, as it should only get 2.1 requests from 2.1 peers.
- For all other types of requests, just downgrade to a 2.0 message if the peer only supports 2.0
- I think that's it.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.