unitycatalog-rs icon indicating copy to clipboard operation
unitycatalog-rs copied to clipboard

feat: initial server skeleton

Open abhiaagarwal opened this issue 1 year ago • 5 comments

Contains the initial skeleton for server code. Only does routing, the business logic are left purposefully empty.

The goal with the Utoipa annotations is to have docs+code in the same place and to eventually host a swagger UI built as part of the build process.

abhiaagarwal avatar Jun 19 '24 20:06 abhiaagarwal

This looks like a great approach! Before we move forward, I'd like to reach a conclusion about where and how we will build our data models.

If we use prost to generate them from protobuf, I would prefer we migrate the models before we depend on them in the server.

abrassel avatar Jun 20 '24 04:06 abrassel

@abrassel absolutely, let me mark as a draft until we have a more concrete plan

abhiaagarwal avatar Jun 20 '24 05:06 abhiaagarwal

If we use prost to generate them from protobuf

Personally I am a big fan of protobuf to generate types, and it seems mlflow and others do this too. Right now I am re-writing delta-sharing-rs to take the same approach.

This is actually how I ended up here, since we have a need for a catalog api there as well and I wanted it to loom similar. So in case there is any help wanted in getting some protobuf type generation started - happy to help :).

roeap avatar Jul 07 '24 07:07 roeap

Hey @roeap ! Id recommend checking out the discussion we have open on this topic. I'm personally also partial to protobuf generation. If you wanted to write the protobuf definition it would be very helpful for the rust client I'm currently working on.

Do we have an existing protobuf definition in any of the sister projects?

abrassel avatar Jul 07 '24 07:07 abrassel

@abrassel - thanks, will do!

speaking of clients, I just opened #15 :).

roeap avatar Jul 07 '24 08:07 roeap