You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by fl...@apache.org on 2018/05/11 14:05:28 UTC

[01/50] tinkerpop git commit: Minor bug fix to the graphson type serializer [Forced Update!]

Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1836 46a2a12e7 -> 518e8fa09 (forced update)


Minor bug fix to the graphson type serializer

There was no need to test for string JsonTokens - just needed to pass all other "shapes" through to check for type info. Credit to kevin gallardo for the fix. CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 2a9e7e24f4e255cad3eb300423634cbac110d74d
Parents: fdac653
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Tue Mar 27 13:31:16 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Tue Mar 27 13:31:16 2018 -0400

----------------------------------------------------------------------
 .../io/graphson/GraphSONTypeSerializer.java         | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2a9e7e24/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypeSerializer.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypeSerializer.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypeSerializer.java
index 53ccc0b..765331a 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypeSerializer.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypeSerializer.java
@@ -96,14 +96,12 @@ public class GraphSONTypeSerializer extends TypeSerializer {
 
     @Override
     public WritableTypeId writeTypePrefix(final JsonGenerator jsonGenerator, final WritableTypeId writableTypeId) throws IOException {
-        if (writableTypeId.valueShape == JsonToken.VALUE_STRING) {
-            if (canWriteTypeId()) {
-                writeTypePrefix(jsonGenerator, getTypeIdResolver().idFromValueAndType(writableTypeId.forValue, getClassFromObject(writableTypeId.forValue)));
-            }
-        } else if (writableTypeId.valueShape == JsonToken.START_OBJECT) {
+        if (writableTypeId.valueShape == JsonToken.START_OBJECT) {
             jsonGenerator.writeStartObject();
         } else if (writableTypeId.valueShape == JsonToken.START_ARRAY) {
             jsonGenerator.writeStartArray();
+        } else if (canWriteTypeId()) {
+            writeTypePrefix(jsonGenerator, getTypeIdResolver().idFromValueAndType(writableTypeId.forValue, getClassFromObject(writableTypeId.forValue)));
         } else {
             throw new IllegalStateException("Could not write prefix: shape[" + writableTypeId.valueShape + "] value[" + writableTypeId.forValue + "]");
         }
@@ -113,14 +111,12 @@ public class GraphSONTypeSerializer extends TypeSerializer {
 
     @Override
     public WritableTypeId writeTypeSuffix(final JsonGenerator jsonGenerator, final WritableTypeId writableTypeId) throws IOException {
-        if (writableTypeId.valueShape == JsonToken.VALUE_STRING) {
-            if (canWriteTypeId()) {
-                writeTypeSuffix(jsonGenerator);
-            }
-        } else if (writableTypeId.valueShape == JsonToken.START_OBJECT) {
+        if (writableTypeId.valueShape == JsonToken.START_OBJECT) {
             jsonGenerator.writeEndObject();
         } else if (writableTypeId.valueShape == JsonToken.START_ARRAY) {
             jsonGenerator.writeEndArray();
+        } else if (canWriteTypeId()) {
+            writeTypeSuffix(jsonGenerator);
         } else {
             throw new IllegalStateException("Could not write suffix: shape[" + writableTypeId.valueShape + "] value[" + writableTypeId.forValue + "]");
         }


[34/50] tinkerpop git commit: Minor refacoring of cache access in TraversalStrategies CTR

Posted by fl...@apache.org.
Minor refacoring of cache access in TraversalStrategies CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 1d9e6dc6d30c5c7d56e4007527365793eb1f223e
Parents: 0d6f8fc
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 09:18:08 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 09:18:08 2018 -0400

----------------------------------------------------------------------
 .../process/traversal/TraversalStrategies.java  | 39 ++++++++++----------
 1 file changed, 20 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1d9e6dc6/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
index e84737c..37cd1a6 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
@@ -203,7 +203,7 @@ public interface TraversalStrategies extends Serializable, Cloneable {
          * Keeps track of {@link GraphComputer} and/or {@link Graph} classes that have been initialized to the
          * classloader so that they do not have to be reflected again.
          */
-        private static Set<Class> LOADED = ConcurrentHashMap.newKeySet();
+        private static Map<Class, Boolean> LOADED = new ConcurrentHashMap<>();
 
         private static final Map<Class<? extends Graph>, TraversalStrategies> GRAPH_CACHE = new HashMap<>();
         private static final Map<Class<? extends GraphComputer>, TraversalStrategies> GRAPH_COMPUTER_CACHE = new HashMap<>();
@@ -249,26 +249,27 @@ public interface TraversalStrategies extends Serializable, Cloneable {
         }
 
         public static TraversalStrategies getStrategies(final Class graphOrGraphComputerClass) {
-            try {
-                // be sure to load the class so that its static{} traversal strategy registration component is loaded.
-                // this is more important for GraphComputer classes as they are typically not instantiated prior to
-                // strategy usage like Graph classes.
-                if (!LOADED.contains(graphOrGraphComputerClass)) {
-                    final String graphComputerClassName = null != graphOrGraphComputerClass.getDeclaringClass() ?
-                        graphOrGraphComputerClass.getCanonicalName().replace("." + graphOrGraphComputerClass.getSimpleName(), "$" + graphOrGraphComputerClass.getSimpleName()) :
-                        graphOrGraphComputerClass.getCanonicalName();
+            // be sure to load the class so that its static{} traversal strategy registration component is loaded.
+            // this is more important for GraphComputer classes as they are typically not instantiated prior to
+            // strategy usage like Graph classes.
+            LOADED.computeIfAbsent(graphOrGraphComputerClass, unused ->  {
+                final String graphComputerClassName = null != graphOrGraphComputerClass.getDeclaringClass() ?
+                    graphOrGraphComputerClass.getCanonicalName().replace("." + graphOrGraphComputerClass.getSimpleName(), "$" + graphOrGraphComputerClass.getSimpleName()) :
+                    graphOrGraphComputerClass.getCanonicalName();
+
+                try {
                     Class.forName(graphComputerClassName);
-
-                    // keep track of stuff we already loaded once - stuff in this if/statement isn't cheap and this
-                    // method gets called a lot, basically every time a new traversal gets spun up (that includes
-                    // child traversals. perhaps it is possible to just check the cache keys for this information, but
-                    // it's not clear if this method will be called with something not in the cache and if it is and
-                    // it results in error, then we'd probably not want to deal with this block again anyway
-                    LOADED.add(graphOrGraphComputerClass);
+                } catch (ClassNotFoundException e) {
+                    throw new IllegalStateException(e.getMessage(), e);
                 }
-            } catch (final ClassNotFoundException e) {
-                throw new IllegalStateException(e.getMessage(), e);
-            }
+
+                // keep track of stuff we already loaded once - stuff in this if/statement isn't cheap and this
+                // method gets called a lot, basically every time a new traversal gets spun up (that includes
+                // child traversals. perhaps it is possible to just check the cache keys for this information, but
+                // it's not clear if this method will be called with something not in the cache and if it is and
+                // it results in error, then we'd probably not want to deal with this block again anyway
+                return true;
+            });
             
             if (GRAPH_CACHE.containsKey(graphOrGraphComputerClass)) {
                 return GRAPH_CACHE.get(graphOrGraphComputerClass);


[49/50] tinkerpop git commit: TINKERPOP-1836 Add Gremlin.Net.Template project

Posted by fl...@apache.org.
TINKERPOP-1836 Add Gremlin.Net.Template project

This project is a dotnet template that can be installed and then used to create a simple dotnet console application ready to be used together with a Gremlin Server.


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

Branch: refs/heads/TINKERPOP-1836
Commit: bc3d37c7df10dbcf409c606da11ca84715cdaf1e
Parents: ac161fa
Author: Florian Hockmann <fh...@florian-hockmann.de>
Authored: Sun Feb 11 18:16:11 2018 +0100
Committer: Florian Hockmann <fh...@florian-hockmann.de>
Committed: Fri May 11 14:53:37 2018 +0200

----------------------------------------------------------------------
 gremlin-dotnet/Gremlin.Net.sln                  | 19 ++++++-
 .../glv/Gremlin.Net.Template.csproj.template    | 32 +++++++++++
 .../glv/Gremlin.Net.Template.nuspec.template    | 21 ++++++++
 gremlin-dotnet/glv/generate.groovy              |  8 ++-
 .../.template.config/template.json              | 14 +++++
 .../Gremlin.Net.Template.csproj                 | 32 +++++++++++
 .../Gremlin.Net.Template.nuspec                 | 21 ++++++++
 .../src/Gremlin.Net.Template/Program.cs         | 50 +++++++++++++++++
 .../src/Gremlin.Net.Template/README.md          | 46 ++++++++++++++++
 .../src/Gremlin.Net.Template/Service.cs         | 43 +++++++++++++++
 gremlin-dotnet/src/pom.xml                      | 47 ++++++++++++++++
 .../Gremlin.Net.Template.IntegrationTest.csproj | 20 +++++++
 .../ServiceTests.cs                             | 56 ++++++++++++++++++++
 pom.xml                                         |  2 +
 14 files changed, 409 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/Gremlin.Net.sln
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/Gremlin.Net.sln b/gremlin-dotnet/Gremlin.Net.sln
index b1a5d19..3f2b2b4 100644
--- a/gremlin-dotnet/Gremlin.Net.sln
+++ b/gremlin-dotnet/Gremlin.Net.sln
@@ -1,7 +1,7 @@
 
 Microsoft Visual Studio Solution File, Format Version 12.00
 # Visual Studio 15
-VisualStudioVersion = 15.0.26430.12
+VisualStudioVersion = 15.0.27130.2026
 MinimumVisualStudioVersion = 10.0.40219.1
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{584F838B-DAE2-44F5-868C-1F532949C827}"
 EndProject
@@ -15,6 +15,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Gremlin.Net.UnitTest", "tes
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Gremlin.Net.IntegrationTest", "test\Gremlin.Net.IntegrationTest\Gremlin.Net.IntegrationTest.csproj", "{CC54ABE3-13D2-491C-81E2-4D0355ABFA93}"
 EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Gremlin.Net.Template", "src\Gremlin.Net.Template\Gremlin.Net.Template.csproj", "{A9D2567A-6FD0-452B-A2F9-4256FE513ADD}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Gremlin.Net.Template.IntegrationTest", "test\Gremlin.Net.Template.IntegrationTest\Gremlin.Net.Template.IntegrationTest.csproj", "{3BFC3559-E317-4327-AFB7-CFBB31E1C868}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -33,6 +37,14 @@ Global
 		{CC54ABE3-13D2-491C-81E2-4D0355ABFA93}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{CC54ABE3-13D2-491C-81E2-4D0355ABFA93}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{CC54ABE3-13D2-491C-81E2-4D0355ABFA93}.Release|Any CPU.Build.0 = Release|Any CPU
+		{A9D2567A-6FD0-452B-A2F9-4256FE513ADD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{A9D2567A-6FD0-452B-A2F9-4256FE513ADD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{A9D2567A-6FD0-452B-A2F9-4256FE513ADD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{A9D2567A-6FD0-452B-A2F9-4256FE513ADD}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3BFC3559-E317-4327-AFB7-CFBB31E1C868}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{3BFC3559-E317-4327-AFB7-CFBB31E1C868}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3BFC3559-E317-4327-AFB7-CFBB31E1C868}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{3BFC3559-E317-4327-AFB7-CFBB31E1C868}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
@@ -41,5 +53,10 @@ Global
 		{6C1DD34D-E30F-4E37-AACC-BEB8AD2320D8} = {584F838B-DAE2-44F5-868C-1F532949C827}
 		{1FAB781B-B857-4AD2-BEC8-E20C214D9E21} = {1B54FAC2-5411-4BB6-B450-FE2FFD8C4782}
 		{CC54ABE3-13D2-491C-81E2-4D0355ABFA93} = {1B54FAC2-5411-4BB6-B450-FE2FFD8C4782}
+		{A9D2567A-6FD0-452B-A2F9-4256FE513ADD} = {584F838B-DAE2-44F5-868C-1F532949C827}
+		{3BFC3559-E317-4327-AFB7-CFBB31E1C868} = {1B54FAC2-5411-4BB6-B450-FE2FFD8C4782}
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {F0AF408C-2147-434A-80FB-73A1626FC30C}
 	EndGlobalSection
 EndGlobal

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template b/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
new file mode 100644
index 0000000..255520b
--- /dev/null
+++ b/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
@@ -0,0 +1,32 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<!--  THIS IS A GENERATED FILE - DO NOT MODIFY THIS FILE DIRECTLY - see pom.xml -->
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>netcoreapp2.0</TargetFramework>
+    <IsPackable>false</IsPackable>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="../Gremlin.Net/Gremlin.Net.csproj" />
+    <PackageReference Include="Gremlin.Net" Version="$projectVersion" />
+  </ItemGroup>
+
+</Project>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/glv/Gremlin.Net.Template.nuspec.template
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/glv/Gremlin.Net.Template.nuspec.template b/gremlin-dotnet/glv/Gremlin.Net.Template.nuspec.template
new file mode 100644
index 0000000..72ad382
--- /dev/null
+++ b/gremlin-dotnet/glv/Gremlin.Net.Template.nuspec.template
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+    <metadata>
+        <id>Gremlin.Net.Template</id>
+        <title>Gremlin.Net Template</title>
+        <version>$projectVersion</version>
+        <description>Gremlin.Net template to create a console application with dotnet new.</description>
+        <authors>Apache TinkerPop</authors>
+        <licenseUrl>https://github.com/apache/tinkerpop/blob/master/LICENSE</licenseUrl>
+        <projectUrl>http://tinkerpop.apache.org</projectUrl>
+        <tags>TinkerPop Gremlin Gremlin.Net</tags>
+        <packageTypes>
+            <packageType name="Template" />
+        </packageTypes>
+    </metadata>
+    <files>
+        <file src=".template.config/template.json" target="content/.template.config" />
+        <file src="Gremlin.Net.Template.csproj" target="content" />
+        <file src="*.cs" target="content" />
+</files>
+</package>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/glv/generate.groovy
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy
index 10b1008..8f5fa44 100644
--- a/gremlin-dotnet/glv/generate.groovy
+++ b/gremlin-dotnet/glv/generate.groovy
@@ -378,4 +378,10 @@ def determineVersion = {
 def versionToUse = determineVersion()
 def csprojTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Gremlin.Net.csproj.template")).make(["projectVersion":versionToUse])
 def csprojFile = new File("${projectBaseDir}/src/Gremlin.Net/Gremlin.Net.csproj")
-csprojFile.newWriter().withWriter{ it << csprojTemplate }
\ No newline at end of file
+csprojFile.newWriter().withWriter{ it << csprojTemplate }
+def templateCsprojTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Gremlin.Net.Template.csproj.template")).make(["projectVersion":versionToUse])
+def templateCsprojFile = new File("${projectBaseDir}/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj")
+templateCsprojFile.newWriter().withWriter{ it << templateCsprojTemplate }
+def nuspecTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Gremlin.Net.Template.nuspec.template")).make(["projectVersion":versionToUse])
+def nuspecFile = new File("${projectBaseDir}/src/Gremlin.Net.Template/Gremlin.Net.Template.nuspec")
+nuspecFile.newWriter().withWriter{ it << nuspecTemplate }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/Gremlin.Net.Template/.template.config/template.json
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/.template.config/template.json b/gremlin-dotnet/src/Gremlin.Net.Template/.template.config/template.json
new file mode 100644
index 0000000..f1ea667
--- /dev/null
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/.template.config/template.json
@@ -0,0 +1,14 @@
+{
+    "$schema": "http://json.schemastore.org/template",
+    "author": "Apache TinkerPop",
+    "classifications": [ "TinkerPop", "Gremlin", "Gremlin.Net" ],
+    "identity": "Gremlin.Net.Template",
+    "name": "Gremlin.Net Template",
+    "shortName": "gremlin",
+    "tags": {
+        "language": "C#",
+        "type": "project"
+    },
+    "sourceName": "Gremlin.Net.Template",
+    "preferNameDirectory": true
+  }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
new file mode 100644
index 0000000..3bb1409
--- /dev/null
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
@@ -0,0 +1,32 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<!--  THIS IS A GENERATED FILE - DO NOT MODIFY THIS FILE DIRECTLY - see pom.xml -->
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <OutputType>Exe</OutputType>
+    <TargetFramework>netcoreapp2.0</TargetFramework>
+    <IsPackable>false</IsPackable>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="../Gremlin.Net/Gremlin.Net.csproj" />
+    <PackageReference Include="Gremlin.Net" Version="3.2.8-SNAPSHOT" />
+  </ItemGroup>
+
+</Project>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.nuspec
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.nuspec b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.nuspec
new file mode 100644
index 0000000..ee147c8
--- /dev/null
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.nuspec
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+    <metadata>
+        <id>Gremlin.Net.Template</id>
+        <title>Gremlin.Net Template</title>
+        <version>3.2.8-SNAPSHOT</version>
+        <description>Gremlin.Net template to create a console application with dotnet new.</description>
+        <authors>Apache TinkerPop</authors>
+        <licenseUrl>https://github.com/apache/tinkerpop/blob/master/LICENSE</licenseUrl>
+        <projectUrl>http://tinkerpop.apache.org</projectUrl>
+        <tags>TinkerPop Gremlin Gremlin.Net</tags>
+        <packageTypes>
+            <packageType name="Template" />
+        </packageTypes>
+    </metadata>
+    <files>
+        <file src=".template.config/template.json" target="content/.template.config" />
+        <file src="Gremlin.Net.Template.csproj" target="content" />
+        <file src="*.cs" target="content" />
+</files>
+</package>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/Gremlin.Net.Template/Program.cs
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/Program.cs b/gremlin-dotnet/src/Gremlin.Net.Template/Program.cs
new file mode 100644
index 0000000..00f85e4
--- /dev/null
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/Program.cs
@@ -0,0 +1,50 @@
+#region License
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#endregion
+
+using System;
+using Gremlin.Net.Driver;
+using Gremlin.Net.Driver.Remote;
+using Gremlin.Net.Structure;
+
+namespace Gremlin.Net.Template
+{
+    internal class Program
+    {
+        private const string GremlinServerHostname = "localhost";
+        private const int GremlinServerPort = 45940;
+
+        private static void Main()
+        {
+            using (var client = new GremlinClient(new GremlinServer(GremlinServerHostname, GremlinServerPort)))
+            {
+                var g = new Graph().Traversal().WithRemote(new DriverRemoteConnection(client));
+                var service = new Service(g);
+                var creators = service.FindCreatorsOfSoftware("lop");
+                foreach (var c in creators)
+                {
+                    Console.WriteLine(c);
+                }
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/Gremlin.Net.Template/README.md
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/README.md b/gremlin-dotnet/src/Gremlin.Net.Template/README.md
new file mode 100644
index 0000000..c57f51c
--- /dev/null
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/README.md
@@ -0,0 +1,46 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# Gremlin.Net Template
+
+This dotnet template helps getting started with [Gremlin.Net](http://tinkerpop.apache.org/docs/current/reference/#gremlin-DotNet) - the .NET Gremlin Language Variant (GLV) of Apache TinkerPop™. It creates a new C# console project that shows how to connect to a [Gremlin Server](http://tinkerpop.apache.org/docs/current/reference/#gremlin-server) with Gremlin.Net.
+
+## Installation
+
+You can install the template with the dotnet CLI tool:
+
+```bash
+dotnet new -i Gremlin.Net.Template
+```
+
+## Creating a project using the template
+
+After the template is installed, a new project based on this template can be installed:
+
+```bash
+dotnet new gremlin
+```
+
+You can specify the output directory for the new project which will then also be used as the name of the created project:
+
+```bash
+dotnet new gremlin -o MyFirstGremlinProject
+```
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/Gremlin.Net.Template/Service.cs
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/Service.cs b/gremlin-dotnet/src/Gremlin.Net.Template/Service.cs
new file mode 100644
index 0000000..4ded6d3
--- /dev/null
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/Service.cs
@@ -0,0 +1,43 @@
+#region License
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#endregion
+
+using System.Collections.Generic;
+using Gremlin.Net.Process.Traversal;
+
+namespace Gremlin.Net.Template
+{
+    public class Service
+    {
+        private readonly GraphTraversalSource _g;
+
+        public Service(GraphTraversalSource g)
+        {
+            _g = g;
+        }
+
+        public IList<string> FindCreatorsOfSoftware(string softwareName)
+        {
+            return _g.V().HasLabel("software").Has("name", softwareName).In("created").Values<string>("name").ToList();
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/src/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/pom.xml b/gremlin-dotnet/src/pom.xml
index 9769b62..7571041 100644
--- a/gremlin-dotnet/src/pom.xml
+++ b/gremlin-dotnet/src/pom.xml
@@ -89,6 +89,47 @@ limitations under the License.
                             <nugetAddEnabled>false</nugetAddEnabled>
                         </configuration>
                     </plugin>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-antrun-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>pack-dotnet-template</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>run</goal>
+                                </goals>
+                                <configuration>
+                                    <tasks>
+                                        <taskdef resource="net/sf/antcontrib/antcontrib.properties" />
+                                        <if>
+                                            <available file="Gremlin.Net/bin/nuget.exe"/>
+                                            <then>
+                                                <echo>nuget.exe already downloaded and at Gremlin.Net/bin/nuget.exe.</echo>
+                                            </then>
+
+                                            <else>
+                                                <exec dir="Gremlin.Net/bin" executable="wget" failonerror="true">
+                                                    <arg line="https://dist.nuget.org/win-x86-commandline/v4.4.1/nuget.exe"/>
+                                                </exec>
+                                            </else>
+                                        </if>
+
+                                        <exec dir="Gremlin.Net/bin" executable="mono" failonerror="true">
+                                            <arg line="nuget.exe pack ../../Gremlin.Net.Template/Gremlin.Net.Template.nuspec"/>
+                                        </exec>
+                                    </tasks>
+                                </configuration>
+                            </execution>
+                        </executions>
+                        <dependencies>
+                            <dependency>
+                                <groupId>ant-contrib</groupId>
+                                <artifactId>ant-contrib</artifactId>
+                                <version>20020829</version>
+                            </dependency>
+                        </dependencies>
+                    </plugin>
                 </plugins>
             </build>
         </profile>
@@ -200,6 +241,12 @@ def engine = new groovy.text.GStringTemplateEngine()
 def csprojTemplate = engine.createTemplate(new File('${project.parent.basedir}/glv/Gremlin.Net.csproj.template')).make(["projectVersion":versionToUse])
 def csprojFile = new File('${project.basedir}/Gremlin.Net/Gremlin.Net.csproj')
 csprojFile.newWriter().withWriter{ it << csprojTemplate }
+def templateCsprojTemplate = engine.createTemplate(new File('${project.parent.basedir}/glv/Gremlin.Net.Template.csproj.template')).make(["projectVersion":versionToUse])
+def templateCsprojFile = new File('${project.basedir}/Gremlin.Net.Template/Gremlin.Net.Template.csproj')
+templateCsprojFile.newWriter().withWriter{ it << templateCsprojTemplate }
+def nuspecTemplate = engine.createTemplate(new File('${project.parent.basedir}/glv/Gremlin.Net.Template.nuspec.template')).make(["projectVersion":versionToUse])
+def nuspecFile = new File('${project.basedir}/Gremlin.Net.Template/Gremlin.Net.Template.nuspec')
+nuspecFile.newWriter().withWriter{ it << nuspecTemplate }
 ]]>
                                         </script>
                                     </scripts>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/Gremlin.Net.Template.IntegrationTest.csproj
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/Gremlin.Net.Template.IntegrationTest.csproj b/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/Gremlin.Net.Template.IntegrationTest.csproj
new file mode 100644
index 0000000..3607e68
--- /dev/null
+++ b/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/Gremlin.Net.Template.IntegrationTest.csproj
@@ -0,0 +1,20 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp2.0</TargetFramework>
+
+    <IsPackable>false</IsPackable>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
+    <PackageReference Include="xunit" Version="2.3.1" />
+    <PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
+    <DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\..\src\Gremlin.Net.Template\Gremlin.Net.Template.csproj" />
+  </ItemGroup>
+
+</Project>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/ServiceTests.cs
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/ServiceTests.cs b/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/ServiceTests.cs
new file mode 100644
index 0000000..8bf332f
--- /dev/null
+++ b/gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest/ServiceTests.cs
@@ -0,0 +1,56 @@
+#region License
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#endregion
+
+using System.Collections.Generic;
+using Gremlin.Net.Driver;
+using Gremlin.Net.Driver.Remote;
+using Gremlin.Net.Structure;
+using Xunit;
+
+namespace Gremlin.Net.Template.IntegrationTest
+{
+    public class ServiceTests
+    {
+        private const string TestHost = "localhost";
+        private const int TestPort = 45940;
+
+        [Fact]
+        public void ShouldReturnExpectedCreators()
+        {
+            using (var client = CreateClient())
+            {
+                var g = new Graph().Traversal().WithRemote(new DriverRemoteConnection(client));
+                var service = new Service(g);
+            
+                var creators = service.FindCreatorsOfSoftware("lop");
+
+                Assert.Equal(new List<string> {"marko", "josh", "peter"}, creators);
+            }
+        }
+
+        private static IGremlinClient CreateClient()
+        {
+            return new GremlinClient(new GremlinServer(TestHost, TestPort));
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bc3d37c7/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 379db49..e7eacd1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -323,6 +323,8 @@ limitations under the License.
                         <exclude>**/*.csproj</exclude>
                         <exclude>**/.vs/**</exclude>
                         <exclude>**/NuGet.Config</exclude>
+                        <exclude>**/*.nuspec</exclude>
+                        <exclude>**/*.nuspec.template</exclude>
                         <exclude>**/gremlin-javascript/node_modules/**</exclude>
                         <exclude>**/node/node_modules/**</exclude>
                         <exclude>**/node/node</exclude>


[40/50] tinkerpop git commit: Fix title formatting in olap/spark/yarn recipe CTR

Posted by fl...@apache.org.
Fix title formatting in olap/spark/yarn recipe CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 0694cd7cf7368752ddac041218a76c2db921983b
Parents: 09fd327
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 27 08:33:03 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 27 08:33:03 2018 -0400

----------------------------------------------------------------------
 docs/src/recipes/olap-spark-yarn.asciidoc | 20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/0694cd7c/docs/src/recipes/olap-spark-yarn.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/recipes/olap-spark-yarn.asciidoc b/docs/src/recipes/olap-spark-yarn.asciidoc
index 1543829..54ecf77 100644
--- a/docs/src/recipes/olap-spark-yarn.asciidoc
+++ b/docs/src/recipes/olap-spark-yarn.asciidoc
@@ -15,8 +15,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ////
 [[olap-spark-yarn]]
-OLAP traversals with Spark on YARN
-----------------------------------
+== OLAP traversals with Spark on YARN
 
 TinkerPop's combination of link:http://tinkerpop.apache.org/docs/x.y.z/reference/#sparkgraphcomputer[SparkGraphComputer]
 and link:http://tinkerpop.apache.org/docs/x.y.z/reference/#_properties_files[HadoopGraph] allows for running
@@ -26,8 +25,7 @@ where Spark runs locally or where the cluster is managed by a Spark server. Howe
 via the http://hadoop.apache.org/[Hadoop 2.x] Resource Manager (YARN), which requires `SparkGraphComputer` to be
 configured differently. This recipe describes this configuration.
 
-Approach
-~~~~~~~~
+=== Approach
 
 Most configuration problems of TinkerPop with Spark on YARN stem from three reasons:
 
@@ -40,8 +38,8 @@ The current recipe follows a minimalist approach in which no dependencies are ad
 included in the TinkerPop binary distribution. The Hadoop cluster's Spark installation is completely ignored. This
 approach minimizes the chance of dependency version conflicts.
 
-Prerequisites
-~~~~~~~~~~~~~
+=== Prerequisites
+
 This recipe is suitable for both a real external and a local pseudo Hadoop cluster. While the recipe is maintained
 for the vanilla Hadoop pseudo-cluster, it has been reported to work on real clusters with Hadoop distributions
 from various vendors.
@@ -79,8 +77,7 @@ export HADOOP_GREMLIN_LIBS=$GREMLIN_HOME/empty
 bin/gremlin.sh
 ----
 
-Running the job
-~~~~~~~~~~~~~~~
+=== Running the job
 
 You can now run a gremlin OLAP query with Spark on YARN:
 
@@ -118,8 +115,7 @@ the YARN Resource Manager UI (e.g. \http://rm.your.domain:8088/cluster), provide
 `yarn.log-aggregation-enable` property set to `true`. See the Spark documentation for
 https://spark.apache.org/docs/latest/running-on-yarn.html#debugging-your-application[additional hints].
 
-Explanation
-~~~~~~~~~~~
+=== Explanation
 
 This recipe does not require running the `bin/hadoop/init-tp-spark.sh` script described in the
 link:http://tinkerpop.apache.org/docs/x.y.z/reference/#sparkgraphcomputer[reference documentation] and thus is also
@@ -138,8 +134,8 @@ The `gremlin.spark.persistContext` property is explained in the reference docume
 link:http://tinkerpop.apache.org/docs/x.y.z/reference/#sparkgraphcomputer[SparkGraphComputer]: it helps in getting
 follow-up OLAP queries answered faster, because you skip the overhead for getting resources from YARN.
 
-Additional configuration options
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+=== Additional configuration options
+
 This recipe does most of the graph configuration in the Gremlin Console so that environment variables can be used and
 the chance of configuration mistakes is minimal. Once you have your setup working, it is probably easier to make a copy
 of the `conf/hadoop/hadoop-gryo.properties` file and put the property values specific to your environment there. This is


[08/50] tinkerpop git commit: Minor fixes to dev release docs around gremlin-javascript CTR

Posted by fl...@apache.org.
Minor fixes to dev release docs around gremlin-javascript CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: b84f700d41ab5ab2e5b383701804bb7556e337e6
Parents: 84d1bf8
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Apr 9 11:20:06 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Apr 9 11:20:06 2018 -0400

----------------------------------------------------------------------
 docs/src/dev/developer/release.asciidoc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b84f700d/docs/src/dev/developer/release.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/dev/developer/release.asciidoc b/docs/src/dev/developer/release.asciidoc
index fab9819..b868755 100644
--- a/docs/src/dev/developer/release.asciidoc
+++ b/docs/src/dev/developer/release.asciidoc
@@ -234,7 +234,7 @@ for generating javadoc and without that the binary distributions won't contain t
 == Release & Promote
 
 . Login to link:https://repository.apache.org/[Apache Nexus] and release the previously closed repository.
-. Deploy to link:https://pypi.python.org/pypi[pypi]
+. Deploy the GLVs
 .. This build will likely occur from the tag for the release, so be sure to checkout the tag first before executing this step.
 .. `mvn clean install -DskipTests -Dnuget`
 .. `mvn deploy -pl gremlin-python -DskipTests -Dpypi`
@@ -372,5 +372,9 @@ https://pypi.python.org/pypi/gremlinpython/xx.yy.zz
 
 https://www.nuget.org/packages/Gremlin.Net/xx.yy.zz
 
+Javascript artifacts are available in npm:
+
+https://www.npmjs.com/package/gremlin
+
 [include the release line logo image]
 ----


[15/50] tinkerpop git commit: Fixed grammar mistakes in javadocs for DriverRemoteTraversal CTR

Posted by fl...@apache.org.
Fixed grammar mistakes in javadocs for DriverRemoteTraversal CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 430c97d14ecc173eaa0e3d38fe9f78623bc005d4
Parents: a7c8ea1
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 18 17:12:43 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 18 17:12:43 2018 -0400

----------------------------------------------------------------------
 .../tinkerpop/gremlin/driver/remote/DriverRemoteTraversal.java | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/430c97d1/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/remote/DriverRemoteTraversal.java
----------------------------------------------------------------------
diff --git a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/remote/DriverRemoteTraversal.java b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/remote/DriverRemoteTraversal.java
index d3f290c..d991f21 100644
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/remote/DriverRemoteTraversal.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/remote/DriverRemoteTraversal.java
@@ -40,9 +40,9 @@ import java.util.function.Supplier;
 
 /**
  * A {@link AbstractRemoteTraversal} implementation for the Gremlin Driver. This {@link Traversal} implementation is
- * typically iterated from with {@link RemoteStep} where it the {@link #nextTraverser()} method is called. While
- * this class provides implementations for both {@link #next()} and {@link #hasNext()} that unroll "bulked" results,
- * those methods are not called directly from with TinkerPop remoting.
+ * typically iterated from {@link RemoteStep} where the {@link #nextTraverser()} method is called. While this class
+ * provides implementations for both {@link #next()} and {@link #hasNext()} that unroll "bulked" results, those methods
+ * are not called directly from with TinkerPop remoting.
  *
  * @author Stephen Mallette (http://stephen.genoprime.com)
  */


[47/50] tinkerpop git commit: Missed updating NOTICE files for last two bumps of Groovy CTR

Posted by fl...@apache.org.
Missed updating NOTICE files for last two bumps of Groovy CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: cfbe2ce7fedb7de07e2c0760ee31f9a8d8a4b60c
Parents: 2f8f74a
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu May 10 11:27:30 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu May 10 11:27:30 2018 -0400

----------------------------------------------------------------------
 gremlin-console/src/main/static/NOTICE | 2 +-
 gremlin-server/src/main/static/NOTICE  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/cfbe2ce7/gremlin-console/src/main/static/NOTICE
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/static/NOTICE b/gremlin-console/src/main/static/NOTICE
index 4931f7e..f34965b 100644
--- a/gremlin-console/src/main/static/NOTICE
+++ b/gremlin-console/src/main/static/NOTICE
@@ -18,7 +18,7 @@ This product includes software from the Spring Framework,
 under the Apache License 2.0 (see: StringUtils.containsWhitespace())
 
 ------------------------------------------------------------------------
-Apache Groovy 2.4.11 (AL ASF)
+Apache Groovy 2.4.15 (AL ASF)
 ------------------------------------------------------------------------
 This product includes/uses ANTLR (http://www.antlr2.org/)
 developed by Terence Parr 1989-2006

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/cfbe2ce7/gremlin-server/src/main/static/NOTICE
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/static/NOTICE b/gremlin-server/src/main/static/NOTICE
index 72c10cc..0883bc4 100644
--- a/gremlin-server/src/main/static/NOTICE
+++ b/gremlin-server/src/main/static/NOTICE
@@ -11,7 +11,7 @@ This product includes software from the Spring Framework,
 under the Apache License 2.0 (see: StringUtils.containsWhitespace())
 
 ------------------------------------------------------------------------
-Apache Groovy 2.4.11 (AL ASF)
+Apache Groovy 2.4.15 (AL ASF)
 ------------------------------------------------------------------------
 This product includes/uses ANTLR (http://www.antlr2.org/)
 developed by Terence Parr 1989-2006


[29/50] tinkerpop git commit: Merge branch 'TINKERPOP-1953' into tp32

Posted by fl...@apache.org.
Merge branch 'TINKERPOP-1953' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: 42ce7a5e8491e247c617e3872963882357765a33
Parents: 8462f85 40dad27
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 06:52:52 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 06:52:52 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../upgrade/release-3.2.x-incubating.asciidoc   | 24 ++++++++++++++++++++
 .../jsr223/GremlinGroovyScriptEngineTest.java   |  9 ++++++++
 pom.xml                                         |  2 +-
 4 files changed, 35 insertions(+), 1 deletion(-)
----------------------------------------------------------------------



[41/50] tinkerpop git commit: Added javadoc in Order CTR

Posted by fl...@apache.org.
Added javadoc in Order CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 5fea198c836c9886e7a8cc8abc9ead44956ad2b6
Parents: 0694cd7
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 27 08:34:34 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 27 08:34:34 2018 -0400

----------------------------------------------------------------------
 .../tinkerpop/gremlin/process/traversal/Order.java     | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5fea198c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
index 3710396..c9111f0 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
@@ -67,6 +67,7 @@ public enum Order implements Comparator<Object> {
             return incr;
         }
     },
+
     /**
      * @since 3.0.0-incubating
      * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#keys}.
@@ -83,6 +84,7 @@ public enum Order implements Comparator<Object> {
             return keyDecr;
         }
     },
+
     /**
      * @since 3.0.0-incubating
      * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#values}.
@@ -99,6 +101,7 @@ public enum Order implements Comparator<Object> {
             return valueDecr;
         }
     },
+
     /**
      * @since 3.0.0-incubating
      * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#keys}.
@@ -115,6 +118,7 @@ public enum Order implements Comparator<Object> {
             return keyIncr;
         }
     },
+
     /**
      * @since 3.0.0-incubating
      * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#values}.
@@ -130,7 +134,14 @@ public enum Order implements Comparator<Object> {
         public Order reversed() {
             return valueIncr;
         }
-    }, shuffle {
+    },
+
+    /**
+     * Order in a random fashion.
+     *
+     * @since 3.0.0-incubating
+     */
+    shuffle {
         @Override
         public int compare(final Object first, final Object second) {
             return RANDOM.nextBoolean() ? -1 : 1;


[07/50] tinkerpop git commit: The package name should be 'gremlin' and not 'gremlin-javascript'

Posted by fl...@apache.org.
The package name should be 'gremlin' and not 'gremlin-javascript'

That naming change was missed on 3.2.8/3.3.2 release for some reason. CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 84d1bf8fc3e780a1819efeef6b7f6b2253d5c472
Parents: 1592c4f
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Apr 9 11:07:55 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Apr 9 11:07:55 2018 -0400

----------------------------------------------------------------------
 gremlin-javascript/glv/PackageJson.template                        | 2 +-
 .../src/main/javascript/gremlin-javascript/README.md               | 2 +-
 .../src/main/javascript/gremlin-javascript/package.json            | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/84d1bf8f/gremlin-javascript/glv/PackageJson.template
----------------------------------------------------------------------
diff --git a/gremlin-javascript/glv/PackageJson.template b/gremlin-javascript/glv/PackageJson.template
index c929e75..b87bdd1 100644
--- a/gremlin-javascript/glv/PackageJson.template
+++ b/gremlin-javascript/glv/PackageJson.template
@@ -18,7 +18,7 @@
     under the License.
 */
 %>{
-  "name": "gremlin-javascript",
+  "name": "gremlin",
   "version": "<%= version %>",
   "description": "JavaScript Gremlin Language Variant",
   "author": "Apache TinkerPop team",

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/84d1bf8f/gremlin-javascript/src/main/javascript/gremlin-javascript/README.md
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/README.md b/gremlin-javascript/src/main/javascript/gremlin-javascript/README.md
index 388e175..6c5638d 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/README.md
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/README.md
@@ -29,7 +29,7 @@ property graph.
 Gremlin-Javascript implements Gremlin within the JavaScript language and can be used on Node.js.
 
 ```bash
-npm install gremlin-javascript
+npm install gremlin
 ```
 
 Please see the [reference documentation][docs] at Apache TinkerPop for more information.

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/84d1bf8f/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
index d20be6a..9a6197c 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
@@ -1,5 +1,5 @@
 {
-  "name": "gremlin-javascript",
+  "name": "gremlin",
   "version": "3.2.9-alpha1",
   "description": "JavaScript Gremlin Language Variant",
   "author": "Apache TinkerPop team",


[09/50] tinkerpop git commit: Fixed up gremlin-javascript deployment configuration

Posted by fl...@apache.org.
Fixed up gremlin-javascript deployment configuration

Deployment didn't go completely smoothly on 3.2.8/3.3.2. Fixed up the couple of sore spots by adding a alias for the deploy <profile> and ensured that the deploy was not bound to test execution. CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: df7870a48acf9d07d0c3a4a437a710339a49bff2
Parents: b84f700
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Apr 9 11:29:14 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Apr 9 11:29:14 2018 -0400

----------------------------------------------------------------------
 docs/src/dev/developer/release.asciidoc |  1 +
 gremlin-javascript/pom.xml              | 10 +++++++++-
 2 files changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df7870a4/docs/src/dev/developer/release.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/dev/developer/release.asciidoc b/docs/src/dev/developer/release.asciidoc
index b868755..c7c5bb7 100644
--- a/docs/src/dev/developer/release.asciidoc
+++ b/docs/src/dev/developer/release.asciidoc
@@ -239,6 +239,7 @@ for generating javadoc and without that the binary distributions won't contain t
 .. `mvn clean install -DskipTests -Dnuget`
 .. `mvn deploy -pl gremlin-python -DskipTests -Dpypi`
 .. `mvn deploy -pl :gremlin-dotnet-source -DskipTests -Dnuget`
+.. `mvn deploy -pl gremlin-javascript -DskipTests -Dnpm`
 . `svn co --depth empty https://dist.apache.org/repos/dist/dev/tinkerpop dev; svn up dev/xx.yy.zz`
 . `svn co --depth empty https://dist.apache.org/repos/dist/release/tinkerpop release; mkdir release/xx.yy.zz`
 . Copy release files from `dev/xx.yy.zz` to `release/xx.yy.zz`.

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df7870a4/gremlin-javascript/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-javascript/pom.xml b/gremlin-javascript/pom.xml
index 6b0d8bf..89fb930 100644
--- a/gremlin-javascript/pom.xml
+++ b/gremlin-javascript/pom.xml
@@ -269,6 +269,9 @@ limitations under the License.
             <id>glv-javascript-deploy</id>
             <activation>
                 <activeByDefault>false</activeByDefault>
+                <property>
+                    <name>npm</name>
+                </property>
             </activation>
             <build>
                 <plugins>
@@ -289,7 +292,12 @@ limitations under the License.
                             </execution>
                         </executions>
                         <configuration>
-                            <skip>${skipIntegrationTests}</skip>
+                            <!--
+                            skip needs to be overridden given how the <configuration> is specified in the main build.
+                            it should be fine to just always deploy because this <profile> needs to be manually
+                            activated and that should be good enough given our deployment process.
+                            -->
+                            <skip>false</skip>
                             <workingDirectory>src/main/javascript/gremlin-javascript</workingDirectory>
                             <nodeVersion>v6.12.3</nodeVersion>
                         </configuration>


[17/50] tinkerpop git commit: Added gremlin-javascript logo CTR

Posted by fl...@apache.org.
Added gremlin-javascript logo CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 6ac22741d21488e35784dafdb05ca89eb80967af
Parents: 4dcee1a
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 19 07:09:02 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Apr 19 07:09:02 2018 -0400

----------------------------------------------------------------------
 docs/static/images/gremlin-js.png | Bin 0 -> 78981 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/6ac22741/docs/static/images/gremlin-js.png
----------------------------------------------------------------------
diff --git a/docs/static/images/gremlin-js.png b/docs/static/images/gremlin-js.png
new file mode 100755
index 0000000..925ef36
Binary files /dev/null and b/docs/static/images/gremlin-js.png differ


[35/50] tinkerpop git commit: TINKERPOP-1755 Added some docs about detachment CTR

Posted by fl...@apache.org.
TINKERPOP-1755 Added some docs about detachment CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 6096a4c7db50d733254760243a28902db7a81704
Parents: 1d9e6dc
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 15:20:00 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 15:20:00 2018 -0400

----------------------------------------------------------------------
 .../src/reference/gremlin-applications.asciidoc | 70 ++++++++++++++++++++
 1 file changed, 70 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/6096a4c7/docs/src/reference/gremlin-applications.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/reference/gremlin-applications.asciidoc b/docs/src/reference/gremlin-applications.asciidoc
index 380ff4e..1a68ad8 100644
--- a/docs/src/reference/gremlin-applications.asciidoc
+++ b/docs/src/reference/gremlin-applications.asciidoc
@@ -1646,6 +1646,76 @@ section. It controls the maximum number of parameters that can be passed to the
 Use of this setting can prevent accidental long run compilations, which individually are not terribly oppressive to
 the server, but taken as a group under high concurrency would be considered detrimental.
 
+==== Properties of Elements
+
+It was mentioned above at the start of this "Best Practices" section that serialization of graph elements (i.e.
+`Vertex`, `Edge`, and `VertexProperty`) can be expensive and that it is best to only return the data that is required
+by the requesting system. This point begs for further clarification as there are a number of ways to use and configure
+Gremlin Server which might influence its interpretation.
+
+To begin to discuss these nuances, first consider the method of making requests to Gremlin Server: script or bytecode.
+For scripts, that will mean that users are sending string representation of Gremlin to the server directly through a
+driver over websockets or through the HTTP. For bytecode, users will be utilize a <<gremlin-variants, Gremlin GLV>>
+which will construct bytecode for them and submit the request to the server upon iteration of their traversal.
+
+In either case, it is important to also consider the method of "detachment". Detachment refers to the manner in which
+a graph element is disconnected from the graph for purpose of serialization. Depending on the case and configuration,
+graph elements may be detached with or without properties. Cases where they include properties is generally referred
+to as "detached elements" and cases where properties are not included are "reference elements".
+
+With the type of request and detachment model in mind, it is now possible to discuss how best to consider element
+properties in relation to them all in concert.
+
+For script-based requests, users should take care when returning graph elements. By default, elements will be returned
+as detached elements and will thus serialize with all properties that are bound to them. As such, Gryo and GraphSON
+serializers will write all properties in the return payload. Script-based requests should definitely follow the best
+practice of only returning the data required by the application.
+
+NOTE: Gryo does have the exception for the `GryoMessageSerializerGremlinV1d0` with the `serializeResultToString`
+option enabled, which will simply convert all results using the Java `toString()` method prior to serialization and
+is typically only use by the Gremlin Console for remote sessions where the actual object from the server is not of use.
+
+For bytecode-based requests, graph elements have reference detachment and thus only return the `id` and `label` of
+the elements. While this approach alleviates a potential performance problem that the script approach exposes, it is
+still important to follow the practice of being specific about the data that is required by the requesting application
+as it won't arrive on the client side without that declaration.
+
+Ultimately, the detachment model should have little impact to Gremlin usage if the best practice of specifying only
+the data required by the application is adhered to. In other words, while there may be a difference in the contents
+of return values for these traversals:
+
+[source,java]
+----
+// properties returned from g.V().hasLabel('person') because this is using the
+// Script API with full detachment
+Cluster cluster = Cluster.open();
+Client client = cluster.connect();
+ResultSet results = client.submit("g.V().hasLabel('person')");
+
+// no properties returned from g.V().hasLabel("person") because this is using
+// Bytecode API with reference detachment
+Graph graph = EmptyGraph.instance();
+GraphTraversalSource g = graph.traversal().
+                               withRemote('conf/remote-graph.properties');
+List<Vertex> results = g.V().hasLabel("person").toList();
+----
+
+There is no difference if re-written using the best practice of requesting only the data the application needs:
+
+[source,java]
+----
+Cluster cluster = Cluster.open();
+Client client = cluster.connect();
+ResultSet results = client.submit("g.V().hasLabel('person').valueMap(true,'name')");
+
+Graph graph = EmptyGraph.instance();
+GraphTraversalSource g = graph.traversal().
+                               withRemote('conf/remote-graph.properties');
+List<Vertex> results = g.V().hasLabel("person").valueMap(true,'name').toList();
+----
+
+Both of the above requests return a list of `Map` instances that contain the `id`, `label` and the "name" property.
+
 ==== Cache Management
 
 If Gremlin Server processes a large number of unique scripts, the global function cache will grow beyond the memory


[13/50] tinkerpop git commit: TINKERPOP-1912 Removed MD5 checksums from release

Posted by fl...@apache.org.
TINKERPOP-1912 Removed MD5 checksums from release


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

Branch: refs/heads/TINKERPOP-1836
Commit: 54df6dcbd081ec685723cdfc508af5513fb66dd0
Parents: 35bf95a
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Tue Apr 10 13:31:47 2018 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Wed Apr 11 09:27:19 2018 -0700

----------------------------------------------------------------------
 bin/validate-distribution.sh            | 3 ++-
 docs/src/dev/developer/release.asciidoc | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/54df6dcb/bin/validate-distribution.sh
----------------------------------------------------------------------
diff --git a/bin/validate-distribution.sh b/bin/validate-distribution.sh
index 0121a1a..b071ea0 100755
--- a/bin/validate-distribution.sh
+++ b/bin/validate-distribution.sh
@@ -83,10 +83,11 @@ fi
 
 echo -n "* downloading ${COMPONENT} (${ZIP_FILENAME})... "
 curl -Lsf ${URL} -o ${ZIP_FILENAME} || { echo "Failed to download ${COMPONENT}" ; exit 1; }
-for ext in "asc" "md5" "sha1"
+for ext in "asc" "sha1"
 do
   curl -Lsf ${URL}.${ext} -o ${ZIP_FILENAME}.${ext} || { echo "Failed to download ${COMPONENT} (${ext})" ; exit 1 ; }
 done
+curl -Lsf ${URL}.md5 -o ${ZIP_FILENAME}.md5 && { echo "MD5 checksums should not be released (${ZIP_FILENAME}.md5)" ; exit 1 ; }
 echo "OK"
 
 # validate zip file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/54df6dcb/docs/src/dev/developer/release.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/dev/developer/release.asciidoc b/docs/src/dev/developer/release.asciidoc
index c7c5bb7..608bb31 100644
--- a/docs/src/dev/developer/release.asciidoc
+++ b/docs/src/dev/developer/release.asciidoc
@@ -209,6 +209,7 @@ for generating javadoc and without that the binary distributions won't contain t
 .. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-console/xx.yy.zz/gremlin-console-xx.yy.zz-distribution.zip* dev/xx.yy.zz`
 .. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-server/xx.yy.zz/gremlin-server-xx.yy.zz-distribution.zip* dev/xx.yy.zz`
 .. `cp ~/.m2/repository/org/apache/tinkerpop/tinkerpop/xx.yy.zz/tinkerpop-xx.yy.zz-source-release.zip* dev/xx.yy.zz`
+.. `rm -f dev/*.md5
 .. `cd dev/xx.yy.zz`
 .. pass:[<code>ls * | xargs -n1 -I {} echo "mv apache-tinkerpop-{} {}" | sed -e 's/distribution/bin/' -e 's/source-release/src/' -e 's/tinkerpop-tinkerpop/tinkerpop/' -e s'/^\(.*\) \(.*\) \(.*\)$/\1 \3 \2/' | /bin/bash</code>]
 .. `cd ..; svn add xx.yy.zz/; svn ci -m "TinkerPop xx.yy.zz release"`


[37/50] tinkerpop git commit: Added unit tests for Order and improved javadoc CTR

Posted by fl...@apache.org.
Added unit tests for Order and improved javadoc CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 59545254930c502c8acfe470dd919f36c87cf78c
Parents: 789e575
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 26 08:42:13 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Apr 26 08:42:13 2018 -0400

----------------------------------------------------------------------
 .../gremlin/process/traversal/Order.java        | 29 ++++++--
 .../gremlin/process/traversal/OrderTest.java    | 76 ++++++++++++++++++++
 2 files changed, 100 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/59545254/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
index 7c3475a..3710396 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java
@@ -23,10 +23,18 @@ import java.util.Map;
 import java.util.Random;
 
 /**
+ * Provides {@code Comparator} instances for ordering traversers.
+ *
  * @author Marko A. Rodriguez (http://markorodriguez.com)
+ * @author Stephen Mallette (http://stephen.genoprime.com)
  */
 public enum Order implements Comparator<Object> {
 
+    /**
+     * Order in ascending fashion
+     *
+     * @since 3.0.0-incubating
+     */
     incr {
         @Override
         public int compare(final Object first, final Object second) {
@@ -39,7 +47,14 @@ public enum Order implements Comparator<Object> {
         public Order reversed() {
             return decr;
         }
-    }, decr {
+    },
+
+    /**
+     * Order in descending fashion.
+     *
+     * @since 3.0.0-incubating
+     */
+    decr {
         @Override
         public int compare(final Object first, final Object second) {
             return first instanceof Number && second instanceof Number
@@ -53,7 +68,8 @@ public enum Order implements Comparator<Object> {
         }
     },
     /**
-     * @deprecated Use {@link org.apache.tinkerpop.gremlin.structure.Column#keys};
+     * @since 3.0.0-incubating
+     * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#keys}.
      */
     @Deprecated
     keyIncr {
@@ -68,7 +84,8 @@ public enum Order implements Comparator<Object> {
         }
     },
     /**
-     * @deprecated Use {@link org.apache.tinkerpop.gremlin.structure.Column#values};
+     * @since 3.0.0-incubating
+     * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#values}.
      */
     @Deprecated
     valueIncr {
@@ -83,7 +100,8 @@ public enum Order implements Comparator<Object> {
         }
     },
     /**
-     * @deprecated Use {@link org.apache.tinkerpop.gremlin.structure.Column#keys};
+     * @since 3.0.0-incubating
+     * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#keys}.
      */
     @Deprecated
     keyDecr {
@@ -98,7 +116,8 @@ public enum Order implements Comparator<Object> {
         }
     },
     /**
-     * @deprecated Use {@link org.apache.tinkerpop.gremlin.structure.Column#values};
+     * @since 3.0.0-incubating
+     * @deprecated As of release 3.1.1-incubating, replaced by {@link org.apache.tinkerpop.gremlin.structure.Column#values}.
      */
     @Deprecated
     valueDecr {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/59545254/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java
new file mode 100644
index 0000000..01d93ea
--- /dev/null
+++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java
@@ -0,0 +1,76 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tinkerpop.gremlin.process.traversal;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * @author Stephen Mallette (http://stephen.genoprime.com)
+ */
+@RunWith(Parameterized.class)
+public class OrderTest {
+
+    private static final SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy");
+
+    @Parameterized.Parameters(name = "{0}.test({1},{2})")
+    public static Iterable<Object[]> data() throws ParseException {
+        return new ArrayList<>(Arrays.asList(new Object[][]{
+                {Order.incr, Arrays.asList("b", "a", "c", "d"), Arrays.asList("a", "b", "c", "d")},
+                {Order.decr, Arrays.asList("b", "a", "c", "d"), Arrays.asList("d", "c", "b", "a")},
+                {Order.incr, Arrays.asList(formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2008")),
+                             Arrays.asList(formatter.parse("1-Jan-2008"), formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"))},
+                {Order.decr, Arrays.asList(formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2008")),
+                             Arrays.asList(formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2008"))},
+                {Order.decr, Arrays.asList(100L, 1L, -1L, 0L), Arrays.asList(100L, 1L, 0L, -1L)},
+                {Order.incr, Arrays.asList(100.1f, 1.1f, -1.1f, 0.1f), Arrays.asList(-1.1f, 0.1f, 1.1f, 100.1f)},
+                {Order.decr, Arrays.asList(100.1f, 1.1f, -1.1f, 0.1f), Arrays.asList(100.1f, 1.1f, 0.1f, -1.1f)},
+                {Order.incr, Arrays.asList(100.1d, 1.1d, -1.1d, 0.1d), Arrays.asList(-1.1d, 0.1d, 1.1d, 100.1d)},
+                {Order.decr, Arrays.asList(100.1d, 1.1d, -1.1d, 0.1d), Arrays.asList(100.1d, 1.1d, 0.1d, -1.1d)},
+                {Order.incr, Arrays.asList(100L, 1L, -1L, 0L), Arrays.asList(-1L, 0L, 1L, 100L)},
+                {Order.decr, Arrays.asList(100L, 1L, -1L, 0L), Arrays.asList(100L, 1L, 0L, -1L)},
+                {Order.incr, Arrays.asList(100, 1, -1, 0), Arrays.asList(-1, 0, 1, 100)},
+                {Order.decr, Arrays.asList(100, 1, -1, 0), Arrays.asList(100, 1, 0, -1)}}));
+    }
+
+    @Parameterized.Parameter(value = 0)
+    public Order order;
+
+    @Parameterized.Parameter(value = 1)
+    public Object toBeOrdered;
+
+    @Parameterized.Parameter(value = 2)
+    public Object expectedOrder;
+
+    @Test
+    public void shouldOrder() {
+        Collections.sort((List) toBeOrdered, order);
+        assertEquals(expectedOrder, toBeOrdered);
+    }
+}


[46/50] tinkerpop git commit: CTR: Some necessary changes in the release validation script to make it work on all systems.

Posted by fl...@apache.org.
CTR: Some necessary changes in the release validation script to make it work on all systems.


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

Branch: refs/heads/TINKERPOP-1836
Commit: 2f8f74a780356850cb6cb0ef6ac96e4a024a6d41
Parents: fde136b
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Tue May 8 12:43:11 2018 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Tue May 8 12:43:11 2018 -0700

----------------------------------------------------------------------
 bin/validate-distribution.sh | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2f8f74a7/bin/validate-distribution.sh
----------------------------------------------------------------------
diff --git a/bin/validate-distribution.sh b/bin/validate-distribution.sh
index 76e0974..3622905 100755
--- a/bin/validate-distribution.sh
+++ b/bin/validate-distribution.sh
@@ -22,11 +22,7 @@
 # artifacts. You must have gpg installed and must import the
 # published KEYS file in order for that aspect of the validation
 # to pass.
-#
-# curl -L -O https://dist.apache.org/repos/dist/dev/tinkerpop/KEYS
-# gpg --import KEYS
 
-COMMITTERS=$(curl -Ls https://dist.apache.org/repos/dist/dev/tinkerpop/KEYS | grep -Po '(?<=<...@apache.org>)' | uniq)
 TMP_DIR="/tmp/tpdv"
 
 # Required. Only the latest version on each release stream is available on dist.
@@ -73,6 +69,9 @@ mkdir -p ${TMP_DIR}
 rm -rf ${TMP_DIR}/*
 cd ${TMP_DIR}
 
+COMMITTERS=$(curl -Ls https://dist.apache.org/repos/dist/dev/tinkerpop/KEYS | tee ${TMP_DIR}/KEYS | grep -Po '(?<=<...@apache.org>)' | uniq)
+gpg --import ${TMP_DIR}/KEYS 2> /dev/null && rm ${TMP_DIR}/KEYS
+
 curl -Ls https://people.apache.org/keys/committer/ | grep -v invalid > ${TMP_DIR}/.committers
 
 # validate downloads
@@ -97,7 +96,7 @@ echo "OK"
 echo "* validating signatures and checksums ... "
 
 echo -n "  * PGP signature ... "
-gpg --verify ${ZIP_FILENAME}.asc ${ZIP_FILENAME} > ${TMP_DIR}/.verify 2>&1
+gpg --verify --with-fingerprint ${ZIP_FILENAME}.asc ${ZIP_FILENAME} > ${TMP_DIR}/.verify 2>&1
 
 verified=0
 
@@ -117,11 +116,11 @@ done
 [ ${verified} -eq 1 ] || { echo "failed"; exit 1; }
 echo "OK"
 
-echo -n "  * MD5 checksum ... "
-EXPECTED=`cat ${ZIP_FILENAME}.md5`
-ACTUAL=`md5sum ${ZIP_FILENAME} | awk '{print $1}'`
-[ "$ACTUAL" = "${EXPECTED}" ] || { echo "failed"; exit 1; }
-echo "OK"
+#echo -n "  * MD5 checksum ... "
+#EXPECTED=`cat ${ZIP_FILENAME}.md5`
+#ACTUAL=`md5sum ${ZIP_FILENAME} | awk '{print $1}'`
+#[ "$ACTUAL" = "${EXPECTED}" ] || { echo "failed"; exit 1; }
+#echo "OK"
 
 echo -n "  * SHA1 checksum ... "
 EXPECTED=`cat ${ZIP_FILENAME}.sha1`


[45/50] tinkerpop git commit: TinkerPop 3.2.9 release

Posted by fl...@apache.org.
TinkerPop 3.2.9 release


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

Branch: refs/heads/TINKERPOP-1836
Commit: fde136b1dd707398803fe337344d1ba5969a66bb
Parents: f64afe5
Author: Robert Dale <ro...@gmail.com>
Authored: Tue May 8 08:48:16 2018 -0400
Committer: Robert Dale <ro...@gmail.com>
Committed: Tue May 8 08:48:16 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                                 | 17 ++++++++++++++++-
 docs/src/upgrade/release-3.2.x-incubating.asciidoc |  4 ++--
 giraph-gremlin/pom.xml                             |  2 +-
 gremlin-archetype/gremlin-archetype-dsl/pom.xml    |  2 +-
 gremlin-archetype/gremlin-archetype-server/pom.xml |  2 +-
 .../gremlin-archetype-tinkergraph/pom.xml          |  2 +-
 gremlin-archetype/pom.xml                          |  2 +-
 gremlin-benchmark/pom.xml                          |  2 +-
 gremlin-console/bin/gremlin.sh                     |  2 +-
 gremlin-console/pom.xml                            |  2 +-
 gremlin-core/pom.xml                               |  2 +-
 gremlin-dotnet/pom.xml                             |  2 +-
 gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj  |  2 +-
 gremlin-dotnet/src/pom.xml                         |  2 +-
 gremlin-dotnet/test/pom.xml                        |  2 +-
 gremlin-driver/pom.xml                             |  2 +-
 gremlin-groovy-test/pom.xml                        |  2 +-
 gremlin-groovy/pom.xml                             |  2 +-
 gremlin-javascript/pom.xml                         |  2 +-
 .../javascript/gremlin-javascript/package.json     |  2 +-
 gremlin-python/pom.xml                             |  2 +-
 gremlin-server/pom.xml                             |  2 +-
 gremlin-shaded/pom.xml                             |  2 +-
 gremlin-test/pom.xml                               |  2 +-
 hadoop-gremlin/pom.xml                             |  2 +-
 neo4j-gremlin/pom.xml                              |  2 +-
 pom.xml                                            |  2 +-
 spark-gremlin/pom.xml                              |  2 +-
 tinkergraph-gremlin/pom.xml                        |  2 +-
 29 files changed, 45 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index f6ca111..18f36ed 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -21,7 +21,7 @@ limitations under the License.
 image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/images/nine-inch-gremlins.png[width=185]
 
 [[release-3-2-9]]
-=== TinkerPop 3.2.9 (Release Date: NOT OFFICIALLY RELEASED YET)
+=== TinkerPop 3.2.9 (Release Date: May 8, 2018)
 
 * Fixed bug where path history was not being preserved for keys in mutations.
 * Bumped to httpclient 4.5.5.
@@ -29,6 +29,21 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 * Improved performance of GraphSON deserialization of `Bytecode`.
 * Improved performance of traversal construction.
 
+====  Bugs
+
+* TINKERPOP-1947 Path history isn't preserved for keys in mutations
+
+==== Improvements
+
+* TINKERPOP-1755 No docs for ReferenceElements
+* TINKERPOP-1912 Remove MD5 checksums
+* TINKERPOP-1934 Bump to latest version of httpclient
+* TINKERPOP-1936 Performance enhancement to Bytecode deserialization
+* TINKERPOP-1944 JavaScript GLV: DriverRemoteConnection is not exported in the root module
+* TINKERPOP-1950 Traversal construction performance enhancements
+* TINKERPOP-1953 Bump to Groovy 2.4.15
+
+
 [[release-3-2-8]]
 === TinkerPop 3.2.8 (Release Date: April 2, 2018)
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/docs/src/upgrade/release-3.2.x-incubating.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/upgrade/release-3.2.x-incubating.asciidoc b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
index 51b85d3..06e4f59 100644
--- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc
+++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
@@ -23,9 +23,9 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 
 == TinkerPop 3.2.9
 
-*Release Date: NOT OFFICIALLY RELEASED YET*
+*Release Date: May 8, 2018*
 
-Please see the link:https://github.com/apache/tinkerpop/blob/3.2.8/CHANGELOG.asciidoc#release-3-2-9[changelog] for a complete list of all the modifications that are part of this release.
+Please see the link:https://github.com/apache/tinkerpop/blob/3.2.9/CHANGELOG.asciidoc#release-3-2-9[changelog] for a complete list of all the modifications that are part of this release.
 
 === Upgrading for Users
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/giraph-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/giraph-gremlin/pom.xml b/giraph-gremlin/pom.xml
index 9ca6687..69355be 100644
--- a/giraph-gremlin/pom.xml
+++ b/giraph-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>giraph-gremlin</artifactId>
     <name>Apache TinkerPop :: Giraph Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-archetype/gremlin-archetype-dsl/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-dsl/pom.xml b/gremlin-archetype/gremlin-archetype-dsl/pom.xml
index 242ea07..4dd6297 100644
--- a/gremlin-archetype/gremlin-archetype-dsl/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-dsl/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
 
     <artifactId>gremlin-archetype-dsl</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-archetype/gremlin-archetype-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-server/pom.xml b/gremlin-archetype/gremlin-archetype-server/pom.xml
index 83fa7ad..eedbd56 100644
--- a/gremlin-archetype/gremlin-archetype-server/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-server/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
 
     <artifactId>gremlin-archetype-server</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml b/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
index cb3b0eb..ecf5a50 100644
--- a/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
 
     <artifactId>gremlin-archetype-tinkergraph</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-archetype/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/pom.xml b/gremlin-archetype/pom.xml
index 12043c0..9f929af 100644
--- a/gremlin-archetype/pom.xml
+++ b/gremlin-archetype/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
 
     <artifactId>gremlin-archetype</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-benchmark/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-benchmark/pom.xml b/gremlin-benchmark/pom.xml
index 571bc0d..bcce1ef 100644
--- a/gremlin-benchmark/pom.xml
+++ b/gremlin-benchmark/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
 
     <artifactId>gremlin-benchmark</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-console/bin/gremlin.sh
----------------------------------------------------------------------
diff --git a/gremlin-console/bin/gremlin.sh b/gremlin-console/bin/gremlin.sh
index ae28f7b..cdf1153 120000
--- a/gremlin-console/bin/gremlin.sh
+++ b/gremlin-console/bin/gremlin.sh
@@ -1 +1 @@
-../target/apache-tinkerpop-gremlin-console-3.2.9-SNAPSHOT-standalone/bin/gremlin.sh
\ No newline at end of file
+../target/apache-tinkerpop-gremlin-console-3.2.9-standalone/bin/gremlin.sh
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-console/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-console/pom.xml b/gremlin-console/pom.xml
index 51ad5ca..7581397 100644
--- a/gremlin-console/pom.xml
+++ b/gremlin-console/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-console</artifactId>
     <name>Apache TinkerPop :: Gremlin Console</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-core/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-core/pom.xml b/gremlin-core/pom.xml
index a170f8b..78bffa5 100644
--- a/gremlin-core/pom.xml
+++ b/gremlin-core/pom.xml
@@ -20,7 +20,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-core</artifactId>
     <name>Apache TinkerPop :: Gremlin Core</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-dotnet/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/pom.xml b/gremlin-dotnet/pom.xml
index 20b4fab..10f5791 100644
--- a/gremlin-dotnet/pom.xml
+++ b/gremlin-dotnet/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-dotnet</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/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 fc75b83..ad85e56 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -25,7 +25,7 @@ limitations under the License.
   </PropertyGroup>
 
   <PropertyGroup Label="Package">
-    <Version>3.2.9-SNAPSHOT</Version>
+    <Version>3.2.9</Version>
     <FileVersion>3.2.9.0</FileVersion>
     <AssemblyVersion>3.2.0.0</AssemblyVersion>
     <Title>Gremlin.Net</Title>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-dotnet/src/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/pom.xml b/gremlin-dotnet/src/pom.xml
index aabd43b..9769b62 100644
--- a/gremlin-dotnet/src/pom.xml
+++ b/gremlin-dotnet/src/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-dotnet</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-dotnet-source</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Source</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-dotnet/test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/test/pom.xml b/gremlin-dotnet/test/pom.xml
index e7e7aac..8c49ae9 100644
--- a/gremlin-dotnet/test/pom.xml
+++ b/gremlin-dotnet/test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-dotnet</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-dotnet-tests</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Tests</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-driver/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-driver/pom.xml b/gremlin-driver/pom.xml
index cc826a5..4ba9339 100644
--- a/gremlin-driver/pom.xml
+++ b/gremlin-driver/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-driver</artifactId>
     <name>Apache TinkerPop :: Gremlin Driver</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-groovy-test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/pom.xml b/gremlin-groovy-test/pom.xml
index a915f7d..cc21f8b 100644
--- a/gremlin-groovy-test/pom.xml
+++ b/gremlin-groovy-test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-groovy-test</artifactId>
     <name>Apache TinkerPop :: Gremlin Groovy Test</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-groovy/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-groovy/pom.xml b/gremlin-groovy/pom.xml
index 14efe86..627893a 100644
--- a/gremlin-groovy/pom.xml
+++ b/gremlin-groovy/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-groovy</artifactId>
     <name>Apache TinkerPop :: Gremlin Groovy</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-javascript/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-javascript/pom.xml b/gremlin-javascript/pom.xml
index 89fb930..29da33d 100644
--- a/gremlin-javascript/pom.xml
+++ b/gremlin-javascript/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-javascript</artifactId>
     <name>Apache TinkerPop :: Gremlin Javascript</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
index 9a6197c..aa64bfb 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
@@ -1,6 +1,6 @@
 {
   "name": "gremlin",
-  "version": "3.2.9-alpha1",
+  "version": "3.2.9",
   "description": "JavaScript Gremlin Language Variant",
   "author": "Apache TinkerPop team",
   "keywords": [

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-python/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-python/pom.xml b/gremlin-python/pom.xml
index 649f3ae..8340560 100644
--- a/gremlin-python/pom.xml
+++ b/gremlin-python/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-python</artifactId>
     <name>Apache TinkerPop :: Gremlin Python</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-server/pom.xml b/gremlin-server/pom.xml
index dd04865..1b38dff 100644
--- a/gremlin-server/pom.xml
+++ b/gremlin-server/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-server</artifactId>
     <name>Apache TinkerPop :: Gremlin Server</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-shaded/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-shaded/pom.xml b/gremlin-shaded/pom.xml
index a74a91a..f40a3ed 100644
--- a/gremlin-shaded/pom.xml
+++ b/gremlin-shaded/pom.xml
@@ -20,7 +20,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-shaded</artifactId>
     <name>Apache TinkerPop :: Gremlin Shaded</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/gremlin-test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-test/pom.xml b/gremlin-test/pom.xml
index 3c04c9f..66e1a3e 100644
--- a/gremlin-test/pom.xml
+++ b/gremlin-test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>gremlin-test</artifactId>
     <name>Apache TinkerPop :: Gremlin Test</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/hadoop-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/pom.xml b/hadoop-gremlin/pom.xml
index a0f0cc7..a596db5 100644
--- a/hadoop-gremlin/pom.xml
+++ b/hadoop-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>hadoop-gremlin</artifactId>
     <name>Apache TinkerPop :: Hadoop Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/neo4j-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/neo4j-gremlin/pom.xml b/neo4j-gremlin/pom.xml
index a65a30f..e77f83e 100644
--- a/neo4j-gremlin/pom.xml
+++ b/neo4j-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>neo4j-gremlin</artifactId>
     <name>Apache TinkerPop :: Neo4j Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 4ec1ab4..379db49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@ limitations under the License.
     </parent>
     <groupId>org.apache.tinkerpop</groupId>
     <artifactId>tinkerpop</artifactId>
-    <version>3.2.9-SNAPSHOT</version>
+    <version>3.2.9</version>
     <packaging>pom</packaging>
     <name>Apache TinkerPop</name>
     <description>A Graph Computing Framework</description>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/spark-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/spark-gremlin/pom.xml b/spark-gremlin/pom.xml
index 913357c..feb339b 100644
--- a/spark-gremlin/pom.xml
+++ b/spark-gremlin/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>spark-gremlin</artifactId>
     <name>Apache TinkerPop :: Spark Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fde136b1/tinkergraph-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/pom.xml b/tinkergraph-gremlin/pom.xml
index f23a716..c842275 100644
--- a/tinkergraph-gremlin/pom.xml
+++ b/tinkergraph-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.9-SNAPSHOT</version>
+        <version>3.2.9</version>
     </parent>
     <artifactId>tinkergraph-gremlin</artifactId>
     <name>Apache TinkerPop :: TinkerGraph Gremlin</name>


[27/50] tinkerpop git commit: Added Pop.all to python gherkin test support

Posted by fl...@apache.org.
Added Pop.all to python gherkin test support

Pop.all in python is Pop.all_ in python - needed that translation for tests that use that expression CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 8462f857d78a11e4d383fdc077fe8bb8688cbe67
Parents: c155818
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Tue Apr 24 09:17:18 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Tue Apr 24 09:17:18 2018 -0400

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


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8462f857/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 5cf9059..80137b0 100644
--- a/gremlin-python/src/main/jython/radish/feature_steps.py
+++ b/gremlin-python/src/main/jython/radish/feature_steps.py
@@ -25,6 +25,7 @@ from gremlin_python.process.traversal import Barrier, Cardinality, P, Pop, Scope
 from radish import given, when, then
 from hamcrest import *
 
+regex_all = re.compile(r"Pop\.all")
 regex_and = re.compile(r"([(.,\s])and\(")
 regex_as = re.compile(r"([(.,\s])as\(")
 regex_from = re.compile(r"([(.,\s])from\(")
@@ -233,6 +234,7 @@ def _table_assertion(data, result, ctx, ordered):
 
 def _translate(traversal):
     replaced = traversal.replace("\n", "")
+    replaced = regex_all.sub(r"Pop.all_", replaced)
     replaced = regex_and.sub(r"\1and_(", replaced)
     replaced = regex_from.sub(r"\1from_(", replaced)
     replaced = regex_global.sub(r"\1global_", replaced)


[31/50] tinkerpop git commit: TINKERPOP-1950 Cached global strategy lookups during traversal construction

Posted by fl...@apache.org.
TINKERPOP-1950 Cached global strategy lookups during traversal construction

This change leads to a 1.5x to 2x speed improvement in traversal construction. It is especially effective when processing traversals that have many child traversals within them as this method is called for not only the parent traversal but all the children as well.


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

Branch: refs/heads/TINKERPOP-1836
Commit: cd20298d3f4ee5f66fe4f037e8aa64daf32254b4
Parents: 44c4073
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 20 16:18:13 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 07:41:38 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../process/traversal/TraversalStrategies.java  | 36 +++++++++++++++-----
 2 files changed, 29 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/cd20298d/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index f71602a..f6ca111 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -27,6 +27,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 * Bumped to httpclient 4.5.5.
 * Bumped to Groovy 2.4.15 - fixes bug with `Lambda` construction.
 * Improved performance of GraphSON deserialization of `Bytecode`.
+* Improved performance of traversal construction.
 
 [[release-3-2-8]]
 === TinkerPop 3.2.8 (Release Date: April 2, 2018)

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/cd20298d/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
index c7ee5bf..e84737c 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
@@ -52,6 +52,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
 import java.util.stream.Collectors;
 
 /**
@@ -198,6 +199,12 @@ public interface TraversalStrategies extends Serializable, Cloneable {
 
     public static final class GlobalCache {
 
+        /**
+         * Keeps track of {@link GraphComputer} and/or {@link Graph} classes that have been initialized to the
+         * classloader so that they do not have to be reflected again.
+         */
+        private static Set<Class> LOADED = ConcurrentHashMap.newKeySet();
+
         private static final Map<Class<? extends Graph>, TraversalStrategies> GRAPH_CACHE = new HashMap<>();
         private static final Map<Class<? extends GraphComputer>, TraversalStrategies> GRAPH_COMPUTER_CACHE = new HashMap<>();
 
@@ -244,20 +251,33 @@ public interface TraversalStrategies extends Serializable, Cloneable {
         public static TraversalStrategies getStrategies(final Class graphOrGraphComputerClass) {
             try {
                 // be sure to load the class so that its static{} traversal strategy registration component is loaded.
-                // this is more important for GraphComputer classes as they are typically not instantiated prior to strategy usage like Graph classes.
-                final String graphComputerClassName = null != graphOrGraphComputerClass.getDeclaringClass() ?
+                // this is more important for GraphComputer classes as they are typically not instantiated prior to
+                // strategy usage like Graph classes.
+                if (!LOADED.contains(graphOrGraphComputerClass)) {
+                    final String graphComputerClassName = null != graphOrGraphComputerClass.getDeclaringClass() ?
                         graphOrGraphComputerClass.getCanonicalName().replace("." + graphOrGraphComputerClass.getSimpleName(), "$" + graphOrGraphComputerClass.getSimpleName()) :
                         graphOrGraphComputerClass.getCanonicalName();
-                Class.forName(graphComputerClassName);
+                    Class.forName(graphComputerClassName);
+
+                    // keep track of stuff we already loaded once - stuff in this if/statement isn't cheap and this
+                    // method gets called a lot, basically every time a new traversal gets spun up (that includes
+                    // child traversals. perhaps it is possible to just check the cache keys for this information, but
+                    // it's not clear if this method will be called with something not in the cache and if it is and
+                    // it results in error, then we'd probably not want to deal with this block again anyway
+                    LOADED.add(graphOrGraphComputerClass);
+                }
             } catch (final ClassNotFoundException e) {
                 throw new IllegalStateException(e.getMessage(), e);
             }
-            if (Graph.class.isAssignableFrom(graphOrGraphComputerClass)) {
-                final TraversalStrategies traversalStrategies = GRAPH_CACHE.get(graphOrGraphComputerClass);
-                return null == traversalStrategies ? GRAPH_CACHE.get(Graph.class) : traversalStrategies;
+            
+            if (GRAPH_CACHE.containsKey(graphOrGraphComputerClass)) {
+                return GRAPH_CACHE.get(graphOrGraphComputerClass);
+            } else if (Graph.class.isAssignableFrom(graphOrGraphComputerClass)) {
+                return GRAPH_CACHE.get(Graph.class);
+            } else if (GRAPH_COMPUTER_CACHE.containsKey(graphOrGraphComputerClass)) {
+                return GRAPH_COMPUTER_CACHE.get(graphOrGraphComputerClass);
             } else if (GraphComputer.class.isAssignableFrom(graphOrGraphComputerClass)) {
-                final TraversalStrategies traversalStrategies = GRAPH_COMPUTER_CACHE.get(graphOrGraphComputerClass);
-                return null == traversalStrategies ? GRAPH_COMPUTER_CACHE.get(GraphComputer.class) : traversalStrategies;
+                return GRAPH_COMPUTER_CACHE.get(GraphComputer.class);
             } else {
                 throw new IllegalArgumentException("The TraversalStrategies.GlobalCache only supports Graph and GraphComputer strategy caching: " + graphOrGraphComputerClass.getCanonicalName());
             }


[44/50] tinkerpop git commit: fix list item index: expected 2 got 1 - CTR

Posted by fl...@apache.org.
fix list item index: expected 2 got 1 - CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: f64afe52acbdafaa281f072b953a7c41d25ce800
Parents: e9ab93a
Author: Robert Dale <ro...@gmail.com>
Authored: Sun May 6 10:36:57 2018 -0400
Committer: Robert Dale <ro...@gmail.com>
Committed: Sun May 6 10:37:10 2018 -0400

----------------------------------------------------------------------
 docs/src/reference/the-traversal.asciidoc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f64afe52/docs/src/reference/the-traversal.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/reference/the-traversal.asciidoc b/docs/src/reference/the-traversal.asciidoc
index 86fb324..e2e3be2 100644
--- a/docs/src/reference/the-traversal.asciidoc
+++ b/docs/src/reference/the-traversal.asciidoc
@@ -421,7 +421,7 @@ g.V().both().both().both().count().iterate().toString()  <2>
 ----
 
 <1> `LazyBarrierStrategy` is a default strategy and thus, does not need to be explicitly activated.
-<1> With `LazyBarrierStrategy` activated, `barrier()` steps are automatically inserted where appropriate.
+<2> With `LazyBarrierStrategy` activated, `barrier()` steps are automatically inserted where appropriate.
 
 *Additional References*
 


[26/50] tinkerpop git commit: Merge branch 'js-doc-example' into tp32

Posted by fl...@apache.org.
Merge branch 'js-doc-example' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: c155818793c38a144edfa5bc803284ff82c2e8ca
Parents: 268423d e08651b
Author: Jorge Bay Gondra <jo...@gmail.com>
Authored: Tue Apr 24 10:39:17 2018 +0200
Committer: Jorge Bay Gondra <jo...@gmail.com>
Committed: Tue Apr 24 10:39:17 2018 +0200

----------------------------------------------------------------------
 docs/src/reference/gremlin-variants.asciidoc | 47 +++++++++++++++++------
 1 file changed, 36 insertions(+), 11 deletions(-)
----------------------------------------------------------------------



[24/50] tinkerpop git commit: TINKERPOP-1944 Export DriverRemoteConnection

Posted by fl...@apache.org.
TINKERPOP-1944 Export DriverRemoteConnection


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

Branch: refs/heads/TINKERPOP-1836
Commit: d037ef7049f36410caba9362bd60cb8dfc04f857
Parents: 2591302
Author: Jorge Bay Gondra <jo...@gmail.com>
Authored: Mon Apr 23 15:13:32 2018 +0200
Committer: Jorge Bay Gondra <jo...@gmail.com>
Committed: Mon Apr 23 15:13:32 2018 +0200

----------------------------------------------------------------------
 .../main/javascript/gremlin-javascript/index.js | 20 +++++++++++---------
 .../test/unit/exports-test.js                   |  2 ++
 2 files changed, 13 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d037ef70/gremlin-javascript/src/main/javascript/gremlin-javascript/index.js
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/index.js b/gremlin-javascript/src/main/javascript/gremlin-javascript/index.js
index 61ab274..2ebae48 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/index.js
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/index.js
@@ -22,20 +22,22 @@
  */
 'use strict';
 
-var t = require('./lib/process/traversal');
-var gt = require('./lib/process/graph-traversal');
-var strategiesModule = require('./lib/process/traversal-strategy');
-var graph = require('./lib/structure/graph');
-var gs = require('./lib/structure/io/graph-serializer');
-var rc = require('./lib/driver/remote-connection');
-var Bytecode = require('./lib/process/bytecode');
-var utils = require('./lib/utils');
+const t = require('./lib/process/traversal');
+const gt = require('./lib/process/graph-traversal');
+const strategiesModule = require('./lib/process/traversal-strategy');
+const graph = require('./lib/structure/graph');
+const gs = require('./lib/structure/io/graph-serializer');
+const rc = require('./lib/driver/remote-connection');
+const Bytecode = require('./lib/process/bytecode');
+const utils = require('./lib/utils');
+const DriverRemoteConnection = require('./lib/driver/driver-remote-connection');
 
 module.exports = {
   driver: {
     RemoteConnection: rc.RemoteConnection,
     RemoteStrategy: rc.RemoteStrategy,
-    RemoteTraversal: rc.RemoteTraversal
+    RemoteTraversal: rc.RemoteTraversal,
+    DriverRemoteConnection: DriverRemoteConnection
   },
   process: {
     Bytecode: Bytecode,

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d037ef70/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/exports-test.js
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/exports-test.js b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/exports-test.js
index 53b6577..e0dfb12 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/exports-test.js
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/exports-test.js
@@ -69,5 +69,7 @@ describe('API', function () {
     assert.strictEqual(typeof glvModule.driver.RemoteConnection, 'function');
     assert.strictEqual(typeof glvModule.driver.RemoteStrategy, 'function');
     assert.strictEqual(typeof glvModule.driver.RemoteTraversal, 'function');
+    assert.strictEqual(typeof glvModule.driver.DriverRemoteConnection, 'function');
+    assert.strictEqual(glvModule.driver.DriverRemoteConnection.name, 'DriverRemoteConnection');
   });
 });
\ No newline at end of file


[14/50] tinkerpop git commit: Merge branch 'TINKERPOP-1934' into tp32

Posted by fl...@apache.org.
Merge branch 'TINKERPOP-1934' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: a7c8ea102425e9df5f9f3eca20df333db8cdf936
Parents: 54df6dc f9e0cf5
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Apr 16 07:48:42 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Apr 16 07:48:42 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                     | 5 +++++
 gremlin-console/pom.xml                | 1 -
 gremlin-console/src/main/static/NOTICE | 6 ------
 gremlin-server/pom.xml                 | 1 -
 pom.xml                                | 5 +++++
 5 files changed, 10 insertions(+), 8 deletions(-)
----------------------------------------------------------------------



[43/50] tinkerpop git commit: CTR: tweaked release validation script

Posted by fl...@apache.org.
CTR: tweaked release validation script


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

Branch: refs/heads/TINKERPOP-1836
Commit: e9ab93aa2df3ddc3d9271ebaa6543a82bc487f62
Parents: 8671622
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Wed May 2 09:38:57 2018 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Wed May 2 09:38:57 2018 -0700

----------------------------------------------------------------------
 bin/validate-distribution.sh | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/e9ab93aa/bin/validate-distribution.sh
----------------------------------------------------------------------
diff --git a/bin/validate-distribution.sh b/bin/validate-distribution.sh
index b071ea0..76e0974 100755
--- a/bin/validate-distribution.sh
+++ b/bin/validate-distribution.sh
@@ -26,6 +26,7 @@
 # curl -L -O https://dist.apache.org/repos/dist/dev/tinkerpop/KEYS
 # gpg --import KEYS
 
+COMMITTERS=$(curl -Ls https://dist.apache.org/repos/dist/dev/tinkerpop/KEYS | grep -Po '(?<=<...@apache.org>)' | uniq)
 TMP_DIR="/tmp/tpdv"
 
 # Required. Only the latest version on each release stream is available on dist.
@@ -72,6 +73,8 @@ mkdir -p ${TMP_DIR}
 rm -rf ${TMP_DIR}/*
 cd ${TMP_DIR}
 
+curl -Ls https://people.apache.org/keys/committer/ | grep -v invalid > ${TMP_DIR}/.committers
+
 # validate downloads
 ZIP_FILENAME=`grep -o '[^/]*$' <<< ${URL}`
 DIR_NAME=`sed -e 's/-[^-]*$//' <<< ${ZIP_FILENAME}`
@@ -94,11 +97,24 @@ echo "OK"
 echo "* validating signatures and checksums ... "
 
 echo -n "  * PGP signature ... "
-[ `gpg ${ZIP_FILENAME}.asc 2>&1 | grep -c '^gpg: Good signature from "Stephen Mallette <sp...@apache.org>"$'` -eq 1 ] || \
-[ `gpg ${ZIP_FILENAME}.asc 2>&1 | grep -c '^gpg: Good signature from "Marko Rodriguez <ok...@apache.org>"$'` -eq 1 ] || \
-[ `gpg ${ZIP_FILENAME}.asc 2>&1 | grep -c '^gpg: Good signature from "Theodore Ratte Wilmes (CODE SIGNING KEY) <tw...@apache.org>"'` -eq 1 ] || \
-[ `gpg ${ZIP_FILENAME}.asc 2>&1 | grep -c '^gpg: Good signature from "Jason Plurad (CODE SIGNING KEY) <pl...@apache.org>"'` -eq 1 ] || \
-{ echo "failed"; exit 1; }
+gpg --verify ${ZIP_FILENAME}.asc ${ZIP_FILENAME} > ${TMP_DIR}/.verify 2>&1
+
+verified=0
+
+for committer in ${COMMITTERS[@]}
+do
+  if [[ `grep -F ${committer} ${TMP_DIR}/.verify` ]]; then
+    fp=$(cat ${TMP_DIR}/.committers | grep "id='${committer}'" | grep -Po '(?<=>)[A-Z0-9 ]*(?=<)' 2> /dev/null)
+    if [ ! -z "${fp}" ]; then
+      if [[ `grep -F "${fp}" ${TMP_DIR}/.verify` ]]; then
+        verified=1
+      fi
+    fi
+  fi
+  [ ${verified} -eq 1 ] && break
+done
+
+[ ${verified} -eq 1 ] || { echo "failed"; exit 1; }
 echo "OK"
 
 echo -n "  * MD5 checksum ... "


[16/50] tinkerpop git commit: Move validation into set() method to avoid double loop.

Posted by fl...@apache.org.
Move validation into set() method to avoid double loop.

Parameters tends to be a hotspot in traversal construction. This doesn't amount to much in terms of performance overall for most traversals, but since the validation code isn't being used anywhere else there's not much value in having it isolated anyway. Better to just kill the double loop. CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 4dcee1ad22bfe5c7597feebbbcb74577e5f8d7ca
Parents: 430c97d
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 18 17:43:10 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 18 17:43:10 2018 -0400

----------------------------------------------------------------------
 .../process/traversal/step/util/Parameters.java     | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4dcee1ad/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
index 5cb6001..7fae30a 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
@@ -171,8 +171,13 @@ public final class Parameters implements Cloneable, Serializable {
      * Set parameters given key/value pairs.
      */
     public void set(final TraversalParent parent, final Object... keyValues) {
-        Parameters.legalPropertyKeyValueArray(keyValues);
+        if (keyValues.length % 2 != 0)
+            throw Element.Exceptions.providedKeyValuesMustBeAMultipleOfTwo();
+
         for (int i = 0; i < keyValues.length; i = i + 2) {
+            if (!(keyValues[i] instanceof String) && !(keyValues[i] instanceof T) && !(keyValues[i] instanceof Traversal))
+                throw new IllegalArgumentException("The provided key/value array must have a String, T, or Traversal on even array indices");
+
             if (keyValues[i + 1] != null) {
                 // track the list of traversals that are present so that elsewhere in Parameters there is no need
                 // to iterate all values to not find any. also grab available labels in traversal values
@@ -253,15 +258,6 @@ public final class Parameters implements Cloneable, Serializable {
         return this.parameters.toString();
     }
 
-    private static void legalPropertyKeyValueArray(final Object... propertyKeyValues) throws IllegalArgumentException {
-        if (propertyKeyValues.length % 2 != 0)
-            throw Element.Exceptions.providedKeyValuesMustBeAMultipleOfTwo();
-        for (int i = 0; i < propertyKeyValues.length; i = i + 2) {
-            if (!(propertyKeyValues[i] instanceof String) && !(propertyKeyValues[i] instanceof T) && !(propertyKeyValues[i] instanceof Traversal))
-                throw new IllegalArgumentException("The provided key/value array must have a String, T, or Traversal on even array indices");
-        }
-    }
-
     private void addTraversal(final Traversal.Admin t) {
         this.traversals.add(t);
         for (final Object ss : t.getSteps()) {


[42/50] tinkerpop git commit: Merge branch 'TINKERPOP-1944' into tp32

Posted by fl...@apache.org.
Merge branch 'TINKERPOP-1944' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: 8671622ec5da41774e5684ebd3a514211dd27369
Parents: 5fea198 d037ef7
Author: Jorge Bay Gondra <jo...@gmail.com>
Authored: Wed May 2 08:49:28 2018 -0400
Committer: Jorge Bay Gondra <jo...@gmail.com>
Committed: Wed May 2 08:49:28 2018 -0400

----------------------------------------------------------------------
 .../main/javascript/gremlin-javascript/index.js | 20 +++++++++++---------
 .../test/unit/exports-test.js                   |  2 ++
 2 files changed, 13 insertions(+), 9 deletions(-)
----------------------------------------------------------------------



[23/50] tinkerpop git commit: Improve JavaScript Gremlin documentation

Posted by fl...@apache.org.
Improve JavaScript Gremlin documentation

Several fixes to the JavaScript GLV documentation:
- Use 'gremlin' package name
- Include information regarding Promises
- Fix method names


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

Branch: refs/heads/TINKERPOP-1836
Commit: e08651b946e936579db538f9114dd1c5c9079bcb
Parents: 2591302
Author: Jorge Bay Gondra <jo...@gmail.com>
Authored: Mon Apr 23 10:26:36 2018 +0200
Committer: Jorge Bay Gondra <jo...@gmail.com>
Committed: Mon Apr 23 10:26:36 2018 +0200

----------------------------------------------------------------------
 docs/src/reference/gremlin-variants.asciidoc | 47 +++++++++++++++++------
 1 file changed, 36 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/e08651b9/docs/src/reference/gremlin-variants.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc
index d929b3c..7a85ab1 100644
--- a/docs/src/reference/gremlin-variants.asciidoc
+++ b/docs/src/reference/gremlin-variants.asciidoc
@@ -458,17 +458,24 @@ their Java counterparts which makes it possible to use lambdas with Gremlin.Net
 == Gremlin-JavaScript
 
 image:gremlin-js.png[width=130,float=right] Apache TinkerPop's Gremlin-JavaScript implements Gremlin within the
-JavaScript language. It targets Node.js runtime and can be used on different operating systems on any Node.js 4 or
+JavaScript language. It targets Node.js runtime and can be used on different operating systems on any Node.js 6 or
 above. Since the JavaScript naming conventions are very similar to that of Java, it should be very easy to switch
 between Gremlin-Java and Gremlin-JavaScript.
 
 [source,bash]
-npm install gremlin-javascript
+npm install gremlin
 
 The Gremlin-JavaScript provides `GraphTraversalSource`, `GraphTraversal`, and `__` which mirror the respective classes
 in Gremlin-Java. The `GraphTraversalSource` requires a RemoteConnection implementation in order to communicate with
 <<gremlin-server,GremlinServer>>.
 
+[source,javascript]
+----
+const gremlin = require('gremlin');
+const Graph = gremlin.structure.Graph;
+const DriverRemoteConnection = gremlin.driver.DriverRemoteConnection;
+----
+
 A traversal source can be spawned with `RemoteStrategy` from an empty `Graph`.
 
 [source,javascript]
@@ -489,27 +496,45 @@ IMPORTANT: Gremlin-JavaScript’s `Traversal` base class supports the standard G
 
 === RemoteConnection Submission
 
-Very similar to Gremlin-Python and Gremlin-Java, there are various ways to submit a traversal to a
-`RemoteConnection` using terminal/action methods off of `Traversal`.
+In a similar way as in other GLVs, there are various ways to submit a traversal to a
+`RemoteConnection` using terminal/action methods off of `Traversal`. Given that I/O operations in Node.js are
+asynchronous by default, this terminal methods return a `Promise`.
 
-* `Traversal.next()`
-* `Traversal.toList()`
+* `Traversal.toList()`: Returns a `Promise` with an `Array` as result value.
+* `Traversal.next()`: Returns a `Promise` with a `{ value, done }` tuple as result value, according to the
+link:https://github.com/tc39/proposal-async-iteration[async iterator proposal].
+* `Traversal.iterate()`: Returns a `Promise` without a value.
+
+
+For example:
+
+[source,javascript]
+----
+g.V().hasLabel('person').values('name').toList()
+  .then(names => console.log(names));
+----
+
+You can `await` the promises if you are using `async` functions.
+
+[source,javascript]
+----
+const names = await g.V().hasLabel('person').values('name').toList();
+console.log(names);
+----
 
 === Static Enums and Methods
 
 Gremlin has various tokens (e.g. `t`, `P`, `order`, `direction`, etc.) that are represented in Gremlin-JavaScript as
 objects.
 
-These can be used analogously to how they are used in Gremlin-Java.
-
 [source,javascript]
-g.V().hasLabel("person").has("age",P.gt(30)).Order().By("age", order.decr).toList()
+g.V().hasLabel('person').has('age', P.gt(30)).order().by('age', order.decr).toList()
 
 These objects must be required manually from the `process` namespace:
 
 [source,javascript]
 ----
-const gremlin = require('gremlin-javascript');
+const gremlin = require('gremlin');
 const P = gremlin.process.P;
 ----
 
@@ -517,7 +542,7 @@ Finally, using static `__` anonymous traversals like `__.out()` can be expressed
 
 [source,javascript]
 ----
-const gremlin = require('gremlin-javascript');
+const gremlin = require('gremlin');
 const __ = gremlin.process.statics;
 
 g.V().repeat(__.out()).times(2).values("name").fold().toList();


[12/50] tinkerpop git commit: Fixed a spelling mistake in collections recipe CTR

Posted by fl...@apache.org.
Fixed a spelling mistake in collections recipe CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 35bf95ad31067a7a7203f21a310dd9d26e371f59
Parents: e1a69fd
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 11 09:13:43 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 11 09:13:43 2018 -0400

----------------------------------------------------------------------
 docs/src/recipes/collections.asciidoc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/35bf95ad/docs/src/recipes/collections.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/recipes/collections.asciidoc b/docs/src/recipes/collections.asciidoc
index f44040a..d027376 100644
--- a/docs/src/recipes/collections.asciidoc
+++ b/docs/src/recipes/collections.asciidoc
@@ -324,7 +324,7 @@ g.V().
           by(values))
 ----
 
-The addition steps above `unfold()` the `Map` to key-value entries and filter the values for "n/a" and remove them
+The additional steps above `unfold()` the `Map` to key-value entries and filter the values for "n/a" and remove them
 prior to reconstructing the `Map` with the method shown earlier. To go a step further, apply the pattern presented
 earlier to flatten `List` values within a `Map`:
 


[18/50] tinkerpop git commit: Added gremlin-javascript logo to docs CTR

Posted by fl...@apache.org.
Added gremlin-javascript logo to docs CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: b99c56a6e50a86d6c3d2a0d12dbcac946e4ee2af
Parents: 6ac2274
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 19 07:15:33 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Apr 19 07:15:33 2018 -0400

----------------------------------------------------------------------
 docs/src/reference/gremlin-variants.asciidoc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b99c56a6/docs/src/reference/gremlin-variants.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc
index c19160a..d929b3c 100644
--- a/docs/src/reference/gremlin-variants.asciidoc
+++ b/docs/src/reference/gremlin-variants.asciidoc
@@ -457,10 +457,10 @@ their Java counterparts which makes it possible to use lambdas with Gremlin.Net
 [[gremlin-javascript]]
 == Gremlin-JavaScript
 
-
-Apache TinkerPop's Gremlin-JavaScript implements Gremlin within the JavaScript language. It targets Node.js runtime
-and can be used on different operating systems on any Node.js 4 or above. Since the JavaScript naming conventions are
-very similar to that of Java, it should be very easy to switch between Gremlin-Java and Gremlin-JavaScript.
+image:gremlin-js.png[width=130,float=right] Apache TinkerPop's Gremlin-JavaScript implements Gremlin within the
+JavaScript language. It targets Node.js runtime and can be used on different operating systems on any Node.js 4 or
+above. Since the JavaScript naming conventions are very similar to that of Java, it should be very easy to switch
+between Gremlin-Java and Gremlin-JavaScript.
 
 [source,bash]
 npm install gremlin-javascript


[38/50] tinkerpop git commit: Improved javadoc on Gremlin enums CTR

Posted by fl...@apache.org.
Improved javadoc on Gremlin enums CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: a4c5a2132f8f0c7824ceddc8adefe06274767071
Parents: 5954525
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 26 09:39:52 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Apr 26 09:39:52 2018 -0400

----------------------------------------------------------------------
 .../gremlin/process/traversal/Compare.java      | 12 ++++
 .../gremlin/process/traversal/Contains.java     |  4 ++
 .../gremlin/process/traversal/Operator.java     | 73 ++++++++++++++++++-
 .../tinkerpop/gremlin/process/traversal/P.java  | 76 ++++++++++++++++++++
 .../gremlin/process/traversal/Pop.java          | 14 +++-
 .../gremlin/process/traversal/Scope.java        | 19 +++--
 6 files changed, 188 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a4c5a213/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Compare.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Compare.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Compare.java
index 97b52b8..7d0d071 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Compare.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Compare.java
@@ -36,6 +36,8 @@ public enum Compare implements BiPredicate<Object, Object> {
      * {@link BigDecimal} so that it can be evaluated via {@link BigDecimal#compareTo}.  Otherwise they are evaluated
      * via {@link Object#equals(Object)}.  Testing against {@link Number#doubleValue()} enables the compare
      * operations to be a bit more forgiving with respect to comparing different number types.
+     *
+     * @since 3.0.0-incubating
      */
     eq {
         @Override
@@ -61,6 +63,8 @@ public enum Compare implements BiPredicate<Object, Object> {
      * {@link BigDecimal} so that it can be evaluated via {@link BigDecimal#equals}.  Otherwise they are evaluated
      * via {@link Object#equals(Object)}.  Testing against {@link Number#doubleValue()} enables the compare
      * operations to be a bit more forgiving with respect to comparing different number types.
+     *
+     * @since 3.0.0-incubating
      */
     neq {
         @Override
@@ -83,6 +87,8 @@ public enum Compare implements BiPredicate<Object, Object> {
      * {@link BigDecimal} so that it can be evaluated via {@link BigDecimal#compareTo}.  Otherwise they are evaluated
      * via {@link Comparable#compareTo(Object)}.  Testing against {@link BigDecimal#compareTo} enables the compare
      * operations to be a bit more forgiving with respect to comparing different number types.
+     *
+     * @since 3.0.0-incubating
      */
     gt {
         @Override
@@ -108,6 +114,8 @@ public enum Compare implements BiPredicate<Object, Object> {
      * {@link BigDecimal} so that it can be evaluated via {@link BigDecimal#compareTo}.  Otherwise they are evaluated
      * via {@link Comparable#compareTo(Object)}.  Testing against {@link BigDecimal#compareTo} enables the compare
      * operations to be a bit more forgiving with respect to comparing different number types.
+     *
+     * @since 3.0.0-incubating
      */
     gte {
         @Override
@@ -130,6 +138,8 @@ public enum Compare implements BiPredicate<Object, Object> {
      * {@link BigDecimal} so that it can be evaluated via {@link BigDecimal#compareTo}.  Otherwise they are evaluated
      * via {@link Comparable#compareTo(Object)}.  Testing against {@link BigDecimal#compareTo} enables the compare
      * operations to be a bit more forgiving with respect to comparing different number types.
+     *
+     * @since 3.0.0-incubating
      */
     lt {
         @Override
@@ -155,6 +165,8 @@ public enum Compare implements BiPredicate<Object, Object> {
      * {@link BigDecimal} so that it can be evaluated via {@link BigDecimal#compareTo}.  Otherwise they are evaluated
      * via {@link Comparable#compareTo(Object)}.  Testing against {@link BigDecimal#compareTo} enables the compare
      * operations to be a bit more forgiving with respect to comparing different number types.
+     *
+     * @since 3.0.0-incubating
      */
     lte {
         @Override

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a4c5a213/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Contains.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Contains.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Contains.java
index 2da0436..da46d0b 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Contains.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Contains.java
@@ -38,6 +38,8 @@ public enum Contains implements BiPredicate<Object, Collection> {
 
     /**
      * The first object is within the {@link Collection} provided in the second object.
+     *
+     * @since 3.0.0-incubating
      */
     within {
         @Override
@@ -48,6 +50,8 @@ public enum Contains implements BiPredicate<Object, Collection> {
 
     /**
      * The first object is not within the {@link Collection} provided in the second object.
+     *
+     * @since 3.0.0-incubating
      */
     without {
         @Override

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a4c5a213/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Operator.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Operator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Operator.java
index a52f34b..f9e0b5c 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Operator.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Operator.java
@@ -23,65 +23,132 @@ import java.util.Map;
 import java.util.function.BinaryOperator;
 
 /**
+ * A set of {@link BinaryOperator} instances that handle common operations for traversal steps.
+ *
  * @author Marko A. Rodriguez (http://markorodriguez.com)
  */
 public enum Operator implements BinaryOperator<Object> {
 
+    /**
+     * An addition function.
+     *
+     * @since 3.0.0-incubating
+     */
     sum {
         public Object apply(final Object a, Object b) {
             return NumberHelper.add((Number) a, (Number) b);
         }
     },
+
+    /**
+     * A subtraction function.
+     *
+     * @since 3.0.0-incubating
+     */
     minus {
         public Object apply(final Object a, final Object b) {
             return NumberHelper.sub((Number) a, (Number) b);
         }
     },
+
+    /**
+     * A multiplication function.
+     *
+     * @since 3.0.0-incubating
+     */
     mult {
         public Object apply(final Object a, final Object b) {
             return NumberHelper.mul((Number) a, (Number) b);
         }
     },
+
+    /**
+     * A division function.
+     *
+     * @since 3.0.0-incubating
+     */
     div {
         public Object apply(final Object a, final Object b) {
             return NumberHelper.div((Number) a, (Number) b);
         }
     },
+
+    /**
+     * Selects the smaller of the values.
+     *
+     * @since 3.0.0-incubating
+     */
     min {
         public Object apply(final Object a, final Object b) {
             return NumberHelper.min((Number) a, (Number) b);
         }
     },
+
+    /**
+     * Selects the larger of the values.
+     *
+     * @since 3.0.0-incubating
+     */
     max {
         public Object apply(final Object a, final Object b) {
             return NumberHelper.max((Number) a, (Number) b);
         }
     },
+
+    /**
+     * The new incoming value (i.e. the second value to the function) is returned unchanged result in the assignment
+     * of that value to the object of the {@code Operator}.
+     *
+     * @since 3.1.0-incubating
+     */
     assign {
         public Object apply(final Object a, final Object b) {
             return b;
         }
     },
+
+    /**
+     * Applies "and" to boolean values.
+     *
+     * @since 3.2.0-incubating
+     */
     and {
         public Object apply(final Object a, final Object b) {
             return ((boolean) a) && ((boolean) b);
         }
     },
+
+    /**
+     * Applies "or" to boolean values.
+     *
+     * @since 3.2.0-incubating
+     */
     or {
         public Object apply(final Object a, final Object b) {
             return ((boolean) a) || ((boolean) b);
         }
     },
+
+    /**
+     * Takes all objects in the second {@code Collection} and adds them to the first.
+     *
+     * @since 3.2.0-incubating
+     */
     addAll {
         public Object apply(final Object a, final Object b) {
             if (a instanceof Map)
-                ((Map) a).putAll((Map) b);
+                ((Map<?,?>) a).putAll((Map) b);
             else
-                ((Collection) a).addAll((Collection) b);
+                ((Collection<?>) a).addAll((Collection) b);
             return a;
         }
     },
-    //////
+
+    /**
+     * Sums and adds long values.
+     *
+     * @since 3.2.0-incubating
+     */
     sumLong {
         public Object apply(final Object a, final Object b) {
             return (long) a + (long) b;

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a4c5a213/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/P.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/P.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/P.java
index 3b2d0c2..8454f33 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/P.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/P.java
@@ -28,6 +28,7 @@ import java.util.function.BiPredicate;
 import java.util.function.Predicate;
 
 /**
+ * Predefined {@code Predicate} values that can be used with
  * @author Marko A. Rodriguez (http://markorodriguez.com)
  * @author Stephen Mallette (http://stephen.genoprime.com)
  */
@@ -121,62 +122,137 @@ public class P<V> implements Predicate<V>, Serializable, Cloneable {
 
     //////////////// statics
 
+    /**
+     * Determines if values are equal.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> eq(final V value) {
         return new P(Compare.eq, value);
     }
 
+    /**
+     * Determines if values are not equal.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> neq(final V value) {
         return new P(Compare.neq, value);
     }
 
+    /**
+     * Determines if a value is less than another.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> lt(final V value) {
         return new P(Compare.lt, value);
     }
 
+    /**
+     * Determines if a value is less than or equal to another.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> lte(final V value) {
         return new P(Compare.lte, value);
     }
 
+    /**
+     * Determines if a value is greater than another.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> gt(final V value) {
         return new P(Compare.gt, value);
     }
 
+    /**
+     * Determines if a value is greater than or equal to another.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> gte(final V value) {
         return new P(Compare.gte, value);
     }
 
+    /**
+     * Determines if a value is within (exclusive) the range of the two specified values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> inside(final V first, final V second) {
         return new AndP<V>(Arrays.asList(new P(Compare.gt, first), new P(Compare.lt, second)));
     }
 
+    /**
+     * Determines if a value is not within (exclusive) of the range of the two specified values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> outside(final V first, final V second) {
         return new OrP<V>(Arrays.asList(new P(Compare.lt, first), new P(Compare.gt, second)));
     }
 
+    /**
+     * Determines if a value is within (inclusive) of the range of the two specified values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> between(final V first, final V second) {
         return new AndP<V>(Arrays.asList(new P(Compare.gte, first), new P(Compare.lt, second)));
     }
 
+    /**
+     * Determines if a value is within the specified list of values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> within(final V... values) {
         return P.within(Arrays.asList(values));
     }
 
+    /**
+     * Determines if a value is within the specified list of values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> within(final Collection<V> value) {
         return new P(Contains.within, value);
     }
 
+    /**
+     * Determines if a value is not within the specified list of values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> without(final V... values) {
         return P.without(Arrays.asList(values));
     }
 
+    /**
+     * Deermines if a value is not within the specified list of values.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> without(final Collection<V> value) {
         return new P(Contains.without, value);
     }
 
+    /**
+     * Construct an instance of {@code P} from a {@code BiPredicate}.
+     *
+     * @since 3.0.0-incubating
+     */
     public static P test(final BiPredicate biPredicate, final Object value) {
         return new P(biPredicate, value);
     }
 
+    /**
+     * The opposite of the specified {@code P}.
+     *
+     * @since 3.0.0-incubating
+     */
     public static <V> P<V> not(final P<V> predicate) {
         return predicate.negate();
     }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a4c5a213/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Pop.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Pop.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Pop.java
index c9eab94..b2fe2b9 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Pop.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Pop.java
@@ -19,20 +19,28 @@
 package org.apache.tinkerpop.gremlin.process.traversal;
 
 /**
+ * Methods for extracting an item from a collection.
+ *
  * @author Marko A. Rodriguez (http://markorodriguez.com)
  */
 public enum Pop {
 
     /**
-     * The first item in an ordered collection (i.e. <code>collection[0]</code>)
+     * The first item in an ordered collection (i.e. {@code collection[0]}).
+     *
+     * @since 3.0.0-incubating
      */
     first,
     /**
-     * The last item in an ordered collection (i.e. <code>collection[collection.size()-1]</code>)
+     * The last item in an ordered collection (i.e. {@code collection[collection.size()-1]}).
+     *
+     * @since 3.0.0-incubating
      */
     last,
     /**
-     * Get all the items and return them as a list
+     * Get all the items and return them as a list.
+     *
+     * @since 3.0.0-incubating
      */
     all
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/a4c5a213/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Scope.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Scope.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Scope.java
index 11979de..c454922 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Scope.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Scope.java
@@ -19,15 +19,26 @@
 package org.apache.tinkerpop.gremlin.process.traversal;
 
 /**
- * Many {@link Step} instance can have a variable scope.
- * {@link Scope#global}: the step operates on the entire traversal.
- * {@link Scope#local}: the step operates on the current object in the step.
+ * Many {@link Step} instance can have a variable scope which alter the manner in which the step will behave in
+ * relation to how the traversers are processed.
  *
  * @author Marko A. Rodriguez (http://markorodriguez.com)
  */
 public enum Scope {
 
-    global, local;
+    /**
+     * Informs the step to operate on the entire traversal.
+     *
+     * @since 3.0.0-incubating
+     */
+    global,
+
+    /**
+     * Informs the step to operate on the current object in the step.
+     *
+     * @since 3.0.0-incubating
+     */
+    local;
 
     public Scope opposite() {
         return global.equals(this) ? local : global;


[03/50] tinkerpop git commit: TinkerPop 3.2.8 release

Posted by fl...@apache.org.
TinkerPop 3.2.8 release


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

Branch: refs/heads/TINKERPOP-1836
Commit: 004e7215a3e9028a31af05442e08c45e8db3ed1d
Parents: 5a3dd10
Author: Ted <tw...@gmail.com>
Authored: Mon Apr 2 14:14:58 2018 -0500
Committer: Ted <tw...@gmail.com>
Committed: Mon Apr 2 14:14:58 2018 -0500

----------------------------------------------------------------------
 gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj              | 6 +++---
 .../src/main/javascript/gremlin-javascript/package.json        | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/004e7215/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 454bcac..faf83cd 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -25,16 +25,16 @@ limitations under the License.
   </PropertyGroup>
 
   <PropertyGroup Label="Package">
-    <Version>3.2.8-SNAPSHOT</Version>
+    <Version>3.2.8</Version>
     <FileVersion>3.2.8.0</FileVersion>
     <AssemblyVersion>3.2.0.0</AssemblyVersion>
     <Title>Gremlin.Net</Title>
     <Authors>Apache TinkerPop</Authors>
     <Description>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.
+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 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.
+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.
 
 Please see the reference documentation at Apache TinkerPop for more information on usage.
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/004e7215/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
index c668be7..6cdd25d 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
@@ -1,6 +1,6 @@
 {
   "name": "gremlin-javascript",
-  "version": "3.2.8-alpha1",
+  "version": "3.2.8",
   "description": "JavaScript Gremlin Language Variant",
   "author": "Apache TinkerPop team",
   "keywords": [


[48/50] tinkerpop git commit: Minor fix to formatting of header in CHANGELOG CTR

Posted by fl...@apache.org.
Minor fix to formatting of header in CHANGELOG CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: ac161fa8cd613f3a0052debd460e5c363777ce2e
Parents: cfbe2ce
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu May 10 11:57:12 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu May 10 11:57:12 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ac161fa8/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 18f36ed..62c412e 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -2396,7 +2396,6 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 * Changed `GIRAPH_GREMLIN_HOME` to `GIRAPH_GREMLIN_LIB` to reference directory where jars are to be loaded.
 * Updated README with release instructions.
 
-TinkerPop 3.0.0.M1 (Release Date: August 12, 2014)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+=== TinkerPop 3.0.0.M1 (Release Date: August 12, 2014)
 
 * First official release of TinkerPop3 and thus, no changes.


[39/50] tinkerpop git commit: Remove obsolete NamingConversions.template TINKERPOP-1901 CTR

Posted by fl...@apache.org.
Remove obsolete NamingConversions.template TINKERPOP-1901 CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 09fd327abbe142e6ca33d78148d9c1820f85a197
Parents: a4c5a21
Author: Florian Hockmann <fh...@florian-hockmann.de>
Authored: Fri Apr 27 09:22:51 2018 +0200
Committer: Florian Hockmann <fh...@florian-hockmann.de>
Committed: Fri Apr 27 09:22:51 2018 +0200

----------------------------------------------------------------------
 gremlin-dotnet/glv/NamingConversions.template | 50 ----------------------
 1 file changed, 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/09fd327a/gremlin-dotnet/glv/NamingConversions.template
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/glv/NamingConversions.template b/gremlin-dotnet/glv/NamingConversions.template
deleted file mode 100644
index 201e74b..0000000
--- a/gremlin-dotnet/glv/NamingConversions.template
+++ /dev/null
@@ -1,50 +0,0 @@
-#region License
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-#endregion
-
-using System.Collections.Generic;
-
-// THIS IS A GENERATED FILE - DO NOT MODIFY THIS FILE DIRECTLY - see pom.xml
-namespace Gremlin.Net.Process.Traversal
-{
-    internal static class NamingConversions
-    {
-        /// <summary>
-        ///     Gets the Java name equivalent for a given enum value
-        /// </summary>
-        internal static string GetEnumJavaName(string typeName, string value)
-        {
-            var key = \$"{typeName}.{value}";
-            string javaName;
-            if (!CSharpToJavaEnums.TryGetValue(key, out javaName))
-            {
-                throw new KeyNotFoundException(\$"Java name for {key} not found");
-            }
-            return javaName;
-        }
-
-        internal static readonly IDictionary<string, string> CSharpToJavaEnums = new Dictionary<string, string>
-        {
-            <%= body %>
-        };
-    }
-}
\ No newline at end of file


[50/50] tinkerpop git commit: Add explanation for [Project/Package]Reference

Posted by fl...@apache.org.
Add explanation for [Project/Package]Reference


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

Branch: refs/heads/TINKERPOP-1836
Commit: 518e8fa09e4087af09a7e77c16991377f32afa54
Parents: bc3d37c
Author: Florian Hockmann <fh...@florian-hockmann.de>
Authored: Wed Feb 14 19:05:20 2018 +0100
Committer: Florian Hockmann <fh...@florian-hockmann.de>
Committed: Fri May 11 14:53:37 2018 +0200

----------------------------------------------------------------------
 gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template             | 1 +
 gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj | 1 +
 2 files changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/518e8fa0/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template b/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
index 255520b..9a6adf0 100644
--- a/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
+++ b/gremlin-dotnet/glv/Gremlin.Net.Template.csproj.template
@@ -25,6 +25,7 @@ limitations under the License.
   </PropertyGroup>
 
   <ItemGroup>
+    <!-- We need both reference elements until this is resolved: https://github.com/dotnet/sdk/issues/1151 -->
     <ProjectReference Include="../Gremlin.Net/Gremlin.Net.csproj" />
     <PackageReference Include="Gremlin.Net" Version="$projectVersion" />
   </ItemGroup>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/518e8fa0/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
index 3bb1409..42c0bb8 100644
--- a/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
@@ -25,6 +25,7 @@ limitations under the License.
   </PropertyGroup>
 
   <ItemGroup>
+    <!-- We need both reference elements until this is resolved: https://github.com/dotnet/sdk/issues/1151 -->
     <ProjectReference Include="../Gremlin.Net/Gremlin.Net.csproj" />
     <PackageReference Include="Gremlin.Net" Version="3.2.8-SNAPSHOT" />
   </ItemGroup>


[28/50] tinkerpop git commit: Fixed typo in JavaDoc: TraversalEngine

Posted by fl...@apache.org.
Fixed typo in JavaDoc: TraversalEngine


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

Branch: refs/heads/TINKERPOP-1836
Commit: 379242222a9381359986031285cc19250816effd
Parents: 682f298
Author: Justin Chu <15...@users.noreply.github.com>
Authored: Tue Apr 24 22:46:33 2018 -0400
Committer: Justin Chu <15...@users.noreply.github.com>
Committed: Tue Apr 24 22:46:33 2018 -0400

----------------------------------------------------------------------
 .../tinkerpop/gremlin/process/traversal/TraversalEngine.java       | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/37924222/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalEngine.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalEngine.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalEngine.java
index 052b99b..d58c988 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalEngine.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalEngine.java
@@ -33,7 +33,7 @@ import java.util.Optional;
  * Every {@link TraversalSource} should be provided a {@link TraversalEngine.Builder} so it can construct an engine for each spawned {@link Traversal}.
  *
  * @author Marko A. Rodriguez (http://markorodriguez.com)
- * @deprecated As of release 3.2.0, replaced by {@code Computer}.
+ * @deprecated As of release 3.2.0, replaced by {@link org.apache.tinkerpop.gremlin.process.computer.Computer}.
  */
 @Deprecated
 public interface TraversalEngine extends Serializable {


[30/50] tinkerpop git commit: Merge branch 'TINKERPOP-1947' into tp32

Posted by fl...@apache.org.
Merge branch 'TINKERPOP-1947' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: 44c4073f2711cd56948ea9753f94e51897262031
Parents: 42ce7a5 8fbfab7
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 06:56:17 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 06:56:17 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../process/traversal/step/util/Parameters.java | 30 +++++++++++---------
 .../step/map/GroovyAddVertexTest.groovy         |  5 ++++
 gremlin-test/features/map/AddVertex.feature     | 27 ++++++++++++++++++
 .../traversal/step/map/AddVertexTest.java       | 20 +++++++++++--
 5 files changed, 68 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/44c4073f/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --cc CHANGELOG.asciidoc
index 797072d,6f7baa5..f71602a
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@@ -23,9 -23,8 +23,10 @@@ image::https://raw.githubusercontent.co
  [[release-3-2-9]]
  === TinkerPop 3.2.9 (Release Date: NOT OFFICIALLY RELEASED YET)
  
+ * Fixed bug where path history was not being preserved for keys in mutations.
  * Bumped to httpclient 4.5.5.
 +* Bumped to Groovy 2.4.15 - fixes bug with `Lambda` construction.
 +* Improved performance of GraphSON deserialization of `Bytecode`.
  
  [[release-3-2-8]]
  === TinkerPop 3.2.8 (Release Date: April 2, 2018)


[32/50] tinkerpop git commit: Merge branch 'pr-856' into tp32

Posted by fl...@apache.org.
Merge branch 'pr-856' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: f4dbaff1c69242dfb8c69da17a9f35d52128c38e
Parents: 44c4073 3792422
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 07:44:47 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 07:44:47 2018 -0400

----------------------------------------------------------------------
 .../tinkerpop/gremlin/process/traversal/TraversalEngine.java       | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------



[20/50] tinkerpop git commit: TINKERPOP-1947 Fixed path history problem with mutations

Posted by fl...@apache.org.
TINKERPOP-1947 Fixed path history problem with mutations

When a key of a mutation was a traversal it was not being integrated to the parent traversal and tracked in the Parameters.


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

Branch: refs/heads/TINKERPOP-1836
Commit: 8fbfab7947d3cf547f7c27025be6876c5d86a1a4
Parents: b99c56a
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 19 14:25:33 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Thu Apr 19 14:25:33 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../process/traversal/step/util/Parameters.java | 30 +++++++++++---------
 .../step/map/GroovyAddVertexTest.groovy         |  5 ++++
 gremlin-test/features/map/AddVertex.feature     | 27 ++++++++++++++++++
 .../traversal/step/map/AddVertexTest.java       | 20 +++++++++++--
 5 files changed, 68 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8fbfab79/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 0f3a71a..6f7baa5 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-9]]
 === TinkerPop 3.2.9 (Release Date: NOT OFFICIALLY RELEASED YET)
 
+* Fixed bug where path history was not being preserved for keys in mutations.
 * Bumped to httpclient 4.5.5.
 
 [[release-3-2-8]]

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8fbfab79/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
index 7fae30a..d368322 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java
@@ -174,26 +174,30 @@ public final class Parameters implements Cloneable, Serializable {
         if (keyValues.length % 2 != 0)
             throw Element.Exceptions.providedKeyValuesMustBeAMultipleOfTwo();
 
-        for (int i = 0; i < keyValues.length; i = i + 2) {
-            if (!(keyValues[i] instanceof String) && !(keyValues[i] instanceof T) && !(keyValues[i] instanceof Traversal))
+        for (int ix = 0; ix < keyValues.length; ix = ix + 2) {
+            if (!(keyValues[ix] instanceof String) && !(keyValues[ix] instanceof T) && !(keyValues[ix] instanceof Traversal))
                 throw new IllegalArgumentException("The provided key/value array must have a String, T, or Traversal on even array indices");
 
-            if (keyValues[i + 1] != null) {
-                // track the list of traversals that are present so that elsewhere in Parameters there is no need
-                // to iterate all values to not find any. also grab available labels in traversal values
-                if (keyValues[i + 1] instanceof Traversal.Admin) {
-                    final Traversal.Admin t = (Traversal.Admin) keyValues[i + 1];
-                    addTraversal(t);
-                    if (parent != null) parent.integrateChild(t);
+            if (keyValues[ix + 1] != null) {
+
+                // check both key and value for traversal instances. track the list of traversals that are present so
+                // that elsewhere in Parameters there is no need to iterate all values to not find any. also grab
+                // available labels in traversal values
+                for (int iy = 0; iy < 2; iy++) {
+                    if (keyValues[ix + iy] instanceof Traversal.Admin) {
+                        final Traversal.Admin t = (Traversal.Admin) keyValues[ix + iy];
+                        addTraversal(t);
+                        if (parent != null) parent.integrateChild(t);
+                    }
                 }
 
-                List<Object> values = this.parameters.get(keyValues[i]);
+                List<Object> values = this.parameters.get(keyValues[ix]);
                 if (null == values) {
                     values = new ArrayList<>();
-                    values.add(keyValues[i + 1]);
-                    this.parameters.put(keyValues[i], values);
+                    values.add(keyValues[ix + 1]);
+                    this.parameters.put(keyValues[ix], values);
                 } else {
-                    values.add(keyValues[i + 1]);
+                    values.add(keyValues[ix + 1]);
                 }
             }
         }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8fbfab79/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 1956a7e..b9d753b 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
@@ -81,6 +81,11 @@ public abstract class GroovyAddVertexTest {
             new ScriptTraversal<>(g, "gremlin-groovy", "g.withSideEffect('a', 'marko').addV().property('name', select('a')).name")
         }
 
+        @Override
+        public Traversal<Vertex, String> get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name() {
+            new ScriptTraversal<>(g, "gremlin-groovy", "g.withSideEffect('a', 'name').addV().property(select('a'), 'marko').name")
+        }
+
         ///////// DEPRECATED BELOW
 
         @Override

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8fbfab79/gremlin-test/features/map/AddVertex.feature
----------------------------------------------------------------------
diff --git a/gremlin-test/features/map/AddVertex.feature b/gremlin-test/features/map/AddVertex.feature
index 2813733..996521b 100644
--- a/gremlin-test/features/map/AddVertex.feature
+++ b/gremlin-test/features/map/AddVertex.feature
@@ -308,3 +308,30 @@ Feature: Step - addV()
       | result |
       | m[{"temp": ["test"], "name": ["lop"]}] |
       | m[{"temp": ["test"], "name": ["ripple"]}] |
+
+  Scenario: g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name
+    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").
+        addV("person").property(T.id, 4).property("name","josh").property("age", 32).as("josh").
+        addV("software").property(T.id, 5).property("name", "ripple").property("lang", "java").as("ripple").
+        addV("person").property(T.id, 6).property("name", "peter").property("age", 35).as('peter').
+        addE("knows").from("marko").to("vadas").property(T.id, 7).property("weight", 0.5).
+        addE("knows").from("marko").to("josh").property(T.id, 8).property("weight", 1.0).
+        addE("created").from("marko").to("lop").property(T.id, 9).property("weight", 0.4).
+        addE("created").from("josh").to("ripple").property(T.id, 10).property("weight", 1.0).
+        addE("created").from("josh").to("lop").property(T.id, 11).property("weight", 0.4).
+        addE("created").from("peter").to("lop").property(T.id, 12).property("weight", 0.2)
+      """
+    And the traversal of
+      """
+      g.withSideEffect("a", "name").addV().property(__.select("a"), "marko").values("name")
+      """
+    When iterated to list
+    Then the result should be unordered
+      | result |
+      | marko |
+    And the graph should return 2 for count of "g.V().has(\"name\",\"marko\")"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8fbfab79/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
index d44b439..7cf5e6a 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
@@ -38,10 +38,8 @@ import java.util.Map;
 
 import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
 import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.select;
-import static org.hamcrest.Matchers.containsInAnyOrder;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
 /**
@@ -70,6 +68,8 @@ public abstract class AddVertexTest extends AbstractGremlinTest {
 
     public abstract Traversal<Vertex, String> get_g_withSideEffectXa_markoX_addV_propertyXname_selectXaXX_name();
 
+    public abstract Traversal<Vertex, String> get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name();
+
     // 3.0.0 DEPRECATIONS
     @Deprecated
     public abstract Traversal<Vertex, Vertex> get_g_V_addVXlabel_animal_age_0X();
@@ -296,6 +296,17 @@ public abstract class AddVertexTest extends AbstractGremlinTest {
         assertFalse(traversal.hasNext());
     }
 
+    @Test
+    @LoadGraphWith(MODERN)
+    @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES)
+    @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_PROPERTY)
+    public void g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name() {
+        final Traversal<Vertex, String> traversal = get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name();
+        printTraversalForm(traversal);
+        assertEquals("marko", traversal.next());
+        assertFalse(traversal.hasNext());
+    }
+
 
     public static class Traversals extends AddVertexTest {
 
@@ -358,5 +369,10 @@ public abstract class AddVertexTest extends AbstractGremlinTest {
         public Traversal<Vertex, String> get_g_withSideEffectXa_markoX_addV_propertyXname_selectXaXX_name() {
             return g.withSideEffect("a", "marko").addV().property("name", select("a")).values("name");
         }
+
+        @Override
+        public Traversal<Vertex, String> get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name() {
+            return g.withSideEffect("a", "name").addV().property(select("a"),"marko").values("name");
+        }
     }
 }
\ No newline at end of file


[02/50] tinkerpop git commit: 3.2.8 release preparations.

Posted by fl...@apache.org.
3.2.8 release preparations.


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

Branch: refs/heads/TINKERPOP-1836
Commit: 5a3dd1005c8b80f245db6b0775fb9dbd8b1e6cd0
Parents: 2a9e7e2
Author: Ted Wilmes <tw...@gmail.com>
Authored: Mon Apr 2 08:25:48 2018 -0500
Committer: Ted Wilmes <tw...@gmail.com>
Committed: Mon Apr 2 08:25:48 2018 -0500

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              | 51 +++++++++++++++++++-
 .../upgrade/release-3.2.x-incubating.asciidoc   |  2 +-
 giraph-gremlin/pom.xml                          |  2 +-
 gremlin-archetype/gremlin-archetype-dsl/pom.xml |  2 +-
 .../gremlin-archetype-server/pom.xml            |  2 +-
 .../gremlin-archetype-tinkergraph/pom.xml       |  2 +-
 gremlin-archetype/pom.xml                       |  2 +-
 gremlin-benchmark/pom.xml                       |  2 +-
 gremlin-console/bin/gremlin.sh                  |  2 +-
 gremlin-console/pom.xml                         |  2 +-
 gremlin-core/pom.xml                            |  2 +-
 gremlin-dotnet/pom.xml                          |  2 +-
 gremlin-dotnet/src/pom.xml                      |  2 +-
 gremlin-dotnet/test/pom.xml                     |  2 +-
 gremlin-driver/pom.xml                          |  2 +-
 gremlin-groovy-test/pom.xml                     |  2 +-
 gremlin-groovy/pom.xml                          |  2 +-
 gremlin-javascript/pom.xml                      |  2 +-
 gremlin-python/pom.xml                          |  2 +-
 gremlin-server/pom.xml                          |  2 +-
 gremlin-shaded/pom.xml                          |  2 +-
 gremlin-test/pom.xml                            |  2 +-
 hadoop-gremlin/pom.xml                          |  2 +-
 neo4j-gremlin/pom.xml                           |  2 +-
 pom.xml                                         |  2 +-
 spark-gremlin/pom.xml                           |  2 +-
 tinkergraph-gremlin/pom.xml                     |  2 +-
 27 files changed, 76 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 22073ad..2b48a6f 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -21,7 +21,7 @@ limitations under the License.
 image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/images/nine-inch-gremlins.png[width=185]
 
 [[release-3-2-8]]
-=== TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET)
+=== TinkerPop 3.2.8 (Release Date: April 2, 2018)
 
 * Added a `Lambda` class to Gremlin.Net that makes it possible to use Groovy and Python lambdas with Gremlin.Net.
 * Enums are now represented as classes in Gremlin.Net which allows to use them as arguments in more steps.
@@ -49,6 +49,55 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 * Fixed a bug in `ComputerAwareStep` that didn't handle `reset()` properly and thus occasionally produced some extra traversers.
 * Removed `TraversalPredicate` class in Gremlin.Net. It is now included in the `P` class instead.
 
+==== Bugs
+
+* TINKERPOP-1053 installed plugins are placed in a directory relative to where gremlin.sh is started
+* TINKERPOP-1509 Failing test case for tree serialization
+* TINKERPOP-1738 Proper functioning of GraphSONReader depends on order of elements in String representation
+* TINKERPOP-1758 RemoteStrategy should be before all other DecorationStrategies.
+* TINKERPOP-1855 Update Rexster links
+* TINKERPOP-1859 Complex instance of P not serializing to bytecode properly
+* TINKERPOP-1860 valueMap(True) result in error in gremlin-python
+* TINKERPOP-1862 TinkerGraph VertexProgram message passing doesn't work properly when using Direction.BOTH
+* TINKERPOP-1867 union() can produce extra traversers
+* TINKERPOP-1872 Apply edgeFunction in SparkMessenger
+* TINKERPOP-1873 min() and max() work only in the range of Integer values
+* TINKERPOP-1874 P does not appear to be serialized consistently in GraphSON
+* TINKERPOP-1879 Gremlin Console does not resepect equal sign for flag argument assignments
+* TINKERPOP-1880 Gremlin.NET Strong name signature could not be verified. (HRESULT: 0x80131045)
+* TINKERPOP-1883 gremlinpython future will never return
+* TINKERPOP-1890 getAnonymousTraversalClass() is not being generated for Java DSLs
+* TINKERPOP-1891 Serialization of P.not() for gremlin-javascript
+* TINKERPOP-1892 GLV test failures for .NET
+* TINKERPOP-1894 GraphSONMessageSerializerV2d0 fails to deserialize valid P.not()
+* TINKERPOP-1896 gremlin-python lambdas error
+* TINKERPOP-1907 Fix failing GLV test for withSack() in .NET
+* TINKERPOP-1917 gx:BigDecimal serialization broken in Gremlin.Net on systems with ',' as decimal separator
+* TINKERPOP-1918 Scenarios fail because of wrong numerical types
+* TINKERPOP-1919 Gherkin runner doesn't work with P.And() and P.Or() in Gremlin.Net
+* TINKERPOP-1920 Tests fail because P.Within() arguments are wrapped in an array in Gremlin.Net
+* TINKERPOP-1922 Gherkin features fail that contain P.not() in Gremlin.Net
+
+==== Improvements
+
+* TINKERPOP-1357 Centrality Recipes should mention pageRank and OLAP.
+* TINKERPOP-1489 Provide a Javascript Gremlin Language Variant
+* TINKERPOP-1586 SubgraphStrategy in OLAP
+* TINKERPOP-1726 Support WebSockets ping/pong keep-alive in Gremlin server
+* TINKERPOP-1842 iterate() missing in terminal steps documentation
+* TINKERPOP-1850 Range step has undocumented special values
+* TINKERPOP-1854 Support lambdas in Gremlin.Net
+* TINKERPOP-1857 GLV test suite consistency and completeness
+* TINKERPOP-1863 Delaying the setting of requestId till the RequestMessage instantiation time
+* TINKERPOP-1868 Support inject source step in Gremlin.Net
+* TINKERPOP-1870 n^2 synchronious operation in OLAP WorkerExecutor.execute() method
+* TINKERPOP-1877 Add new graph data for specialized testing scenarios
+* TINKERPOP-1884 Bump to Netty 4.0.56.Final
+* TINKERPOP-1885 Various Gremlin.Net documentation updates
+* TINKERPOP-1901 Enable usage of enums in more steps in Gremlin.Net
+* TINKERPOP-1908 Bump to Groovy 2.4.14
+* TINKERPOP-1911 Refactor JavaTranslator to cache all reflective calls
+
 [[release-3-2-7]]
 === TinkerPop 3.2.7 (Release Date: December 17, 2017)
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/docs/src/upgrade/release-3.2.x-incubating.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/upgrade/release-3.2.x-incubating.asciidoc b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
index edc7f79..b57a657 100644
--- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc
+++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
@@ -23,7 +23,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 
 == TinkerPop 3.2.8
 
-*Release Date: NOT OFFICIALLY RELEASED YET*
+*Release Date: April 2, 2018*
 
 Please see the link:https://github.com/apache/tinkerpop/blob/3.2.8/CHANGELOG.asciidoc#release-3-2-8[changelog] for a complete list of all the modifications that are part of this release.
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/giraph-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/giraph-gremlin/pom.xml b/giraph-gremlin/pom.xml
index b00f81a..39b7f6c 100644
--- a/giraph-gremlin/pom.xml
+++ b/giraph-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>giraph-gremlin</artifactId>
     <name>Apache TinkerPop :: Giraph Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-archetype/gremlin-archetype-dsl/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-dsl/pom.xml b/gremlin-archetype/gremlin-archetype-dsl/pom.xml
index f227d7b..668e530 100644
--- a/gremlin-archetype/gremlin-archetype-dsl/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-dsl/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
 
     <artifactId>gremlin-archetype-dsl</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-archetype/gremlin-archetype-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-server/pom.xml b/gremlin-archetype/gremlin-archetype-server/pom.xml
index 8aa906d..431bbca 100644
--- a/gremlin-archetype/gremlin-archetype-server/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-server/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
 
     <artifactId>gremlin-archetype-server</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml b/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
index 73ee529..b4ed365 100644
--- a/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
 
     <artifactId>gremlin-archetype-tinkergraph</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-archetype/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/pom.xml b/gremlin-archetype/pom.xml
index 0d77b9a..840c8cb 100644
--- a/gremlin-archetype/pom.xml
+++ b/gremlin-archetype/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
 
     <artifactId>gremlin-archetype</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-benchmark/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-benchmark/pom.xml b/gremlin-benchmark/pom.xml
index 271da49..0eb80b3 100644
--- a/gremlin-benchmark/pom.xml
+++ b/gremlin-benchmark/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
 
     <artifactId>gremlin-benchmark</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-console/bin/gremlin.sh
----------------------------------------------------------------------
diff --git a/gremlin-console/bin/gremlin.sh b/gremlin-console/bin/gremlin.sh
index 420404c..46c7403 120000
--- a/gremlin-console/bin/gremlin.sh
+++ b/gremlin-console/bin/gremlin.sh
@@ -1 +1 @@
-../target/apache-tinkerpop-gremlin-console-3.2.8-SNAPSHOT-standalone/bin/gremlin.sh
\ No newline at end of file
+../target/apache-tinkerpop-gremlin-console-3.2.8-standalone/bin/gremlin.sh
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-console/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-console/pom.xml b/gremlin-console/pom.xml
index 7c50ce5..40aac0c 100644
--- a/gremlin-console/pom.xml
+++ b/gremlin-console/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-console</artifactId>
     <name>Apache TinkerPop :: Gremlin Console</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-core/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-core/pom.xml b/gremlin-core/pom.xml
index 2aaf0e0..d32e904 100644
--- a/gremlin-core/pom.xml
+++ b/gremlin-core/pom.xml
@@ -20,7 +20,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-core</artifactId>
     <name>Apache TinkerPop :: Gremlin Core</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-dotnet/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/pom.xml b/gremlin-dotnet/pom.xml
index d2e0893..178b627 100644
--- a/gremlin-dotnet/pom.xml
+++ b/gremlin-dotnet/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-dotnet</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-dotnet/src/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/pom.xml b/gremlin-dotnet/src/pom.xml
index 0798c04..5a19049 100644
--- a/gremlin-dotnet/src/pom.xml
+++ b/gremlin-dotnet/src/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-dotnet</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-dotnet-source</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Source</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-dotnet/test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/test/pom.xml b/gremlin-dotnet/test/pom.xml
index a4082df..6c9a3d2 100644
--- a/gremlin-dotnet/test/pom.xml
+++ b/gremlin-dotnet/test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-dotnet</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-dotnet-tests</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Tests</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-driver/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-driver/pom.xml b/gremlin-driver/pom.xml
index 1791091..7e5d081 100644
--- a/gremlin-driver/pom.xml
+++ b/gremlin-driver/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-driver</artifactId>
     <name>Apache TinkerPop :: Gremlin Driver</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-groovy-test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/pom.xml b/gremlin-groovy-test/pom.xml
index eb023d9..3808e57 100644
--- a/gremlin-groovy-test/pom.xml
+++ b/gremlin-groovy-test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-groovy-test</artifactId>
     <name>Apache TinkerPop :: Gremlin Groovy Test</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-groovy/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-groovy/pom.xml b/gremlin-groovy/pom.xml
index 5ef5456..c94b2c1 100644
--- a/gremlin-groovy/pom.xml
+++ b/gremlin-groovy/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-groovy</artifactId>
     <name>Apache TinkerPop :: Gremlin Groovy</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-javascript/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-javascript/pom.xml b/gremlin-javascript/pom.xml
index f9f0c8e..c87e090 100644
--- a/gremlin-javascript/pom.xml
+++ b/gremlin-javascript/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-javascript</artifactId>
     <name>Apache TinkerPop :: Gremlin Javascript</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-python/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-python/pom.xml b/gremlin-python/pom.xml
index 3bbf82c..c6cc02a 100644
--- a/gremlin-python/pom.xml
+++ b/gremlin-python/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-python</artifactId>
     <name>Apache TinkerPop :: Gremlin Python</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-server/pom.xml b/gremlin-server/pom.xml
index 5a8d725..4babb6a 100644
--- a/gremlin-server/pom.xml
+++ b/gremlin-server/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-server</artifactId>
     <name>Apache TinkerPop :: Gremlin Server</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-shaded/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-shaded/pom.xml b/gremlin-shaded/pom.xml
index aeda3d4..a27e21c 100644
--- a/gremlin-shaded/pom.xml
+++ b/gremlin-shaded/pom.xml
@@ -20,7 +20,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-shaded</artifactId>
     <name>Apache TinkerPop :: Gremlin Shaded</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/gremlin-test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-test/pom.xml b/gremlin-test/pom.xml
index 051ff1d..552adc0 100644
--- a/gremlin-test/pom.xml
+++ b/gremlin-test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>gremlin-test</artifactId>
     <name>Apache TinkerPop :: Gremlin Test</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/hadoop-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/pom.xml b/hadoop-gremlin/pom.xml
index 9df3c9a..0a81e60 100644
--- a/hadoop-gremlin/pom.xml
+++ b/hadoop-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>hadoop-gremlin</artifactId>
     <name>Apache TinkerPop :: Hadoop Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/neo4j-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/neo4j-gremlin/pom.xml b/neo4j-gremlin/pom.xml
index 5180096..888ab60 100644
--- a/neo4j-gremlin/pom.xml
+++ b/neo4j-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>neo4j-gremlin</artifactId>
     <name>Apache TinkerPop :: Neo4j Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index da50996..2c861d7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@ limitations under the License.
     </parent>
     <groupId>org.apache.tinkerpop</groupId>
     <artifactId>tinkerpop</artifactId>
-    <version>3.2.8-SNAPSHOT</version>
+    <version>3.2.8</version>
     <packaging>pom</packaging>
     <name>Apache TinkerPop</name>
     <description>A Graph Computing Framework</description>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/spark-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/spark-gremlin/pom.xml b/spark-gremlin/pom.xml
index 1599a39..6d48d15 100644
--- a/spark-gremlin/pom.xml
+++ b/spark-gremlin/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>spark-gremlin</artifactId>
     <name>Apache TinkerPop :: Spark Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5a3dd100/tinkergraph-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/pom.xml b/tinkergraph-gremlin/pom.xml
index d858ae3..a7bd8b7 100644
--- a/tinkergraph-gremlin/pom.xml
+++ b/tinkergraph-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8-SNAPSHOT</version>
+        <version>3.2.8</version>
     </parent>
     <artifactId>tinkergraph-gremlin</artifactId>
     <name>Apache TinkerPop :: TinkerGraph Gremlin</name>


[11/50] tinkerpop git commit: Fixed a grammar mistake in collections recipe CTR

Posted by fl...@apache.org.
Fixed a grammar mistake in collections recipe CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: e1a69fd8075f02ae1f22c4195edd956bf988445a
Parents: 42bacaf
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 11 08:56:22 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 11 09:05:33 2018 -0400

----------------------------------------------------------------------
 docs/src/recipes/collections.asciidoc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/e1a69fd8/docs/src/recipes/collections.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/recipes/collections.asciidoc b/docs/src/recipes/collections.asciidoc
index 61fee99..f44040a 100644
--- a/docs/src/recipes/collections.asciidoc
+++ b/docs/src/recipes/collections.asciidoc
@@ -64,9 +64,9 @@ g.V().fold().unfold().values('name')
 g.V().store('a').cap('a').unfold().values('name')
 ----
 
-The above examples show that `unfold()` works quite well when you want don't want to preserve the `List` structure of
-the traverser as it just flattens `List` traversers to the traversal stream. The above examples only have one `List`
-as a result, but consider what happens when there is more than one:
+The above examples show that `unfold()` works quite well when you don't want to preserve the `List` structure of the
+traverser as it just flattens `List` traversers to the traversal stream. The above examples only have one `List` as a
+result, but consider what happens when there is more than one:
 
 [gremlin-groovy,modern]
 ----


[04/50] tinkerpop git commit: Bump to 3.2.9-SNAPSHOT

Posted by fl...@apache.org.
Bump to 3.2.9-SNAPSHOT


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

Branch: refs/heads/TINKERPOP-1836
Commit: 20bc88659ee0051311aab81095e9685a76d2b75e
Parents: 004e721
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 6 20:00:36 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 6 20:00:36 2018 -0400

----------------------------------------------------------------------
 giraph-gremlin/pom.xml                                       | 2 +-
 gremlin-archetype/gremlin-archetype-dsl/pom.xml              | 2 +-
 gremlin-archetype/gremlin-archetype-server/pom.xml           | 2 +-
 gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml      | 2 +-
 gremlin-archetype/pom.xml                                    | 2 +-
 gremlin-benchmark/pom.xml                                    | 2 +-
 gremlin-console/bin/gremlin.sh                               | 2 +-
 gremlin-console/pom.xml                                      | 2 +-
 gremlin-core/pom.xml                                         | 2 +-
 gremlin-dotnet/pom.xml                                       | 2 +-
 gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj            | 8 ++++----
 gremlin-dotnet/src/pom.xml                                   | 2 +-
 gremlin-dotnet/test/pom.xml                                  | 2 +-
 gremlin-driver/pom.xml                                       | 2 +-
 gremlin-groovy-test/pom.xml                                  | 2 +-
 gremlin-groovy/pom.xml                                       | 2 +-
 gremlin-javascript/pom.xml                                   | 2 +-
 .../src/main/javascript/gremlin-javascript/package.json      | 2 +-
 gremlin-python/pom.xml                                       | 2 +-
 gremlin-server/pom.xml                                       | 2 +-
 gremlin-shaded/pom.xml                                       | 2 +-
 gremlin-test/pom.xml                                         | 2 +-
 hadoop-gremlin/pom.xml                                       | 2 +-
 neo4j-gremlin/pom.xml                                        | 2 +-
 pom.xml                                                      | 2 +-
 spark-gremlin/pom.xml                                        | 2 +-
 tinkergraph-gremlin/pom.xml                                  | 2 +-
 27 files changed, 30 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/giraph-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/giraph-gremlin/pom.xml b/giraph-gremlin/pom.xml
index 39b7f6c..9ca6687 100644
--- a/giraph-gremlin/pom.xml
+++ b/giraph-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>giraph-gremlin</artifactId>
     <name>Apache TinkerPop :: Giraph Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-archetype/gremlin-archetype-dsl/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-dsl/pom.xml b/gremlin-archetype/gremlin-archetype-dsl/pom.xml
index 668e530..242ea07 100644
--- a/gremlin-archetype/gremlin-archetype-dsl/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-dsl/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
 
     <artifactId>gremlin-archetype-dsl</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-archetype/gremlin-archetype-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-server/pom.xml b/gremlin-archetype/gremlin-archetype-server/pom.xml
index 431bbca..83fa7ad 100644
--- a/gremlin-archetype/gremlin-archetype-server/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-server/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
 
     <artifactId>gremlin-archetype-server</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml b/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
index b4ed365..cb3b0eb 100644
--- a/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-tinkergraph/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-archetype</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
 
     <artifactId>gremlin-archetype-tinkergraph</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-archetype/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-archetype/pom.xml b/gremlin-archetype/pom.xml
index 840c8cb..12043c0 100644
--- a/gremlin-archetype/pom.xml
+++ b/gremlin-archetype/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
 
     <artifactId>gremlin-archetype</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-benchmark/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-benchmark/pom.xml b/gremlin-benchmark/pom.xml
index 0eb80b3..571bc0d 100644
--- a/gremlin-benchmark/pom.xml
+++ b/gremlin-benchmark/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
 
     <artifactId>gremlin-benchmark</artifactId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-console/bin/gremlin.sh
----------------------------------------------------------------------
diff --git a/gremlin-console/bin/gremlin.sh b/gremlin-console/bin/gremlin.sh
index 46c7403..ae28f7b 120000
--- a/gremlin-console/bin/gremlin.sh
+++ b/gremlin-console/bin/gremlin.sh
@@ -1 +1 @@
-../target/apache-tinkerpop-gremlin-console-3.2.8-standalone/bin/gremlin.sh
\ No newline at end of file
+../target/apache-tinkerpop-gremlin-console-3.2.9-SNAPSHOT-standalone/bin/gremlin.sh
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-console/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-console/pom.xml b/gremlin-console/pom.xml
index 40aac0c..46b4fcc 100644
--- a/gremlin-console/pom.xml
+++ b/gremlin-console/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <artifactId>tinkerpop</artifactId>
         <groupId>org.apache.tinkerpop</groupId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-console</artifactId>
     <name>Apache TinkerPop :: Gremlin Console</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-core/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-core/pom.xml b/gremlin-core/pom.xml
index d32e904..a170f8b 100644
--- a/gremlin-core/pom.xml
+++ b/gremlin-core/pom.xml
@@ -20,7 +20,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-core</artifactId>
     <name>Apache TinkerPop :: Gremlin Core</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-dotnet/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/pom.xml b/gremlin-dotnet/pom.xml
index 178b627..20b4fab 100644
--- a/gremlin-dotnet/pom.xml
+++ b/gremlin-dotnet/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-dotnet</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/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 faf83cd..44a3a10 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -25,16 +25,16 @@ limitations under the License.
   </PropertyGroup>
 
   <PropertyGroup Label="Package">
-    <Version>3.2.8</Version>
-    <FileVersion>3.2.8.0</FileVersion>
+    <Version>3.2.9-SNAPSHOT</Version>
+    <FileVersion>3.2.9.0</FileVersion>
     <AssemblyVersion>3.2.0.0</AssemblyVersion>
     <Title>Gremlin.Net</Title>
     <Authors>Apache TinkerPop</Authors>
     <Description>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.
+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 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.
+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.
 
 Please see the reference documentation at Apache TinkerPop for more information on usage.
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-dotnet/src/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/pom.xml b/gremlin-dotnet/src/pom.xml
index 5a19049..aabd43b 100644
--- a/gremlin-dotnet/src/pom.xml
+++ b/gremlin-dotnet/src/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-dotnet</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-dotnet-source</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Source</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-dotnet/test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/test/pom.xml b/gremlin-dotnet/test/pom.xml
index 6c9a3d2..e7e7aac 100644
--- a/gremlin-dotnet/test/pom.xml
+++ b/gremlin-dotnet/test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>gremlin-dotnet</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-dotnet-tests</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Tests</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-driver/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-driver/pom.xml b/gremlin-driver/pom.xml
index 7e5d081..cc826a5 100644
--- a/gremlin-driver/pom.xml
+++ b/gremlin-driver/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-driver</artifactId>
     <name>Apache TinkerPop :: Gremlin Driver</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-groovy-test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/pom.xml b/gremlin-groovy-test/pom.xml
index 3808e57..a915f7d 100644
--- a/gremlin-groovy-test/pom.xml
+++ b/gremlin-groovy-test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-groovy-test</artifactId>
     <name>Apache TinkerPop :: Gremlin Groovy Test</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-groovy/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-groovy/pom.xml b/gremlin-groovy/pom.xml
index c94b2c1..14efe86 100644
--- a/gremlin-groovy/pom.xml
+++ b/gremlin-groovy/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-groovy</artifactId>
     <name>Apache TinkerPop :: Gremlin Groovy</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-javascript/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-javascript/pom.xml b/gremlin-javascript/pom.xml
index c87e090..6b0d8bf 100644
--- a/gremlin-javascript/pom.xml
+++ b/gremlin-javascript/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-javascript</artifactId>
     <name>Apache TinkerPop :: Gremlin Javascript</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
----------------------------------------------------------------------
diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
index 6cdd25d..d20be6a 100644
--- a/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
+++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/package.json
@@ -1,6 +1,6 @@
 {
   "name": "gremlin-javascript",
-  "version": "3.2.8",
+  "version": "3.2.9-alpha1",
   "description": "JavaScript Gremlin Language Variant",
   "author": "Apache TinkerPop team",
   "keywords": [

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-python/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-python/pom.xml b/gremlin-python/pom.xml
index c6cc02a..649f3ae 100644
--- a/gremlin-python/pom.xml
+++ b/gremlin-python/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-python</artifactId>
     <name>Apache TinkerPop :: Gremlin Python</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-server/pom.xml b/gremlin-server/pom.xml
index 4babb6a..1bc5920 100644
--- a/gremlin-server/pom.xml
+++ b/gremlin-server/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-server</artifactId>
     <name>Apache TinkerPop :: Gremlin Server</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-shaded/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-shaded/pom.xml b/gremlin-shaded/pom.xml
index a27e21c..a74a91a 100644
--- a/gremlin-shaded/pom.xml
+++ b/gremlin-shaded/pom.xml
@@ -20,7 +20,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-shaded</artifactId>
     <name>Apache TinkerPop :: Gremlin Shaded</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/gremlin-test/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-test/pom.xml b/gremlin-test/pom.xml
index 552adc0..3c04c9f 100644
--- a/gremlin-test/pom.xml
+++ b/gremlin-test/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>gremlin-test</artifactId>
     <name>Apache TinkerPop :: Gremlin Test</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/hadoop-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/pom.xml b/hadoop-gremlin/pom.xml
index 0a81e60..a0f0cc7 100644
--- a/hadoop-gremlin/pom.xml
+++ b/hadoop-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>hadoop-gremlin</artifactId>
     <name>Apache TinkerPop :: Hadoop Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/neo4j-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/neo4j-gremlin/pom.xml b/neo4j-gremlin/pom.xml
index 888ab60..a65a30f 100644
--- a/neo4j-gremlin/pom.xml
+++ b/neo4j-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>neo4j-gremlin</artifactId>
     <name>Apache TinkerPop :: Neo4j Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 2c861d7..e99dd5a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@ limitations under the License.
     </parent>
     <groupId>org.apache.tinkerpop</groupId>
     <artifactId>tinkerpop</artifactId>
-    <version>3.2.8</version>
+    <version>3.2.9-SNAPSHOT</version>
     <packaging>pom</packaging>
     <name>Apache TinkerPop</name>
     <description>A Graph Computing Framework</description>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/spark-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/spark-gremlin/pom.xml b/spark-gremlin/pom.xml
index 6d48d15..913357c 100644
--- a/spark-gremlin/pom.xml
+++ b/spark-gremlin/pom.xml
@@ -24,7 +24,7 @@
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>spark-gremlin</artifactId>
     <name>Apache TinkerPop :: Spark Gremlin</name>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/20bc8865/tinkergraph-gremlin/pom.xml
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/pom.xml b/tinkergraph-gremlin/pom.xml
index a7bd8b7..f23a716 100644
--- a/tinkergraph-gremlin/pom.xml
+++ b/tinkergraph-gremlin/pom.xml
@@ -21,7 +21,7 @@ limitations under the License.
     <parent>
         <groupId>org.apache.tinkerpop</groupId>
         <artifactId>tinkerpop</artifactId>
-        <version>3.2.8</version>
+        <version>3.2.9-SNAPSHOT</version>
     </parent>
     <artifactId>tinkergraph-gremlin</artifactId>
     <name>Apache TinkerPop :: TinkerGraph Gremlin</name>


[21/50] tinkerpop git commit: TINKERPOP-1936 Improved performance of Bytecode deserialization.

Posted by fl...@apache.org.
TINKERPOP-1936 Improved performance of Bytecode deserialization.

GraphSON deserialization of Bytecode was using generic List deserialization which became especially costly for Jackson in 2.5.x because of changes that synchronized access to the deserialization cache and because the collection deserialization were no longer cacheable when type deserialization was in play. This change removed the use of generic type lists in deserialization and more directly handled the parsing of the lists thus bypassing the collection deserializer for this specific case.


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

Branch: refs/heads/TINKERPOP-1836
Commit: 682f298cc82d66fd7040cb29a7d3b769be5e2794
Parents: 2591302
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 12 10:25:20 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 20 19:29:02 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../io/graphson/TraversalSerializersV2d0.java   | 35 +++++++++++++-------
 2 files changed, 24 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/682f298c/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 0f3a71a..51c9f68 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -24,6 +24,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 === TinkerPop 3.2.9 (Release Date: NOT OFFICIALLY RELEASED YET)
 
 * Bumped to httpclient 4.5.5.
+* Improved performance of GraphSON deserialization of `Bytecode`.
 
 [[release-3-2-8]]
 === TinkerPop 3.2.8 (Release Date: April 2, 2018)

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/682f298c/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/TraversalSerializersV2d0.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/TraversalSerializersV2d0.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/TraversalSerializersV2d0.java
index a696280..040fd1d 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/TraversalSerializersV2d0.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/TraversalSerializersV2d0.java
@@ -248,8 +248,6 @@ final class TraversalSerializersV2d0 {
     //////////////////
 
     final static class BytecodeJacksonDeserializer extends StdDeserializer<Bytecode> {
-        private static final JavaType listJavaType = TypeFactory.defaultInstance().constructCollectionType(ArrayList.class, Object.class);
-        private static final JavaType listListJavaType = TypeFactory.defaultInstance().constructCollectionType(ArrayList.class, listJavaType);
 
         public BytecodeJacksonDeserializer() {
             super(Bytecode.class);
@@ -260,17 +258,30 @@ final class TraversalSerializersV2d0 {
             final Bytecode bytecode = new Bytecode();
 
             while (jsonParser.nextToken() != JsonToken.END_OBJECT) {
-                if (jsonParser.getCurrentName().equals(GraphSONTokens.SOURCE)) {
+                final String current = jsonParser.getCurrentName();
+                if (current.equals(GraphSONTokens.SOURCE) || current.equals(GraphSONTokens.STEP)) {
                     jsonParser.nextToken();
-                    final List<List<Object>> instructions = deserializationContext.readValue(jsonParser, listListJavaType);
-                    for (final List<Object> instruction : instructions) {
-                        bytecode.addSource((String) instruction.get(0), Arrays.copyOfRange(instruction.toArray(), 1, instruction.size()));
-                    }
-                } else if (jsonParser.getCurrentName().equals(GraphSONTokens.STEP)) {
-                    jsonParser.nextToken();
-                    final List<List<Object>> instructions = deserializationContext.readValue(jsonParser, listListJavaType);
-                    for (final List<Object> instruction : instructions) {
-                        bytecode.addStep((String) instruction.get(0), Arrays.copyOfRange(instruction.toArray(), 1, instruction.size()));
+
+                    while (jsonParser.nextToken() != JsonToken.END_ARRAY) {
+
+                        // there should be a list now and the first item in the list is always string and is the step name
+                        // skip the start array
+                        jsonParser.nextToken();
+                        
+                        final String stepName = jsonParser.getText();
+
+                        // iterate through the rest of the list for arguments until it gets to the end
+                        final List<Object> arguments = new ArrayList<>();
+                        while (jsonParser.nextToken() != JsonToken.END_ARRAY) {
+                            // we don't know the types here, so let the deserializer figure that business out
+                            arguments.add(deserializationContext.readValue(jsonParser, Object.class));
+                        }
+
+                        // if it's not a "source" then it must be a "step"
+                        if (current.equals(GraphSONTokens.SOURCE))
+                            bytecode.addSource(stepName, arguments.toArray());
+                        else
+                            bytecode.addStep(stepName, arguments.toArray());
                     }
                 }
             }


[33/50] tinkerpop git commit: Merge branch 'TINKERPOP-1950' into tp32

Posted by fl...@apache.org.
Merge branch 'TINKERPOP-1950' into tp32


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

Branch: refs/heads/TINKERPOP-1836
Commit: 0d6f8fcb208f850155fddbc1f140c1890a6757d7
Parents: f4dbaff cd20298
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 08:21:46 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 08:21:46 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../process/traversal/TraversalStrategies.java  | 36 +++++++++++++++-----
 2 files changed, 29 insertions(+), 8 deletions(-)
----------------------------------------------------------------------



[05/50] tinkerpop git commit: Use straight quotes in csproj file CTR

Posted by fl...@apache.org.
Use straight quotes in csproj file CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 1592c4f3ec1e0753324c944f16840b57b189d13a
Parents: 20bc886
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 6 20:07:41 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 6 20:07:41 2018 -0400

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


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1592c4f3/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 897ec94..b95bae6 100644
--- a/gremlin-dotnet/glv/Gremlin.Net.csproj.template
+++ b/gremlin-dotnet/glv/Gremlin.Net.csproj.template
@@ -32,9 +32,9 @@ limitations under the License.
     <Authors>Apache TinkerPop</Authors>
     <Description>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.
+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 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.
+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.
 
 Please see the reference documentation at Apache TinkerPop for more information on usage.
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1592c4f3/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 44a3a10..fc75b83 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj
@@ -32,9 +32,9 @@ limitations under the License.
     <Authors>Apache TinkerPop</Authors>
     <Description>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.
+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 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.
+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.
 
 Please see the reference documentation at Apache TinkerPop for more information on usage.
 


[10/50] tinkerpop git commit: CTR: fixed minor typos in docs

Posted by fl...@apache.org.
CTR: fixed minor typos in docs


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

Branch: refs/heads/TINKERPOP-1836
Commit: 42bacafbf4189cfb89ad53f1b38fee9ea21dd64e
Parents: df7870a
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Mon Apr 9 11:32:38 2018 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Mon Apr 9 11:32:38 2018 -0700

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


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/42bacafb/docs/src/reference/the-traversal.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/reference/the-traversal.asciidoc b/docs/src/reference/the-traversal.asciidoc
index 69bc8a3..86fb324 100644
--- a/docs/src/reference/the-traversal.asciidoc
+++ b/docs/src/reference/the-traversal.asciidoc
@@ -2342,7 +2342,7 @@ g.V().out().as('a').out().as('b').out().as('c').
     by('name')
 ----
 
-By using the `from()` and `to()` modulators traversers can ensure that only certain sections of the path are are acyclic.
+By using the `from()` and `to()` modulators traversers can ensure that only certain sections of the path are acyclic.
 
 [gremlin-groovy]
 ----
@@ -3043,7 +3043,7 @@ of the Gremlin traversal machine's compiler. There are 5 categories of strategie
  * There is an application-level feature that can be embedded into the traversal logic (*decoration*).
  * There is a more efficient way to express the traversal at the TinkerPop3 level (*optimization*).
  * There is a more efficient way to express the traversal at the graph system/language/driver level (*provider optimization*).
- * There are are some final adjustments/cleanups/analyses required before executing the traversal (*finalization*).
+ * There are some final adjustments/cleanups/analyses required before executing the traversal (*finalization*).
  * There are certain traversals that are not legal for the application or traversal engine (*verification*).
 
 NOTE: The <<explain-step,`explain()`>>-step shows the user how each registered strategy mutates the traversal.


[06/50] tinkerpop git commit: TINKERPOP-1934 Bumped httpclient to 4.5.5

Posted by fl...@apache.org.
TINKERPOP-1934 Bumped httpclient to 4.5.5

Removed httpcore NOTICE entry as this more recent version does not contain that designation in its NOTICE file.


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

Branch: refs/heads/TINKERPOP-1836
Commit: f9e0cf50eed22c6e6e54650b073a98e5314888e9
Parents: 1592c4f
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Thu Apr 5 08:11:59 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 6 21:28:53 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                     | 5 +++++
 gremlin-console/pom.xml                | 1 -
 gremlin-console/src/main/static/NOTICE | 6 ------
 gremlin-server/pom.xml                 | 1 -
 pom.xml                                | 5 +++++
 5 files changed, 10 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9e0cf50/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 2b48a6f..0f3a71a 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -20,6 +20,11 @@ limitations under the License.
 
 image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/images/nine-inch-gremlins.png[width=185]
 
+[[release-3-2-9]]
+=== TinkerPop 3.2.9 (Release Date: NOT OFFICIALLY RELEASED YET)
+
+* Bumped to httpclient 4.5.5.
+
 [[release-3-2-8]]
 === TinkerPop 3.2.8 (Release Date: April 2, 2018)
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9e0cf50/gremlin-console/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-console/pom.xml b/gremlin-console/pom.xml
index 46b4fcc..51ad5ca 100644
--- a/gremlin-console/pom.xml
+++ b/gremlin-console/pom.xml
@@ -39,7 +39,6 @@ limitations under the License.
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpclient</artifactId>
-            <version>4.5.1</version>
         </dependency>
         <dependency>
             <groupId>commons-cli</groupId>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9e0cf50/gremlin-console/src/main/static/NOTICE
----------------------------------------------------------------------
diff --git a/gremlin-console/src/main/static/NOTICE b/gremlin-console/src/main/static/NOTICE
index 91e622f..4931f7e 100644
--- a/gremlin-console/src/main/static/NOTICE
+++ b/gremlin-console/src/main/static/NOTICE
@@ -29,12 +29,6 @@ Licensed under the Creative Commons Attribution Licence v2.5
 http://creativecommons.org/licenses/by/2.5/
 
 ------------------------------------------------------------------------
-Apache Http Components Core 4.4.3 (AL ASF)
-------------------------------------------------------------------------
-This project contains annotations derived from JCIP-ANNOTATIONS
-Copyright (c) 2005 Brian Goetz and Tim Peierls. See http://www.jcip.net
-
-------------------------------------------------------------------------
 Apache Ivy 2.3.0 (AL ASF)
 ------------------------------------------------------------------------
 Portions of Ivy were originally developed by

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9e0cf50/gremlin-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-server/pom.xml b/gremlin-server/pom.xml
index 1bc5920..dd04865 100644
--- a/gremlin-server/pom.xml
+++ b/gremlin-server/pom.xml
@@ -96,7 +96,6 @@ limitations under the License.
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpclient</artifactId>
-            <version>4.3.5</version>
             <scope>test</scope>
         </dependency>
         <dependency>

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9e0cf50/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index e99dd5a..5ac2d88 100644
--- a/pom.xml
+++ b/pom.xml
@@ -652,6 +652,11 @@ limitations under the License.
                 </exclusions>
             </dependency>
             <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpclient</artifactId>
+                <version>4.5.5</version>
+            </dependency>
+            <dependency>
                 <groupId>log4j</groupId>
                 <artifactId>log4j</artifactId>
                 <version>1.2.17</version>


[25/50] tinkerpop git commit: TINKERPOP-1953 Bump to Groovy 2.4.15

Posted by fl...@apache.org.
TINKERPOP-1953 Bump to Groovy 2.4.15

Fixes a bug in Lambda construction for remote traversals


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

Branch: refs/heads/TINKERPOP-1836
Commit: 40dad27880189ffb8c901a8d7bdcf3d505325693
Parents: 682f298
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Apr 23 09:33:25 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Apr 23 09:33:25 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../upgrade/release-3.2.x-incubating.asciidoc   | 24 ++++++++++++++++++++
 .../jsr223/GremlinGroovyScriptEngineTest.java   |  9 ++++++++
 pom.xml                                         |  2 +-
 4 files changed, 35 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/40dad278/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 51c9f68..797072d 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -24,6 +24,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 === TinkerPop 3.2.9 (Release Date: NOT OFFICIALLY RELEASED YET)
 
 * Bumped to httpclient 4.5.5.
+* Bumped to Groovy 2.4.15 - fixes bug with `Lambda` construction.
 * Improved performance of GraphSON deserialization of `Bytecode`.
 
 [[release-3-2-8]]

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/40dad278/docs/src/upgrade/release-3.2.x-incubating.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/upgrade/release-3.2.x-incubating.asciidoc b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
index b57a657..51b85d3 100644
--- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc
+++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
@@ -21,6 +21,30 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 
 *Nine Inch Gremlins*
 
+== TinkerPop 3.2.9
+
+*Release Date: NOT OFFICIALLY RELEASED YET*
+
+Please see the link:https://github.com/apache/tinkerpop/blob/3.2.8/CHANGELOG.asciidoc#release-3-2-9[changelog] for a complete list of all the modifications that are part of this release.
+
+=== Upgrading for Users
+
+==== Lambda Construction
+
+It was realized quite shortly after release of 3.2.8 that there was a bug in construction of `Lambda` instances:
+
+[source,text]
+----
+gremlin> org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }")
+(class: org/apache/tinkerpop/gremlin/util/function/Lambda$function, method: callStatic signature: (Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;) Illegal type in constant pool
+Type ':help' or ':h' for help.
+Display stack trace? [yN]n
+----
+
+The problem was related to a bug in Groovy 2.4.14 and was fixed in 2.4.15.
+
+See: link:https://issues.apache.org/jira/browse/TINKERPOP-1953[TINKERPOP-1953]
+
 == TinkerPop 3.2.8
 
 *Release Date: April 2, 2018*

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/40dad278/gremlin-groovy/src/test/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineTest.java
----------------------------------------------------------------------
diff --git a/gremlin-groovy/src/test/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineTest.java b/gremlin-groovy/src/test/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineTest.java
index 0606721..54e997f 100644
--- a/gremlin-groovy/src/test/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineTest.java
+++ b/gremlin-groovy/src/test/java/org/apache/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngineTest.java
@@ -26,6 +26,7 @@ import org.apache.tinkerpop.gremlin.groovy.CompilerCustomizerProvider;
 import org.apache.tinkerpop.gremlin.groovy.NoImportCustomizerProvider;
 import org.apache.tinkerpop.gremlin.groovy.jsr223.customizer.InterpreterModeCustomizerProvider;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
+import org.apache.tinkerpop.gremlin.util.function.Lambda;
 import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
 import org.javatuples.Pair;
 import org.junit.Test;
@@ -603,4 +604,12 @@ public class GremlinGroovyScriptEngineTest {
         assertEquals(1, engine.getClassCacheLoadFailureCount());
         assertEquals(100, engine.getClassCacheLoadSuccessCount());
     }
+
+    @Test
+    public void shouldEvalForLambda() throws Exception {
+        // https://issues.apache.org/jira/browse/TINKERPOP-1953
+        final GremlinGroovyScriptEngine engine = new GremlinGroovyScriptEngine();
+        final Lambda l = (Lambda) engine.eval(" org.apache.tinkerpop.gremlin.util.function.Lambda.function(\"{ it.get() }\")");
+        assertEquals("{ it.get() }", l.getLambdaScript());
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/40dad278/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 5ac2d88..4ec1ab4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -141,7 +141,7 @@ limitations under the License.
         <commons.configuration.version>1.10</commons.configuration.version>
         <commons.lang.version>2.6</commons.lang.version>
         <commons.lang3.version>3.3.1</commons.lang3.version>
-        <groovy.version>2.4.14</groovy.version>
+        <groovy.version>2.4.15</groovy.version>
         <hadoop.version>2.7.2</hadoop.version>
         <java.tuples.version>1.2</java.tuples.version>
         <javadoc-plugin.version>2.10.4</javadoc-plugin.version>


[19/50] tinkerpop git commit: Make ResponseExceptions constructor public CTR

Posted by fl...@apache.org.
Make ResponseExceptions constructor public CTR

This makes the ResponseException easier to use in tests for users of
Gremlin.Net.


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

Branch: refs/heads/TINKERPOP-1836
Commit: 25913023561f76043e11ff0813b2c8ece57274b5
Parents: b99c56a
Author: Florian Hockmann <fh...@florian-hockmann.de>
Authored: Thu Apr 19 16:08:03 2018 +0200
Committer: Florian Hockmann <fh...@florian-hockmann.de>
Committed: Thu Apr 19 16:08:03 2018 +0200

----------------------------------------------------------------------
 .../src/Gremlin.Net/Driver/Exceptions/ResponseException.cs     | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/25913023/gremlin-dotnet/src/Gremlin.Net/Driver/Exceptions/ResponseException.cs
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net/Driver/Exceptions/ResponseException.cs b/gremlin-dotnet/src/Gremlin.Net/Driver/Exceptions/ResponseException.cs
index 4706723..8d26106 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Driver/Exceptions/ResponseException.cs
+++ b/gremlin-dotnet/src/Gremlin.Net/Driver/Exceptions/ResponseException.cs
@@ -30,7 +30,11 @@ namespace Gremlin.Net.Driver.Exceptions
     /// </summary>
     public class ResponseException : Exception
     {
-        internal ResponseException(string message) : base(message)
+        /// <summary>
+        ///     Initializes a new instance of the <see cref="ResponseException" /> class.
+        /// </summary>
+        /// <param name="message">The error message string.</param>
+        public ResponseException(string message) : base(message)
         {
         }
     }


[36/50] tinkerpop git commit: Reverted change from 1d9e6dc6d30c5c7d56e4007527365793eb1f223e

Posted by fl...@apache.org.
Reverted change from 1d9e6dc6d30c5c7d56e4007527365793eb1f223e

Not sure why, but the above referenced change seemed to hang various integration tests. CTR


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

Branch: refs/heads/TINKERPOP-1836
Commit: 789e5752d8f6f781272a7c56f0d2b491849d4ca9
Parents: 6096a4c
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Wed Apr 25 18:38:53 2018 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Apr 25 18:38:53 2018 -0400

----------------------------------------------------------------------
 .../process/traversal/TraversalStrategies.java  | 43 +++++++++-----------
 1 file changed, 20 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/789e5752/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
index 37cd1a6..091687a 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalStrategies.java
@@ -203,7 +203,7 @@ public interface TraversalStrategies extends Serializable, Cloneable {
          * Keeps track of {@link GraphComputer} and/or {@link Graph} classes that have been initialized to the
          * classloader so that they do not have to be reflected again.
          */
-        private static Map<Class, Boolean> LOADED = new ConcurrentHashMap<>();
+        private static Set<Class> LOADED = ConcurrentHashMap.newKeySet();
 
         private static final Map<Class<? extends Graph>, TraversalStrategies> GRAPH_CACHE = new HashMap<>();
         private static final Map<Class<? extends GraphComputer>, TraversalStrategies> GRAPH_COMPUTER_CACHE = new HashMap<>();
@@ -249,28 +249,27 @@ public interface TraversalStrategies extends Serializable, Cloneable {
         }
 
         public static TraversalStrategies getStrategies(final Class graphOrGraphComputerClass) {
-            // be sure to load the class so that its static{} traversal strategy registration component is loaded.
-            // this is more important for GraphComputer classes as they are typically not instantiated prior to
-            // strategy usage like Graph classes.
-            LOADED.computeIfAbsent(graphOrGraphComputerClass, unused ->  {
-                final String graphComputerClassName = null != graphOrGraphComputerClass.getDeclaringClass() ?
-                    graphOrGraphComputerClass.getCanonicalName().replace("." + graphOrGraphComputerClass.getSimpleName(), "$" + graphOrGraphComputerClass.getSimpleName()) :
-                    graphOrGraphComputerClass.getCanonicalName();
-
-                try {
+            try {
+                // be sure to load the class so that its static{} traversal strategy registration component is loaded.
+                // this is more important for GraphComputer classes as they are typically not instantiated prior to
+                // strategy usage like Graph classes.
+                if (!LOADED.contains(graphOrGraphComputerClass)) {
+                    final String graphComputerClassName = null != graphOrGraphComputerClass.getDeclaringClass() ?
+                            graphOrGraphComputerClass.getCanonicalName().replace("." + graphOrGraphComputerClass.getSimpleName(), "$" + graphOrGraphComputerClass.getSimpleName()) :
+                            graphOrGraphComputerClass.getCanonicalName();
                     Class.forName(graphComputerClassName);
-                } catch (ClassNotFoundException e) {
-                    throw new IllegalStateException(e.getMessage(), e);
+
+                    // keep track of stuff we already loaded once - stuff in this if/statement isn't cheap and this
+                    // method gets called a lot, basically every time a new traversal gets spun up (that includes
+                    // child traversals. perhaps it is possible to just check the cache keys for this information, but
+                    // it's not clear if this method will be called with something not in the cache and if it is and
+                    // it results in error, then we'd probably not want to deal with this block again anyway
+                    LOADED.add(graphOrGraphComputerClass);
                 }
+            } catch (final ClassNotFoundException e) {
+                throw new IllegalStateException(e.getMessage(), e);
+            }
 
-                // keep track of stuff we already loaded once - stuff in this if/statement isn't cheap and this
-                // method gets called a lot, basically every time a new traversal gets spun up (that includes
-                // child traversals. perhaps it is possible to just check the cache keys for this information, but
-                // it's not clear if this method will be called with something not in the cache and if it is and
-                // it results in error, then we'd probably not want to deal with this block again anyway
-                return true;
-            });
-            
             if (GRAPH_CACHE.containsKey(graphOrGraphComputerClass)) {
                 return GRAPH_CACHE.get(graphOrGraphComputerClass);
             } else if (Graph.class.isAssignableFrom(graphOrGraphComputerClass)) {
@@ -284,6 +283,4 @@ public interface TraversalStrategies extends Serializable, Cloneable {
             }
         }
     }
-
-
-}
+}
\ No newline at end of file


[22/50] tinkerpop git commit: Fix typos in GraphManager and DefaultGraphManager javadoc

Posted by fl...@apache.org.
Fix typos in GraphManager and DefaultGraphManager javadoc


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

Branch: refs/heads/TINKERPOP-1836
Commit: 268423d2d16397ad749082041ea0e17075a3093d
Parents: 682f298
Author: Justin Chu <15...@users.noreply.github.com>
Authored: Fri Apr 20 22:47:31 2018 -0400
Committer: Justin Chu <15...@users.noreply.github.com>
Committed: Fri Apr 20 22:52:30 2018 -0400

----------------------------------------------------------------------
 .../java/org/apache/tinkerpop/gremlin/server/GraphManager.java   | 4 ++--
 .../tinkerpop/gremlin/server/util/DefaultGraphManager.java       | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/268423d2/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java
index 8e3198f..bcb4a8e 100644
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java
@@ -69,8 +69,8 @@ public interface GraphManager {
      *
      * @return a {@link Map} where the key is the name of the {@link TraversalSource} and the value is the
      *         {@link TraversalSource} itself
-     * @deprecated  As of release 3.2.5, replaced by a combination of {@link #getTraversalSource(String)} ()} and
-     * {@link #getTraversalSource(String)} (String)} - note that the expectation is this method return an immutable
+     * @deprecated  As of release 3.2.5, replaced by a combination of {@link #getTraversalSourceNames()} and
+     * {@link #getTraversalSource(String)} - note that the expectation is this method return an immutable
      * {@code Map} which was not the expectation prior to 3.2.5.
      */
     @Deprecated

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/268423d2/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java
index 5e4a355..9b5668f 100644
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/util/DefaultGraphManager.java
@@ -96,8 +96,8 @@ public final class DefaultGraphManager implements GraphManager {
      *
      * @return a {@code Map} where the key is the name of the {@link TraversalSource} and the value is the
      * {@link TraversalSource} itself
-     * @deprecated As of release 3.2.5, replaced by a combination of {@link #getTraversalSource(String)} ()} and
-     * {@link #getTraversalSource(String)} (String)}
+     * @deprecated As of release 3.2.5, replaced by a combination of {@link #getTraversalSourceNames()} and
+     * {@link #getTraversalSource(String)}
      */
     @Deprecated
     public final Map<String, TraversalSource> getTraversalSources() {