andreachild commented on code in PR #3215:
URL: https://github.com/apache/tinkerpop/pull/3215#discussion_r2380116695


##########
docs/src/upgrade/release-3.8.x.asciidoc:
##########
@@ -888,6 +874,41 @@ pinned variable is one which must remain bound to the 
current value. By paramete
 variable, as it can be substituted in the optimized traversal without any loss 
of meaning, however the variable "count"
 will be pinned as the optimized traversal is not valid for other values of 
"count".
 
+===== Decouple internal step state from `Configuring`/`Parameterizing` 
interfaces
+
+Previously `AddVertexStep`, `AddVertexStartStep`, `AddEdgeStep`, 
`AddEdgeStartStep`, and `AddPropertyStep` stored their
+internal state (id, label, properties, from/to vertices...) in a `Parameters` 
object which was exposed via the
+`Configuring` and `Parameterizing` interfaces. These interfaces are primarily 
intended to support with()-modulation, and
+thus these steps had weird unintended behaviors when combined with 
with()-modulation:
+
+[source,text]
+----
+gremlin> g.addV().with("name", "cole").valueMap()
+==>[name:[cole]]
+----
+
+This internal step state has now been decoupled from the `Configuring` and 
`Parameterizing` interfaces, which are now
+exclusively used for the purposes of with()-modulation. All accesses of these 
steps internal data must now go through

Review Comment:
   Can you be a bit more explicit about how users can identify which traversals 
need to be updated before upgrading? 
   
   Also it appears the breaking change affects not only users executing queries 
but also providers as well who are reading/modifying step data?



-- 
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: commits-unsubscr...@tinkerpop.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to