[16/31] tinkerpop git commit: TINKERPOP-1857 Added new GLV min() test that came in after rebase

2018-02-14 Thread spmallette
TINKERPOP-1857 Added new GLV min() test that came in after rebase


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2735643f
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2735643f
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2735643f

Branch: refs/heads/TINKERPOP-1857
Commit: 2735643fb1811be3426900d2df64795430f9eedf
Parents: ade1daf
Author: Stephen Mallette 
Authored: Thu Feb 1 13:33:12 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/map/Min.feature | 11 +++
 1 file changed, 11 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2735643f/gremlin-test/features/map/Min.feature
--
diff --git a/gremlin-test/features/map/Min.feature 
b/gremlin-test/features/map/Min.feature
index 203a6f1..99d53dd 100644
--- a/gremlin-test/features/map/Min.feature
+++ b/gremlin-test/features/map/Min.feature
@@ -49,3 +49,14 @@ Feature: Step - min()
 Then the result should be unordered
   | result |
   | m[{"ripple":"d[1.0].d","lop":"d[0.2].d"}] |
+
+  Scenario: g_V_foo_injectX99X_min
+Given the modern graph
+And the traversal of
+  """
+  g.V().values("foo").inject(99L).min()
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[99].l |



[14/31] tinkerpop git commit: TINKERPOP-1857 Improved handling of empty graph in python glv tests

2018-02-14 Thread spmallette
TINKERPOP-1857 Improved handling of empty graph in python glv tests

Caches were hardcoded to the modern graph. For empty graph this caused hassles 
because the cache couldn't be initialized until after the graph initializer 
step was executed. Still a bit messy due to cut/paste issues. Need to clean 
that up at a later point.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/a1d04032
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/a1d04032
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/a1d04032

Branch: refs/heads/TINKERPOP-1857
Commit: a1d040329e1da734f1af46513e36fd941f3e15b0
Parents: 1425f29
Author: Stephen Mallette 
Authored: Thu Dec 28 11:18:38 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 .../src/main/jython/radish/feature_steps.py | 78 +++-
 .../src/main/jython/radish/terrain.py   |  7 +-
 2 files changed, 63 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a1d04032/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index 3de641e..e247b25 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -36,6 +36,11 @@ regex_or = re.compile(r"([(.,\s])or\(")
 regex_true = re.compile(r"(true)")
 regex_false = re.compile(r"(false)")
 
+outV = __.outV
+label = __.label
+inV = __.inV
+project = __.project
+tail = __.tail
 
 ignores = [
 "g.V(v1Id).out().inject(v2).values(\"name\")"  # bug in attachment won't 
connect v2
@@ -44,6 +49,7 @@ ignores = [
 
 @given("the {graph_name:w} graph")
 def choose_graph(step, graph_name):
+step.context.graph_name = graph_name
 step.context.g = 
Graph().traversal().withRemote(step.context.remote_conn[graph_name])
 
 
@@ -54,7 +60,12 @@ def initialize_graph(step):
 # just be sure that the traversal returns something to prove that it 
worked to some degree. probably
 # is overkill to try to assert the complete success of this init 
operation. presumably the test
 # suite would fail elsewhere if this didn't work which would help identify 
a problem.
-assert len(traversal.toList()) > 0
+result = traversal.toList()
+assert len(result) > 0
+
+# add the first result - if a map - to the bindings. this is useful for 
cases when parameters for
+# the test traversal need to come from the original graph initializer 
(i.e. a new graph is created
+# and you need the id of a vertex from that graph)
 
 
 @given("an unsupported test")
@@ -127,37 +138,38 @@ def nothing_happening(step):
 
 
 def _convert(val, ctx):
-if isinstance(val, dict): # 
convert dictionary keys/values
+graph_name = ctx.graph_name
+if isinstance(val, dict):   # 
convert dictionary keys/values
 n = {}
 for key, value in val.items():
 n[_convert(key, ctx)] = _convert(value, ctx)
 return n
-elif isinstance(val, unicode):# 
convert annoying python 2.x unicode nonsense
+elif isinstance(val, unicode):  # 
convert annoying python 2.x unicode nonsense
 return _convert(val.encode('utf-8'), ctx)
-elif isinstance(val, str) and re.match("^l\[.*\]$", val): # parse 
list
+elif isinstance(val, str) and re.match("^l\[.*\]$", val):   # 
parse list
 return list(map((lambda x: _convert(x, ctx)), val[2:-1].split(",")))
-elif isinstance(val, str) and re.match("^s\[.*\]$", val): # parse 
set
+elif isinstance(val, str) and re.match("^s\[.*\]$", val):   # 
parse set
 return set(map((lambda x: _convert(x, ctx)), val[2:-1].split(",")))
 elif isinstance(val, str) and re.match("^d\[.*\]\.[ilfdm]$", val):  # 
parse numeric
 return float(val[2:-3]) if val[2:-3].__contains__(".") else 
long(val[2:-3])
-elif isinstance(val, str) and re.match("^v\[.*\]\.id$", val): # parse 
vertex id
-return ctx.lookup_v["modern"][val[2:-4]].id
-elif isinstance(val, str) and re.match("^v\[.*\]\.sid$", val):# parse 
vertex id as string
-return ctx.lookup_v["modern"][val[2:-5]].id
-elif isinstance(val, str) and re.match("^v\[.*\]$", val): # parse 
vertex
-return ctx.lookup_v["modern"][val[2:-1]]
-elif isinstance(val, str) and re.match("^e\[.*\]\.id$", val): # parse 
edge id
-return ctx.lookup_e["modern"][val[2:-4]].id
- 

[31/31] tinkerpop git commit: JavaScript GLV: include Barrier and Pop in test traversal context

2018-02-14 Thread spmallette
JavaScript GLV: include Barrier and Pop in test traversal context


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2af60402
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2af60402
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2af60402

Branch: refs/heads/TINKERPOP-1857
Commit: 2af60402d49957c3bd28e515afb981b68c4baafa
Parents: 1e38023
Author: Jorge Bay Gondra 
Authored: Wed Feb 14 16:18:24 2018 +0100
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../javascript/gremlin-javascript/test/cucumber/feature-steps.js   | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2af60402/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
index 12bc835..9e12818 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
@@ -173,6 +173,7 @@ function getSandbox(g, parameters) {
   const sandbox = {
 g: g,
 __: __,
+Barrier: traversalModule.barrier,
 Cardinality: traversalModule.cardinality,
 Column: traversalModule.column,
 Direction: {
@@ -183,6 +184,7 @@ function getSandbox(g, parameters) {
 Order: traversalModule.order,
 P: traversalModule.P,
 Pick: traversalModule.pick,
+Pop: traversalModule.pop,
 Scope: traversalModule.scope,
 Operator: traversalModule.operator,
 T: traversalModule.t,



[18/31] tinkerpop git commit: TINKERPOP-1857 Generation of P for python was incorrect

2018-02-14 Thread spmallette
TINKERPOP-1857 Generation of P for python was incorrect

The template was generating not() bytecode with the python naming of not_(). 
There were also duplicate functions in the template that needed to be removed.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/c06e8a26
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/c06e8a26
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/c06e8a26

Branch: refs/heads/TINKERPOP-1857
Commit: c06e8a26be0bcf9a9749a6f812a13f5840deb25c
Parents: e96a2a6
Author: Stephen Mallette 
Authored: Thu Dec 28 15:00:54 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-python/glv/TraversalSource.template   | 14 --
 .../main/jython/gremlin_python/process/traversal.py   | 14 --
 2 files changed, 8 insertions(+), 20 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c06e8a26/gremlin-python/glv/TraversalSource.template
--
diff --git a/gremlin-python/glv/TraversalSource.template 
b/gremlin-python/glv/TraversalSource.template
index 66ea940..b6f5b9f 100644
--- a/gremlin-python/glv/TraversalSource.template
+++ b/gremlin-python/glv/TraversalSource.template
@@ -112,26 +112,20 @@ class P(object):
 self.operator = operator
 self.value = value
 self.other = other
-
 <% pmethods.each { method -> %>
 @staticmethod
 def <%= method %>(*args):
-return P("<%= toPython.call(method) %>", *args)
+return P("<%= toJava.call(method) %>", *args)
 <% } %>
 def and_(self, arg):
 return P("and", self, arg)
+
 def or_(self, arg):
 return P("or", self, arg)
+
 def __eq__(self, other):
 return isinstance(other, self.__class__) and self.operator == 
other.operator and self.value == other.value and self.other == other.other
-def __repr__(self):
-return self.operator + "(" + str(self.value) + ")" if self.other is 
None else self.operator + "(" + str(self.value) + "," + str(self.other) + ")"
-def and_(self, arg):
-return P("and", self, arg)
-def or_(self, arg):
-return P("or", self, arg)
-def __eq__(self, other):
-return isinstance(other, self.__class__) and self.operator == 
other.operator and self.value == other.value and self.other == other.other
+
 def __repr__(self):
 return self.operator + "(" + str(self.value) + ")" if self.other is 
None else self.operator + "(" + str(self.value) + "," + str(self.other) + ")"
 <% pmethods.findAll{!it.equals("clone")}.each { method -> %>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c06e8a26/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
--
diff --git a/gremlin-python/src/main/jython/gremlin_python/process/traversal.py 
b/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
index 69275fb..747ed81 100644
--- a/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
+++ b/gremlin-python/src/main/jython/gremlin_python/process/traversal.py
@@ -186,7 +186,6 @@ class P(object):
 self.value = value
 self.other = other
 
-
 @staticmethod
 def between(*args):
 return P("between", *args)
@@ -221,7 +220,7 @@ class P(object):
 
 @staticmethod
 def not_(*args):
-return P("not_", *args)
+return P("not", *args)
 
 @staticmethod
 def outside(*args):
@@ -241,18 +240,13 @@ class P(object):
 
 def and_(self, arg):
 return P("and", self, arg)
+
 def or_(self, arg):
 return P("or", self, arg)
+
 def __eq__(self, other):
 return isinstance(other, self.__class__) and self.operator == 
other.operator and self.value == other.value and self.other == other.other
-def __repr__(self):
-return self.operator + "(" + str(self.value) + ")" if self.other is 
None else self.operator + "(" + str(self.value) + "," + str(self.other) + ")"
-def and_(self, arg):
-return P("and", self, arg)
-def or_(self, arg):
-return P("or", self, arg)
-def __eq__(self, other):
-return isinstance(other, self.__class__) and self.operator == 
other.operator and self.value == other.value and self.other == other.other
+
 def __repr__(self):
 return self.operator + "(" + str(self.value) + ")" if self.other is 
None else self.operator + "(" + str(self.value) + "," + str(self.other) + ")"
 



[11/31] tinkerpop git commit: TINKERPOP-1857 Added full coverage of order() GLV tests

2018-02-14 Thread spmallette
TINKERPOP-1857 Added full coverage of order() GLV tests


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/314481e5
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/314481e5
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/314481e5

Branch: refs/heads/TINKERPOP-1857
Commit: 314481e5e7410cdd6812a5095f3db6e705ec7f81
Parents: 2735643
Author: Stephen Mallette 
Authored: Tue Feb 6 08:04:10 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/map/Order.feature | 193 +++
 .../gremlin/process/FeatureCoverageTest.java|   4 +-
 2 files changed, 196 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/314481e5/gremlin-test/features/map/Order.feature
--
diff --git a/gremlin-test/features/map/Order.feature 
b/gremlin-test/features/map/Order.feature
index 976906f..e7ff00c 100644
--- a/gremlin-test/features/map/Order.feature
+++ b/gremlin-test/features/map/Order.feature
@@ -130,3 +130,196 @@ Feature: Step - order()
   | m[{"a":"v[peter]","b":"v[lop]"}] |
   | m[{"a":"v[josh]","b":"v[ripple]"}] |
   | m[{"a":"v[josh]","b":"v[lop]"}] |
+
+  Scenario: g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name
+Given the modern graph
+And the traversal of
+  """
+  g.V().both().hasLabel("person").order().by("age", 
Order.decr).limit(5).values("name")
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | peter  |
+  | josh  |
+  | josh  |
+  | josh |
+  | marko  |
+
+  Scenario: g_V_properties_order_byXkey_decrX_key
+Given the modern graph
+And the traversal of
+  """
+  g.V().properties().order().by(T.key, Order.decr).key()
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | name   |
+  | name   |
+  | name   |
+  | name   |
+  | name   |
+  | name   |
+  | lang   |
+  | lang   |
+  | age|
+  | age|
+  | age|
+  | age|
+
+  Scenario: g_V_hasLabelXpersonX_order_byXvalueXageX__decrX_name
+Given the modern graph
+And using the parameter l1 defined as "c[it.value('age')]"
+And the traversal of
+  """
+  g.V().hasLabel("person").order().by(l1, Order.decr).values("name")
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | peter  |
+  | josh   |
+  | marko  |
+  | vadas  |
+
+  Scenario: 
g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_orderXlocalX_byXvaluesX
+Given the modern graph
+And the traversal of
+  """
+  
g.V().hasLabel("person").group().by("name").by(__.outE().values("weight").sum()).order(Scope.local).by(Column.values)
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | 
m[{"vadas":"d[0].d","peter":"d[0.2].d","josh":"d[1.4].d","marko":"d[1.9].d"}] |
+
+  Scenario: g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX
+Given the modern graph
+And the traversal of
+  """
+  
g.V().local(__.bothE().values("weight").fold()).order().by(__.sum(Scope.local), 
Order.decr)
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | l[d[1.0].f,d[0.4].f,d[1.0].f] |
+  | l[d[0.4].f,d[0.5].f,d[1.0].f] |
+  | l[d[0.4].f,d[0.4].f,d[0.2].f] |
+  | l[d[1.0].f]   |
+  | l[d[0.5].f]   |
+  | l[d[0.2].f]   |
+
+  Scenario: g_V_group_byXlabelX_byXname_order_byXdecrX_foldX
+Given the modern graph
+And the traversal of
+  """
+  
g.V().group().by(T.label).by(__.values("name").order().by(Order.decr).fold())
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | m[{"software":"l[ripple,lop]","person":"l[vadas,peter,marko,josh]"}]  |
+
+  Scenario: 
g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX
+Given the modern graph
+And the traversal of
+  """
+  
g.V().hasLabel("person").group().by("name").by(__.outE().values("weight").sum()).unfold().order().by(Column.values,
 Order.decr)
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | m[{"marko":"d[1.9].d"}]  |
+  | m[{"josh":"d[1.4].d"}]  |
+  | m[{"peter":"d[0.2].d"}]  |
+  | m[{"vadas":"d[0].d"}]  |
+
+  Scenario: 
g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX
+Given the modern graph
+And the traversal of
+  

