You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To create the Golang client, please check out the python and Rust clients to understand Pipelining and Ahnlich Message Protocol
Tasks
Generate Golang types from the type specs, this holds type definitions that are fundamental to how our TCP communication work. Checkout README on how to generate language definitions.
Should include an ai and db module as the client can be used to talk to the ai proxy or talk to the DB directly
It might include integration tests for the DB and AI modules.
Implement the Ahnlich Messaging protocol, that ensures proper message serialization and deserialization.
Given that we will introduce an AI layer, we want the client to cater to both, so for now, requests should be separated into AI and db modules. This is because later on, we will be generating some specific types and bindings
To establish TCP connections, A user should be able to define a database host and port to connect. We should then be able to provide them with pooling abstractions, where the user can select the maximum number of connections to open in a pool at once.
We would abstract away pipelining i.e. where we build and send multiple requests at once using a TCP connection from the pool
Add a proper README and Documentation for Godoc to the Golang client.
Badge on main README showing Golang client version
Setup CI/CD pipeline to run Golang integration tests, and Test deploy(using dry run) for package and set up a pipeline to deploy whenever ready. Look at existing workflows for rust and python clients for help
Enforce a golang format check on the CI/CD pipeline
The text was updated successfully, but these errors were encountered:
To create the Golang client, please check out the python and Rust clients to understand Pipelining and Ahnlich Message Protocol
Tasks
Generate Golang types from the type specs, this holds type definitions that are fundamental to how our TCP communication work. Checkout README on how to generate language definitions.
Should include an ai and db module as the client can be used to talk to the ai proxy or talk to the DB directly
It might include integration tests for the DB and AI modules.
Implement the Ahnlich Messaging protocol, that ensures proper message serialization and deserialization.
Given that we will introduce an AI layer, we want the client to cater to both, so for now, requests should be separated into AI and db modules. This is because later on, we will be generating some specific types and bindings
To establish TCP connections, A user should be able to define a database host and port to connect. We should then be able to provide them with pooling abstractions, where the user can select the maximum number of connections to open in a pool at once.
We would abstract away pipelining i.e. where we build and send multiple requests at once using a TCP connection from the pool
Add a proper README and Documentation for Godoc to the Golang client.
Badge on main README showing Golang client version
Setup CI/CD pipeline to run Golang integration tests, and Test deploy(using dry run) for package and set up a pipeline to deploy whenever ready. Look at existing workflows for rust and python clients for help
Enforce a golang format check on the CI/CD pipeline
The text was updated successfully, but these errors were encountered: