spmallette commented on code in PR #3458:
URL: https://github.com/apache/tinkerpop/pull/3458#discussion_r3424055336


##########
docs/src/upgrade/release-4.x.x.asciidoc:
##########
@@ -100,6 +69,32 @@ GLVs (including the Java driver). This aligns with the 
embedded graph transactio
 partial work is discarded if the user forgets to call `commit()`. In Java 
(both remote and embedded mode), the behavior
 can still be overridden via `tx.onClose(Transaction.CLOSE_BEHAVIOR.COMMIT)`. 
The non-Java GLVs do not support
 configuring close behavior and always rollback.
+==== Traversal-Accepting Steps
+
+Steps and predicates that previously only accepted literal values now accept 
child traversals resolved per-traverser
+at runtime. This enables dynamic filtering, lookup, and mutation patterns 
without `where()`/`select()` workarounds.
+
+Affected steps: `has()`, `hasLabel()`, `V()`, `E()`, `property()`, `is()`, 
`where(P)`, `P.eq/neq/gt/lt/gte/lte()`,
+`P.within/without()`, and all `TextP` predicates.
+
+[source,groovy]
+----
+// Dynamic property comparison
+g.V().has("age", P.gt(__.V(1).values("age")))
+
+// Dynamic vertex lookup: resolve the ids of marko's friends, then look them 
up by id
+g.V(1).V(__.out("knows").id()).values("name")
+
+// Multi-source filtering with within()
+g.V().has("name", P.within(__.V(1).out("knows").values("name").fold(), 
__.constant("peter")))
+----
+
+Child traversals take only the first result (consistent with `by(traversal)` 
semantics). For `within()`/`without()`,
+use `fold()` to collect multiple values into a list.
+
+All child traversals must be read-only. Mutating steps (`addV`, `addE`, 
`drop`, `property`) inside child traversals
+are rejected at construction time with `IllegalArgumentException`. A 
`ChildTraversalVerificationStrategy` provides
+additional safety at strategy time.

Review Comment:
   Aren't there some JIRAs for this to reference?



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