delta-incubator / delta-sharing-rs

A Minimalistic Rust Implementation of Delta Sharing Server.
MIT License
77 stars 8 forks source link

feat: generate basic delta-sharing types 1/n #42

Closed roeap closed 1 month ago

roeap commented 2 months ago

This PR adds scaffolding to generate structs for the basic delta-sharing types from a protobuf definition.

While we are not (yet :)) building a gPRC service or expect clients to send data in protobuf format, it allows us to very easily reason about the types and comes at virtually no cost. All dependencies introduced by prost are ubiquitous in the rust ecosystem and almost guaranteed to end up in our dependencies.

The generated serde code already nicely handles conversion between rust style names (snake_case) to the names defines in the JSON payloads (camelCase).