kartikey321 commented on PR #3451: URL: https://github.com/apache/tinkerpop/pull/3451#issuecomment-4753889682
Hi @spmallette @Cole-Greer, Thank you for the continued discussion and for pushing the Tinkubator structure , it makes the requirements and deliverables clear. Since my last update I've been working on the driver to directly address the points Cole raised. The changes are on a separate branch ([kartikey321/tinkerpop@dart-driver-java-parity](https://github.com/kartikey321/tinkerpop/tree/dart-driver-java-parity)) rather than pushed here, since the target path (`gremlin-dart/` vs `tinkubator/gremlin-dart/`) wasn't clear yet. Here's what's there: **1. Docker/build setup** The configuration now follows the Python pattern exactly - the test server uses the shared `docker/gremlin-test-server/Dockerfile` built from source rather than a bespoke image. A Maven `pom.xml` has also been added so the driver integrates into the standard TinkerPop build and test lifecycle (mirroring the Go module structure). **2. Feature tests → native GraphTraversal** The feature tests no longer submit raw Gremlin strings to the server. I implemented a Dart ANTLR visitor (`GremlinAntlrToDart`) that mirrors Java's `GremlinAntlrToJava` approach - the `Gremlin.g4` grammar is used at runtime to parse each scenario's string into a native `GraphTraversal`, which is then executed through the full Dart DSL. The feature tests now exercise the DSL, transport, and serialization end-to-end. **Other improvements:** - 7 correctness bugs fixed (found through adversarial review) - Unit test coverage above 95% (199 tests) - `dart analyze` clean with `analysis_options.yaml` - Integration test suite added, env-var gated (same pattern as Python/Go) - Two failing feature tests still being investigated - the `conjoin("+")` escaping case and the float tolerance case **On the Tinkubator path:** Given the dev list and Stephen's commit, it sounds like `tinkubator/gremlin-dart/` is the right home rather than a root-level `gremlin-dart/` module. Should I restructure and retarget this PR for that directory? Once it is confirmed I can make the changes. I want to make sure the framing and structure match what the community expects before making that change. Happy to move quickly on this once there's a clear direction. Thanks again. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
