kartikey321 opened a new pull request, #3451:
URL: https://github.com/apache/tinkerpop/pull/3451

   https://issues.apache.org/jira/browse/TINKERPOP-3251
   
   Introduces `gremlin-dart`, a new Dart language driver for Apache TinkerPop 
4.x.
   
   ## Design
   
   Follows the HTTP-only, GraphBinary v4 model used by other TinkerPop 4.x 
drivers:
   
   - **Transport**: HTTP POST via `dart:io` with chunked-encoding support for 
Netty HTTP trailers
   - **Serialization**: GraphBinary v4 (`application/vnd.graphbinary-v4.0`) — 
custom reader/writer, no external binary dependencies
   - **Query language**: gremlin-lang strings built by `GremlinLang`
   - **Bindings**: Parameters sent as a typed GraphBinary Map field (`0x0A`)
   - **DSL**: Full `GraphTraversalSource` + `GraphTraversal` (~80 steps), 
anonymous traversals via `__`, `P`/`TextP` predicates, all traversal strategies
   
   ## Structure
   
   ```
   gremlin-dart/
     lib/
       driver/          # Connection, Client, DriverRemoteConnection, 
RequestMessage
       process/         # GremlinLang, GraphTraversal DSL, traversal types
       structure/       # Graph types, GraphBinary reader/writer
     test/
       feature/         # Gherkin runner against live 4.0.0-beta.2 server
       unit/            # Offline GraphBinary encode/decode, DSL string 
generation
     tool/
       test_live.dart   # Manual smoke test (requires docker compose up)
     docker/            # Dockerfile + server config for integration tests
   ```
   
   ## Test results
   
   2121 / 2123 Gherkin feature tests pass against TinkerPop 4.0.0-beta.2.
   
   Two known failures are server-side, not client bugs:
   
   - `g_injectXnull_nullX_conjoinXplusX` — server throws on `conjoin(null, 
null)`
   - `g_withSackX2147483647iX_injectX0_5fX_sackXdivX_sack` — float32 rounding: 
server returns `4294967296.0f` vs expected `4294967294.0f`
   
   ## Running tests
   
   ```bash
   # Start server
   docker compose -f gremlin-dart/docker-compose.yml up -d --wait
   
   # Feature tests (requires server)
   dart test gremlin-dart/test/feature/
   
   # Unit tests (offline)
   dart test gremlin-dart/test/unit/
   ```
   
   ## Checklist
   - [x] Apache license header on all source files
   - [x] CHANGELOG entry added under TinkerPop 4.0.0
   - [x] `dart analyze` reports no issues
   - [x] 2121/2123 Gherkin feature tests pass against 4.0.0-beta.2
   - [x] No external dependencies beyond `uuid`
   


-- 
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]

Reply via email to