[21/31] tinkerpop git commit: TINKERPOP-1857 Full has() test suite for GLVs

2018-02-14 Thread spmallette
TINKERPOP-1857 Full has() test suite for GLVs

FeatureCoverageTest now passes for it. Added more consistency to the java test.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/b2c79d61
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/b2c79d61
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/b2c79d61

Branch: refs/heads/TINKERPOP-1857
Commit: b2c79d61c019223a94ac890980955c3b819c4bc1
Parents: 20b10c4
Author: Stephen Mallette 
Authored: Thu Dec 28 18:38:24 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/filter/Has.feature| 160 +++
 .../process/traversal/step/filter/HasTest.java  |   2 +-
 2 files changed, 161 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b2c79d61/gremlin-test/features/filter/Has.feature
--
diff --git a/gremlin-test/features/filter/Has.feature 
b/gremlin-test/features/filter/Has.feature
index f3ef5a0..17f2716 100644
--- a/gremlin-test/features/filter/Has.feature
+++ b/gremlin-test/features/filter/Has.feature
@@ -151,6 +151,45 @@ Feature: Step - has()
 
   Scenario: g_VXv2X_hasXage_gt_30X
 Given the modern graph
+And using the parameter v4Id defined as "v[josh].id"
+And using the parameter d30 defined as "d[30].i"
+And the traversal of
+  """
+  g.V(g.V(v4Id).next()).has("age", P.gt(d30))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[josh] |
+
+  Scenario: g_VX1X_out_hasXid_lt_3X
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter v3Id defined as "v[lop].id"
+And the traversal of
+  """
+  g.V(v1Id).out().has(T.id, P.lt(v3Id))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[vadas] |
+
+  Scenario: g_VX1AsStringX_out_hasXid_2AsStringX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].sid"
+And using the parameter v2Id defined as "v[vadas].sid"
+And the traversal of
+  """
+  g.V(v1Id).out().hasId(v2Id)
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[vadas] |
+
+  Scenario: g_VX1X_out_hasXid_2X
+Given the modern graph
 And using the parameter v2 defined as "v[josh]"
 And the traversal of
   """
@@ -174,6 +213,21 @@ Feature: Step - has()
   | result |
   | v[vadas] |
 
+  Scenario: g_VX1X_out_hasXid_2_3X
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter v2Id defined as "v[vadas].id"
+And using the parameter v3Id defined as "v[lop].id"
+And the traversal of
+  """
+  g.V(v1Id).out().hasId(v2Id, v3Id)
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[vadas] |
+  | v[lop] |
+
   Scenario: g_VX1X_out_hasXid_2AsString_3AsStringX
 Given the modern graph
 And using the parameter v1Id defined as "v[marko].sid"
@@ -354,6 +408,19 @@ Feature: Step - has()
   | v[josh] |
   | v[peter] |
 
+  Scenario: g_V_both_dedup_properties_hasKeyXageX_value
+Given the modern graph
+And the traversal of
+"""
+g.V().both().properties().dedup().hasKey("age").value()
+"""
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[29].i |
+  | d[27].i |
+  | d[32].i |
+  | d[35].i |
   Scenario: g_V_hasXage_withinX27X_count
 Given the modern graph
 And the traversal of
@@ -398,3 +465,96 @@ Feature: Step - has()
   | result |
   | d[2].l |
 
+
+  Scenario: g_V_both_dedup_properties_hasKeyXageX_hasValueXgtX30XX_value
+Given the modern graph
+And using the parameter d30 defined as "d[30].i"
+And the traversal of
+"""
+g.V().both().properties().dedup().hasKey("age").hasValue(P.gt(d30)).value()
+"""
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[32].i |
+  | d[35].i |
+
+  Scenario: g_V_hasNotXageX_name
+Given the modern graph
+And the traversal of
+"""
+g.V().hasNot("age").values("name")
+"""
+When iterated to list
+Then the result should be unordered
+  | result |
+  | lop |
+  | ripple |
+
+  Scenario: g_V_hasIdX1X_hasIdX2X
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter v2Id defined as "v[vadas].id"
+And the traversal of
+"""
+g.V().hasId(v1Id).hasId(v2Id)
+"""
+When 

[19/31] tinkerpop git commit: TINKERPOP-1857 Added ignore for a has() test in the python GLV tests

2018-02-14 Thread spmallette
TINKERPOP-1857 Added ignore for a has() test in the python GLV tests

Created TINKERPOP-1859 regarding bad bytecode generation for complex P instances


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/1f2530e8
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/1f2530e8
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/1f2530e8

Branch: refs/heads/TINKERPOP-1857
Commit: 1f2530e84c1b75e9ab8df775835be9b4afc59a35
Parents: c06e8a2
Author: Stephen Mallette 
Authored: Thu Dec 28 15:03:22 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-python/src/main/jython/radish/feature_steps.py | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1f2530e8/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index d5d3560..b61d5e0 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -43,7 +43,8 @@ project = __.project
 tail = __.tail
 
 ignores = [
-"g.V(v1Id).out().inject(v2).values(\"name\")"  # bug in attachment won't 
connect v2
+"g.V(v1Id).out().inject(v2).values(\"name\")",  # bug in attachment won't 
connect v2
+"g.V().hasLabel(\"person\").has(\"age\", 
P.not(P.lte(d10).and(P.not(P.between(d11, 
d20.and(P.lt(d29).or(P.eq(d35.values(\"name\")" # TINKERPOP-1859
]
 
 
@@ -92,11 +93,17 @@ def translate_traversal(step):
 
 @when("iterated to list")
 def iterate_the_traversal(step):
+if step.context.ignore:
+return
+
 step.context.result = map(lambda x: _convert_results(x), 
step.context.traversal.toList())
 
 
 @when("iterated next")
 def next_the_traversal(step):
+if step.context.ignore:
+return
+
 step.context.result = map(lambda x: _convert_results(x), 
step.context.traversal.next())
 
 



[20/31] tinkerpop git commit: TINKERPOP-1857 Rebased and added new union() test

2018-02-14 Thread spmallette
TINKERPOP-1857 Rebased and added new union() test


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/68669ea6
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/68669ea6
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/68669ea6

Branch: refs/heads/TINKERPOP-1857
Commit: 68669ea63f17fe517cfe5c3a049034e2de8062bb
Parents: c4fd3e1
Author: Stephen Mallette 
Authored: Wed Jan 24 09:53:27 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/branch/Union.feature | 14 ++
 1 file changed, 14 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/68669ea6/gremlin-test/features/branch/Union.feature
--
diff --git a/gremlin-test/features/branch/Union.feature 
b/gremlin-test/features/branch/Union.feature
index 564e6b5..2380246 100644
--- a/gremlin-test/features/branch/Union.feature
+++ b/gremlin-test/features/branch/Union.feature
@@ -137,4 +137,18 @@ Feature: Step - union()
   | d[1.9].d |
   | d[0].i   |
   | d[0].l   |
+  | d[1].l   |
+
+  Scenario: g_VX1_2X_localXunionXcountXX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter v2Id defined as "v[vadas].id"
+And the traversal of
+  """
+  g.V(v1Id, v2Id).local(union(count()))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[1].l   |
   | d[1].l   |
\ No newline at end of file



[27/31] tinkerpop git commit: TINKERPOP-1857 Ignored a few failing tests for purpose of this issue

2018-02-14 Thread spmallette
TINKERPOP-1857 Ignored a few failing tests for purpose of this issue

Will create a new issue specific to the JS GLV to resolve these ignored tests.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/58d93820
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/58d93820
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/58d93820

Branch: refs/heads/TINKERPOP-1857
Commit: 58d93820e654a2c81c85c13ea9134b7ea0d459f2
Parents: 2af6040
Author: Stephen Mallette 
Authored: Wed Feb 14 10:46:58 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../gremlin-javascript/test/cucumber/feature-steps.js   | 5 +
 1 file changed, 5 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/58d93820/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
