You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Manifests need to be versioned so we can have smoother upgrade paths when rolling out breaking changes (e.g. #865). Ideally we'd have a constant within Manifest itself which gets initialized to whatever version we're currently using, but that's not possible with Nim so we need to understand the safest way to implement it.
The text was updated successfully, but these errors were encountered:
I believe CIDs and the codex-manifest encoding come with some level of versioning.
Take a look here: https://github.com/vacp2p/nim-libp2p/blob/a3b8729cbe15682aaf6025405fbb812acbac5d2f/libp2p/cid.nim#L27
Now this is different from what I thought I remembered. But it does define 'our own' codex-manifest multiCodec.
I'm not sure how this solves the issue of versioning manifests, but I bet it's supposed to be a contribution factor.
CID versioning is related to CID's spec and it does not relate to our Manifest data structure at all. I am not sure if you can version codecs in CIDs, but I suspect that not, so I agree with @gmega that we should include versioning directly in the Manifest's themselves.
Ideally we'd have a constant within Manifest itself which gets initialized to whatever version we're currently using, but that's not possible with Nim so we need to understand the safest way to implement it.
I'm not sure what is meant by this? We can definitely initialize constants at compile time with defaults passed using the nim c -d: flag.
I agree however, that we do need a manifest version.
Manifests need to be versioned so we can have smoother upgrade paths when rolling out breaking changes (e.g. #865). Ideally we'd have a constant within
Manifest
itself which gets initialized to whatever version we're currently using, but that's not possible with Nim so we need to understand the safest way to implement it.The text was updated successfully, but these errors were encountered: