deven96/ahnlich

Rust Client Setup

deven96 opened this issue · 0 comments

  • Should include an ai and db module as client can be used to talk to the ai proxy or talk to the db directly
  • Might include integrations tests for the db and ai module
  • Given that we are going to introduce an ai layer, we want the client to cater for both, so for now, requests should be separated into ai and db modules. This is because later on we will be generating some ai specific types and bindings
  • To establish TCP connections, user should be able to able to define the host and port to connect. We should then be able to provide them pooling abstractions (perhaps use any existing library like r2d2). We would abstract away pipelining i.e where we send multiple requests at once using the query.ServerQuery to the selected tcp connection from the pool or allow sending a single request to any tcp connection in the pool. A pipeline has a reference to the original client as it needs it to be able to execute
  • Add a proper README to the Rust client and make sure the methods are well documented with docstrings for rustdocs.
  • Badge on main README showing Rust client version
  • Test deploy to crates.io with a dry run and set up pipeline to actually deploy whenever ready