index 9e12818..2bb6ef0 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
@@ -55,11 +55,16 @@ const parsers = [
 
 const ignoreReason = {
   lambdaNotSupported: 'Lambdas are not supported on gremlin-javascript',
+  needsFurtherInvestigation: '',
 };
 
 const ignoredScenarios = {
   // An associative array containing the scenario name as key, for example:
   // 'g_V_branchXlabel_eq_person': new 
IgnoreError(ignoreReason.lambdaNotSupported),
+  
'g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name':
 new IgnoreError(ignoreReason.needsFurtherInvestigation),
+  'g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX': new 
IgnoreError(ignoreReason.needsFurtherInvestigation),
+  
'g_V_asXaX_out_asXbX_whereXandXasXaX_outXknowsX_asXbX__orXasXbX_outXcreatedX_hasXname_rippleX__asXbX_inXknowsX_count_isXnotXeqX0X_selectXa_bX':
 new IgnoreError(ignoreReason.needsFurtherInvestigation),
+  
'g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_bothXknowsX_bothXknowsX_asXdX_whereXc__notXeqXaX_orXeqXd_selectXa_b_c_dX':
 new IgnoreError(ignoreReason.needsFurtherInvestigation),
 };
 
 defineSupportCode(function(methods) {



[10/31] tinkerpop git commit: TINKERPOP-1857 General test naming fixes and other inconsistencies

2018-02-14 Thread spmallette
TINKERPOP-1857 General test naming fixes and other inconsistencies


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/1425f294
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/1425f294
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/1425f294

Branch: refs/heads/TINKERPOP-1857
Commit: 1425f2948d5f54960ecf27dfacd6c020b7adcf72
Parents: 7f39b18
Author: Stephen Mallette 
Authored: Wed Dec 27 13:18:15 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/branch/Union.feature  |  2 +-
 gremlin-test/features/filter/Filter.feature | 24 ++
 gremlin-test/features/filter/Has.feature|  4 +-
 .../traversal/step/branch/LocalTest.java|  2 +-
 .../traversal/step/branch/RepeatTest.java   |  2 +-
 .../traversal/step/branch/UnionTest.java|  4 +-
 .../process/traversal/step/filter/AndTest.java  |  4 +-
 .../traversal/step/filter/FilterTest.java   |  9 ++-
 .../gremlin/process/FeatureCoverageTest.java| 78 +++-
 9 files changed, 117 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1425f294/gremlin-test/features/branch/Union.feature
--
diff --git a/gremlin-test/features/branch/Union.feature 
b/gremlin-test/features/branch/Union.feature
index 30eb53c..564e6b5 100644
--- a/gremlin-test/features/branch/Union.feature
+++ b/gremlin-test/features/branch/Union.feature
@@ -121,7 +121,7 @@ Feature: Step - union()
   | d[1.9].d |
   | d[1].l   |
 
-  Scenario: get_g_VX1_2X_localXunionXoutE_count__inE_count__outE_weight_sumXX
+  Scenario: g_VX1_2X_localXunionXoutE_count__inE_count__outE_weight_sumXX
 Given the modern graph
 And using the parameter v1Id defined as "v[marko].id"
 And using the parameter v2Id defined as "v[vadas].id"

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1425f294/gremlin-test/features/filter/Filter.feature
--
diff --git a/gremlin-test/features/filter/Filter.feature 
b/gremlin-test/features/filter/Filter.feature
index 76a5d7d..b552578 100644
--- a/gremlin-test/features/filter/Filter.feature
+++ b/gremlin-test/features/filter/Filter.feature
@@ -57,6 +57,30 @@ Feature: Step - filter()
   | v[ripple] |
   | v[lop]  |
 
+  Scenario: g_VX1X_filterXage_gt_30X
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter l1 defined as 
"c[it.get().property('age').orElse(0) > 30]"
+And the traversal of
+  """
+  g.V(v1Id).filter(l1)
+  """
+When iterated to list
+Then the result should be empty
+
+  Scenario: g_VX2X_filterXage_gt_30X
+Given the modern graph
+And using the parameter v2Id defined as "v[josh].id"
+And using the parameter l1 defined as 
"c[it.get().property('age').orElse(0) > 30]"
+And the traversal of
+  """
+  g.V(v2Id).filter(l1)
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[josh] |
+
   Scenario: g_VX1X_out_filterXage_gt_30X
 Given the modern graph
 And using the parameter v1Id defined as "v[marko].id"

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1425f294/gremlin-test/features/filter/Has.feature
--
diff --git a/gremlin-test/features/filter/Has.feature 
b/gremlin-test/features/filter/Has.feature
index 55b46a7..bdede6d 100644
--- a/gremlin-test/features/filter/Has.feature
+++ b/gremlin-test/features/filter/Has.feature
@@ -17,7 +17,7 @@
 
 Feature: Step - has()
 
-  Scenario: Use has() with P.gt()
+  Scenario: g_V_hasXage_gt_30X
 Given the modern graph
 And the traversal of
   """
@@ -29,7 +29,7 @@ Feature: Step - has()
   | v[josh] |
   | v[peter] |
 
-  Scenario: Use hasId() with P
+  Scenario: g_V_in_hasIdXneqX1XX
 Given the modern graph
 And using the parameter v1 defined as "v[marko].id"
 And the traversal of

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1425f294/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java
--
diff --git 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java
 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java
index c202a9c..faec45e 100644
--- 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java
+++ 

[26/31] tinkerpop git commit: TINKERPOP-1857 Added the new "sink" test for GLVs

2018-02-14 Thread spmallette
TINKERPOP-1857 Added the new "sink" test for GLVs

This involved adding "sink" infrastructure to the test server configuration and 
including it in the gherkin setups for each GLV


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7212253e
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7212253e
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7212253e

Branch: refs/heads/TINKERPOP-1857
Commit: 7212253e6ff962232c906705c14fa95067fd11b9
Parents: 58d9382
Author: Stephen Mallette 
Authored: Wed Feb 14 11:17:15 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../Gherkin/ScenarioData.cs |  2 +-
 .../gremlin-javascript/test/cucumber/world.js   |  2 +-
 gremlin-python/src/main/jython/radish/terrain.py|  4 ++--
 gremlin-server/src/test/scripts/generate-all.groovy |  4 +++-
 .../src/test/scripts/test-server-start.groovy   |  2 ++
 gremlin-test/features/branch/Repeat.feature | 16 
 6 files changed, 25 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7212253e/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
--
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
index ed767d5..77552f9 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
@@ -42,7 +42,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
 private static readonly Regex EdgeLRegex = new Regex("l=(.+?)[,}]", 
RegexOptions.Compiled);
 private static readonly Regex EdgeIRegex = new Regex("i=(.+?)[,}]", 
RegexOptions.Compiled);
 
-private static readonly string[] GraphNames = {"modern", "classic", 
"crew", "grateful"};
+private static readonly string[] GraphNames = {"modern", "classic", 
"crew", "grateful", "sink"};
 
 private static readonly IDictionary EmptyVertices =
 new ReadOnlyDictionary(new Dictionary());

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7212253e/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
index ae3f9a6..f531720 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
@@ -68,7 +68,7 @@ defineSupportCode(function (methods) {
 
   methods.BeforeAll(function () {
 // load all traversals
-const promises = ['modern', 'classic', 'crew', 'grateful', 
'empty'].map(graphName => {
+const promises = ['modern', 'classic', 'crew', 'grateful', 'sink', 
'empty'].map(graphName => {
   let connection = null;
   if (graphName === 'empty') {
 connection = helper.getConnection('ggraph');

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7212253e/gremlin-python/src/main/jython/radish/terrain.py
--
diff --git a/gremlin-python/src/main/jython/radish/terrain.py 
b/gremlin-python/src/main/jython/radish/terrain.py
index 9aed647..4db443e 100644
--- a/gremlin-python/src/main/jython/radish/terrain.py
+++ b/gremlin-python/src/main/jython/radish/terrain.py
@@ -34,7 +34,7 @@ def prepare_static_traversal_source(features, marker):
 # as the various traversal sources for testing do not change their data, 
there is no need to re-create remotes
 # and client side lookup data over and over. it can be created once for 
all tests and be reused.
 cache = {}
-for graph_name in (("modern", "gmodern"), ("classic", "gclassic"), 
("crew", "gcrew"), ("grateful", "ggrateful")):
+for graph_name in (("modern", "gmodern"), ("classic", "gclassic"), 
("crew", "gcrew"), ("grateful", "ggrateful"), ("sink", "gsink")):
 cache[graph_name[0]] = {}
 remote = __create_remote(graph_name[1])
 cache[graph_name[0]]["remote_conn"] = __create_remote(graph_name[1])
@@ -52,7 +52,7 @@ def prepare_static_traversal_source(features, marker):
 scenario.context.lookup_v = {}
 scenario.context.lookup_e = {}
 
-for graph_name in ("modern", "classic", "crew", "grateful"):
+for graph_name in 

[23/31] tinkerpop git commit: TINKERPOP-1857 Fixed a bad has() GLV test

2018-02-14 Thread spmallette
TINKERPOP-1857 Fixed a bad has() GLV test

Made test naming more consistent.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/97d4511c
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/97d4511c
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/97d4511c

Branch: refs/heads/TINKERPOP-1857
Commit: 97d4511c65ecb410b566a13b594aaa2786afe2ec
Parents: 5db5f21
Author: Stephen Mallette 
Authored: Wed Feb 7 08:19:26 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 gremlin-test/features/filter/Has.feature| 12 ++--
 .../gremlin/process/traversal/step/filter/HasTest.java  |  8 
 2 files changed, 10 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/97d4511c/gremlin-test/features/filter/Has.feature
--
diff --git a/gremlin-test/features/filter/Has.feature 
b/gremlin-test/features/filter/Has.feature
index 17f2716..ddf9984 100644
--- a/gremlin-test/features/filter/Has.feature
+++ b/gremlin-test/features/filter/Has.feature
@@ -127,12 +127,12 @@ Feature: Step - has()
 When iterated to list
 Then the result should be empty
 
-  Scenario: g_VX2X_hasXage_gt_30X
+  Scenario: g_VX4X_hasXage_gt_30X
 Given the modern graph
-And using the parameter v2Id defined as "v[josh].id"
+And using the parameter v4Id defined as "v[josh].id"
 And the traversal of
   """
-  g.V(v2Id).has("age", P.gt(30))
+  g.V(v4Id).has("age", P.gt(30))
   """
 When iterated to list
 Then the result should be unordered
@@ -149,13 +149,13 @@ Feature: Step - has()
 When iterated to list
 Then the result should be empty
 
-  Scenario: g_VXv2X_hasXage_gt_30X
+  Scenario: g_VXv4X_hasXage_gt_30X
 Given the modern graph
-And using the parameter v4Id defined as "v[josh].id"
+And using the parameter v4 defined as "v[josh]"
 And using the parameter d30 defined as "d[30].i"
 And the traversal of
   """
-  g.V(g.V(v4Id).next()).has("age", P.gt(d30))
+  g.V(v4).has("age", P.gt(d30))
   """
 When iterated to list
 Then the result should be unordered

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/97d4511c/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
--
diff --git 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
index deff30b..3bdb24a 100644
--- 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
+++ 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
@@ -218,7 +218,7 @@ public abstract class HasTest extends 
AbstractGremlinProcessTest {
 
 @Test
 @LoadGraphWith(MODERN)
-public void g_VX2X_hasXage_gt_30X() {
+public void g_VX4X_hasXage_gt_30X() {
 final Traversal traversalJosh = 
get_g_VX1X_hasXage_gt_30X(convertToVertexId("josh"));
 printTraversalForm(traversalJosh);
 assertTrue(traversalJosh.hasNext());
@@ -227,15 +227,15 @@ public abstract class HasTest extends 
AbstractGremlinProcessTest {
 @Test
 @LoadGraphWith(MODERN)
 public void g_VXv1X_hasXage_gt_30X() {
-final Traversal traversalMarko = 
get_g_VXv1X_hasXage_gt_30X(convertToVertexId("marko"));
+final Traversal traversalMarko = 
get_g_VXv1X_hasXage_gt_30X(convertToVertex(graph,"marko"));
 printTraversalForm(traversalMarko);
 assertFalse(traversalMarko.hasNext());
 }
 
 @Test
 @LoadGraphWith(MODERN)
-public void g_VXv2X_hasXage_gt_30X() {
-final Traversal traversalJosh = 
get_g_VXv1X_hasXage_gt_30X(convertToVertexId("josh"));
+public void g_VXv4X_hasXage_gt_30X() {
+final Traversal traversalJosh = 
get_g_VXv1X_hasXage_gt_30X(convertToVertex(graph,"josh"));
 printTraversalForm(traversalJosh);
 assertTrue(traversalJosh.hasNext());
 }



[13/31] tinkerpop git commit: TINKERPOP-1857 Python GLV tests were not string-ing IDs

2018-02-14 Thread spmallette
TINKERPOP-1857 Python GLV tests were not string-ing IDs


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/e96a2a60
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/e96a2a60
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/e96a2a60

Branch: refs/heads/TINKERPOP-1857
Commit: e96a2a60e2038d2049215c33a83a8623a9e399c6
Parents: a1d0403
Author: Stephen Mallette 
Authored: Thu Dec 28 11:25:06 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-python/src/main/jython/radish/feature_steps.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/e96a2a60/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index e247b25..d5d3560 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -155,13 +155,13 @@ def _convert(val, ctx):
 elif isinstance(val, str) and re.match("^v\[.*\]\.id$", val):   # 
parse vertex id
 return __find_cached_element(ctx, graph_name, val[2:-4], "v").id
 elif isinstance(val, str) and re.match("^v\[.*\]\.sid$", val):  # 
parse vertex id as string
-return __find_cached_element(ctx, graph_name, val[2:-5], "v").id
+return str(__find_cached_element(ctx, graph_name, val[2:-5], "v").id)
 elif isinstance(val, str) and re.match("^v\[.*\]$", val):   # 
parse vertex
 return __find_cached_element(ctx, graph_name, val[2:-1], "v")
 elif isinstance(val, str) and re.match("^e\[.*\]\.id$", val):   # 
parse edge id
 return __find_cached_element(ctx, graph_name, val[2:-4], "e").id
 elif isinstance(val, str) and re.match("^e\[.*\]\.sid$", val):  # 
parse edge id as string
-return __find_cached_element(ctx, graph_name, val[2:-5], "e").id
+return str(__find_cached_element(ctx, graph_name, val[2:-5], "e").id)
 elif isinstance(val, str) and re.match("^e\[.*\]$", val):   # 
parse edge
 return __find_cached_element(ctx, graph_name, val[2:-1], "e")
 elif isinstance(val, str) and re.match("^m\[.*\]$", val):   # 
parse json as a map



[06/31] tinkerpop git commit: TINKERPOP-1885 Clean up Gremlin.Net csproj CTR

2018-02-14 Thread spmallette
TINKERPOP-1885 Clean up Gremlin.Net csproj CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7f39b188
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7f39b188
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7f39b188

Branch: refs/heads/TINKERPOP-1857
Commit: 7f39b188ec9035c5af75eafcf5be0eae912d3c60
Parents: 2d7113a
Author: Florian Hockmann 
Authored: Wed Feb 14 20:30:10 2018 +0100
Committer: Florian Hockmann 
Committed: Wed Feb 14 20:30:10 2018 +0100

--
 gremlin-dotnet/glv/Gremlin.Net.csproj.template  | 28 +---
 .../src/Gremlin.Net/Gremlin.Net.csproj  | 28 +---
 2 files changed, 24 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f39b188/gremlin-dotnet/glv/Gremlin.Net.csproj.template
--
diff --git a/gremlin-dotnet/glv/Gremlin.Net.csproj.template 
b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
index 59153b4..c116f0e 100644
--- a/gremlin-dotnet/glv/Gremlin.Net.csproj.template
+++ b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
@@ -30,25 +30,21 @@ limitations under the License.
 <%= (projectVersion =~ /(\d+\.\d+)\.*/)[0][1] 
%>.0.0
 Gremlin.Net
 Apache TinkerPop
-
-  Gremlin.Net for Apache TinkerPop™ is a language variant and driver for 
.NET.
-
-
-  Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-  Gremlin is the graph traversal language of TinkerPop. It can be 
described as a functional, data-flow language
-  that enables users to succinctly express complex traversals on (or 
queries of) their application’s property graph.
+Gremlin.Net for Apache TinkerPop™ is a language variant and 
driver for .NET.
 
-  Gremlin.Net implements Gremlin within .NET. C# syntax has the same 
constructs as Java including “dot notation”
-  for function chaining (a.b.c), round bracket function arguments 
(a(b,c))`, and support for global namespaces
-  (a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
-  Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net 
that make traversals a bit more succinct.
+Apache TinkerPop™ is a graph computing framework for both graph databases 
(OLTP) and graph analytic systems (OLAP).
+Gremlin is the graph traversal language of TinkerPop. It can be described as a 
functional, data-flow language
+that enables users to succinctly express complex traversals on (or queries of) 
their application’s property graph.
 
-  Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+Gremlin.Net implements Gremlin within .NET. C# syntax has the same constructs 
as Java including “dot notation”
+for function chaining (a.b.c), round bracket function arguments (a(b,c))`, and 
support for global namespaces
+(a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
+Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net that 
make traversals a bit more succinct.
 
-  NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions = 0.X) and is now
-  included as part of the Apache TinkerPop project. The 'old' Gremlin.Net 
driver is however still supported.
-  Head to https://github.com/FlorianHockmann/Gremlin.Net for more 
information.
-
+Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+
+NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions: 0.y.z) and is now
+included as part of the Apache TinkerPop project.
 
../../build/tinkerpop.snk
 true
 true

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f39b188/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
--
diff --git a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj 
b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
index 41e8f4c..a538b8b 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -30,25 +30,21 @@ limitations under the License.
 3.2.0.0
 Gremlin.Net
 Apache TinkerPop
-
-  Gremlin.Net for Apache TinkerPop™ is a language variant and driver for 
.NET.
-
-
-  Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-  Gremlin is the graph traversal language of TinkerPop. It can be 
described as a functional, data-flow 

[15/31] tinkerpop git commit: TINKERPOP-1857 Added support for empty lists and sets in python GLV test runner

2018-02-14 Thread spmallette
TINKERPOP-1857 Added support for empty lists and sets in python GLV test runner


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/20b10c44
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/20b10c44
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/20b10c44

Branch: refs/heads/TINKERPOP-1857
Commit: 20b10c445b84fc775487d8b288208a4b7b8df252
Parents: e74747d
Author: Stephen Mallette 
Authored: Thu Dec 28 16:42:30 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-python/src/main/jython/radish/feature_steps.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20b10c44/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index b61d5e0..c0574d0 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -154,9 +154,9 @@ def _convert(val, ctx):
 elif isinstance(val, unicode):  # 
convert annoying python 2.x unicode nonsense
 return _convert(val.encode('utf-8'), ctx)
 elif isinstance(val, str) and re.match("^l\[.*\]$", val):   # 
parse list
-return list(map((lambda x: _convert(x, ctx)), val[2:-1].split(",")))
+return [] if val == "l[]" else list(map((lambda x: _convert(x, ctx)), 
val[2:-1].split(",")))
 elif isinstance(val, str) and re.match("^s\[.*\]$", val):   # 
parse set
-return set(map((lambda x: _convert(x, ctx)), val[2:-1].split(",")))
+return set() if val == "s[]" else set(map((lambda x: _convert(x, 
ctx)), val[2:-1].split(",")))
 elif isinstance(val, str) and re.match("^d\[.*\]\.[ilfdm]$", val):  # 
parse numeric
 return float(val[2:-3]) if val[2:-3].__contains__(".") else 
long(val[2:-3])
 elif isinstance(val, str) and re.match("^v\[.*\]\.id$", val):   # 
parse vertex id



[25/31] tinkerpop git commit: TINKERPOP-1857 select() GLV tests

2018-02-14 Thread spmallette
TINKERPOP-1857 select() GLV tests


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/43519778
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/43519778
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/43519778

Branch: refs/heads/TINKERPOP-1857
Commit: 43519778b0f0c71a93ff0d91efc153995e1ebec6
Parents: 314481e
Author: Stephen Mallette 
Authored: Tue Feb 6 09:08:55 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../src/main/jython/radish/feature_steps.py |   3 +-
 gremlin-test/features/map/Properties.feature|  16 +-
 gremlin-test/features/map/Select.feature| 209 ++-
 .../process/traversal/step/map/SelectTest.java  |   2 +-
 .../gremlin/process/FeatureCoverageTest.java|  13 +-
 5 files changed, 224 insertions(+), 19 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/43519778/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index e6392d5..7c0525f 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -21,7 +21,7 @@ import json
 import re
 from gremlin_python.structure.graph import Graph, Path
 from gremlin_python.process.graph_traversal import __
-from gremlin_python.process.traversal import Cardinality, P, Scope, Column, 
Order, Direction, T, Pick, Operator
+from gremlin_python.process.traversal import Cardinality, P, Pop, Scope, 
Column, Order, Direction, T, Pick, Operator
 from radish import given, when, then
 from hamcrest import *
 
@@ -259,6 +259,7 @@ def _make_traversal(g, traversal_string, params):
  "Order": Order,
  "P": P,
  "Pick": Pick,
+ "Pop": Pop,
  "Scope": Scope,
  "Operator": Operator,
  "T": T}

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/43519778/gremlin-test/features/map/Properties.feature
--
diff --git a/gremlin-test/features/map/Properties.feature 
b/gremlin-test/features/map/Properties.feature
index 58a5531..3c926fa 100644
--- a/gremlin-test/features/map/Properties.feature
+++ b/gremlin-test/features/map/Properties.feature
@@ -51,18 +51,4 @@ Feature: Step - properties()
   | josh  |
   | d[32].i |
   | peter |
-  | d[35].i |
-
-  Scenario: g_V_hasXageX_properties_hasXid_nameIdX_value
-Given an unsupported test
-Then nothing should happen because
-  """
-  There is no way to currently get property identifiers on elements.
-  """
-
-  Scenario: g_V_hasXageX_propertiesXnameX
-Given an unsupported test
-Then nothing should happen because
-  """
-  There is no way to currently assert property elements in the test logic.
-  """
+  | d[35].i |
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/43519778/gremlin-test/features/map/Select.feature
--
diff --git a/gremlin-test/features/map/Select.feature 
b/gremlin-test/features/map/Select.feature
index 06f00d2..94c4f22 100644
--- a/gremlin-test/features/map/Select.feature
+++ b/gremlin-test/features/map/Select.feature
@@ -321,4 +321,211 @@ Feature: Step - select()
 When iterated to list
 Then the result should be unordered
   | result |
-  | m[{"ripple":"d[1].l", "lop":"d[6].l"}] |
\ No newline at end of file
+  | m[{"ripple":"d[1].l", "lop":"d[6].l"}] |
+
+  Scenario: g_V_untilXout_outX_repeatXin_asXaXX_selectXaX_byXtailXlocalX_nameX
+Given the modern graph
+And the traversal of
+  """
+  
g.V().until(__.out().out()).repeat(__.in().as("a")).select("a").by(__.tail(Scope.local).values("name"))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | marko |
+  | marko |
+  | marko |
+  | marko |
+  | marko |
+
+  Scenario: get_g_V_outE_weight_groupCount_selectXkeysX_unfold
+Given the modern graph
+And the traversal of
+  """
+  g.V().outE().values("weight").groupCount().select(Column.keys).unfold()
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[0.5].f |
+  | d[1.0].f |
+  | d[0.4].f |
+  | d[0.2].f |
+
+  Scenario: 
g_V_hasLabelXsoftwareX_asXnameX_asXlanguageX_asXcreatorsX_selectXname_language_creatorsX_byXnameX_byXlangX_byXinXcreatedX_name_fold_orderXlocalXX
+Given the modern graph
+And the traversal of
+  """
+  

[24/31] tinkerpop git commit: TINKERPOP-1857 Removed duplicate test in select() GLV tests

2018-02-14 Thread spmallette
TINKERPOP-1857 Removed duplicate test in select() GLV tests


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/bdd5e4c2
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/bdd5e4c2
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/bdd5e4c2

Branch: refs/heads/TINKERPOP-1857
Commit: bdd5e4c25c16dbea08f6127e9d12dffc3397f818
Parents: 97d4511
Author: Stephen Mallette 
Authored: Fri Feb 9 09:44:25 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 gremlin-test/features/map/Select.feature | 18 ++
 1 file changed, 2 insertions(+), 16 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bdd5e4c2/gremlin-test/features/map/Select.feature
--
diff --git a/gremlin-test/features/map/Select.feature 
b/gremlin-test/features/map/Select.feature
index 94c4f22..d77e21f 100644
--- a/gremlin-test/features/map/Select.feature
+++ b/gremlin-test/features/map/Select.feature
@@ -338,7 +338,7 @@ Feature: Step - select()
   | marko |
   | marko |
 
-  Scenario: get_g_V_outE_weight_groupCount_selectXkeysX_unfold
+  Scenario: g_V_outE_weight_groupCount_selectXkeysX_unfold
 Given the modern graph
 And the traversal of
   """
@@ -514,18 +514,4 @@ Feature: Step - select()
 Then the result should be unordered
   | result |
   | d[2].l |
-  | d[2].l |
-
-  Scenario: g_V_outE_weight_groupCount_selectXkeysX_unfold
-Given the modern graph
-And the traversal of
-  """
-  g.V().outE().values("weight").groupCount().select(Column.keys).unfold()
-  """
-When iterated to list
-Then the result should be unordered
-  | result |
-  | d[0.5].f |
-  | d[1.0].f |
-  | d[0.4].f |
-  | d[0.2].f |
\ No newline at end of file
+  | d[2].l |
\ No newline at end of file



[07/31] tinkerpop git commit: TINKERPOP-1857 Fixed up union() and range() tests that were failing

2018-02-14 Thread spmallette
TINKERPOP-1857 Fixed up union() and range() tests that were failing


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d556f779
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d556f779
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d556f779

Branch: refs/heads/TINKERPOP-1857
Commit: d556f77994712c3fb91ab09e08720ced273b4474
Parents: 68669ea
Author: Stephen Mallette 
Authored: Wed Jan 24 10:27:13 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/branch/Union.feature |  2 +-
 gremlin-test/features/filter/Range.feature | 26 +
 gremlin-test/features/filter/Where.feature | 26 +
 3 files changed, 28 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d556f779/gremlin-test/features/branch/Union.feature
--
diff --git a/gremlin-test/features/branch/Union.feature 
b/gremlin-test/features/branch/Union.feature
index 2380246..83318f6 100644
--- a/gremlin-test/features/branch/Union.feature
+++ b/gremlin-test/features/branch/Union.feature
@@ -145,7 +145,7 @@ Feature: Step - union()
 And using the parameter v2Id defined as "v[vadas].id"
 And the traversal of
   """
-  g.V(v1Id, v2Id).local(union(count()))
+  g.V(v1Id, v2Id).local(__.union(__.count()))
   """
 When iterated to list
 Then the result should be unordered

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d556f779/gremlin-test/features/filter/Range.feature
--
diff --git a/gremlin-test/features/filter/Range.feature 
b/gremlin-test/features/filter/Range.feature
index 066960a..18aae9f 100644
--- a/gremlin-test/features/filter/Range.feature
+++ b/gremlin-test/features/filter/Range.feature
@@ -225,28 +225,4 @@ Feature: Step - range()
 Then the result should be unordered
   | result |
   | m[{"b":"josh"}] |
-  | m[{"b":"josh"}] |
-
-  Scenario: g_V_repeatXbothX_timesX3X_rangeX5_11X
-Given the modern graph
-And the traversal of
-  """
-  g.V().repeat(both()).times(3).range(5, 11)
-  """
-When iterated to list
-Then the result should be ordered
-  | result |
-  | d[6].l |
-
-  Scenario: g_V_repeatXbothX_timesX3X_rangeX5_11X
-Given the modern graph
-And using the parameter v1Id defined as "v[marko].id"
-And the traversal of
-  """
-  g.V(v1Id).out("created").inE("created").range(1, 3).outV()
-  """
-When iterated to list
-Then the result should be unordered
-  | result |
-  | v[marko] |
-  | v[ripple] |
\ No newline at end of file
+  | m[{"b":"josh"}] |
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d556f779/gremlin-test/features/filter/Where.feature
--
diff --git a/gremlin-test/features/filter/Where.feature 
b/gremlin-test/features/filter/Where.feature
index 5c520da..c13703c 100644
--- a/gremlin-test/features/filter/Where.feature
+++ b/gremlin-test/features/filter/Where.feature
@@ -103,3 +103,29 @@ Feature: Step - where()
   | josh |
   | peter |
 
+  Scenario: g_VX1X_asXaX_outXcreatedX_inXcreatedX_asXbX_whereXa_neqXbXX_name
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).as("a").out("created").in("created").as("b").where("a", 
P.neq("b")).values("name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | josh |
+  | peter |
+
+  Scenario: 
g_VX1X_asXaX_outXcreatedX_inXcreatedX_asXbX_whereXasXbX_outXcreatedX_hasXname_rippleXX_valuesXage_nameX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  
g.V(v1Id).as("a").out("created").in("created").as("b").where(__.as("b").out("created").has("name",
 "ripple")).values("age", "name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | josh |
+  | d[32].i |
+



[03/31] tinkerpop git commit: Remove bad link in javadoc CTR

2018-02-14 Thread spmallette
Remove bad link in javadoc CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/395cdef8
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/395cdef8
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/395cdef8

Branch: refs/heads/TINKERPOP-1857
Commit: 395cdef87c5912dd75750e1881a61fca0f3f8edc
Parents: 8e0470a
Author: Stephen Mallette 
Authored: Tue Feb 13 10:55:51 2018 -0500
Committer: Stephen Mallette 
Committed: Tue Feb 13 10:55:51 2018 -0500

--
 .../src/main/java/org/apache/tinkerpop/gremlin/LoadGraphWith.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/395cdef8/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/LoadGraphWith.java
--
diff --git 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/LoadGraphWith.java 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/LoadGraphWith.java
index 9fc2056..5c6e371 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/LoadGraphWith.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/LoadGraphWith.java
@@ -81,7 +81,7 @@ public @interface LoadGraphWith {
 
 /**
  * Loads a test graph which contains disconnected subgraphs 
specialized for testing purposes (e.g. a subgraph
- * with a self-loop). This graph is created with the {@link 
TestHelper#loadSinkGraph(Graph)} method.
+ * with a self-loop).
  */
 SINK;
 



[30/31] tinkerpop git commit: JavaScript GLV: handle responses without identifier and clear handler

2018-02-14 Thread spmallette
JavaScript GLV: handle responses without identifier and clear handler


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/1e38023c
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/1e38023c
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/1e38023c

Branch: refs/heads/TINKERPOP-1857
Commit: 1e38023c7ebfb3ae83578625d9d99f60798abdcc
Parents: 10f29cb
Author: Jorge Bay Gondra 
Authored: Wed Feb 14 16:11:13 2018 +0100
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../lib/driver/driver-remote-connection.js  | 35 
 1 file changed, 35 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1e38023c/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
index 5587fd6..d9e6000 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
@@ -126,7 +126,31 @@ class DriverRemoteConnection extends RemoteConnection {
 
   _handleMessage(data) {
 const response = this._reader.read(JSON.parse(data.toString()));
+if (response.requestId === null || response.requestId === undefined) {
+// There was a serialization issue on the server that prevented the 
parsing of the request id
+// We invoke any of the pending handlers with an error
+Object.keys(this._responseHandlers).forEach(requestId => {
+  const handler = this._responseHandlers[requestId];
+  this._clearHandler(requestId);
+  if (response.status !== undefined && response.status.message) {
+return handler.callback(
+  new Error(util.format(
+'Server error (no request information): %s (%d)', 
response.status.message, response.status.code)));
+  } else {
+return handler.callback(new Error(util.format('Server error (no 
request information): %j', response)));
+  }
+});
+return;
+}
+
 const handler = this._responseHandlers[response.requestId];
+
+if (!handler) {
+  // The handler for a given request id was not found
+  // It was probably invoked earlier due to a serialization issue.
+  return;
+}
+
 if (response.status.code >= 400) {
   // callback in error
   return handler.callback(
@@ -134,6 +158,7 @@ class DriverRemoteConnection extends RemoteConnection {
 }
 switch (response.status.code) {
   case responseStatusCode.noContent:
+this._clearHandler(response.requestId);
 return handler.callback(null, { traversers: []});
   case responseStatusCode.partialContent:
 handler.result = handler.result || [];
@@ -146,11 +171,21 @@ class DriverRemoteConnection extends RemoteConnection {
 else {
   handler.result = response.result.data;
 }
+this._clearHandler(response.requestId);
 return handler.callback(null, { traversers: handler.result });
 }
   }
 
   /**
+   * Clears the internal state containing the callback and result buffer of a 
given request.
+   * @param requestId
+   * @private
+   */
+  _clearHandler(requestId) {
+delete this._responseHandlers[requestId];
+  }
+
+  /**
* Closes the Connection.
* @return {Promise}
*/



[08/31] tinkerpop git commit: TINKERPOP-1857 Added where() GLV test

2018-02-14 Thread spmallette
TINKERPOP-1857 Added where() GLV test


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/784c3d10
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/784c3d10
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/784c3d10

Branch: refs/heads/TINKERPOP-1857
Commit: 784c3d10dbe40a4acf7cac93abba03977631acb1
Parents: d556f77
Author: Stephen Mallette 
Authored: Wed Jan 24 12:14:01 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 .../src/main/jython/radish/feature_steps.py |   6 +-
 gremlin-test/features/filter/Where.feature  | 195 +++
 .../traversal/step/filter/WhereTest.java|  10 +-
 3 files changed, 205 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/784c3d10/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index c0574d0..06a8ec9 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -44,7 +44,11 @@ tail = __.tail
 
 ignores = [
 "g.V(v1Id).out().inject(v2).values(\"name\")",  # bug in attachment won't 
connect v2
-"g.V().hasLabel(\"person\").has(\"age\", 
P.not(P.lte(d10).and(P.not(P.between(d11, 
d20.and(P.lt(d29).or(P.eq(d35.values(\"name\")" # TINKERPOP-1859
+# TINKERPOP-1859 - for the following...seems to be related to P.not 
processing
+"g.V().hasLabel(\"person\").has(\"age\", 
P.not(P.lte(d10).and(P.not(P.between(d11, 
d20.and(P.lt(d29).or(P.eq(d35.values(\"name\")",
+"g.V(v1Id).out().aggregate(\"x\").out().where(P.not(P.within(\"x\")))",
+
"g.V().as(\"a\").out().as(\"b\").where(__.and(__.as(\"a\").out(\"knows\").as(\"b\"),
 __.or(__.as(\"b\").out(\"created\").has(\"name\", \"ripple\"), 
__.as(\"b\").in(\"knows\").count().is(P.not(P.eq(0)).select(\"a\", \"b\")",
+
"g.V().as(\"a\").out(\"created\").as(\"b\").in(\"created\").as(\"c\").both(\"knows\").both(\"knows\").as(\"d\").where(\"c\",
 P.not(P.eq(\"a\").or(P.eq(\"d\".select(\"a\", \"b\", \"c\", \"d\")"
]
 
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/784c3d10/gremlin-test/features/filter/Where.feature
--
diff --git a/gremlin-test/features/filter/Where.feature 
b/gremlin-test/features/filter/Where.feature
index c13703c..912edf2 100644
--- a/gremlin-test/features/filter/Where.feature
+++ b/gremlin-test/features/filter/Where.feature
@@ -129,3 +129,198 @@ Feature: Step - where()
   | josh |
   | d[32].i |
 
+  Scenario: g_VX1X_asXaX_outXcreatedX_inXcreatedX_whereXeqXaXX_name
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  
g.V(v1Id).as("a").out("created").in("created").where(P.eq("a")).values("name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | marko |
+
+  Scenario: g_VX1X_asXaX_outXcreatedX_inXcreatedX_whereXneqXaXX_name
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  
g.V(v1Id).as("a").out("created").in("created").where(P.neq("a")).values("name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | peter |
+  | josh  |
+
+  Scenario: g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).out().aggregate("x").out().where(P.not(P.within("x")))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[ripple] |
+
+  Scenario: g_withSideEffectXa_g_VX2XX_VX1X_out_whereXneqXaXX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter v2 defined as "v[vadas]"
+And the traversal of
+  """
+  g.withSideEffect("a", v2).V(v1Id).out().where(P.neq("a"))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[josh] |
+  | v[lop] |
+
+  Scenario: 
g_VX1X_repeatXbothEXcreatedX_whereXwithoutXeXX_aggregateXeX_otherVX_emit_path
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  
g.V(v1Id).repeat(__.bothE("created").where(P.without("e")).aggregate("e").otherV()).emit().path()
+  """
+When iterated to 

[02/31] tinkerpop git commit: TINKERPOP-1885 Remove warning about no .NET glv releases CTR

2018-02-14 Thread spmallette
TINKERPOP-1885 Remove warning about no .NET glv releases CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/8e0470ae
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/8e0470ae
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/8e0470ae

Branch: refs/heads/TINKERPOP-1857
Commit: 8e0470ae84103c658e55e2b16a2b5b3975862601
Parents: 56245ce
Author: Stephen Mallette 
Authored: Mon Feb 12 12:39:39 2018 -0500
Committer: Stephen Mallette 
Committed: Mon Feb 12 12:39:39 2018 -0500

--
 docs/src/reference/gremlin-variants.asciidoc | 3 ---
 1 file changed, 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8e0470ae/docs/src/reference/gremlin-variants.asciidoc
--
diff --git a/docs/src/reference/gremlin-variants.asciidoc 
b/docs/src/reference/gremlin-variants.asciidoc
index 4a2fe7a..94bcac4 100644
--- a/docs/src/reference/gremlin-variants.asciidoc
+++ b/docs/src/reference/gremlin-variants.asciidoc
@@ -311,9 +311,6 @@ g.V().out().map(lambda: "x: 
len(x.get().value('name'))").sum().toList()
 [[gremlin-DotNet]]
 == Gremlin.Net
 
-WARNING: Gremlin.Net does not yet have an official release. It is for 
developers who want to experiment with TinkerPop
-in the .NET ecosystem.
-
 Apache TinkerPop's Gremlin.Net implements Gremlin within the C# language. It 
targets .NET Standard and can
 therefore be used on different operating systems and with different .NET 
frameworks, such as .NET Framework
 and link:https://www.microsoft.com/net/core[.NET Core]. Since the C# syntax is 
very similar to that of Java, it should be very easy to switch between



[09/31] tinkerpop git commit: TINKERPOP-1857 Included GLV tests for addV()

2018-02-14 Thread spmallette
TINKERPOP-1857 Included GLV tests for addV()


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7a445844
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7a445844
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7a445844

Branch: refs/heads/TINKERPOP-1857
Commit: 7a445844c2cdb0aede731e2d88a592dafebcf9e6
Parents: 784c3d1
Author: Stephen Mallette 
Authored: Thu Feb 1 10:28:35 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 .../step/map/GroovyAddVertexTest.groovy |   5 -
 .../src/main/jython/radish/feature_steps.py |   2 +-
 gremlin-test/features/map/AddVertex.feature | 165 ++-
 .../traversal/step/map/AddVertexTest.java   |  27 +--
 .../gremlin/process/FeatureCoverageTest.java|   7 +
 5 files changed, 174 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7a445844/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyAddVertexTest.groovy
--
diff --git 
a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyAddVertexTest.groovy
 
b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyAddVertexTest.groovy
index 00312fa..1956a7e 100644
--- 
a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyAddVertexTest.groovy
+++ 
b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyAddVertexTest.groovy
@@ -47,11 +47,6 @@ public abstract class GroovyAddVertexTest {
 }
 
 @Override
-public Traversal 
get_g_addVXpersonX_propertyXname_stephenX_propertyXname_stephenmX() {
-new ScriptTraversal<>(g, "gremlin-groovy", 
"g.addV('person').property('name', 'stephen').property('name', 'stephenm')")
-}
-
-@Override
 public Traversal 
get_g_addVXpersonX_propertyXsingle_name_stephenX_propertyXsingle_name_stephenmX()
 {
 new ScriptTraversal<>(g, "gremlin-groovy", 
"g.addV('person').property(VertexProperty.Cardinality.single, 'name', 
'stephen').property(VertexProperty.Cardinality.single, 'name', 'stephenm')")
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7a445844/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index 06a8ec9..e6392d5 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -135,7 +135,7 @@ def assert_side_effects(step, count, traversal_string):
 
 t = _make_traversal(step.context.g, traversal_string.replace('\\"', '"'),
 step.context.traversal_params if hasattr(step.context, 
"traversal_params") else {})
-assert_that(count, equal_to(t.count().next()))
+assert_that(t.count().next(), equal_to(count))
 
 
 @then("the result should have a count of {count:d}")

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7a445844/gremlin-test/features/map/AddVertex.feature
--
diff --git a/gremlin-test/features/map/AddVertex.feature 
b/gremlin-test/features/map/AddVertex.feature
index 3335e29..2813733 100644
--- a/gremlin-test/features/map/AddVertex.feature
+++ b/gremlin-test/features/map/AddVertex.feature
@@ -144,4 +144,167 @@ Feature: Step - addV()
 Then the result should have a count of 1
 And the graph should return 0 for count of 
"g.V().has(\"person\",\"name\",\"stephen\")"
 And the graph should return 1 for count of 
"g.V().has(\"person\",\"name\",\"stephenm\")"
-And the graph should return 1 for count of 
"g.V().has(\"person\",\"name\",\"stephenm\").properties(\"name\").has(\"since\",2010)"
\ No newline at end of file
+And the graph should return 1 for count of 
"g.V().has(\"person\",\"name\",\"stephenm\").properties(\"name\").has(\"since\",2010)"
+
+  Scenario: 
g_V_hasXname_markoX_propertyXfriendWeight_outEXknowsX_weight_sum__acl_privateX
+Given the empty graph
+And the graph initializer of
+  """
+  g.addV("person").property(T.id, 1).property("name", 
"marko").property("age", 29).as("marko").
+addV("person").property(T.id, 2).property("name", 
"vadas").property("age", 27).as("vadas").
+addV("software").property(T.id, 3).property("name", 
"lop").property("lang", "java").as("lop").
+

[05/31] tinkerpop git commit: TINKERPOP-1890 getAnonymousTraversalClass() is now generated by the DSL processor CTR

2018-02-14 Thread spmallette
TINKERPOP-1890 getAnonymousTraversalClass() is now generated by the DSL 
processor CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2d7113aa
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2d7113aa
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2d7113aa

Branch: refs/heads/TINKERPOP-1857
Commit: 2d7113aaa166b69a8503be27aebf36a8063b82bd
Parents: d288c53
Author: Stephen Mallette 
Authored: Wed Feb 14 10:07:41 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 10:08:35 2018 -0500

--
 CHANGELOG.asciidoc | 1 +
 .../gremlin/process/traversal/dsl/GremlinDslProcessor.java | 6 ++
 2 files changed, 7 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2d7113aa/CHANGELOG.asciidoc
--
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 9dcb7f0..f1519b6 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -23,6 +23,7 @@ 
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 [[release-3-2-8]]
 === TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET)
 
+* Modified `GremlinDslProcessor` so that it generated the 
`getAnonymousTraversalClass()` method to return the DSL version of `__`.
 * Added the "Kitchen Sink" test data set.
 * Fixed a bug in `NumberHelper` that led to wrong min/max results if numbers 
exceeded the Integer limits.
 * Delayed setting of the request identifier until `RequestMessage` 
construction by the builder.

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2d7113aa/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
--
diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
index cdfad6a..ec6379f 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
@@ -297,6 +297,12 @@ public class GremlinDslProcessor extends AbstractProcessor 
{
 .addStatement("return ($T) traversal.asAdmin().addStep(new 
$T(traversal, $T.class, true, edgeIds))", ctx.traversalClassName, 
GraphStep.class, Edge.class)
 .returns(ParameterizedTypeName.get(ctx.traversalClassName, 
ClassName.get(Edge.class), ClassName.get(Edge.class)))
 .build());
+
traversalSourceClass.addMethod(MethodSpec.methodBuilder("getAnonymousTraversalClass")
+.addModifiers(Modifier.PUBLIC)
+.addAnnotation(Override.class)
+.addStatement("return Optional.of(__.class)")
+.returns(ParameterizedTypeName.get(Optional.class, 
Class.class))
+.build());
 }
 
 final JavaFile traversalSourceJavaFile = 
JavaFile.builder(ctx.packageName, traversalSourceClass.build()).build();



[01/31] tinkerpop git commit: TINKERPOP-1842 Added some documentation around iterate() CTR [Forced Update!]

2018-02-14 Thread spmallette
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1857 043c996ee -> 7212253e6 (forced update)


TINKERPOP-1842 Added some documentation around iterate() CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/56245ced
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/56245ced
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/56245ced

Branch: refs/heads/TINKERPOP-1857
Commit: 56245ced6da32301b1a9a1a915bfd7daa1e8f24a
Parents: 97947c1
Author: Stephen Mallette 
Authored: Mon Feb 12 12:19:36 2018 -0500
Committer: Stephen Mallette 
Committed: Mon Feb 12 12:19:36 2018 -0500

--
 docs/src/reference/the-traversal.asciidoc | 4 
 1 file changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/56245ced/docs/src/reference/the-traversal.asciidoc
--
diff --git a/docs/src/reference/the-traversal.asciidoc 
b/docs/src/reference/the-traversal.asciidoc
index 2433597..69bc8a3 100644
--- a/docs/src/reference/the-traversal.asciidoc
+++ b/docs/src/reference/the-traversal.asciidoc
@@ -159,6 +159,7 @@ g.V().out('created').toSet() <6>
 g.V().out('created').toBulkSet() <7>
 results = ['blah',3]
 g.V().out('created').fill(results) <8>
+g.addV('person').iterate() <9>
 
 
 <1> `hasNext()` determines whether there are available results.
@@ -169,6 +170,9 @@ g.V().out('created').fill(results) <8>
 <6> `toSet()` will return all results in a set (thus, duplicates removed).
 <7> `toBulkSet()` will return all results in a weighted set (thus, duplicates 
preserved via weighting).
 <8> `fill(collection)` will put all results in the provided collection and 
return the collection when complete.
+<9> `iterate()` does not exactly fit the definition of a terminal step in that 
it doesn't return a result, but still
+returns a traversal - it does however behave as a terminal step in that it 
iterates the traversal and generates side
+effects without returning the actual result.
 
 Finally, <>-step is also a terminal step and is 
described in its own section.
 



[04/31] tinkerpop git commit: Fixed typo CTR

2018-02-14 Thread spmallette
Fixed typo CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d288c53b
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d288c53b
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d288c53b

Branch: refs/heads/TINKERPOP-1857
Commit: d288c53bf83bba5bdde32684838f54425568d689
Parents: 395cdef
Author: Robert Dale 
Authored: Tue Feb 13 13:12:54 2018 -0500
Committer: Robert Dale 
Committed: Tue Feb 13 13:12:54 2018 -0500

--
 docs/src/reference/gremlin-applications.asciidoc   | 2 +-
 .../apache/tinkerpop/gremlin/jsr223/console/RemoteAcceptor.java| 2 +-
 .../org/apache/tinkerpop/gremlin/groovy/plugin/RemoteAcceptor.java | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d288c53b/docs/src/reference/gremlin-applications.asciidoc
--
diff --git a/docs/src/reference/gremlin-applications.asciidoc 
b/docs/src/reference/gremlin-applications.asciidoc
index 92bfef7..4e4f190 100644
--- a/docs/src/reference/gremlin-applications.asciidoc
+++ b/docs/src/reference/gremlin-applications.asciidoc
@@ -517,7 +517,7 @@ script = """
 <1> This configuration file specifies that results should be deserialized back 
into an `Object` in the console with
 the caveat being that the server and console both know how to serialize and 
deserialize the result to be returned.
 <2> There are now two configured remote connections.  The one marked by an 
asterisk is the one that was just created
-and denotes the current one that `:sumbit` will react to.
+and denotes the current one that `:submit` will react to.
 <3> When the script is executed again, the `class` is no longer shown to be a 
`java.lang.String`.  It is instead a `java.util.HashMap`.
 <4> The last result of a remote script is always stored in the reserved 
variable `result`, which allows access to
 the `Result` and by virtue of that, the `Map` itself.

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d288c53b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/RemoteAcceptor.java
--
diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/RemoteAcceptor.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/RemoteAcceptor.java
index 9571b2c..c1a8c91 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/RemoteAcceptor.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/console/RemoteAcceptor.java
@@ -71,7 +71,7 @@ public interface RemoteAcceptor extends Closeable {
  * set to {@code false}.
  * 
  * A {@code RemoteAcceptor} should only return {@code true} for this 
method if it expects that all activities it
- * supports are executed through the {@code :sumbit} command. If the users 
interaction with the remote requires
+ * supports are executed through the {@code :submit} command. If the users 
interaction with the remote requires
  * working with both local and remote evaluation at the same time, it is 
likely best to keep this method return
  * {@code false}. A good example of this type of plugin would be the Gephi 
Plugin which uses {@code :remote config}
  * to configure a local {@code TraversalSource} to be used and expects 
calls to {@code :submit} for the same body

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d288c53b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/plugin/RemoteAcceptor.java
--
diff --git 
a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/plugin/RemoteAcceptor.java
 
b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/plugin/RemoteAcceptor.java
index 2bb8663..1d43d56 100644
--- 
a/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/plugin/RemoteAcceptor.java
+++ 
b/gremlin-groovy/src/main/java/org/apache/tinkerpop/gremlin/groovy/plugin/RemoteAcceptor.java
@@ -73,7 +73,7 @@ public interface RemoteAcceptor extends Closeable {
  * set to {@code false}.
  * 
  * A {@code RemoteAcceptor} should only return {@code true} for this 
method if it expects that all activities it
- * supports are executed through the {@code :sumbit} command. If the users 
interaction with the remote requires
+ * supports are executed through the {@code :submit} command. If the users 
interaction with the remote requires
  * working with both local and remote evaluation at the same time, it is 
likely best to keep this method return
  * {@code false}. A good example of this type of 

[22/31] tinkerpop git commit: TINKERPOP-1857 Got range() GLV tests all in place

2018-02-14 Thread spmallette
TINKERPOP-1857 Got range() GLV tests all in place


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/c4fd3e13
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/c4fd3e13
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/c4fd3e13

Branch: refs/heads/TINKERPOP-1857
Commit: c4fd3e13f48c5c0dec5d0827fea8f4af61b44a31
Parents: b2c79d6
Author: Stephen Mallette 
Authored: Wed Jan 24 08:08:10 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/filter/Range.feature | 30 ++---
 1 file changed, 27 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c4fd3e13/gremlin-test/features/filter/Range.feature
--
diff --git a/gremlin-test/features/filter/Range.feature 
b/gremlin-test/features/filter/Range.feature
index 42e2f9a..066960a 100644
--- a/gremlin-test/features/filter/Range.feature
+++ b/gremlin-test/features/filter/Range.feature
@@ -90,7 +90,7 @@ Feature: Step - range()
   | v[peter] |
 And the result should have a count of 2
 
-  Scenario: get_g_VX1X_outXcreatedX_inEXcreatedX_rangeX1_3X_outV
+  Scenario: g_VX1X_outXcreatedX_inEXcreatedX_rangeX1_3X_outV
 Given the modern graph
 And using the parameter v1Id defined as "v[marko].id"
 And the traversal of
@@ -105,7 +105,7 @@ Feature: Step - range()
   | v[peter] |
 And the result should have a count of 2
 
-  Scenario: get_g_V_repeatXbothX_timesX3X_rangeX5_11X
+  Scenario: g_V_repeatXbothX_timesX3X_rangeX5_11X
 Given the modern graph
 And the traversal of
   """
@@ -225,4 +225,28 @@ Feature: Step - range()
 Then the result should be unordered
   | result |
   | m[{"b":"josh"}] |
-  | m[{"b":"josh"}] |
\ No newline at end of file
+  | m[{"b":"josh"}] |
+
+  Scenario: g_V_repeatXbothX_timesX3X_rangeX5_11X
+Given the modern graph
+And the traversal of
+  """
+  g.V().repeat(both()).times(3).range(5, 11)
+  """
+When iterated to list
+Then the result should be ordered
+  | result |
+  | d[6].l |
+
+  Scenario: g_V_repeatXbothX_timesX3X_rangeX5_11X
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).out("created").inE("created").range(1, 3).outV()
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[marko] |
+  | v[ripple] |
\ No newline at end of file



[29/31] tinkerpop git commit: TINKERPOP-1857 sack() inject() cap() GLV tests

2018-02-14 Thread spmallette
TINKERPOP-1857 sack() inject() cap() GLV tests


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/5db5f218
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/5db5f218
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/5db5f218

Branch: refs/heads/TINKERPOP-1857
Commit: 5db5f2188137c8088f3433910cf48f6bb1e2eb6b
Parents: 4351977
Author: Stephen Mallette 
Authored: Tue Feb 6 10:55:14 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../src/main/jython/radish/feature_steps.py |  3 +-
 gremlin-test/features/sideEffect/Inject.feature | 17 
 gremlin-test/features/sideEffect/Sack.feature   | 42 +++-
 .../features/sideEffect/SideEffectCap.feature   |  8 ++--
 .../gremlin/process/FeatureCoverageTest.java| 15 +--
 5 files changed, 76 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5db5f218/gremlin-python/src/main/jython/radish/feature_steps.py
--
diff --git a/gremlin-python/src/main/jython/radish/feature_steps.py 
b/gremlin-python/src/main/jython/radish/feature_steps.py
index 7c0525f..3ba88a2 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -21,7 +21,7 @@ import json
 import re
 from gremlin_python.structure.graph import Graph, Path
 from gremlin_python.process.graph_traversal import __
-from gremlin_python.process.traversal import Cardinality, P, Pop, Scope, 
Column, Order, Direction, T, Pick, Operator
+from gremlin_python.process.traversal import Barrier, Cardinality, P, Pop, 
Scope, Column, Order, Direction, T, Pick, Operator
 from radish import given, when, then
 from hamcrest import *
 
@@ -253,6 +253,7 @@ def _translate(traversal):
 def _make_traversal(g, traversal_string, params):
 b = {"g": g,
  "__": __,
+ "Barrier": Barrier,
  "Cardinality": Cardinality,
  "Column": Column,
  "Direction": Direction,

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5db5f218/gremlin-test/features/sideEffect/Inject.feature
--
diff --git a/gremlin-test/features/sideEffect/Inject.feature 
b/gremlin-test/features/sideEffect/Inject.feature
index 61ffb58..740928d 100644
--- a/gremlin-test/features/sideEffect/Inject.feature
+++ b/gremlin-test/features/sideEffect/Inject.feature
@@ -49,3 +49,20 @@ Feature: Step - inject()
   | p[v[marko],v[lop],lop,d[3].i] |
   | p[v[marko],v[vadas],vadas,d[5].i] |
   | p[v[marko],v[josh],josh,d[4].i] |
+
+  Scenario: g_VX1X_injectXg_VX4XX_out_name
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And using the parameter v4 defined as "v[josh]"
+And the traversal of
+  """
+  g.V(v1Id).inject(v4).out().values("name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | ripple |
+  | lop   |
+  | lop   |
+  | vadas |
+  | josh  |

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5db5f218/gremlin-test/features/sideEffect/Sack.feature
--
diff --git a/gremlin-test/features/sideEffect/Sack.feature 
b/gremlin-test/features/sideEffect/Sack.feature
index 73e65da..f5baf64 100644
--- a/gremlin-test/features/sideEffect/Sack.feature
+++ b/gremlin-test/features/sideEffect/Sack.feature
@@ -68,4 +68,44 @@ Feature: Step - sack()
 Then nothing should happen because
   """
   This API is deprecated - will not test.
-  """
\ No newline at end of file
+  """
+
+  Scenario: 
g_withBulkXfalseX_withSackX1_sumX_VX1X_localXoutEXknowsX_barrierXnormSackX_inVX_inXknowsX_barrier_sack
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.withBulk(false).withSack(1.0, 
Operator.sum).V(v1Id).local(__.outE("knows").barrier(Barrier.normSack).inV()).in("knows").barrier().sack()
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[1.0].d |
+
+  Scenario: g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.withBulk(false).withSack(1, Operator.sum).V().out().barrier().sack()
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | d[3].l |
+  | d[1].l |
+  | d[1].l |
+  | d[1].l |
+
+  Scenario: 

[17/31] tinkerpop git commit: TINKERPOP-1857 Added more has() tests to the GLV suite.

2018-02-14 Thread spmallette
TINKERPOP-1857 Added more has() tests to the GLV suite.

Fixed some consistency problems in the java test itself.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/e74747d3
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/e74747d3
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/e74747d3

Branch: refs/heads/TINKERPOP-1857
Commit: e74747d35861ff8a2a5c2c5fc6003de01179d7ad
Parents: 1f2530e
Author: Stephen Mallette 
Authored: Thu Dec 28 15:05:07 2017 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:09 2018 -0500

--
 gremlin-test/features/filter/Has.feature| 315 ++-
 .../process/traversal/step/filter/HasTest.java  |  37 ++-
 2 files changed, 340 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/e74747d3/gremlin-test/features/filter/Has.feature
--
diff --git a/gremlin-test/features/filter/Has.feature 
b/gremlin-test/features/filter/Has.feature
index bdede6d..f3ef5a0 100644
--- a/gremlin-test/features/filter/Has.feature
+++ b/gremlin-test/features/filter/Has.feature
@@ -17,6 +17,82 @@
 
 Feature: Step - has()
 
+  Scenario: g_V_outXcreatedX_hasXname__mapXlengthX_isXgtX3XXX_name
+Given the modern graph
+And using the parameter l1 defined as "c[it.get().length()]"
+And the traversal of
+  """
+  g.V().out("created").has("name", __.map(l1).is(P.gt(3))).values("name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | ripple |
+
+  Scenario: g_VX1X_hasXnameX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).has("name")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[marko] |
+
+  Scenario: g_VX1X_hasXcircumferenceX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).has("circumference")
+  """
+When iterated to list
+Then the result should be empty
+
+  Scenario: g_VX1X_hasXname_markoX
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).has("name", "marko")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[marko] |
+
+  Scenario: g_VX2X_hasXname_markoX
+Given the modern graph
+And using the parameter v1Id defined as "v[vadas].id"
+And the traversal of
+  """
+  g.V(v1Id).has("name", "marko")
+  """
+When iterated to list
+Then the result should be empty
+
+  Scenario: g_V_hasXname_markoX
+Given the modern graph
+And the traversal of
+  """
+  g.V().has("name", "marko")
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[marko] |
+
+  Scenario: g_V_hasXname_blahX
+Given the modern graph
+And the traversal of
+  """
+  g.V().has("name", "blah")
+  """
+When iterated to list
+Then the result should be empty
+
   Scenario: g_V_hasXage_gt_30X
 Given the modern graph
 And the traversal of
@@ -29,12 +105,247 @@ Feature: Step - has()
   | v[josh] |
   | v[peter] |
 
+  Scenario: g_V_hasXage_isXgt_30XX
+Given the modern graph
+And the traversal of
+  """
+  g.V().has("age", __.is(P.gt(30)))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[josh] |
+  | v[peter] |
+
+  Scenario: g_VX1X_hasXage_gt_30X
+Given the modern graph
+And using the parameter v1Id defined as "v[marko].id"
+And the traversal of
+  """
+  g.V(v1Id).has("age", P.gt(30))
+  """
+When iterated to list
+Then the result should be empty
+
+  Scenario: g_VX2X_hasXage_gt_30X
+Given the modern graph
+And using the parameter v2Id defined as "v[josh].id"
+And the traversal of
+  """
+  g.V(v2Id).has("age", P.gt(30))
+  """
+When iterated to list
+Then the result should be unordered
+  | result |
+  | v[josh] |
+
+  Scenario: g_VXv1X_hasXage_gt_30X
+Given the modern graph
+And using the parameter v1 defined as "v[marko]"
+And the traversal of
+  """
+  g.V(v1).has("age", P.gt(30))
+  """
+When iterated to list
+Then the result should be empty
+
+  Scenario: g_VXv2X_hasXage_gt_30X
+Given the modern graph
+And using the parameter v2 defined as "v[josh]"
+And the traversal of
+  """
+  g.V(v2).has("age", P.gt(30))
+  """
+When iterated 

[28/31] tinkerpop git commit: TINKERPOP-1857 Temporarily ignore test failures with .net GLV tests

2018-02-14 Thread spmallette
TINKERPOP-1857 Temporarily ignore test failures with .net GLV tests


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/10f29cbe
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/10f29cbe
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/10f29cbe

Branch: refs/heads/TINKERPOP-1857
Commit: 10f29cbe94424a03f1710695fcd396cbc0ae95ff
Parents: bdd5e4c
Author: Stephen Mallette 
Authored: Fri Feb 9 09:52:37 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 15:34:10 2018 -0500

--
 .../Gherkin/GherkinTestRunner.cs| 24 ++--
 .../Gherkin/IgnoreException.cs  |  6 -
 2 files changed, 27 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/10f29cbe/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs
--
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs
index 9cb3cf0..69af86f 100644
--- 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs
+++ 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs
@@ -37,8 +37,28 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
 {
 public class GherkinTestRunner
 {
-private static readonly IDictionary 
IgnoredScenarios =
-new Dictionary();
+private static readonly IDictionary 
IgnoredScenarios = new Dictionary {
+{ 
"g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name",
 IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_hasIdXwithinXemptyXX_count", 
IgnoreReason.NeedsFurtherInvestigation },
+{ "g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", 
IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_asXaX_out_asXbX_whereXandXasXaX_outXknowsX_asXbX__orXasXbX_outXcreatedX_hasXname_rippleX__asXbX_inXknowsX_count_isXnotXeqX0X_selectXa_bX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_bothXknowsX_bothXknowsX_asXdX_whereXc__notXeqXaX_orXeqXd_selectXa_b_c_dX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_whereXa_gtXbX_orXeqXbXXX_byXageX_byXweightX_byXweightX_selectXa_cX_byXnameX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_inXcreatedX_asXdX_whereXa_ltXbX_orXgtXcXX_andXneqXdXXX_byXageX_byXweightX_byXinXcreatedX_valuesXageX_minX_selectXa_c_dX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_withBulkXfalseX_withSackX1_sumX_VX1X_localXoutEXknowsX_barrierXnormSackX_inVX_inXknowsX_barrier_sack",
 IgnoreReason.NeedsFurtherInvestigation },
+{ "g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", 
IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack",
 IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_hasXageX_groupCountXaX_byXnameX_out_capXaX", 
IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_hasXname_markoX_propertyXfriendWeight_outEXknowsX_weight_sum__acl_privateX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_outE_weight_groupCount_unfold_selectXkeysX_unfold", 
IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_outE_weight_groupCount_selectXkeysX_unfold", 
IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_asXaX_out_asXbX_matchXa_out_count_c__b_in_count_cX", 
IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_matchXa_knows_b__andXa_created_c__b_created_c__andXb_created_count_d__a_knows_count_dXXX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_foo_injectX99X_min", 
IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_orderXlocalX_byXvaluesX",
 IgnoreReason.NeedsFurtherInvestigation },
+{ "g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX", 
IgnoreReason.NeedsFurtherInvestigation },
+{ 
"g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX",
 IgnoreReason.NeedsFurtherInvestigation }
+};
 
 private static class Keywords
 {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/10f29cbe/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs

[1/2] tinkerpop git commit: TINKERPOP-1885 Clean up Gremlin.Net csproj CTR

2018-02-14 Thread florianhockmann
Repository: tinkerpop
Updated Branches:
  refs/heads/master 764615fbf -> 041bb3fe4


TINKERPOP-1885 Clean up Gremlin.Net csproj CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7f39b188
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7f39b188
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7f39b188

Branch: refs/heads/master
Commit: 7f39b188ec9035c5af75eafcf5be0eae912d3c60
Parents: 2d7113a
Author: Florian Hockmann 
Authored: Wed Feb 14 20:30:10 2018 +0100
Committer: Florian Hockmann 
Committed: Wed Feb 14 20:30:10 2018 +0100

--
 gremlin-dotnet/glv/Gremlin.Net.csproj.template  | 28 +---
 .../src/Gremlin.Net/Gremlin.Net.csproj  | 28 +---
 2 files changed, 24 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f39b188/gremlin-dotnet/glv/Gremlin.Net.csproj.template
--
diff --git a/gremlin-dotnet/glv/Gremlin.Net.csproj.template 
b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
index 59153b4..c116f0e 100644
--- a/gremlin-dotnet/glv/Gremlin.Net.csproj.template
+++ b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
@@ -30,25 +30,21 @@ limitations under the License.
 <%= (projectVersion =~ /(\d+\.\d+)\.*/)[0][1] 
%>.0.0
 Gremlin.Net
 Apache TinkerPop
-
-  Gremlin.Net for Apache TinkerPop™ is a language variant and driver for 
.NET.
-
-
-  Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-  Gremlin is the graph traversal language of TinkerPop. It can be 
described as a functional, data-flow language
-  that enables users to succinctly express complex traversals on (or 
queries of) their application’s property graph.
+Gremlin.Net for Apache TinkerPop™ is a language variant and 
driver for .NET.
 
-  Gremlin.Net implements Gremlin within .NET. C# syntax has the same 
constructs as Java including “dot notation”
-  for function chaining (a.b.c), round bracket function arguments 
(a(b,c))`, and support for global namespaces
-  (a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
-  Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net 
that make traversals a bit more succinct.
+Apache TinkerPop™ is a graph computing framework for both graph databases 
(OLTP) and graph analytic systems (OLAP).
+Gremlin is the graph traversal language of TinkerPop. It can be described as a 
functional, data-flow language
+that enables users to succinctly express complex traversals on (or queries of) 
their application’s property graph.
 
-  Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+Gremlin.Net implements Gremlin within .NET. C# syntax has the same constructs 
as Java including “dot notation”
+for function chaining (a.b.c), round bracket function arguments (a(b,c))`, and 
support for global namespaces
+(a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
+Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net that 
make traversals a bit more succinct.
 
-  NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions = 0.X) and is now
-  included as part of the Apache TinkerPop project. The 'old' Gremlin.Net 
driver is however still supported.
-  Head to https://github.com/FlorianHockmann/Gremlin.Net for more 
information.
-
+Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+
+NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions: 0.y.z) and is now
+included as part of the Apache TinkerPop project.
 
../../build/tinkerpop.snk
 true
 true

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f39b188/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
--
diff --git a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj 
b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
index 41e8f4c..a538b8b 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -30,25 +30,21 @@ limitations under the License.
 3.2.0.0
 Gremlin.Net
 Apache TinkerPop
-
-  Gremlin.Net for Apache TinkerPop™ is a language variant and driver for 
.NET.
-
-
-  Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-  Gremlin is the graph traversal 

tinkerpop git commit: TINKERPOP-1885 Clean up Gremlin.Net csproj CTR

2018-02-14 Thread florianhockmann
Repository: tinkerpop
Updated Branches:
  refs/heads/tp32 2d7113aaa -> 7f39b188e


TINKERPOP-1885 Clean up Gremlin.Net csproj CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7f39b188
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7f39b188
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7f39b188

Branch: refs/heads/tp32
Commit: 7f39b188ec9035c5af75eafcf5be0eae912d3c60
Parents: 2d7113a
Author: Florian Hockmann 
Authored: Wed Feb 14 20:30:10 2018 +0100
Committer: Florian Hockmann 
Committed: Wed Feb 14 20:30:10 2018 +0100

--
 gremlin-dotnet/glv/Gremlin.Net.csproj.template  | 28 +---
 .../src/Gremlin.Net/Gremlin.Net.csproj  | 28 +---
 2 files changed, 24 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f39b188/gremlin-dotnet/glv/Gremlin.Net.csproj.template
--
diff --git a/gremlin-dotnet/glv/Gremlin.Net.csproj.template 
b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
index 59153b4..c116f0e 100644
--- a/gremlin-dotnet/glv/Gremlin.Net.csproj.template
+++ b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
@@ -30,25 +30,21 @@ limitations under the License.
 <%= (projectVersion =~ /(\d+\.\d+)\.*/)[0][1] 
%>.0.0
 Gremlin.Net
 Apache TinkerPop
-
-  Gremlin.Net for Apache TinkerPop™ is a language variant and driver for 
.NET.
-
-
-  Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-  Gremlin is the graph traversal language of TinkerPop. It can be 
described as a functional, data-flow language
-  that enables users to succinctly express complex traversals on (or 
queries of) their application’s property graph.
+Gremlin.Net for Apache TinkerPop™ is a language variant and 
driver for .NET.
 
-  Gremlin.Net implements Gremlin within .NET. C# syntax has the same 
constructs as Java including “dot notation”
-  for function chaining (a.b.c), round bracket function arguments 
(a(b,c))`, and support for global namespaces
-  (a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
-  Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net 
that make traversals a bit more succinct.
+Apache TinkerPop™ is a graph computing framework for both graph databases 
(OLTP) and graph analytic systems (OLAP).
+Gremlin is the graph traversal language of TinkerPop. It can be described as a 
functional, data-flow language
+that enables users to succinctly express complex traversals on (or queries of) 
their application’s property graph.
 
-  Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+Gremlin.Net implements Gremlin within .NET. C# syntax has the same constructs 
as Java including “dot notation”
+for function chaining (a.b.c), round bracket function arguments (a(b,c))`, and 
support for global namespaces
+(a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
+Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net that 
make traversals a bit more succinct.
 
-  NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions = 0.X) and is now
-  included as part of the Apache TinkerPop project. The 'old' Gremlin.Net 
driver is however still supported.
-  Head to https://github.com/FlorianHockmann/Gremlin.Net for more 
information.
-
+Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+
+NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions: 0.y.z) and is now
+included as part of the Apache TinkerPop project.
 
../../build/tinkerpop.snk
 true
 true

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f39b188/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
--
diff --git a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj 
b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
index 41e8f4c..a538b8b 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -30,25 +30,21 @@ limitations under the License.
 3.2.0.0
 Gremlin.Net
 Apache TinkerPop
-
-  Gremlin.Net for Apache TinkerPop™ is a language variant and driver for 
.NET.
-
-
-  Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-  Gremlin is the graph traversal 

[2/2] tinkerpop git commit: Merge branch 'tp32'

2018-02-14 Thread florianhockmann
Merge branch 'tp32'


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/041bb3fe
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/041bb3fe
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/041bb3fe

Branch: refs/heads/master
Commit: 041bb3fe4bcae2724b9fbbbafc6c21c6c632a2e4
Parents: 764615f 7f39b18
Author: Florian Hockmann 
Authored: Wed Feb 14 20:31:45 2018 +0100
Committer: Florian Hockmann 
Committed: Wed Feb 14 20:31:45 2018 +0100

--
 gremlin-dotnet/glv/Gremlin.Net.csproj.template  | 28 +---
 .../src/Gremlin.Net/Gremlin.Net.csproj  | 28 +---
 2 files changed, 24 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/041bb3fe/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
--
diff --cc gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
index 873667a,a538b8b..397b6a6
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@@ -25,30 -25,26 +25,26 @@@ limitations under the License

  

 -3.2.8-SNAPSHOT
 -3.2.8.0
 -3.2.0.0
 +3.3.2-SNAPSHOT
 +3.3.2.0
 +3.3.0.0
  Gremlin.Net
  Apache TinkerPop
- 
-   Gremlin.Net for Apache TinkerPop™ is a language variant and driver 
for .NET.
- 
- 
-   Apache TinkerPop™ is a graph computing framework for both graph 
databases (OLTP) and graph analytic systems (OLAP).
-   Gremlin is the graph traversal language of TinkerPop. It can be 
described as a functional, data-flow language
-   that enables users to succinctly express complex traversals on (or 
queries of) their application’s property graph.
+ Gremlin.Net for Apache TinkerPop™ is a language variant 
and driver for .NET.
  
-   Gremlin.Net implements Gremlin within .NET. C# syntax has the same 
constructs as Java including “dot notation”
-   for function chaining (a.b.c), round bracket function arguments 
(a(b,c))`, and support for global namespaces
-   (a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
-   Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net 
that make traversals a bit more succinct.
+ Apache TinkerPop™ is a graph computing framework for both graph databases 
(OLTP) and graph analytic systems (OLAP).
+ Gremlin is the graph traversal language of TinkerPop. It can be described as 
a functional, data-flow language
+ that enables users to succinctly express complex traversals on (or queries 
of) their application’s property graph.
  
-   Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+ Gremlin.Net implements Gremlin within .NET. C# syntax has the same constructs 
as Java including “dot notation”
+ for function chaining (a.b.c), round bracket function arguments (a(b,c))`, 
and support for global namespaces
+ (a(b()) vs a(__.b()))`. As such, anyone familiar with Gremlin-Java will 
immediately be able to work with
+ Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net that 
make traversals a bit more succinct.
  
-   NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions = 0.X) and is now
-   included as part of the Apache TinkerPop project. The 'old' Gremlin.Net 
driver is however still supported.
-   Head to https://github.com/FlorianHockmann/Gremlin.Net for more 
information.
- 
+ Please see the reference documentation at Apache TinkerPop for more 
information on usage.
+ 
+ NOTE: Gremlin.Net is an extension of the Gremlin.Net driver by Florian 
Hockmann (versions: 0.y.z) and is now
+ included as part of the Apache TinkerPop project.
  
../../build/tinkerpop.snk
  true
  true



tinkerpop git commit: TINKERPOP-1857 Added the new "sink" test for GLVs

2018-02-14 Thread spmallette
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1857 48d459482 -> 043c996ee


TINKERPOP-1857 Added the new "sink" test for GLVs

This involved adding "sink" infrastructure to the test server configuration and 
including it in the gherkin setups for each GLV


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/043c996e
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/043c996e
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/043c996e

Branch: refs/heads/TINKERPOP-1857
Commit: 043c996eeae47e42bf2809ad04fb7899ad906405
Parents: 48d4594
Author: Stephen Mallette 
Authored: Wed Feb 14 11:17:15 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 11:17:15 2018 -0500

--
 .../Gherkin/ScenarioData.cs |  2 +-
 .../gremlin-javascript/test/cucumber/world.js   |  2 +-
 gremlin-python/src/main/jython/radish/terrain.py|  4 ++--
 gremlin-server/src/test/scripts/generate-all.groovy |  4 +++-
 .../src/test/scripts/test-server-start.groovy   |  2 ++
 gremlin-test/features/branch/Repeat.feature | 16 
 6 files changed, 25 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/043c996e/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
--
diff --git 
a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
index ed767d5..77552f9 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/ScenarioData.cs
@@ -42,7 +42,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
 private static readonly Regex EdgeLRegex = new Regex("l=(.+?)[,}]", 
RegexOptions.Compiled);
 private static readonly Regex EdgeIRegex = new Regex("i=(.+?)[,}]", 
RegexOptions.Compiled);
 
-private static readonly string[] GraphNames = {"modern", "classic", 
"crew", "grateful"};
+private static readonly string[] GraphNames = {"modern", "classic", 
"crew", "grateful", "sink"};
 
 private static readonly IDictionary EmptyVertices =
 new ReadOnlyDictionary(new Dictionary());

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/043c996e/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
index ae3f9a6..f531720 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/world.js
@@ -68,7 +68,7 @@ defineSupportCode(function (methods) {
 
   methods.BeforeAll(function () {
 // load all traversals
-const promises = ['modern', 'classic', 'crew', 'grateful', 
'empty'].map(graphName => {
+const promises = ['modern', 'classic', 'crew', 'grateful', 'sink', 
'empty'].map(graphName => {
   let connection = null;
   if (graphName === 'empty') {
 connection = helper.getConnection('ggraph');

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/043c996e/gremlin-python/src/main/jython/radish/terrain.py
--
diff --git a/gremlin-python/src/main/jython/radish/terrain.py 
b/gremlin-python/src/main/jython/radish/terrain.py
index 9aed647..4db443e 100644
--- a/gremlin-python/src/main/jython/radish/terrain.py
+++ b/gremlin-python/src/main/jython/radish/terrain.py
@@ -34,7 +34,7 @@ def prepare_static_traversal_source(features, marker):
 # as the various traversal sources for testing do not change their data, 
there is no need to re-create remotes
 # and client side lookup data over and over. it can be created once for 
all tests and be reused.
 cache = {}
-for graph_name in (("modern", "gmodern"), ("classic", "gclassic"), 
("crew", "gcrew"), ("grateful", "ggrateful")):
+for graph_name in (("modern", "gmodern"), ("classic", "gclassic"), 
("crew", "gcrew"), ("grateful", "ggrateful"), ("sink", "gsink")):
 cache[graph_name[0]] = {}
 remote = __create_remote(graph_name[1])
 cache[graph_name[0]]["remote_conn"] = __create_remote(graph_name[1])
@@ -52,7 +52,7 @@ def prepare_static_traversal_source(features, marker):
 scenario.context.lookup_v = {}
 scenario.context.lookup_e = {}
 
-

tinkerpop git commit: TINKERPOP-1857 Ignored a few failing tests for purpose of this issue

2018-02-14 Thread spmallette
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1857 4ae1c2e9b -> 48d459482


TINKERPOP-1857 Ignored a few failing tests for purpose of this issue

Will create a new issue specific to the JS GLV to resolve these ignored tests.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/48d45948
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/48d45948
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/48d45948

Branch: refs/heads/TINKERPOP-1857
Commit: 48d459482635dafaf7feef09ffa206357cf4488f
Parents: 4ae1c2e
Author: Stephen Mallette 
Authored: Wed Feb 14 10:46:58 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 10:46:58 2018 -0500

--
 .../gremlin-javascript/test/cucumber/feature-steps.js   | 5 +
 1 file changed, 5 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/48d45948/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
index 9e12818..2bb6ef0 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
@@ -55,11 +55,16 @@ const parsers = [
 
 const ignoreReason = {
   lambdaNotSupported: 'Lambdas are not supported on gremlin-javascript',
+  needsFurtherInvestigation: '',
 };
 
 const ignoredScenarios = {
   // An associative array containing the scenario name as key, for example:
   // 'g_V_branchXlabel_eq_person': new 
IgnoreError(ignoreReason.lambdaNotSupported),
+  
'g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name':
 new IgnoreError(ignoreReason.needsFurtherInvestigation),
+  'g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX': new 
IgnoreError(ignoreReason.needsFurtherInvestigation),
+  
'g_V_asXaX_out_asXbX_whereXandXasXaX_outXknowsX_asXbX__orXasXbX_outXcreatedX_hasXname_rippleX__asXbX_inXknowsX_count_isXnotXeqX0X_selectXa_bX':
 new IgnoreError(ignoreReason.needsFurtherInvestigation),
+  
'g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_bothXknowsX_bothXknowsX_asXdX_whereXc__notXeqXaX_orXeqXd_selectXa_b_c_dX':
 new IgnoreError(ignoreReason.needsFurtherInvestigation),
 };
 
 defineSupportCode(function(methods) {



tinkerpop git commit: JavaScript GLV: include Barrier and Pop in test traversal context

2018-02-14 Thread jorgebg
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1857 e2b09dfee -> 4ae1c2e9b


JavaScript GLV: include Barrier and Pop in test traversal context


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4ae1c2e9
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4ae1c2e9
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4ae1c2e9

Branch: refs/heads/TINKERPOP-1857
Commit: 4ae1c2e9bcd0c8a536da81fdd789f08b3ad7f2b0
Parents: e2b09df
Author: Jorge Bay Gondra 
Authored: Wed Feb 14 16:18:24 2018 +0100
Committer: Jorge Bay Gondra 
Committed: Wed Feb 14 16:18:24 2018 +0100

--
 .../javascript/gremlin-javascript/test/cucumber/feature-steps.js   | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4ae1c2e9/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
index 12bc835..9e12818 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/feature-steps.js
@@ -173,6 +173,7 @@ function getSandbox(g, parameters) {
   const sandbox = {
 g: g,
 __: __,
+Barrier: traversalModule.barrier,
 Cardinality: traversalModule.cardinality,
 Column: traversalModule.column,
 Direction: {
@@ -183,6 +184,7 @@ function getSandbox(g, parameters) {
 Order: traversalModule.order,
 P: traversalModule.P,
 Pick: traversalModule.pick,
+Pop: traversalModule.pop,
 Scope: traversalModule.scope,
 Operator: traversalModule.operator,
 T: traversalModule.t,



tinkerpop git commit: JavaScript GLV: handle responses without identifier and clear handler

2018-02-14 Thread jorgebg
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1857 9addf862d -> e2b09dfee


JavaScript GLV: handle responses without identifier and clear handler


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/e2b09dfe
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/e2b09dfe
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/e2b09dfe

Branch: refs/heads/TINKERPOP-1857
Commit: e2b09dfeeb0cf29db68e6dfa0ecb41ba044819ba
Parents: 9addf86
Author: Jorge Bay Gondra 
Authored: Wed Feb 14 16:11:13 2018 +0100
Committer: Jorge Bay Gondra 
Committed: Wed Feb 14 16:11:13 2018 +0100

--
 .../lib/driver/driver-remote-connection.js  | 35 
 1 file changed, 35 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/e2b09dfe/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
--
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
index 5587fd6..d9e6000 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/driver/driver-remote-connection.js
@@ -126,7 +126,31 @@ class DriverRemoteConnection extends RemoteConnection {
 
   _handleMessage(data) {
 const response = this._reader.read(JSON.parse(data.toString()));
+if (response.requestId === null || response.requestId === undefined) {
+// There was a serialization issue on the server that prevented the 
parsing of the request id
+// We invoke any of the pending handlers with an error
+Object.keys(this._responseHandlers).forEach(requestId => {
+  const handler = this._responseHandlers[requestId];
+  this._clearHandler(requestId);
+  if (response.status !== undefined && response.status.message) {
+return handler.callback(
+  new Error(util.format(
+'Server error (no request information): %s (%d)', 
response.status.message, response.status.code)));
+  } else {
+return handler.callback(new Error(util.format('Server error (no 
request information): %j', response)));
+  }
+});
+return;
+}
+
 const handler = this._responseHandlers[response.requestId];
+
+if (!handler) {
+  // The handler for a given request id was not found
+  // It was probably invoked earlier due to a serialization issue.
+  return;
+}
+
 if (response.status.code >= 400) {
   // callback in error
   return handler.callback(
@@ -134,6 +158,7 @@ class DriverRemoteConnection extends RemoteConnection {
 }
 switch (response.status.code) {
   case responseStatusCode.noContent:
+this._clearHandler(response.requestId);
 return handler.callback(null, { traversers: []});
   case responseStatusCode.partialContent:
 handler.result = handler.result || [];
@@ -146,11 +171,21 @@ class DriverRemoteConnection extends RemoteConnection {
 else {
   handler.result = response.result.data;
 }
+this._clearHandler(response.requestId);
 return handler.callback(null, { traversers: handler.result });
 }
   }
 
   /**
+   * Clears the internal state containing the callback and result buffer of a 
given request.
+   * @param requestId
+   * @private
+   */
+  _clearHandler(requestId) {
+delete this._responseHandlers[requestId];
+  }
+
+  /**
* Closes the Connection.
* @return {Promise}
*/



[2/2] tinkerpop git commit: Merge branch 'tp32'

2018-02-14 Thread spmallette
Merge branch 'tp32'


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/764615fb
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/764615fb
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/764615fb

Branch: refs/heads/master
Commit: 764615fbf3bbeb1d65b3bb6d91c95ca20cd71737
Parents: 5768bc1 2d7113a
Author: Stephen Mallette 
Authored: Wed Feb 14 10:08:45 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 10:08:45 2018 -0500

--
 CHANGELOG.asciidoc | 1 +
 .../gremlin/process/traversal/dsl/GremlinDslProcessor.java | 6 ++
 2 files changed, 7 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/764615fb/CHANGELOG.asciidoc
--

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/764615fb/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
--



[1/2] tinkerpop git commit: TINKERPOP-1890 getAnonymousTraversalClass() is now generated by the DSL processor CTR

2018-02-14 Thread spmallette
Repository: tinkerpop
Updated Branches:
  refs/heads/master 5768bc1bc -> 764615fbf


TINKERPOP-1890 getAnonymousTraversalClass() is now generated by the DSL 
processor CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2d7113aa
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2d7113aa
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2d7113aa

Branch: refs/heads/master
Commit: 2d7113aaa166b69a8503be27aebf36a8063b82bd
Parents: d288c53
Author: Stephen Mallette 
Authored: Wed Feb 14 10:07:41 2018 -0500
Committer: Stephen Mallette 
Committed: Wed Feb 14 10:08:35 2018 -0500

--
 CHANGELOG.asciidoc | 1 +
 .../gremlin/process/traversal/dsl/GremlinDslProcessor.java | 6 ++
 2 files changed, 7 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2d7113aa/CHANGELOG.asciidoc
--
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 9dcb7f0..f1519b6 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -23,6 +23,7 @@ 
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 [[release-3-2-8]]
 === TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET)
 
+* Modified `GremlinDslProcessor` so that it generated the 
`getAnonymousTraversalClass()` method to return the DSL version of `__`.
 * Added the "Kitchen Sink" test data set.
 * Fixed a bug in `NumberHelper` that led to wrong min/max results if numbers 
exceeded the Integer limits.
 * Delayed setting of the request identifier until `RequestMessage` 
construction by the builder.

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2d7113aa/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
--
diff --git 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
index cdfad6a..ec6379f 100644
--- 
a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
+++ 
b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
@@ -297,6 +297,12 @@ public class GremlinDslProcessor extends AbstractProcessor 
{
 .addStatement("return ($T) traversal.asAdmin().addStep(new 
$T(traversal, $T.class, true, edgeIds))", ctx.traversalClassName, 
GraphStep.class, Edge.class)
 .returns(ParameterizedTypeName.get(ctx.traversalClassName, 
ClassName.get(Edge.class), ClassName.get(Edge.class)))
 .build());
+
traversalSourceClass.addMethod(MethodSpec.methodBuilder("getAnonymousTraversalClass")
+.addModifiers(Modifier.PUBLIC)
+.addAnnotation(Override.class)
+.addStatement("return Optional.of(__.class)")
+.returns(ParameterizedTypeName.get(Optional.class, 
Class.class))
+.build());
 }
 
 final JavaFile traversalSourceJavaFile = 
JavaFile.builder(ctx.packageName, traversalSourceClass.build()).build();