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

Backwards compatibility for serializing empty collections #682

Open
zxpectre opened this issue Aug 17, 2024 · 3 comments
Open

Backwards compatibility for serializing empty collections #682

zxpectre opened this issue Aug 17, 2024 · 3 comments

Comments

@zxpectre
Copy link

Hey @lisicky ! thanks for all the work you guys are putting for Chang HF. I'm updating GC using tag 12.0.0-beta.7 as time is running out.

Specifically wanted to ask about:

  • CSL now doesn't serialize empty collections for most witness types, in accordance with CDDL.

Can you provide backwards compatibility with those classes keeping the old behavior maybe using a property flag or some other idea?

Apps and even libraries built on top of CSL may break, past flexibility of the library encouraged us to serialize structures beyond direct protocol usage, for example for exportable witness containers for multisig. By using CSL one avoids reinventing the wheel and dealing with similar CBOR manually, also this means less external dependencies.

In general terms regarding backwards compatibility, maybe classes (data) could remain flexible but methods consuming them could apply rules and restrictions internally?

Thanks for the hard work!

@lisicky
Copy link
Contributor

lisicky commented Aug 24, 2024

Hi @zxpectre!
For some structures, we can provide a flag to force a specific serialization format if there is a reasonable use case. However, in the case of collections explicitly defined as non-empty in the CDDL, we cannot provide such a flag due to limitations in the Conway protocol.
If you have a specific use case that might be affected by the changes in the Conway protocol, please let me know.

@zxpectre
Copy link
Author

Thanks @lisicky, will try to spot all the issues these days and will come up to you again if I get blocked by any. Still working on Chang readiness, was a big work load for us.
Is there another channel where wallet builders could get updated on time and maybe share early feedback on future changes?

@lisicky
Copy link
Contributor

lisicky commented Sep 20, 2024

@zxpectre GitHub issues is the primary channel to have any discussion about CSL

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants