Official or defacto IPFS protobuf source?

Does anyone maintain a repo of Protobuf for IPFS? The closest we’ve found, in github.com/ipfs, is incomplete, scattered in multiple repos, and Go-specific.

Protobuf for what exactly? IPFS has many parts.

Right, and it would be helpful to have the protobuf of the many parts in one, versioned location. The pace is still pretty fast now, but will be useful in future to know that IPFS vX.Y supports callers using protobuf vX.A - vX.Y?

No, that’s not helpful.

IPFS uses different libraries for different things and they are fully independent and re-used by other projects, so you need to look into the specific library to see what protobuf definitions it is using. I still don’t know which one you are looking for so it is very hard to help you.

Thank you for helping, @hector. I think you’re suggesting that the IPFS ecosystem should rely on language-specific libraries which must comply with the IPFS protocol. If that’s true, what processes or efforts exist to ensure the various libraries work with together? For example, a great deal of work is occurring to ensure Eth2 client libs interop correctly prior to (and after) mainnet launch.

thanks again.

I’m not talking about IPFS protocol itself, I’m talking about IPFS using libp2p, IPLD, and multiformats, each of them being different projects and each of them involving protobufs in one or other way.

IPFS implementations rely on specs (https://github.com/ipfs/specs/) and close collaboration (interop tests, weekly meetings), but maybe 80% of the interoperability is part of the other projects named above which have their own specs too.

1 Like