Skip to content
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

feature: share encoding versioning #759

Closed
Tracked by #514
liamsi opened this issue May 24, 2022 · 7 comments
Closed
Tracked by #514

feature: share encoding versioning #759

liamsi opened this issue May 24, 2022 · 7 comments

Comments

@liamsi
Copy link
Member

liamsi commented May 24, 2022

Summary

We may want to consider versioning the shares in order to allow for backwards-compatibility for on-chain smart contracts or programs that need to parse the shares but are not upgradeable.

originally posted by @musalbas on #757

Problem Definition

see above

Proposal

A version byte per share?

@liamsi
Copy link
Member Author

liamsi commented May 24, 2022

I do think adding a byte on a per share level for very specific edge-cases is a optimizing for the wrong thing. But if this is a strict requirement, then yes, there is no way around this. If we already add some Meta Data to the share, we can actually look into putting this into CIDs instead as @Wondertan suggested.
Also I'd like to hear what @adlerjohn thinks about this.

@liamsi
Copy link
Member Author

liamsi commented May 24, 2022

backwards-compatibility for on-chain smart contracts

@musalbas: smart contracts can be upgraded, right?

programs that need to parse the shares but are not upgradeable

Maybe we should not design our use of block space around other people's bad design decisions? What is a non-upgradeable program that we should care about for instance?

@musalbas
Copy link
Member

@musalbas: smart contracts can be upgraded, right?

Not without hardforking unless they have upgrade keys (which everyone wants to avoid because that means the smart contract has a centralized point of failure)!

@adlerjohn
Copy link
Member

It's not needed unless we plan on changing this after mainnet launch. Anything before then can be broken at will.

@musalbas
Copy link
Member

Yes, we're talking about it possibly changing after mainnet.

@rootulp
Copy link
Collaborator

rootulp commented Aug 18, 2022

Safe to close this issue in favor of #839 ?

@rootulp
Copy link
Collaborator

rootulp commented Aug 29, 2022

Closing in favor of #839 and celestiaorg/celestia-app#659

@rootulp rootulp closed this as completed Aug 29, 2022
Repository owner moved this from TODO to Done in Celestia Node Aug 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Archived in project
Development

No branches or pull requests

4 participants