[GitHub] [tinkerpop] robertdale opened a new pull request #1213: Reverts TINKERPOP-2289 resolve ip address

2019-11-05 Thread GitBox
robertdale opened a new pull request #1213: Reverts TINKERPOP-2289 resolve ip 
address
URL: https://github.com/apache/tinkerpop/pull/1213
 
 
   See:
   1.  [User 
list](https://groups.google.com/d/msg/gremlin-users/A9rr9jLh5AY/DLguF9QmAQAJ)
   2. [Dev list]()


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.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[tinkerpop] 01/01: Reverts TINKERPOP-2289 resolve ip address

2019-11-05 Thread rdale
This is an automated email from the ASF dual-hosted git repository.

rdale pushed a commit to branch revert_tinkerpop-2289
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit eaf39f434339122cd1974d8ef6a6f151568aa4d0
Author: Robert Dale 
AuthorDate: Tue Nov 5 22:39:40 2019 -0500

Reverts TINKERPOP-2289 resolve ip address
---
 gremlin-driver/pom.xml | 18 -
 .../apache/tinkerpop/gremlin/driver/Cluster.java   | 24 ---
 .../org/apache/tinkerpop/gremlin/driver/Host.java  |  3 +-
 .../apache/tinkerpop/gremlin/driver/HostTest.java  | 46 +-
 4 files changed, 10 insertions(+), 81 deletions(-)

diff --git a/gremlin-driver/pom.xml b/gremlin-driver/pom.xml
index 870bf6b..1bb7566 100644
--- a/gremlin-driver/pom.xml
+++ b/gremlin-driver/pom.xml
@@ -104,24 +104,6 @@ limitations under the License.
 hamcrest-all
 test
 
-
-org.powermock
-powermock-api-mockito
-1.6.2
-test
-
-
-org.powermock
-powermock-module-junit4
-1.6.2
-test
-
-
-org.powermock
-powermock-module-junit4-rule
-1.6.2
-test
-
 
 
 
diff --git 
a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Cluster.java 
b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Cluster.java
index b424c5a..113f081 100644
--- 
a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Cluster.java
+++ 
b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Cluster.java
@@ -54,7 +54,6 @@ import java.security.NoSuchAlgorithmException;
 import java.security.UnrecoverableKeyException;
 import java.security.cert.CertificateException;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
@@ -965,21 +964,13 @@ public final class Cluster {
 }
 
 /**
- * Adds an address representing a group of Gremlin Servers, which will 
be added to the list of servers a
- * {@link Client} will try to contact to send requests to. The address 
should be parseable by
- * {@code InetAddress#getAllByName(String)}. That's the only 
validation performed at this point.
- * No connection to the hosts is attempted.
- * 
- * Note that if the address argument is a hostname that resolves to 
multiple {@code INetAddress} objects that
- * happen to point to the same physical Gremlin Server instance the 
driver will think that it has more hosts
- * for it to send requests to than there are in reality. A common 
situation in which this issue may occur is
- * when IPv6 addressing is present as {@code 
InetAddress#getAllByName(String)} will return both the IPv6 and
- * the IPv4 addresses. In these cases, the issue can be resolved by 
simply using the IP address directly or
- * setting the Java system property {@code 
-Djava.net.preferIPv4Stack=true}.
+ * Adds the address of a Gremlin Server to the list of servers a 
{@link Client} will try to contact to send
+ * requests to.  The address should be parseable by {@link 
InetAddress#getByName(String)}.  That's the only
+ * validation performed at this point.  No connection to the host is 
attempted.
  */
 public Builder addContactPoint(final String address) {
 try {
-
this.addresses.addAll(Arrays.asList(InetAddress.getAllByName(address)));
+this.addresses.add(InetAddress.getByName(address));
 return this;
 } catch (UnknownHostException e) {
 throw new IllegalArgumentException(e.getMessage());
@@ -987,10 +978,9 @@ public final class Cluster {
 }
 
 /**
- * Add one or more addresses representing groups of Gremlin Servers, 
which will be added to the list of
- * servers a {@link Client} will try to contact to send requests to. 
The address should be parseable by
- * {@link InetAddress#getByName(String)}. That's the only validation 
performed at this point.
- * No connection to the host is attempted.
+ * Add one or more the addresses of a Gremlin Servers to the list of 
servers a {@link Client} will try to
+ * contact to send requests to.  The address should be parseable by 
{@link InetAddress#getByName(String)}.
+ * That's the only validation performed at this point.  No connection 
to the host is attempted.
  */
 public Builder addContactPoints(final String... addresses) {
 for (String address : addresses)
diff --git 
a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Host.java 
b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Host.java
index 5fd2b40..e225365 100644
--- 

[tinkerpop] branch revert_tinkerpop-2289 created (now eaf39f4)

2019-11-05 Thread rdale
This is an automated email from the ASF dual-hosted git repository.

rdale pushed a change to branch revert_tinkerpop-2289
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git.


  at eaf39f4  Reverts TINKERPOP-2289 resolve ip address

This branch includes the following new commits:

 new eaf39f4  Reverts TINKERPOP-2289 resolve ip address

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




[tinkerpop] 01/02: TINKERPOP-2235 Exposed the configuration option for null as a feature

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 289f9a89d1b127a939e9ac0574f7212576a0e938
Author: stephen 
AuthorDate: Tue Nov 5 16:04:37 2019 -0500

TINKERPOP-2235 Exposed the configuration option for null as a feature
---
 .../gremlin/tinkergraph/structure/TinkerGraph.java| 15 +++
 1 file changed, 15 insertions(+)

diff --git 
a/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
 
b/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
index 7e2cf46..16282ee 100644
--- 
a/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
+++ 
b/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
@@ -389,6 +389,11 @@ public final class TinkerGraph implements Graph {
 }
 
 @Override
+public boolean supportsNullPropertyValues() {
+return allowNullPropertyValues;
+}
+
+@Override
 public Features.VertexPropertyFeatures properties() {
 return vertexPropertyFeatures;
 }
@@ -415,6 +420,11 @@ public final class TinkerGraph implements Graph {
 }
 
 @Override
+public boolean supportsNullPropertyValues() {
+return allowNullPropertyValues;
+}
+
+@Override
 public boolean supportsCustomIds() {
 return false;
 }
@@ -453,6 +463,11 @@ public final class TinkerGraph implements Graph {
 }
 
 @Override
+public boolean supportsNullPropertyValues() {
+return allowNullPropertyValues;
+}
+
+@Override
 public boolean supportsCustomIds() {
 return false;
 }



[tinkerpop] branch TINKERPOP-2235 updated (36888dc -> 222b72d)

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a change to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git.


from 36888dc  TINKERPOP-2235 Added tests and Graph level null support
 new 289f9a8  TINKERPOP-2235 Exposed the configuration option for null as a 
feature
 new 222b72d  TINKERPOP-2235 Added upgrade and reference docs

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 CHANGELOG.asciidoc |  3 +
 .../reference/implementations-tinkergraph.asciidoc |  1 +
 docs/src/upgrade/release-3.5.x.asciidoc| 74 --
 .../gremlin/tinkergraph/structure/TinkerGraph.java | 15 +
 4 files changed, 87 insertions(+), 6 deletions(-)



[tinkerpop] 02/02: TINKERPOP-2235 Added upgrade and reference docs

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 222b72dee40c1cdf0036a9286a0f9382842987d3
Author: stephen 
AuthorDate: Tue Nov 5 16:05:11 2019 -0500

TINKERPOP-2235 Added upgrade and reference docs
---
 CHANGELOG.asciidoc |  3 +
 .../reference/implementations-tinkergraph.asciidoc |  1 +
 docs/src/upgrade/release-3.5.x.asciidoc| 74 --
 3 files changed, 72 insertions(+), 6 deletions(-)

diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 4e2642a..9dc385b 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -25,6 +25,9 @@ 
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 
 This release also includes changes from <>.
 
+* Allowed the possibility for the user of `null` in Gremlin.
+* Added a `Graph.Feature` for `supportsNullPropertyValues`.
+* Modified TinkerGraph to support `null` property values and can be configured 
to disable that feature.
 * Modified `null` handling in mutations to be consistent for a new `Vertex` as 
well as update to an existing one.
 * Upgraded to Apache Commons Configuration2.
 * Renamed `StoreStep` to `AggregateLocalStep`.
diff --git a/docs/src/reference/implementations-tinkergraph.asciidoc 
b/docs/src/reference/implementations-tinkergraph.asciidoc
index fe14d0f..e919bd4 100644
--- a/docs/src/reference/implementations-tinkergraph.asciidoc
+++ b/docs/src/reference/implementations-tinkergraph.asciidoc
@@ -121,6 +121,7 @@ TinkerGraph has several settings that can be provided on 
creation via `Configura
 |gremlin.tinkergraph.edgeIdManager |The `IdManager` implementation to use for 
edges.
 |gremlin.tinkergraph.vertexPropertyIdManager |The `IdManager` implementation 
to use for vertex properties.
 |gremlin.tinkergraph.defaultVertexPropertyCardinality |The default 
`VertexProperty.Cardinality` to use when `Vertex.property(k,v)` is called.
+|gremlin.tinkergraph.allowNullPropertyValues |A boolean value that determines 
whether or not `null` property values are allowed and defaults to `true`.
 |gremlin.tinkergraph.graphLocation |The path and file name for where 
TinkerGraph should persist the graph data. If a
 value is specified here, the `gremlin.tinkergraph.graphFormat` should also be 
specified.  If this value is not
 included (default), then the graph will stay in-memory and not be 
loaded/persisted to disk.
diff --git a/docs/src/upgrade/release-3.5.x.asciidoc 
b/docs/src/upgrade/release-3.5.x.asciidoc
index cd04b4e..cf0ee67 100644
--- a/docs/src/upgrade/release-3.5.x.asciidoc
+++ b/docs/src/upgrade/release-3.5.x.asciidoc
@@ -60,7 +60,6 @@ org.apache.commons.configuration.*
 
 to
 
-
 [source,text]
 
 org.apache.commons.configuration2.*
@@ -73,10 +72,61 @@ upgrade information can be found in the 
link:https://commons.apache.org/proper/c
 
 See: link:https://issues.apache.org/jira/browse/TINKERPOP-2185[TINKERPOP-2185]
 
- addV() and null
+ Use of null
+
+Gremlin has traditionally disallowed `null` as a value in traversals and not 
always in consistent ways:
+
+[source,text]
+
+gremlin> g.inject(1, null, null, 2, null)
+java.lang.NullPointerException
+Type ':help' or ':h' for help.
+Display stack trace? [yN]n
+gremlin> g.V().has('person','name','marko').property('age', null)
+The AddPropertyStep does not have a provided value: 
AddPropertyStep({key=[age]})
+Type ':help' or ':h' for help.
+Display stack trace? [yN]
+gremlin> g.addV("person").property("name", 'stephen').property("age", null)
+==>v[13]
+gremlin> g.V().has('person','name','stephen').elementMap()
+==>[id:13,label:person,name:stephen]
+gremlin> g.V().constant(null)
+gremlin>
+
+
+Note how `null` can produce exception behavior or act as a filter. For 3.5.0, 
TinkerPop has not only made `null` usage
+consistent, but has also made it an allowable value within a `Traversal`:
+
+[source,text]
+
+gremlin> g.inject(1, null, null, 2, null)
+==>1
+==>null
+==>null
+==>null
+==>2
+gremlin> g.addV("person").property("name", 'stephen').property("age", null)
+==>v[13]
+gremlin> g.V().has('person','name','stephen').elementMap()
+==>[id:13,label:person,name:stephen,age:null]
+gremlin> g.V().has('person','age',null)
+==>v[13]
+gremlin> g.V().constant(null)
+==>null
+==>null
+==>null
+==>null
+==>null
+==>null
+
+
+Note that the above examples use TinkerGraph which now supports `null` as a 
property value (though it can be configured
+to work in the prior fashion) and all graphs may not support this feature (for 
example, Neo4j does not). Please be
+sure to check the new `supportsNullPropertyValues()` feature (or their 
documentation) to determine if the `Graph`
+implementation allows `null` in this same fashion.
 
-There was a bit of inconsistency in the handling of `null` in calls to 
`property()` depending on the type of mutation
-being executed demonstrated as 

[tinkerpop] branch TINKERPOP-2235 updated: TINKERPOP-2235 Added tests and Graph level null support

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git


The following commit(s) were added to refs/heads/TINKERPOP-2235 by this push:
 new 36888dc  TINKERPOP-2235 Added tests and Graph level null support
36888dc is described below

commit 36888dc643855602a5417a4587ce75d182caf9cb
Author: stephen 
AuthorDate: Tue Nov 5 15:26:13 2019 -0500

TINKERPOP-2235 Added tests and Graph level null support

The problem that reared its head here is in JavaTranslator (and likely 
GroovyTranslator) as well where the overloads of Gremlin steps become ambiguous 
when null is used. Left a big blob comment in JavaTranslator where I came up 
with a possibly reasonable solution for right now. Added a Graph Feature for 
null support in property values. Allowed TinkerGraph to support it by default 
but added a configuration to turn that support off. Neo4j does not support 
nulls so that feature is disabl [...]
---
 .../tinkerpop/gremlin/jsr223/JavaTranslator.java   | 17 -
 .../gremlin/process/computer/VertexComputeKey.java |  2 +-
 .../apache/tinkerpop/gremlin/structure/Graph.java  | 18 +
 .../gremlin/structure/util/ElementHelper.java  | 14 ++--
 .../gremlin/structure/util/star/StarGraph.java | 16 ++---
 .../gremlin/structure/util/ElementHelperTest.java  | 23 +++---
 gremlin-test/features/map/AddEdge.feature  | 28 
 gremlin-test/features/map/AddVertex.feature| 25 +++
 gremlin-test/features/map/Constant.feature | 17 -
 .../process/traversal/step/map/AddEdgeTest.java| 30 
 .../process/traversal/step/map/AddVertexTest.java  | 24 +++
 .../process/traversal/step/map/ConstantTest.java   | 15 +++-
 .../tinkerpop/gremlin/structure/PropertyTest.java  | 84 +++---
 .../gremlin/neo4j/structure/Neo4jEdge.java |  2 +-
 .../gremlin/neo4j/structure/Neo4jGraph.java| 12 +++-
 .../gremlin/neo4j/structure/Neo4jVertex.java   |  4 +-
 .../process/computer/TinkerGraphComputerView.java  |  2 +-
 .../gremlin/tinkergraph/structure/TinkerEdge.java  |  4 +-
 .../gremlin/tinkergraph/structure/TinkerGraph.java |  5 +-
 .../tinkergraph/structure/TinkerHelper.java|  2 +-
 .../gremlin/tinkergraph/structure/TinkerIndex.java | 48 +
 .../tinkergraph/structure/TinkerProperty.java  |  5 +-
 .../tinkergraph/structure/TinkerVertex.java|  6 +-
 .../structure/TinkerVertexProperty.java|  7 +-
 24 files changed, 346 insertions(+), 64 deletions(-)

diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
index 515bc93..bb9273c 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
@@ -226,13 +226,24 @@ public final class JavaTranslator VertexProperty property(final String key, final V value, 
final Object... keyValues) {
-ElementHelper.validateProperty(key, value);
-ElementHelper.legalPropertyKeyValueArray(keyValues);
+ElementHelper.validateProperty(true, key, value);
+ElementHelper.legalPropertyKeyValueArray(true, keyValues);
 return this.property(VertexProperty.Cardinality.single, key, 
value, keyValues);
 }
 
 Edge addOutEdge(final String label, final Vertex inVertex, final 
Object... keyValues) {
 ElementHelper.validateLabel(label);
-ElementHelper.legalPropertyKeyValueArray(keyValues);
+ElementHelper.legalPropertyKeyValueArray(true, keyValues);
 if (null == this.outEdges)
 this.outEdges = new HashMap<>();
 List outE = this.outEdges.get(label);
@@ -436,7 +436,7 @@ public final class StarGraph implements Graph, Serializable 
{
 
 Edge addInEdge(final String label, final Vertex outVertex, final 
Object... keyValues) {
 ElementHelper.validateLabel(label);
-ElementHelper.legalPropertyKeyValueArray(keyValues);
+ElementHelper.legalPropertyKeyValueArray(true, keyValues);
 if (null == this.inEdges)
 this.inEdges = new HashMap<>();
 List inE = this.inEdges.get(label);
@@ -452,7 +452,7 @@ public final class StarGraph implements Graph, Serializable 
{
 
 @Override
 public  VertexProperty property(final VertexProperty.Cardinality 
cardinality, final String key, V value, final Object... keyValues) {
-ElementHelper.legalPropertyKeyValueArray(keyValues);
+ElementHelper.legalPropertyKeyValueArray(true, keyValues);
 if (null == this.vertexProperties)
 this.vertexProperties = new HashMap<>();
 final List list = 

[GitHub] [tinkerpop] aboudreault commented on a change in pull request #1212: TINKERPOP-2309 Bump to Tornado 5.x

2019-11-05 Thread GitBox
aboudreault commented on a change in pull request #1212: TINKERPOP-2309 Bump to 
Tornado 5.x
URL: https://github.com/apache/tinkerpop/pull/1212#discussion_r342575569
 
 

 ##
 File path: gremlin-python/src/main/jython/setup.py
 ##
 @@ -46,7 +46,7 @@
 
 install_requires = [
 'aenum>=1.4.5',
-'tornado>=4.4.1,<5.0',
+'tornado>=5.1.1,<6.0',
 
 Review comment:
   Does gremlinpython work with tornado 5.0 ?
   
   If you know that gremlinpython works well with tornado 4.4.1 to <6.0, use 
`'tornado>=4.4.1,<6.0',`. That way, pip will pick the best match based on the 
environment. In example, if an environment already has tornado 4.4.1 installed 
(for some reasons or another package dependency), this version will be picked 
and pip wont break the env.


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.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


svn commit: r1869397 - /tinkerpop/site/index.html

2019-11-05 Thread spmallette
Author: spmallette
Date: Tue Nov  5 12:22:17 2019
New Revision: 1869397

URL: http://svn.apache.org/viewvc?rev=1869397=rev
Log:
Deploy TinkerPop homepage

Modified:
tinkerpop/site/index.html

Modified: tinkerpop/site/index.html
URL: 
http://svn.apache.org/viewvc/tinkerpop/site/index.html?rev=1869397=1869396=1869397=diff
==
--- tinkerpop/site/index.html (original)
+++ tinkerpop/site/index.html Tue Nov  5 12:22:17 2019
@@ -458,6 +458,7 @@ limitations under the License.
 https://github.com/FlorianHockmann/;>Florian 
Hockmann (2017 - PMC): .NET libraries, mailing list support.
 http://www.kelvinlawrence.net/;>Kelvin Lawrence 
(2017 - Committer): Documentation and mailing list support.
 http://harshthakkar.in/;>Harsh Thakkar (2018 - 
Committer): Gremlin-SPARQL module.
+https://www.linkedin.com/in/divijvaidya/;>Divij 
Vaidya (2019 - Committer): Gremlin server-client interaction.
  
  Inactive
  




[tinkerpop] 01/03: TINKERPOP-2235 Allow null to work within Gremlin

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 41450c20ba936a05c2b2ee921446049809e0dadd
Author: stephen 
AuthorDate: Mon Nov 4 15:56:11 2019 -0500

TINKERPOP-2235 Allow null to work within Gremlin

In previous versions null as a value was not allowed as a Traverser in a 
Traversal. It was part of a filter in DefaultTraversal that would automatically 
remove it from the stream. While this was a design choice for Gremlin to use 
null that way, it removed a bit of functionality from Gremlin that could have 
use at times. As it so happened, the use of null as a filter really didn't need 
to work that way as we already had a secondary filter which was even better for 
representing an Empty [...]
---
 .../tinkerpop/gremlin/jsr223/JavaTranslator.java   |  2 +-
 .../tinkerpop/gremlin/process/traversal/Order.java |  8 --
 .../gremlin/process/traversal/Traverser.java   |  9 ++-
 .../process/traversal/step/map/MapStep.java| 16 +++-
 .../process/traversal/step/map/SelectOneStep.java  |  7 -
 .../process/traversal/step/map/SelectStep.java |  6 +
 .../traversal/step/map/TraversalMapStep.java   |  6 +
 .../process/traversal/step/util/AbstractStep.java  |  5 ++--
 .../traversal/traverser/B_O_S_SE_SL_Traverser.java |  2 +-
 .../traverser/util/AbstractTraverser.java  |  7 ++---
 .../traversal/traverser/util/EmptyTraverser.java   |  9 ++-
 .../gremlin/process/traversal/OrderTest.java   |  4 +++
 .../traverser/util/EmptyTraverserTest.java}| 30 +-
 .../gremlin/util/iterator/ArrayIteratorTest.java   | 18 +++--
 .../groovy/jsr223/GroovyTranslatorProvider.java|  4 ---
 .../ParameterizedGroovyTranslatorProvider.java |  4 ---
 .../test/cucumber/feature-steps.js |  7 -
 .../gremlin-javascript/test/unit/graphson-test.js  |  5 
 .../gremlin_python/structure/io/graphbinaryV1.py   |  4 +++
 .../src/main/jython/radish/feature_steps.py|  6 -
 .../tests/structure/io/test_graphbinaryV1.py   |  9 +++
 .../jython/tests/structure/io/test_graphsonV2d0.py |  4 +++
 .../jython/tests/structure/io/test_graphsonV3d0.py |  4 +++
 .../GraphBinaryRemoteGraphComputerProvider.java|  6 +
 .../GraphSONRemoteGraphComputerProvider.java   |  6 +
 .../remote/GryoRemoteGraphComputerProvider.java|  6 +
 ...emoteGraphGroovyTranslatorComputerProvider.java |  6 +
 gremlin-test/features/sideEffect/Inject.feature| 14 ++
 .../process/traversal/CoreTraversalTest.java   | 12 -
 .../traversal/step/sideEffect/InjectTest.java  | 14 ++
 .../strategy/decoration/TranslationStrategy.java   |  4 ++-
 ...tractTinkerGraphGraphSONTranslatorProvider.java |  4 ---
 .../io/gryo/TinkerGraphGryoTranslatorProvider.java |  4 ---
 33 files changed, 168 insertions(+), 84 deletions(-)

diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
index e71f112..515bc93 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java
@@ -214,7 +214,7 @@ public final class JavaTranslator parameterClass = 
parameters[i].getType().getComponentType();
-if (argumentsCopy.length > i && 
!parameterClass.isAssignableFrom(argumentsCopy[i].getClass())) {
+if (argumentsCopy.length > i && 
argumentsCopy[i] != null && 
!parameterClass.isAssignableFrom(argumentsCopy[i].getClass())) {
 found = false;
 break;
 }
diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
index 34a61a7..1176f54 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
@@ -54,11 +54,13 @@ public enum Order implements Comparator {
  * @since 3.3.4
  */
 asc {
+private final Comparator ascendingComparator = 
Comparator.nullsFirst(Comparator.naturalOrder());
+
 @Override
 public int compare(final Object first, final Object second) {
 return first instanceof Number && second instanceof Number
 ? NumberHelper.compare((Number) first, (Number) second)
-: 
Comparator.naturalOrder().compare((Comparable) first, (Comparable) 
second);
+: ascendingComparator.compare((Comparable) first, 
(Comparable) 

[tinkerpop] 03/03: TINKERPOP-2235 Fixed null handling in .NET

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 6ee6dd191e057d9456d386c5b9610b74bbc27534
Author: stephen 
AuthorDate: Tue Nov 5 08:26:25 2019 -0500

TINKERPOP-2235 Fixed null handling in .NET
---
 .../src/Gremlin.Net/Process/Traversal/Bytecode.cs  |  6 ++
 .../Structure/IO/GraphSON/GraphSONWriter.cs| 18 +++---
 .../Structure/IO/GraphSON/GraphSONReaderTests.cs   |  4 ++--
 .../Structure/IO/GraphSON/GraphSONWriterTests.cs   |  4 ++--
 4 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Bytecode.cs 
b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Bytecode.cs
index e09c533..490e4e4 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Bytecode.cs
+++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Bytecode.cs
@@ -116,6 +116,12 @@ namespace Gremlin.Net.Process.Traversal
 if (variable != null)
 return new Binding(variable, ConvertArgument(argument, 
false));
 }
+
+if (null == argument)
+{
+return null;
+}
+
 if (IsDictionaryType(argument.GetType()))
 {
 var dict = new Dictionary();
diff --git 
a/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/GraphSONWriter.cs 
b/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/GraphSONWriter.cs
index 3268ae4..fc7765f 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/GraphSONWriter.cs
+++ b/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/GraphSONWriter.cs
@@ -113,13 +113,17 @@ namespace Gremlin.Net.Structure.IO.GraphSON
 /// A GraphSON representation of the object ready to be 
serialized.
 public dynamic ToDict(dynamic objectData)
 {
-var type = objectData.GetType();
-if (TryGetSerializerFor(out IGraphSONSerializer serializer, type))
-return serializer.Dictify(objectData, this);
-if (IsDictionaryType(type))
-return DictToGraphSONDict(objectData);
-if (IsCollectionType(type))
-return CollectionToGraphSONCollection(objectData);
+if (objectData != null)
+{
+var type = objectData.GetType();
+if (TryGetSerializerFor(out IGraphSONSerializer serializer, 
type))
+return serializer.Dictify(objectData, this);
+if (IsDictionaryType(type))
+return DictToGraphSONDict(objectData);
+if (IsCollectionType(type))
+return CollectionToGraphSONCollection(objectData);
+}
+
 return objectData;
 }
 
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONReaderTests.cs
 
b/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONReaderTests.cs
index 3a49143..15bd5f9 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONReaderTests.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONReaderTests.cs
@@ -260,13 +260,13 @@ namespace Gremlin.Net.UnitTest.Structure.IO.GraphSON
 [Theory, MemberData(nameof(Versions))]
 public void ShouldDeserializeList(int version)
 {
-var serializedValue = 
"[{\"@type\":\"g:Int32\",\"@value\":5},{\"@type\":\"g:Int32\",\"@value\":6}]";
+var serializedValue = 
"[{\"@type\":\"g:Int32\",\"@value\":5},{\"@type\":\"g:Int32\",\"@value\":6},null]";
 var reader = CreateStandardGraphSONReader(version);
 
 var jObject = JArray.Parse(serializedValue);
 var deserializedValue = reader.ToObject(jObject);
 
-Assert.Equal(new List {5, 6}, deserializedValue);
+Assert.Equal(new List {5, 6, null}, deserializedValue);
 }
 
 [Theory, MemberData(nameof(Versions))]
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONWriterTests.cs
 
b/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONWriterTests.cs
index 409776b..2eb7d51 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONWriterTests.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.UnitTest/Structure/IO/GraphSON/GraphSONWriterTests.cs
@@ -282,12 +282,12 @@ namespace Gremlin.Net.UnitTest.Structure.IO.GraphSON
 public void ShouldSerializeGList(int version)
 {
 var writer = CreateGraphSONWriter(version);
-var list = new List {5, 6};
+var list = new List {5, 6, null};
 
 var serializedGraphSON = writer.WriteObject(list);
 
 var expectedGraphSON = 
"{\"@type\":\"g:List\",\"@value\":[{\"@type\":\"g:Int32\",\"@value\":5}," +
-   

[tinkerpop] branch TINKERPOP-2235 updated (99e179e -> 6ee6dd1)

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a change to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git.


 discard 99e179e  TINKERPOP-2235 Fix C# gherkin test harness
 discard d280451  TINKERPOP-2235 wip - .NET still not working
 new 41450c2  TINKERPOP-2235 Allow null to work within Gremlin
 new c6cff4e  TINKERPOP-2235 Fix C# gherkin test harness
 new 6ee6dd1  TINKERPOP-2235 Fixed null handling in .NET

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (99e179e)
\
 N -- N -- N   refs/heads/TINKERPOP-2235 (6ee6dd1)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../src/Gremlin.Net/Process/Traversal/Bytecode.cs  |  6 ++
 .../Structure/IO/GraphSON/GraphSONWriter.cs| 18 +++---
 .../Structure/IO/GraphSON/GraphSONReaderTests.cs   |  4 ++--
 .../Structure/IO/GraphSON/GraphSONWriterTests.cs   |  4 ++--
 4 files changed, 21 insertions(+), 11 deletions(-)



[tinkerpop] 02/03: TINKERPOP-2235 Fix C# gherkin test harness

2019-11-05 Thread spmallette
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit c6cff4e4b5954e77310c0e339791d1141d11db23
Author: Jorge Bay Gondra 
AuthorDate: Tue Nov 5 12:26:58 2019 +0100

TINKERPOP-2235 Fix C# gherkin test harness

Fix C# gherkin test harness for method with params and generic type 
parameters.
Add null as token.
---
 .../Gherkin/CommonSteps.cs|  3 ++-
 .../Gherkin/TraversalEvaluation/LiteralParameter.cs   | 11 ---
 .../Gherkin/TraversalEvaluation/TraversalParser.cs| 19 +--
 3 files changed, 23 insertions(+), 10 deletions(-)

diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs
index d4b2aab..504f7a9 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs
@@ -63,7 +63,8 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
 {@"s\[(.*)\]", ToSet},
 {@"m\[(.+)\]", ToMap},
 {@"c\[(.+)\]", ToLambda},
-{@"t\[(.+)\]", ToT}
+{@"t\[(.+)\]", ToT},
+{"null", (_, __) => null}
 }.ToDictionary(kv => new Regex("^" + kv.Key + "$", 
RegexOptions.Compiled), kv => kv.Value);
 
 private static readonly IDictionary> 
NumericParsers =
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
index da0ac24..10a88a2 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
@@ -29,10 +29,15 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 /// 
 /// Represents a literal (number / boolean) that is allowed as a gremlin 
parameter.
 /// 
-public class LiteralParameter : ITokenParameter, 
IEquatable> where T : struct
+public class LiteralParameter : ITokenParameter, 
IEquatable>
 {
 public bool Equals(LiteralParameter other)
 {
+if (Value == null)
+{
+return other.Value == null;
+}
+
 return Value.Equals(other.Value);
 }
 
@@ -46,7 +51,7 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 
 public override int GetHashCode()
 {
-return Value.GetHashCode();
+return Value?.GetHashCode() ?? 0;
 }
 
 public T Value { get; }
@@ -79,7 +84,7 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 
 internal static class LiteralParameter
 {
-public static LiteralParameter Create(TType value) where 
TType : struct
+public static LiteralParameter Create(TType value)
 {
 return new LiteralParameter(value);
 }
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
index 105932f..fb84fdd 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
@@ -233,6 +233,7 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 var paramsInfo = method.GetParameters();
 var parameters = new object[paramsInfo.Length];
 genericParameterTypes = new Dictionary();
+
 for (var i = 0; i < paramsInfo.Length; i++)
 {
 var info = paramsInfo[i];
@@ -246,15 +247,18 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 // We've provided a value for parameter of a generic 
type, we can infer the
 // type of the generic argument based on the parameter.
 // For example, in the case of `Constant(E2 value)`
-// if we have the type of value we have the type of 
E2. 
+// if we have the type of value we have the type of E2.
 genericParameterTypes.Add(info.ParameterType.Name, 
tokenParameter.GetParameterType());
 }
 else if (IsParamsArray(info) && 
info.ParameterType.GetElementType().IsGenericParameter)
 {
 // Its a method where the type parameter comes from an 
params Array
 // e.g., Inject(params S[] value)
-

[GitHub] [tinkerpop] aboudreault commented on a change in pull request #1212: TINKERPOP-2309 Bump to Tornado 5.x

2019-11-05 Thread GitBox
aboudreault commented on a change in pull request #1212: TINKERPOP-2309 Bump to 
Tornado 5.x
URL: https://github.com/apache/tinkerpop/pull/1212#discussion_r342575569
 
 

 ##
 File path: gremlin-python/src/main/jython/setup.py
 ##
 @@ -46,7 +46,7 @@
 
 install_requires = [
 'aenum>=1.4.5',
-'tornado>=4.4.1,<5.0',
+'tornado>=5.1.1,<6.0',
 
 Review comment:
   Does gremlinpython works with tornado 5.0 ?
   
   If you know that gremlinpython works well with tornado 4.4.1 to <6.0, use 
`'tornado>=4.4.1,<6.0',`. That way, pip will pick the best match based on the 
environment. In example, if an environment already has tornado 4.4.1 installed 
(for some reasons or another package dependency), this version will be picked 
and pip wont break the env.


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.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[tinkerpop] branch master updated: minor format CTR

2019-11-05 Thread spmallette
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


The following commit(s) were added to refs/heads/master by this push:
 new a403f83  minor format CTR
a403f83 is described below

commit a403f837db5cdb3689c0acbe4e6caf14073efa08
Author: stephen 
AuthorDate: Tue Nov 5 07:16:51 2019 -0500

minor format CTR
---
 docs/site/home/index.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/site/home/index.html b/docs/site/home/index.html
index d495755..97970d2 100644
--- a/docs/site/home/index.html
+++ b/docs/site/home/index.html
@@ -317,7 +317,7 @@ limitations under the License.
 https://github.com/FlorianHockmann/;>Florian 
Hockmann (2017 - PMC): .NET libraries, mailing list support.
 http://www.kelvinlawrence.net/;>Kelvin Lawrence 
(2017 - Committer): Documentation and mailing list support.
 http://harshthakkar.in/;>Harsh Thakkar (2018 - 
Committer): Gremlin-SPARQL module.
-https://www.linkedin.com/in/divijvaidya/;>Divij 
Vaidya (2019 - Committer): Gremlin server-client interaction
+https://www.linkedin.com/in/divijvaidya/;>Divij 
Vaidya (2019 - Committer): Gremlin server-client interaction.
  
  Inactive
  



[tinkerpop] branch master updated: Add Divij Vaidya to the list of contributors. CTR

2019-11-05 Thread spmallette
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


The following commit(s) were added to refs/heads/master by this push:
 new 3fe3ca6  Add Divij Vaidya to the list of contributors. CTR
3fe3ca6 is described below

commit 3fe3ca6997e0c748cd8c6b7223243bc035082bdb
Author: stephen 
AuthorDate: Tue Nov 5 07:15:20 2019 -0500

Add Divij Vaidya to the list of contributors. CTR
---
 docs/site/home/index.html | 1 +
 1 file changed, 1 insertion(+)

diff --git a/docs/site/home/index.html b/docs/site/home/index.html
index 8e61c17..d495755 100644
--- a/docs/site/home/index.html
+++ b/docs/site/home/index.html
@@ -317,6 +317,7 @@ limitations under the License.
 https://github.com/FlorianHockmann/;>Florian 
Hockmann (2017 - PMC): .NET libraries, mailing list support.
 http://www.kelvinlawrence.net/;>Kelvin Lawrence 
(2017 - Committer): Documentation and mailing list support.
 http://harshthakkar.in/;>Harsh Thakkar (2018 - 
Committer): Gremlin-SPARQL module.
+https://www.linkedin.com/in/divijvaidya/;>Divij 
Vaidya (2019 - Committer): Gremlin server-client interaction
  
  Inactive
  



[tinkerpop] branch TINKERPOP-2235 updated: TINKERPOP-2235 Fix C# gherkin test harness

2019-11-05 Thread jorgebg
This is an automated email from the ASF dual-hosted git repository.

jorgebg pushed a commit to branch TINKERPOP-2235
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git


The following commit(s) were added to refs/heads/TINKERPOP-2235 by this push:
 new 99e179e  TINKERPOP-2235 Fix C# gherkin test harness
99e179e is described below

commit 99e179eceacb712b4e06ccf0ab4c71c73406f839
Author: Jorge Bay Gondra 
AuthorDate: Tue Nov 5 12:26:58 2019 +0100

TINKERPOP-2235 Fix C# gherkin test harness

Fix C# gherkin test harness for method with params and generic type 
parameters.
Add null as token.
---
 .../Gherkin/CommonSteps.cs|  3 ++-
 .../Gherkin/TraversalEvaluation/LiteralParameter.cs   | 11 ---
 .../Gherkin/TraversalEvaluation/TraversalParser.cs| 19 +--
 3 files changed, 23 insertions(+), 10 deletions(-)

diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs
index d4b2aab..504f7a9 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/CommonSteps.cs
@@ -63,7 +63,8 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
 {@"s\[(.*)\]", ToSet},
 {@"m\[(.+)\]", ToMap},
 {@"c\[(.+)\]", ToLambda},
-{@"t\[(.+)\]", ToT}
+{@"t\[(.+)\]", ToT},
+{"null", (_, __) => null}
 }.ToDictionary(kv => new Regex("^" + kv.Key + "$", 
RegexOptions.Compiled), kv => kv.Value);
 
 private static readonly IDictionary> 
NumericParsers =
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
index da0ac24..10a88a2 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/LiteralParameter.cs
@@ -29,10 +29,15 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 /// 
 /// Represents a literal (number / boolean) that is allowed as a gremlin 
parameter.
 /// 
-public class LiteralParameter : ITokenParameter, 
IEquatable> where T : struct
+public class LiteralParameter : ITokenParameter, 
IEquatable>
 {
 public bool Equals(LiteralParameter other)
 {
+if (Value == null)
+{
+return other.Value == null;
+}
+
 return Value.Equals(other.Value);
 }
 
@@ -46,7 +51,7 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 
 public override int GetHashCode()
 {
-return Value.GetHashCode();
+return Value?.GetHashCode() ?? 0;
 }
 
 public T Value { get; }
@@ -79,7 +84,7 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 
 internal static class LiteralParameter
 {
-public static LiteralParameter Create(TType value) where 
TType : struct
+public static LiteralParameter Create(TType value)
 {
 return new LiteralParameter(value);
 }
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
index 105932f..fb84fdd 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/TraversalEvaluation/TraversalParser.cs
@@ -233,6 +233,7 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 var paramsInfo = method.GetParameters();
 var parameters = new object[paramsInfo.Length];
 genericParameterTypes = new Dictionary();
+
 for (var i = 0; i < paramsInfo.Length; i++)
 {
 var info = paramsInfo[i];
@@ -246,15 +247,18 @@ namespace 
Gremlin.Net.IntegrationTest.Gherkin.TraversalEvaluation
 // We've provided a value for parameter of a generic 
type, we can infer the
 // type of the generic argument based on the parameter.
 // For example, in the case of `Constant(E2 value)`
-// if we have the type of value we have the type of 
E2. 
+// if we have the type of value we have the type of E2.
 genericParameterTypes.Add(info.ParameterType.Name, 
tokenParameter.GetParameterType());
 }
 else if (IsParamsArray(info) && 
info.ParameterType.GetElementType().IsGenericParameter)
 {