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

Eliminate stored value serialization differences in native contracts #908

Closed
roman-khimov opened this issue Apr 26, 2020 · 1 comment
Closed
Assignees
Milestone

Comments

@roman-khimov
Copy link
Member

After #894 we'll have all the state properly stored in the native contract's data, but our serialization format will still differ from the one used by C# implementation and we can't ignore the difference here because of state changes (neo-project/neo#1383) that are expected to happen after preview2. If our serialization will be different we'll never match the state root hash with reference implementation and won't be able to interoperate.

The key difference is that C# implementation uses VM data type wrappers around state values, so that structures are serialized as VM structures, integers as VM integers, etc. We already have VM items serialization so it shouldn't be a problem to make proper wrappers for us.

@roman-khimov roman-khimov added this to the v0.90.0 milestone Apr 26, 2020
@roman-khimov
Copy link
Member Author

I think it'd be more appropriate to do this after #912 with StackItem move out of the vm.

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