Skip to content

Conversation

@drebelsky
Copy link
Contributor

@drebelsky drebelsky commented Dec 16, 2025

Draft resolves #5041. Will add notes later, but definitely needs some work

@drebelsky
Copy link
Contributor Author

drebelsky commented Dec 16, 2025

Brief notes: Besides not building (in CI—it works for me locally), I'm not sure about the double serialization flow (Cereal XDR to bytes -> rust bytes to XDR to JSON). There's also some oddity with picking the right version of rs-stellar-xdr that I haven't fully sorted through, and I don't love the interface with passing the type as a string. All of the ways I could think of for the interface would probably benefit from some level of codegen (e.g., export an enum from rust, codegen the corresponding types in C++ and the parser in rust (could maybe do in the rs-stellar-xdr repo)), although that feels a little ugly. Given this, I'm leaning toward just making sure we have the cereal_overrides for loading corresponding to our archives. (And then, we could add an offline command and some tests to makes sure the flow doesn't lose data.)

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

Successfully merging this pull request may close these issues.

Use rs-stellar-xdr instead of cereal for XDR->JSON conversion

1 participant