This issue tracks reimplementing the work from stale PR #2957, which has been closed because it is too far out of date to merge directly.
Original pull request
What the original PR was trying to do
Description of Changes Related issues: 2379, 2604, 4031. To be able to do this: (previously, the derive macro would panic.) This is an early attempt! I need help in figuring out all details on how to properly implement deserialization. Also, currently this fails with errors like these: (resolved) API and ABI breaking changes Unknown. Expected complexity level and risk 3? Testing - [x] SpacetimeDB compiles - [x] The module builds - [x] Publishing works
Closure context
- @egormanga what types does this generate in C#, TypeScript, and Rust? I think we'd need those to have support before we merge this. I am going to close this PR and open a ticket with you as the assignee.
If you are motivated to get this feature in then we'd need a philosophy for languages that don't have tuples or tuple structs. In particular C# and C++. Something like regular product types with field names like _0, _1, etc could be acceptable.
Reimplementation notes
- Reimplement this work on top of current
master in a new PR.
- Keep the original PR linked as historical context and as a source of useful implementation ideas where still relevant.
This issue tracks reimplementing the work from stale PR #2957, which has been closed because it is too far out of date to merge directly.
Original pull request
What the original PR was trying to do
Description of Changes Related issues: 2379, 2604, 4031. To be able to do this: (previously, the derive macro would panic.) This is an early attempt! I need help in figuring out all details on how to properly implement deserialization.
Also, currently this fails with errors like these:(resolved) API and ABI breaking changes Unknown. Expected complexity level and risk 3? Testing - [x] SpacetimeDB compiles - [x] The module builds - [x] Publishing worksClosure context
If you are motivated to get this feature in then we'd need a philosophy for languages that don't have tuples or tuple structs. In particular C# and C++. Something like regular product types with field names like
_0,_1, etc could be acceptable.Reimplementation notes
masterin a new PR.