Sounds good! looking forward to it! I hope I can have some free cycles to
help review it.

On Tue, Jan 18, 2022 at 11:25 PM Lyndon Bauto
<[email protected]> wrote:

> Hi all,
>
> I am working on a Golang driver for TinkerPop. I will be working on it on
> my fork of TinkerPop
> <https://github.com/lyndonb-bq/tinkerpop/tree/gremlin-go>. I have laid out
> a plan for delivering it below. Each milestone will come to a main branch
> on the TinkerPop repo (branch yet to be made) that can be reviewed by
> anyone interested. If you would like to join in the development of the
> driver please let me know so we can make sure we are working on separate
> things as a couple others are already involved.
>
> Each milestone will come with a basic README that ought to have enough info
> for someone to try out the current features of the driver. If anyone has
> any comments or questions on the below plan, feel free to comment. Note -
> the first serialization format will be GraphBinary.
>
> *Milestone 1 - Basic Connectivity with String Traversals*
>
>    1. Allows string traversals to be sent and received
>    2. Returns results as a string
>
> *Milestone 2 - ResultSet and Programmatic Traversals*
>
>    1. Proper ResultSet returned (iterable results with proper objects,
>    might use channel since that is generally preferred in golang)
>    2. Programmatic traversal support (g.V().etc())
>
> *Milestone 3 - TinkerPop Build Infrastructure Integration*
>
>    1. Gremlin-Go will build in the TinkerPop build infrastructure
>    2. Gherkin test suite integration
>    3. Go translator written in Java
>    4. Docker integration
>
> *Milestone 4 - Sessions, Strategies, Translator, Remote Transactions*
>
>    1. TraversalStrategies and DriverRemoteConnection strategy hookups
>    2. Sessions implementation
>    3. Remote transactions
>
> *Milestone 5 - Advanced Driver Features and Configuration Options*
>
>    1. Connection pooling and load balancing
>    2. Custom header injection, keep alive, connection timeout, and
>    websocket compression
>    3. Authentication methods (IAM, kerberos)
>    4. GraphSON - Not sure if this will be required - it may be descoped.
>
> *Milestone 6 - Performance and Documentation*
>
>    1. Full documentation on par with other TinkerPop drivers
>    2. Performance tests and metrics on Driver performance
>
> --
> *Lyndon Bauto*
> Team Lead
> Bit Quill Technologies Inc.
> [email protected]
> https://www.bitquilltech.com
>

Reply via email to