You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2018/11/12 17:06:18 UTC
[tinkerpop] 01/02: Merge branch 'TINKERPOP-2050' into tp33
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit e895a1d55e922fec0b59e775de908f68f05713d6
Merge: 4811f4e 40c5896
Author: Stephen Mallette <sp...@genoprime.com>
AuthorDate: Mon Nov 12 11:46:54 2018 -0500
Merge branch 'TINKERPOP-2050' into tp33
Conflicts:
docs/src/upgrade/release-3.3.x.asciidoc
CHANGELOG.asciidoc | 1 +
docs/src/reference/gremlin-applications.asciidoc | 15 +++++
docs/src/upgrade/release-3.3.x.asciidoc | 21 +++++++
.../tinkerpop/gremlin/console/Console.groovy | 2 +
.../console/commands/BytecodeCommand.groovy | 64 ++++++++++++++++++++++
.../console/commands/BytecodeCommand.properties | 20 +++++++
6 files changed, 123 insertions(+)
diff --cc CHANGELOG.asciidoc
index 4f6c9d6,e652da9..f19ff82
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@@ -25,12 -25,9 +25,13 @@@ image::https://raw.githubusercontent.co
This release also includes changes from <<release-3-2-11, 3.2.11>>.
+ * Added `:bytecode` command to help developers debugging `Bytecode`-based traversals.
* Fixed `PersistedOutputRDD` to eager persist RDD by adding `count()` action calls.
-* gremlin-python: the graphson deserializer for g:Set should return a python set
+* Deserialized `g:Set` to a Python `Set` in GraphSON in `gremlin-python`.
+* Display the remote stack trace in the Gremlin Console when scripts sent to the server fail.
+* Added `AnonymousTraversalSource` which provides a more unified means of constructing a `TraversalSource`.
+* Changed behavior of GraphSON deserializer in gremlin-python such that `g:Set` returns a Python `Set`.
+* Changed behavior of `iterate()` in Python, Javascript and .NET to send `none()` thus avoiding unnecessary results being returned.
[[release-3-3-4]]
=== TinkerPop 3.3.4 (Release Date: October 15, 2018)
diff --cc docs/src/upgrade/release-3.3.x.asciidoc
index caa65c2,f821aa5..3dd91fd
--- a/docs/src/upgrade/release-3.3.x.asciidoc
+++ b/docs/src/upgrade/release-3.3.x.asciidoc
@@@ -29,33 -29,27 +29,54 @@@ Please see the link:https://github.com/
=== Upgrading for Users
+==== AnonymousTraversalSource
+
+The `AnonymousTraversalSource` provides for a more unified syntax for `TraversalSource` construction by placing greater
+user emphasis on the creation of the source rather than the `Graph` it is connected to. It has a number of different
+static `traversal()` methods available and when imported as:
+
+[source,java]
+import static org.apache.tinkerpop.gremlin.process.traversal.AnonymousTraversalSource.traversal;
+
+allows `TraversalSource` construction syntax such as:
+
+[source,text]
+----
+gremlin> g = traversal().withGraph(TinkerFactory.createModern())
+==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
+gremlin> g = traversal().withRemote('conf/remote-graph.properties')
+==>graphtraversalsource[emptygraph[empty], standard]
+gremlin> g = traversal().withRemote(DriverRemoteConnection.using('localhost',8182))
+==>graphtraversalsource[emptygraph[empty], standard]
+----
+
+Typically, this syntax is used for "remote" traversal construction for bytecode based requests, but has the option to
+bind a local `Graph` instance to it as well. It doesn't save much typing to do so obviously, so it may not be best
+used in that situation. Python, Javascript and .NET have similar syntax.
+
+See: link:https://issues.apache.org/jira/browse/TINKERPOP-2078[TINKERPOP-2078]
+
+ ==== Bytecode Command
+
+ The Gremlin Console now has a new `:bytecode` command to help users work more directly with Gremlin bytecode. The
+ command is more of a debugging tool than something that would be used for every day purposes. It is sometimes helpful
+ to look at Gremlin bytecode directly and the process for viewing it in human readable format is not a single step
+ process. It is also not immediately clear how to convert bytecode to a Gremlin string. The `:bytecode` command aims to
+ help with both of these issues:
+
+ [source,text]
+ ----
+ gremlin> g = TinkerFactory.createModern().traversal()
+ ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
+ gremlin> :bytecode from g.V().out('knows') <1>
+ ==>{"@type":"g:Bytecode","@value":{"step":[["V"],["out","knows"]]}}
+ gremlin> :bytecode translate g {"@type":"g:Bytecode","@value":{"step":[["V"],["out","knows"]]}} <2>
+ ==>g.V().out("knows")
+ ----
+
+ See: link:https://issues.apache.org/jira/browse/TINKERPOP-2050[TINKERPOP-2050],
+ link:http://tinkerpop.apache.org/docs/3.3.5/reference/#_console_commands[Reference Documentation - Console Commands]
+
== TinkerPop 3.3.4
*Release Date: October 15, 2018*