[tinkerpop] Git Push Summary
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST [deleted] ba522ab4e
[tinkerpop] Git Push Summary
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST-tp33 [deleted] bccff988d
[08/10] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/9bd4d7fe Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/9bd4d7fe Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/9bd4d7fe Branch: refs/heads/master Commit: 9bd4d7fedf943f5f09d5e5a0f77e27efbc559e2e Parents: 2d493fb 5cf1cba Author: Florian HockmannAuthored: Tue Mar 13 23:50:48 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:50:48 2018 +0100 -- CHANGELOG.asciidoc | 1 + .../upgrade/release-3.2.x-incubating.asciidoc | 12 +++ gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 19 files changed, 323 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/docs/src/upgrade/release-3.2.x-incubating.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/glv/generate.groovy -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/__.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/GraphSONWriter.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs -- diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs index da455a8,fd226bf..56984d9 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs @@@ -43,13 -43,6 +43,9 @@@ namespace Gremlin.Net.IntegrationTest.G case IgnoreReason.LambdaNotSupported: reasonSuffix = " because lambdas are not supported in Gremlin.NET (TINKERPOP-1854)"; break; +case IgnoreReason.TraversalTDeserializationNotSupported: +reasonSuffix = " as deserialization of g:T on GraphSON3 is not supported"; +break; - case IgnoreReason.PNotCreatedCorrectlyByGherkinRunner: - reasonSuffix = - " because the Gherkin runner can't call methods in TraversalPredicate class (TINKERPOP-1919)"; - break; case IgnoreReason.PWithinWrapsArgumentsInArray: reasonSuffix = " because P.Within() arguments are incorrectly wrapped in an array (TINKERPOP-1920)"; break; @@@ -63,17 -56,7 +59,16 @@@ public enum IgnoreReason { +/// +/// Lambdas are not supported on Gremlin.NET yet. +/// LambdaNotSupported, + +/// +/// Deserialization of g:T on GraphSON3 is
[04/10] tinkerpop git commit: Merge branch 'tp33' of https://git-wip-us.apache.org/repos/asf/tinkerpop into tp33
Merge branch 'tp33' of https://git-wip-us.apache.org/repos/asf/tinkerpop into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2d493fb3 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2d493fb3 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2d493fb3 Branch: refs/heads/master Commit: 2d493fb3cfb6dd89f84327677cd949cd8969c782 Parents: bccff98 c22ab90 Author: Daniel KuppitzAuthored: Tue Mar 13 14:56:27 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 14:56:27 2018 -0700 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 + gremlin-dotnet/glv/Enum.template| 9 +++- gremlin-dotnet/glv/generate.groovy | 41 +++ .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +++- .../Process/Traversal/Cardinality.cs| 13 +++-- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 +++-- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 +++-- .../Process/Traversal/EnumWrapper.cs| 52 .../Process/Traversal/GraphSONVersion.cs| 13 +++-- .../Process/Traversal/GraphTraversal.cs | 43 +--- .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/GryoVersion.cs| 11 +++-- .../Process/Traversal/IBiFunction.cs| 33 + .../Process/Traversal/IBinaryOperator.cs| 34 + .../Process/Traversal/IComparator.cs| 32 .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 + .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 ++- .../src/Gremlin.Net/Process/Traversal/Order.cs | 13 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 15 -- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 -- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 26 +- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Gherkin/GherkinTestRunner.cs| 1 + .../TraversalEnumParameter.cs | 5 +- 32 files changed, 455 insertions(+), 119 deletions(-) --
[06/10] tinkerpop git commit: TINKERPOP-1919 Add note about merged P classes to upgrade docs
TINKERPOP-1919 Add note about merged P classes to upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/5cf1cba5 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/5cf1cba5 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/5cf1cba5 Branch: refs/heads/master Commit: 5cf1cba59cfb6818b371b1d605dac3b8d190157a Parents: 359b08c Author: Florian HockmannAuthored: Tue Mar 13 23:39:21 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:39:21 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 12 1 file changed, 12 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5cf1cba5/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 0cb8ddc..0848843 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -53,6 +53,18 @@ However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` i See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + Gremlin.Net: Traversal Predicate Classes Merged + +Gremlin.Net used two classes for traversal predicates: `P` and `TraversalPredicate`. Steps that worked with traversal +predicates expected objects of type `TraversalPredicate`, but they were constructed from the `P` class +(e.g. `P.Gt(1)` returned a `TraversalPredicate`). Merging these two classes into the `P` class should avoid unnecessary +confusion. Most users should not notice this change as predicates can still be constructed exactly as before, e.g., +`P.Gt(1).And(P.Lt(3))` still works without any modifications. +Only users that implemented their own predicates and used `TraversalPredicate` as the base class need to change their +implementation to now use `P` as the new base class. + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1919[TINKERPOP-1919] + === Upgrading for Providers Graph System Providers
[02/10] tinkerpop git commit: TINKERPOP-1919 Merge classes P and TraversalPredicate
TINKERPOP-1919 Merge classes P and TraversalPredicate There is no good reason to keep those two classes separate anymore and having P as the type for step parameters is probably easier to understand for users than TraversalPredicate. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/359b08cc Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/359b08cc Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/359b08cc Branch: refs/heads/tp32 Commit: 359b08cc79ed89cab1fbc4e2b0b69b94a4e9cd06 Parents: 5049339 Author: Florian HockmannAuthored: Mon Mar 12 21:16:18 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 22:12:31 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 18 files changed, 311 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 58c4dd0..97b90a5 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -43,6 +43,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima * Fixed a bug in Gremlin Console which prevented handling of `gremlin.sh` flags that had an "=" between the flag and its arguments. * Fixed bug where `SparkMessenger` was not applying the `edgeFunction` from `MessageScope`. * 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. [[release-3-2-7]] === TinkerPop 3.2.7 (Release Date: December 17, 2017) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/gremlin-dotnet/glv/P.template -- diff --git a/gremlin-dotnet/glv/P.template b/gremlin-dotnet/glv/P.template index f337127..ad037c1 100644 --- a/gremlin-dotnet/glv/P.template +++ b/gremlin-dotnet/glv/P.template @@ -30,20 +30,72 @@ namespace Gremlin.Net.Process.Traversal /// A is a predicate of the form Funcobject, bool. /// That is, given some object, return true or false. /// -public class P +public class P : IPredicate { +/// +/// Initializes a new instance of the class. +/// +/// The name of the predicate. +/// The value of the predicate. +/// An optional other predicate that is used as an argument for this predicate. +public P(string operatorName, dynamic value, P other = null) +{ +OperatorName = operatorName; +Value = value; +Other = other; +} + +/// +/// Gets the name of the predicate. +/// +public string OperatorName { get; } + +/// +/// Gets the value of the predicate. +/// +public dynamic Value { get; } + +/// +/// Gets an optional other predicate that is used as an argument for this predicate. +/// +public P Other { get; } + +/// +/// Returns a composed predicate that represents a logical AND of this predicate and another. +/// +/// A predicate that will be logically-ANDed with this predicate. +/// The composed predicate. +public P And(P otherPredicate) +{ +return new P("and", this, otherPredicate); +} + +/// +/// Returns a composed predicate that represents a logical OR of this predicate and another. +///
[09/10] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/9bd4d7fe Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/9bd4d7fe Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/9bd4d7fe Branch: refs/heads/tp33 Commit: 9bd4d7fedf943f5f09d5e5a0f77e27efbc559e2e Parents: 2d493fb 5cf1cba Author: Florian HockmannAuthored: Tue Mar 13 23:50:48 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:50:48 2018 +0100 -- CHANGELOG.asciidoc | 1 + .../upgrade/release-3.2.x-incubating.asciidoc | 12 +++ gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 19 files changed, 323 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/docs/src/upgrade/release-3.2.x-incubating.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/glv/generate.groovy -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/__.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/GraphSONWriter.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9bd4d7fe/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs -- diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs index da455a8,fd226bf..56984d9 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs @@@ -43,13 -43,6 +43,9 @@@ namespace Gremlin.Net.IntegrationTest.G case IgnoreReason.LambdaNotSupported: reasonSuffix = " because lambdas are not supported in Gremlin.NET (TINKERPOP-1854)"; break; +case IgnoreReason.TraversalTDeserializationNotSupported: +reasonSuffix = " as deserialization of g:T on GraphSON3 is not supported"; +break; - case IgnoreReason.PNotCreatedCorrectlyByGherkinRunner: - reasonSuffix = - " because the Gherkin runner can't call methods in TraversalPredicate class (TINKERPOP-1919)"; - break; case IgnoreReason.PWithinWrapsArgumentsInArray: reasonSuffix = " because P.Within() arguments are incorrectly wrapped in an array (TINKERPOP-1920)"; break; @@@ -63,17 -56,7 +59,16 @@@ public enum IgnoreReason { +/// +/// Lambdas are not supported on Gremlin.NET yet. +/// LambdaNotSupported, + +/// +/// Deserialization of g:T on GraphSON3 is
[07/10] tinkerpop git commit: TINKERPOP-1919 Add note about merged P classes to upgrade docs
TINKERPOP-1919 Add note about merged P classes to upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/5cf1cba5 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/5cf1cba5 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/5cf1cba5 Branch: refs/heads/tp33 Commit: 5cf1cba59cfb6818b371b1d605dac3b8d190157a Parents: 359b08c Author: Florian HockmannAuthored: Tue Mar 13 23:39:21 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:39:21 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 12 1 file changed, 12 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5cf1cba5/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 0cb8ddc..0848843 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -53,6 +53,18 @@ However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` i See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + Gremlin.Net: Traversal Predicate Classes Merged + +Gremlin.Net used two classes for traversal predicates: `P` and `TraversalPredicate`. Steps that worked with traversal +predicates expected objects of type `TraversalPredicate`, but they were constructed from the `P` class +(e.g. `P.Gt(1)` returned a `TraversalPredicate`). Merging these two classes into the `P` class should avoid unnecessary +confusion. Most users should not notice this change as predicates can still be constructed exactly as before, e.g., +`P.Gt(1).And(P.Lt(3))` still works without any modifications. +Only users that implemented their own predicates and used `TraversalPredicate` as the base class need to change their +implementation to now use `P` as the new base class. + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1919[TINKERPOP-1919] + === Upgrading for Providers Graph System Providers
[05/10] tinkerpop git commit: TINKERPOP-1919 Add note about merged P classes to upgrade docs
TINKERPOP-1919 Add note about merged P classes to upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/5cf1cba5 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/5cf1cba5 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/5cf1cba5 Branch: refs/heads/tp32 Commit: 5cf1cba59cfb6818b371b1d605dac3b8d190157a Parents: 359b08c Author: Florian HockmannAuthored: Tue Mar 13 23:39:21 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:39:21 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 12 1 file changed, 12 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5cf1cba5/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 0cb8ddc..0848843 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -53,6 +53,18 @@ However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` i See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + Gremlin.Net: Traversal Predicate Classes Merged + +Gremlin.Net used two classes for traversal predicates: `P` and `TraversalPredicate`. Steps that worked with traversal +predicates expected objects of type `TraversalPredicate`, but they were constructed from the `P` class +(e.g. `P.Gt(1)` returned a `TraversalPredicate`). Merging these two classes into the `P` class should avoid unnecessary +confusion. Most users should not notice this change as predicates can still be constructed exactly as before, e.g., +`P.Gt(1).And(P.Lt(3))` still works without any modifications. +Only users that implemented their own predicates and used `TraversalPredicate` as the base class need to change their +implementation to now use `P` as the new base class. + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1919[TINKERPOP-1919] + === Upgrading for Providers Graph System Providers
[10/10] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/3e00a640 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/3e00a640 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/3e00a640 Branch: refs/heads/master Commit: 3e00a64026eb865d90988beddb20b9103a8e83aa Parents: 5ae66ed 9bd4d7f Author: Florian HockmannAuthored: Tue Mar 13 23:51:28 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:51:28 2018 +0100 -- CHANGELOG.asciidoc | 1 + .../upgrade/release-3.2.x-incubating.asciidoc | 12 +++ gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 19 files changed, 323 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3e00a640/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3e00a640/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs --
[03/10] tinkerpop git commit: TINKERPOP-1919 Merge classes P and TraversalPredicate
TINKERPOP-1919 Merge classes P and TraversalPredicate There is no good reason to keep those two classes separate anymore and having P as the type for step parameters is probably easier to understand for users than TraversalPredicate. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/359b08cc Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/359b08cc Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/359b08cc Branch: refs/heads/tp33 Commit: 359b08cc79ed89cab1fbc4e2b0b69b94a4e9cd06 Parents: 5049339 Author: Florian HockmannAuthored: Mon Mar 12 21:16:18 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 22:12:31 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 18 files changed, 311 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 58c4dd0..97b90a5 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -43,6 +43,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima * Fixed a bug in Gremlin Console which prevented handling of `gremlin.sh` flags that had an "=" between the flag and its arguments. * Fixed bug where `SparkMessenger` was not applying the `edgeFunction` from `MessageScope`. * 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. [[release-3-2-7]] === TinkerPop 3.2.7 (Release Date: December 17, 2017) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/gremlin-dotnet/glv/P.template -- diff --git a/gremlin-dotnet/glv/P.template b/gremlin-dotnet/glv/P.template index f337127..ad037c1 100644 --- a/gremlin-dotnet/glv/P.template +++ b/gremlin-dotnet/glv/P.template @@ -30,20 +30,72 @@ namespace Gremlin.Net.Process.Traversal /// A is a predicate of the form Funcobject, bool. /// That is, given some object, return true or false. /// -public class P +public class P : IPredicate { +/// +/// Initializes a new instance of the class. +/// +/// The name of the predicate. +/// The value of the predicate. +/// An optional other predicate that is used as an argument for this predicate. +public P(string operatorName, dynamic value, P other = null) +{ +OperatorName = operatorName; +Value = value; +Other = other; +} + +/// +/// Gets the name of the predicate. +/// +public string OperatorName { get; } + +/// +/// Gets the value of the predicate. +/// +public dynamic Value { get; } + +/// +/// Gets an optional other predicate that is used as an argument for this predicate. +/// +public P Other { get; } + +/// +/// Returns a composed predicate that represents a logical AND of this predicate and another. +/// +/// A predicate that will be logically-ANDed with this predicate. +/// The composed predicate. +public P And(P otherPredicate) +{ +return new P("and", this, otherPredicate); +} + +/// +/// Returns a composed predicate that represents a logical OR of this predicate and another. +///
[01/10] tinkerpop git commit: TINKERPOP-1919 Merge classes P and TraversalPredicate
Repository: tinkerpop Updated Branches: refs/heads/master 5ae66ed94 -> 3e00a6402 refs/heads/tp32 504933975 -> 5cf1cba59 refs/heads/tp33 2d493fb3c -> 9bd4d7fed TINKERPOP-1919 Merge classes P and TraversalPredicate There is no good reason to keep those two classes separate anymore and having P as the type for step parameters is probably easier to understand for users than TraversalPredicate. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/359b08cc Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/359b08cc Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/359b08cc Branch: refs/heads/master Commit: 359b08cc79ed89cab1fbc4e2b0b69b94a4e9cd06 Parents: 5049339 Author: Florian HockmannAuthored: Mon Mar 12 21:16:18 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 22:12:31 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 18 files changed, 311 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 58c4dd0..97b90a5 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -43,6 +43,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima * Fixed a bug in Gremlin Console which prevented handling of `gremlin.sh` flags that had an "=" between the flag and its arguments. * Fixed bug where `SparkMessenger` was not applying the `edgeFunction` from `MessageScope`. * 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. [[release-3-2-7]] === TinkerPop 3.2.7 (Release Date: December 17, 2017) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/gremlin-dotnet/glv/P.template -- diff --git a/gremlin-dotnet/glv/P.template b/gremlin-dotnet/glv/P.template index f337127..ad037c1 100644 --- a/gremlin-dotnet/glv/P.template +++ b/gremlin-dotnet/glv/P.template @@ -30,20 +30,72 @@ namespace Gremlin.Net.Process.Traversal /// A is a predicate of the form Funcobject, bool. /// That is, given some object, return true or false. /// -public class P +public class P : IPredicate { +/// +/// Initializes a new instance of the class. +/// +/// The name of the predicate. +/// The value of the predicate. +/// An optional other predicate that is used as an argument for this predicate. +public P(string operatorName, dynamic value, P other = null) +{ +OperatorName = operatorName; +Value = value; +Other = other; +} + +/// +/// Gets the name of the predicate. +/// +public string OperatorName { get; } + +/// +/// Gets the value of the predicate. +/// +public dynamic Value { get; } + +/// +/// Gets an optional other predicate that is used as an argument for this predicate. +/// +public P Other { get; } + +/// +/// Returns a composed predicate that represents a logical AND of this predicate and another. +/// +/// A predicate that will be logically-ANDed with this predicate. +/// The composed predicate. +public P And(P otherPredicate) +{ +return new P("and",
[6/8] tinkerpop git commit: Merge branch 'TINKERPOP-1901' into tp32
Merge branch 'TINKERPOP-1901' into tp32 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/50493397 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/50493397 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/50493397 Branch: refs/heads/TINKERPOP-1919 Commit: 504933975d2fbbeb61aa724f38aa8b7c888f63ea Parents: f02f94f df989dc Author: Florian HockmannAuthored: Tue Mar 13 19:27:58 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:27:58 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 +++ gremlin-dotnet/glv/Enum.template| 9 +- gremlin-dotnet/glv/generate.groovy | 41 - .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GraphTraversal.cs | 45 ++ .../Process/Traversal/GraphTraversalSource.cs | 14 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/IBiFunction.cs| 33 +++ .../Process/Traversal/IBinaryOperator.cs| 34 .../Process/Traversal/IComparator.cs| 32 +++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 +++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 +++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 +++ .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 +++--- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 32 files changed, 457 insertions(+), 213 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/50493397/CHANGELOG.asciidoc --
[8/8] tinkerpop git commit: TINKERPOP-1919 Add note about merged P classes to upgrade docs
TINKERPOP-1919 Add note about merged P classes to upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/5cf1cba5 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/5cf1cba5 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/5cf1cba5 Branch: refs/heads/TINKERPOP-1919 Commit: 5cf1cba59cfb6818b371b1d605dac3b8d190157a Parents: 359b08c Author: Florian HockmannAuthored: Tue Mar 13 23:39:21 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 23:39:21 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 12 1 file changed, 12 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5cf1cba5/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 0cb8ddc..0848843 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -53,6 +53,18 @@ However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` i See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + Gremlin.Net: Traversal Predicate Classes Merged + +Gremlin.Net used two classes for traversal predicates: `P` and `TraversalPredicate`. Steps that worked with traversal +predicates expected objects of type `TraversalPredicate`, but they were constructed from the `P` class +(e.g. `P.Gt(1)` returned a `TraversalPredicate`). Merging these two classes into the `P` class should avoid unnecessary +confusion. Most users should not notice this change as predicates can still be constructed exactly as before, e.g., +`P.Gt(1).And(P.Lt(3))` still works without any modifications. +Only users that implemented their own predicates and used `TraversalPredicate` as the base class need to change their +implementation to now use `P` as the new base class. + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1919[TINKERPOP-1919] + === Upgrading for Providers Graph System Providers
[2/8] tinkerpop git commit: TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net
TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net These interfaces simply represent their Java counterparts which allows to use them as arguments in Gremlin steps. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d012171e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d012171e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d012171e Branch: refs/heads/TINKERPOP-1919 Commit: d012171e97d5d87108eef3d0257a8b859f77de04 Parents: dcf3da3 Author: Florian HockmannAuthored: Sat Mar 10 19:21:46 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:21:46 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/Enum.template| 2 +- gremlin-dotnet/glv/generate.groovy | 20 ++--- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../src/Gremlin.Net/Process/Traversal/Column.cs | 2 +- .../Process/Traversal/GraphTraversal.cs | 45 .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/IBiFunction.cs| 33 ++ .../Process/Traversal/IBinaryOperator.cs| 34 +++ .../Process/Traversal/IComparator.cs| 32 ++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 ++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 ++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 ++ .../Gremlin.Net/Process/Traversal/Operator.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/Order.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/T.cs | 2 +- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 ++-- 18 files changed, 270 insertions(+), 48 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 341a392..568097c 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -23,6 +23,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima [[release-3-2-8]] === TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET) +* Enums are now represented as classes in Gremlin.Net which allows to use them as arguments in more steps. * Bumped to Groovy 2.4.14. * Added `checkAdjacentVertices` option to `SubgraphStrategy`. * Modified `GremlinDslProcessor` so that it generated the `getAnonymousTraversalClass()` method to return the DSL version of `__`. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index fd09312..0be23c7 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,7 +26,7 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public class <%= enumClass.simpleName %> : EnumWrapper +public class <%= enumClass.simpleName %> : <%= implementedTypes %> { private <%= enumClass.simpleName %>(string enumValue) : base("<%= enumClass.simpleName %>", enumValue) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 7894793..6d89b2f 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -48,17 +48,17 @@ def toCSharpTypeMap = ["Long": "long", "TraversalMetrics": "E2", "Traversal": "ITraversal", "Traversal[]": "ITraversal[]", - "Predicate": "TraversalPredicate", + "Predicate": "IPredicate", "P": "TraversalPredicate", "TraversalStrategy": "ITraversalStrategy", "TraversalStrategy[]": "ITraversalStrategy[]", - "Function": "object", - "BiFunction": "object", + "Function": "IFunction", + "BiFunction": "IBiFunction", "UnaryOperator": "object", - "BinaryOperator": "object", - "Consumer": "object", + "BinaryOperator": "IBinaryOperator", + "Consumer": "IConsumer", "Supplier": "object", -
[7/8] tinkerpop git commit: TINKERPOP-1919 Merge classes P and TraversalPredicate
TINKERPOP-1919 Merge classes P and TraversalPredicate There is no good reason to keep those two classes separate anymore and having P as the type for step parameters is probably easier to understand for users than TraversalPredicate. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/359b08cc Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/359b08cc Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/359b08cc Branch: refs/heads/TINKERPOP-1919 Commit: 359b08cc79ed89cab1fbc4e2b0b69b94a4e9cd06 Parents: 5049339 Author: Florian HockmannAuthored: Mon Mar 12 21:16:18 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 22:12:31 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/P.template | 62 ++- gremlin-dotnet/glv/generate.groovy | 2 +- .../Process/Traversal/GraphTraversal.cs | 20 ++-- .../src/Gremlin.Net/Process/Traversal/P.cs | 106 ++- .../Process/Traversal/TraversalPredicate.cs | 85 --- .../src/Gremlin.Net/Process/Traversal/__.cs | 20 ++-- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Structure/IO/GraphSON/PSerializer.cs| 45 .../IO/GraphSON/TraversalPredicateSerializer.cs | 45 .../Gherkin/GherkinTestRunner.cs| 18 +--- .../Gherkin/IgnoreException.cs | 5 - .../Gherkin/TraversalEvaluation/PParameter.cs | 97 + .../TraversalEvaluationTests.cs | 2 +- .../TraversalEvaluation/TraversalParser.cs | 2 +- .../TraversalPredicateParameter.cs | 93 .../GraphSON/BytecodeGraphSONSerializerTests.cs | 2 +- .../IO/GraphSON/GraphSONWriterTests.cs | 4 +- 18 files changed, 311 insertions(+), 300 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 58c4dd0..97b90a5 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -43,6 +43,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima * Fixed a bug in Gremlin Console which prevented handling of `gremlin.sh` flags that had an "=" between the flag and its arguments. * Fixed bug where `SparkMessenger` was not applying the `edgeFunction` from `MessageScope`. * 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. [[release-3-2-7]] === TinkerPop 3.2.7 (Release Date: December 17, 2017) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/359b08cc/gremlin-dotnet/glv/P.template -- diff --git a/gremlin-dotnet/glv/P.template b/gremlin-dotnet/glv/P.template index f337127..ad037c1 100644 --- a/gremlin-dotnet/glv/P.template +++ b/gremlin-dotnet/glv/P.template @@ -30,20 +30,72 @@ namespace Gremlin.Net.Process.Traversal /// A is a predicate of the form Funcobject, bool. /// That is, given some object, return true or false. /// -public class P +public class P : IPredicate { +/// +/// Initializes a new instance of the class. +/// +/// The name of the predicate. +/// The value of the predicate. +/// An optional other predicate that is used as an argument for this predicate. +public P(string operatorName, dynamic value, P other = null) +{ +OperatorName = operatorName; +Value = value; +Other = other; +} + +/// +/// Gets the name of the predicate. +/// +public string OperatorName { get; } + +/// +/// Gets the value of the predicate. +/// +public dynamic Value { get; } + +/// +/// Gets an optional other predicate that is used as an argument for this predicate. +/// +public P Other { get; } + +/// +/// Returns a composed predicate that represents a logical AND of this predicate and another. +/// +/// A predicate that will be logically-ANDed with this predicate. +/// The composed predicate. +public P And(P otherPredicate) +{ +return new P("and", this, otherPredicate); +} + +/// +/// Returns a composed predicate that represents a logical OR of this predicate and another. +
[5/8] tinkerpop git commit: TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs
TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/df989dc4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/df989dc4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/df989dc4 Branch: refs/heads/TINKERPOP-1919 Commit: df989dc40ab7cf834b6ed275c453c4bb220315bf Parents: 4d5768b Author: Florian HockmannAuthored: Tue Mar 13 19:26:00 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:26:00 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 11 +++ 1 file changed, 11 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df989dc4/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 7d2a80c..0cb8ddc 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -42,6 +42,17 @@ by clients that might mysteriously disappear without properly closing their conn See: link:https://issues.apache.org/jira/browse/TINKERPOP-1726[TINKERPOP-1726] + Gremlin.Net Tokens Improved + +The various Gremlin tokens (e.g. `T`, `Order`, `Operator`, etc.) that were implemented as Enums before in Gremlin.Net +are now implemented as classes. This mainly allows them to implement interfaces which their Java counterparts already +did. `T` for example now implements the new interface `IFunction` which simply mirrors its Java counterpart `Function`. +Steps that expect objects for those interfaces as arguments now explicitly use the interface. Before, they used just +`object` as the type for these arguments which made it hard for users to know what kind of `object` they can use. +However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` is still `T.Id`). + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + === Upgrading for Providers Graph System Providers
[3/8] tinkerpop git commit: TINKERPOP-1901 Use spaces to indent enum values
TINKERPOP-1901 Use spaces to indent enum values Previously, the first enum value used spaces, whereas all following values used tabs. Now, spaces are used consistently. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4d5768b0 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4d5768b0 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4d5768b0 Branch: refs/heads/TINKERPOP-1919 Commit: 4d5768b0aa53e06e95738f3faf904d3290a91794 Parents: d012171 Author: Florian HockmannAuthored: Mon Mar 12 16:37:30 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 16:37:30 2018 +0100 -- gremlin-dotnet/glv/Enum.template| 4 ++-- gremlin-dotnet/glv/generate.groovy | 2 +- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../Process/Traversal/Cardinality.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Column.cs | 6 ++--- .../Gremlin.Net/Process/Traversal/Direction.cs | 8 +++ .../Process/Traversal/GraphSONVersion.cs| 6 ++--- .../Process/Traversal/GryoVersion.cs| 2 +- .../Gremlin.Net/Process/Traversal/Operator.cs | 24 ++-- .../src/Gremlin.Net/Process/Traversal/Order.cs | 16 ++--- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Scope.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/T.cs | 10 14 files changed, 54 insertions(+), 54 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 0be23c7..1f11076 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -32,8 +32,8 @@ namespace Gremlin.Net.Process.Traversal : base("<%= enumClass.simpleName %>", enumValue) { } - -<%= constants %> +<% constants.each { constant -> %> +<%= constant %><%}%> } #pragma warning restore 1591 http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 6d89b2f..0404307 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -354,7 +354,7 @@ def createEnum = { enumClass -> collect { value -> def csharpName = toCSharpName(enumClass, value.name()) return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" -}.join("\n\t\t")] +}] def enumTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Enum.template")).make(b) def enumFile = new File("${projectBaseDir}/src/Gremlin.Net/Process/Traversal/" + enumClass.getSimpleName() + ".cs") http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs index 0ae4fa2..df6d349 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs @@ -32,7 +32,7 @@ namespace Gremlin.Net.Process.Traversal : base("Barrier", enumValue) { } - + public static Barrier NormSack => new Barrier("normSack"); } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs index f158153..d2cbcf2 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs @@ -32,10 +32,10 @@ namespace Gremlin.Net.Process.Traversal : base("Cardinality", enumValue) { } - -public static Cardinality List => new Cardinality("list"); - public static Cardinality Set => new Cardinality("set"); - public static Cardinality Single => new
[4/8] tinkerpop git commit: Minor code refactoring in JavaTranslator CTR
Minor code refactoring in JavaTranslator CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f02f94fd Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f02f94fd Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f02f94fd Branch: refs/heads/TINKERPOP-1919 Commit: f02f94fd067799e5f532086a762c35abd3a11a93 Parents: b25b976 Author: Stephen MalletteAuthored: Tue Mar 13 08:40:10 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:10 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f02f94fd/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java index df12055..3e0e6da 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java @@ -190,7 +190,7 @@ public final class JavaTranslator returnType, final String methodName, final Object... arguments) { // populate method cache for fast access to methods in subsequent calls final Map methodCache = GLOBAL_METHOD_CACHE.getOrDefault(delegate.getClass(), new HashMap<>()); if (methodCache.isEmpty()) buildMethodCache(delegate, methodCache); @@ -222,7 +222,7 @@ public final class JavaTranslator list = methodCache.get(method.getName()); -if (null == list) { -list = new ArrayList<>(); -methodCache.put(method.getName(), list); -} +final List list = methodCache.computeIfAbsent(method.getName(), k -> new ArrayList<>()); list.add(method); } }
[1/2] tinkerpop git commit: CTR: Implemented `Traversal::invalidateTraverserRequirements`.
Repository: tinkerpop Updated Branches: refs/heads/tp33 c22ab901e -> 2d493fb3c CTR: Implemented `Traversal::invalidateTraverserRequirements`. This was necessary to allow traversal-mutating strategies (e.g. `SubgraphStrategy`) to invalidate the already cached traverser requirements. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/bccff988 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/bccff988 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/bccff988 Branch: refs/heads/tp33 Commit: bccff988dc713b9acdee9e9a3858e2c10b7de163 Parents: f9f3d4f Author: Daniel KuppitzAuthored: Tue Mar 13 11:33:06 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 13:17:43 2018 -0700 -- .../remote/traversal/AbstractRemoteTraversal.java| 5 + .../tinkerpop/gremlin/process/traversal/Traversal.java | 7 +++ .../traversal/lambda/AbstractLambdaTraversal.java| 7 +++ .../traversal/strategy/decoration/SubgraphStrategy.java | 11 ++- .../gremlin/process/traversal/util/DefaultTraversal.java | 5 + 5 files changed, 34 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java index 0c6a7aa..480d1fc 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java @@ -88,6 +88,11 @@ public abstract class AbstractRemoteTraversal implements RemoteTraversalextends Iterator, Serializable, Cloneable, A public Set getTraverserRequirements(); /** + * Invalidates the set of all {@link TraverserRequirement}s for this traversal. + */ +public default void invalidateTraverserRequirements() { + +}; + +/** * Call the {@link Step#reset} method on every step in the traversal. */ public default void reset() { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java index 8f910a0..84e1896 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java @@ -184,6 +184,13 @@ public abstract class AbstractLambdaTraversalimplements Traversal.Adminhttp://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java
[3/3] tinkerpop git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tinkerpop
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tinkerpop Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/5ae66ed9 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/5ae66ed9 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/5ae66ed9 Branch: refs/heads/master Commit: 5ae66ed941f6b8d8fc25fd235f55ea519b72d79f Parents: 764824f 345d81a Author: Daniel KuppitzAuthored: Tue Mar 13 14:56:06 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 14:56:06 2018 -0700 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 + gremlin-dotnet/glv/Enum.template| 9 +++- gremlin-dotnet/glv/generate.groovy | 41 +++ .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +++- .../Process/Traversal/Cardinality.cs| 13 +++-- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 +++-- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 +++-- .../Process/Traversal/EnumWrapper.cs| 52 .../Process/Traversal/GraphSONVersion.cs| 13 +++-- .../Process/Traversal/GraphTraversal.cs | 43 +--- .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/GryoVersion.cs| 11 +++-- .../Process/Traversal/IBiFunction.cs| 33 + .../Process/Traversal/IBinaryOperator.cs| 34 + .../Process/Traversal/IComparator.cs| 32 .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 + .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 ++- .../src/Gremlin.Net/Process/Traversal/Order.cs | 13 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 15 -- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 -- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 26 +- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Gherkin/GherkinTestRunner.cs| 1 + .../TraversalEnumParameter.cs | 5 +- 32 files changed, 455 insertions(+), 119 deletions(-) --
[2/3] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/764824fe Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/764824fe Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/764824fe Branch: refs/heads/master Commit: 764824fe85bb03aab1a240fc4003d8733f37414e Parents: 6e0ccd8 bccff98 Author: Daniel KuppitzAuthored: Tue Mar 13 14:55:53 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 14:55:53 2018 -0700 -- .../remote/traversal/AbstractRemoteTraversal.java| 5 + .../tinkerpop/gremlin/process/traversal/Traversal.java | 7 +++ .../traversal/lambda/AbstractLambdaTraversal.java| 7 +++ .../traversal/strategy/decoration/SubgraphStrategy.java | 11 ++- .../gremlin/process/traversal/util/DefaultTraversal.java | 5 + 5 files changed, 34 insertions(+), 1 deletion(-) --
[2/2] tinkerpop git commit: Merge branch 'tp33' of https://git-wip-us.apache.org/repos/asf/tinkerpop into tp33
Merge branch 'tp33' of https://git-wip-us.apache.org/repos/asf/tinkerpop into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2d493fb3 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2d493fb3 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2d493fb3 Branch: refs/heads/tp33 Commit: 2d493fb3cfb6dd89f84327677cd949cd8969c782 Parents: bccff98 c22ab90 Author: Daniel KuppitzAuthored: Tue Mar 13 14:56:27 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 14:56:27 2018 -0700 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 + gremlin-dotnet/glv/Enum.template| 9 +++- gremlin-dotnet/glv/generate.groovy | 41 +++ .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +++- .../Process/Traversal/Cardinality.cs| 13 +++-- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 +++-- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 +++-- .../Process/Traversal/EnumWrapper.cs| 52 .../Process/Traversal/GraphSONVersion.cs| 13 +++-- .../Process/Traversal/GraphTraversal.cs | 43 +--- .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/GryoVersion.cs| 11 +++-- .../Process/Traversal/IBiFunction.cs| 33 + .../Process/Traversal/IBinaryOperator.cs| 34 + .../Process/Traversal/IComparator.cs| 32 .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 + .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 ++- .../src/Gremlin.Net/Process/Traversal/Order.cs | 13 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 15 -- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 -- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 26 +- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Gherkin/GherkinTestRunner.cs| 1 + .../TraversalEnumParameter.cs | 5 +- 32 files changed, 455 insertions(+), 119 deletions(-) --
[1/3] tinkerpop git commit: CTR: Implemented `Traversal::invalidateTraverserRequirements`.
Repository: tinkerpop Updated Branches: refs/heads/master 345d81a8f -> 5ae66ed94 CTR: Implemented `Traversal::invalidateTraverserRequirements`. This was necessary to allow traversal-mutating strategies (e.g. `SubgraphStrategy`) to invalidate the already cached traverser requirements. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/bccff988 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/bccff988 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/bccff988 Branch: refs/heads/master Commit: bccff988dc713b9acdee9e9a3858e2c10b7de163 Parents: f9f3d4f Author: Daniel KuppitzAuthored: Tue Mar 13 11:33:06 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 13:17:43 2018 -0700 -- .../remote/traversal/AbstractRemoteTraversal.java| 5 + .../tinkerpop/gremlin/process/traversal/Traversal.java | 7 +++ .../traversal/lambda/AbstractLambdaTraversal.java| 7 +++ .../traversal/strategy/decoration/SubgraphStrategy.java | 11 ++- .../gremlin/process/traversal/util/DefaultTraversal.java | 5 + 5 files changed, 34 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java index 0c6a7aa..480d1fc 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java @@ -88,6 +88,11 @@ public abstract class AbstractRemoteTraversal implements RemoteTraversalextends Iterator, Serializable, Cloneable, A public Set getTraverserRequirements(); /** + * Invalidates the set of all {@link TraverserRequirement}s for this traversal. + */ +public default void invalidateTraverserRequirements() { + +}; + +/** * Call the {@link Step#reset} method on every step in the traversal. */ public default void reset() { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java index 8f910a0..84e1896 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java @@ -184,6 +184,13 @@ public abstract class AbstractLambdaTraversalimplements Traversal.Adminhttp://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java
[14/20] tinkerpop git commit: Merge branch 'TINKERPOP-1901' into tp32
Merge branch 'TINKERPOP-1901' into tp32 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/50493397 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/50493397 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/50493397 Branch: refs/heads/tp33 Commit: 504933975d2fbbeb61aa724f38aa8b7c888f63ea Parents: f02f94f df989dc Author: Florian HockmannAuthored: Tue Mar 13 19:27:58 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:27:58 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 +++ gremlin-dotnet/glv/Enum.template| 9 +- gremlin-dotnet/glv/generate.groovy | 41 - .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GraphTraversal.cs | 45 ++ .../Process/Traversal/GraphTraversalSource.cs | 14 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/IBiFunction.cs| 33 +++ .../Process/Traversal/IBinaryOperator.cs| 34 .../Process/Traversal/IComparator.cs| 32 +++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 +++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 +++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 +++ .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 +++--- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 32 files changed, 457 insertions(+), 213 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/50493397/CHANGELOG.asciidoc --
[16/20] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/8cf71aea Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/8cf71aea Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/8cf71aea Branch: refs/heads/tp33 Commit: 8cf71aea2439e76653894c779ba7f871a6c44248 Parents: f9f3d4f 5049339 Author: Florian HockmannAuthored: Tue Mar 13 21:02:58 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 21:02:58 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 + gremlin-dotnet/glv/Enum.template| 9 +++- gremlin-dotnet/glv/generate.groovy | 41 +++ .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +++- .../Process/Traversal/Cardinality.cs| 13 +++-- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 +++-- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 +++-- .../Process/Traversal/EnumWrapper.cs| 52 .../Process/Traversal/GraphSONVersion.cs| 13 +++-- .../Process/Traversal/GraphTraversal.cs | 43 +--- .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/GryoVersion.cs| 11 +++-- .../Process/Traversal/IBiFunction.cs| 33 + .../Process/Traversal/IBinaryOperator.cs| 34 + .../Process/Traversal/IComparator.cs| 32 .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 + .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 ++- .../src/Gremlin.Net/Process/Traversal/Order.cs | 13 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 15 -- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 -- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 26 +- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 31 files changed, 454 insertions(+), 119 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/docs/src/reference/gremlin-variants.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/docs/src/upgrade/release-3.2.x-incubating.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/glv/generate.groovy -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs -- diff --cc gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs index 31187ac,0c92607..e55be6b --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs @@@ -26,11 -26,15 +26,16 @@@ namespace Gremlin.Net.Process.Traversa { #pragma warning disable 1591 - public enum GraphSONVersion + public class GraphSONVersion : EnumWrapper { - V1_0, - V2_0, - V3_0 + private GraphSONVersion(string enumValue) + : base("GraphSONVersion", enumValue) + { + } + + public static GraphSONVersion V1_0 => new GraphSONVersion("V1_0"); -public static GraphSONVersion V2_0 => new GraphSONVersion("V2_0"); ++public static GraphSONVersion V2_0 => new GraphSONVersion("V2_0"); ++public static GraphSONVersion V3_0 => new GraphSONVersion("V3_0"); } #pragma warning restore 1591 http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversalSource.cs
[17/20] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/8cf71aea Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/8cf71aea Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/8cf71aea Branch: refs/heads/master Commit: 8cf71aea2439e76653894c779ba7f871a6c44248 Parents: f9f3d4f 5049339 Author: Florian HockmannAuthored: Tue Mar 13 21:02:58 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 21:02:58 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 + gremlin-dotnet/glv/Enum.template| 9 +++- gremlin-dotnet/glv/generate.groovy | 41 +++ .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +++- .../Process/Traversal/Cardinality.cs| 13 +++-- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 +++-- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 +++-- .../Process/Traversal/EnumWrapper.cs| 52 .../Process/Traversal/GraphSONVersion.cs| 13 +++-- .../Process/Traversal/GraphTraversal.cs | 43 +--- .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/GryoVersion.cs| 11 +++-- .../Process/Traversal/IBiFunction.cs| 33 + .../Process/Traversal/IBinaryOperator.cs| 34 + .../Process/Traversal/IComparator.cs| 32 .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 + .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 ++- .../src/Gremlin.Net/Process/Traversal/Order.cs | 13 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 15 -- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 -- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 26 +- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 31 files changed, 454 insertions(+), 119 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/docs/src/reference/gremlin-variants.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/docs/src/upgrade/release-3.2.x-incubating.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/glv/generate.groovy -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs -- diff --cc gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs index 31187ac,0c92607..e55be6b --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphSONVersion.cs @@@ -26,11 -26,15 +26,16 @@@ namespace Gremlin.Net.Process.Traversa { #pragma warning disable 1591 - public enum GraphSONVersion + public class GraphSONVersion : EnumWrapper { - V1_0, - V2_0, - V3_0 + private GraphSONVersion(string enumValue) + : base("GraphSONVersion", enumValue) + { + } + + public static GraphSONVersion V1_0 => new GraphSONVersion("V1_0"); -public static GraphSONVersion V2_0 => new GraphSONVersion("V2_0"); ++public static GraphSONVersion V2_0 => new GraphSONVersion("V2_0"); ++public static GraphSONVersion V3_0 => new GraphSONVersion("V3_0"); } #pragma warning restore 1591 http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8cf71aea/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversalSource.cs
[11/20] tinkerpop git commit: TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs
TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/df989dc4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/df989dc4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/df989dc4 Branch: refs/heads/tp32 Commit: df989dc40ab7cf834b6ed275c453c4bb220315bf Parents: 4d5768b Author: Florian HockmannAuthored: Tue Mar 13 19:26:00 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:26:00 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 11 +++ 1 file changed, 11 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df989dc4/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 7d2a80c..0cb8ddc 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -42,6 +42,17 @@ by clients that might mysteriously disappear without properly closing their conn See: link:https://issues.apache.org/jira/browse/TINKERPOP-1726[TINKERPOP-1726] + Gremlin.Net Tokens Improved + +The various Gremlin tokens (e.g. `T`, `Order`, `Operator`, etc.) that were implemented as Enums before in Gremlin.Net +are now implemented as classes. This mainly allows them to implement interfaces which their Java counterparts already +did. `T` for example now implements the new interface `IFunction` which simply mirrors its Java counterpart `Function`. +Steps that expect objects for those interfaces as arguments now explicitly use the interface. Before, they used just +`object` as the type for these arguments which made it hard for users to know what kind of `object` they can use. +However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` is still `T.Id`). + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + === Upgrading for Providers Graph System Providers
[19/20] tinkerpop git commit: Ignore one more test due to T deserialization problem CTR
Ignore one more test due to T deserialization problem CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/c22ab901 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/c22ab901 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/c22ab901 Branch: refs/heads/tp33 Commit: c22ab901ea391116cf906b7af37379429a1336af Parents: 8cf71ae Author: Florian HockmannAuthored: Tue Mar 13 21:27:51 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 21:27:51 2018 +0100 -- .../test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c22ab901/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index bc82043..28723c9 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@ -42,6 +42,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin { { "g_V_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 { "g_V_valueMapXtrue_name_ageX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 +{ "g_V_hasLabelXpersonX_filterXoutEXcreatedXX_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 {"g_V_hasIdXwithinXemptyXX_count", IgnoreReason.PWithinWrapsArgumentsInArray}, {"g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.PWithinWrapsArgumentsInArray}, {
[13/20] tinkerpop git commit: Merge branch 'TINKERPOP-1901' into tp32
Merge branch 'TINKERPOP-1901' into tp32 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/50493397 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/50493397 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/50493397 Branch: refs/heads/tp32 Commit: 504933975d2fbbeb61aa724f38aa8b7c888f63ea Parents: f02f94f df989dc Author: Florian HockmannAuthored: Tue Mar 13 19:27:58 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:27:58 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 +++ gremlin-dotnet/glv/Enum.template| 9 +- gremlin-dotnet/glv/generate.groovy | 41 - .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GraphTraversal.cs | 45 ++ .../Process/Traversal/GraphTraversalSource.cs | 14 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/IBiFunction.cs| 33 +++ .../Process/Traversal/IBinaryOperator.cs| 34 .../Process/Traversal/IComparator.cs| 32 +++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 +++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 +++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 +++ .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 +++--- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 32 files changed, 457 insertions(+), 213 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/50493397/CHANGELOG.asciidoc --
[18/20] tinkerpop git commit: Ignore one more test due to T deserialization problem CTR
Ignore one more test due to T deserialization problem CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/c22ab901 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/c22ab901 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/c22ab901 Branch: refs/heads/master Commit: c22ab901ea391116cf906b7af37379429a1336af Parents: 8cf71ae Author: Florian HockmannAuthored: Tue Mar 13 21:27:51 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 21:27:51 2018 +0100 -- .../test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c22ab901/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index bc82043..28723c9 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@ -42,6 +42,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin { { "g_V_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 { "g_V_valueMapXtrue_name_ageX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 +{ "g_V_hasLabelXpersonX_filterXoutEXcreatedXX_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 {"g_V_hasIdXwithinXemptyXX_count", IgnoreReason.PWithinWrapsArgumentsInArray}, {"g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.PWithinWrapsArgumentsInArray}, {
[12/20] tinkerpop git commit: TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs
TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/df989dc4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/df989dc4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/df989dc4 Branch: refs/heads/tp33 Commit: df989dc40ab7cf834b6ed275c453c4bb220315bf Parents: 4d5768b Author: Florian HockmannAuthored: Tue Mar 13 19:26:00 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:26:00 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 11 +++ 1 file changed, 11 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df989dc4/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 7d2a80c..0cb8ddc 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -42,6 +42,17 @@ by clients that might mysteriously disappear without properly closing their conn See: link:https://issues.apache.org/jira/browse/TINKERPOP-1726[TINKERPOP-1726] + Gremlin.Net Tokens Improved + +The various Gremlin tokens (e.g. `T`, `Order`, `Operator`, etc.) that were implemented as Enums before in Gremlin.Net +are now implemented as classes. This mainly allows them to implement interfaces which their Java counterparts already +did. `T` for example now implements the new interface `IFunction` which simply mirrors its Java counterpart `Function`. +Steps that expect objects for those interfaces as arguments now explicitly use the interface. Before, they used just +`object` as the type for these arguments which made it hard for users to know what kind of `object` they can use. +However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` is still `T.Id`). + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + === Upgrading for Providers Graph System Providers
[03/20] tinkerpop git commit: TINKERPOP-1901 Transformed Gremlin.Net enums into classes
TINKERPOP-1901 Transformed Gremlin.Net enums into classes Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/dcf3da39 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/dcf3da39 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/dcf3da39 Branch: refs/heads/tp33 Commit: dcf3da3917a9626d432ef26089bb05c6a15158ed Parents: ab66ed3 Author: Florian HockmannAuthored: Sat Mar 10 19:17:15 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:17:15 2018 +0100 -- docs/src/reference/gremlin-variants.asciidoc| 2 +- gremlin-dotnet/glv/Enum.template| 7 +- gremlin-dotnet/glv/generate.groovy | 21 + .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 20 files changed, 181 insertions(+), 170 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/docs/src/reference/gremlin-variants.asciidoc -- diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc index f06fe02..ace8119 100644 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@ -362,7 +362,7 @@ terminal/action methods off of `ITraversal`. === Static Enums and Methods -Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are represented in Gremlin.Net as Enums. +Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are represented in Gremlin.Net as classes. These can be used analogously to how they are used in Gremlin-Java. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 1fddab1..fd09312 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,8 +26,13 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public enum <%= enumClass.simpleName %> +public class <%= enumClass.simpleName %> : EnumWrapper { +private <%= enumClass.simpleName %>(string enumValue) +: base("<%= enumClass.simpleName %>", enumValue) +{ +} + <%= constants %> } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 12cfa88..7894793 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -339,36 +339,23 @@ def toCSharpName = { enumClass, itemName -> return itemName.substring(0, 1).toUpperCase() + itemName.substring(1) } -def createEnum = { enumClass, csharpToJava -> +def createEnum = { enumClass -> def b = ["enumClass": enumClass, "constants": enumClass.getEnumConstants(). sort { a, b -> a.name() <=> b.name() }. collect { value -> def csharpName = toCSharpName(enumClass, value.name()) -csharpToJava.put(enumClass.simpleName + "." + csharpName, value.name()) -return csharpName -}.join(",\n\t\t")] +return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" +}.join("\n\t\t")] def enumTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Enum.template")).make(b) def enumFile = new
[08/20] tinkerpop git commit: TINKERPOP-1901 Use spaces to indent enum values
TINKERPOP-1901 Use spaces to indent enum values Previously, the first enum value used spaces, whereas all following values used tabs. Now, spaces are used consistently. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4d5768b0 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4d5768b0 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4d5768b0 Branch: refs/heads/tp32 Commit: 4d5768b0aa53e06e95738f3faf904d3290a91794 Parents: d012171 Author: Florian HockmannAuthored: Mon Mar 12 16:37:30 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 16:37:30 2018 +0100 -- gremlin-dotnet/glv/Enum.template| 4 ++-- gremlin-dotnet/glv/generate.groovy | 2 +- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../Process/Traversal/Cardinality.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Column.cs | 6 ++--- .../Gremlin.Net/Process/Traversal/Direction.cs | 8 +++ .../Process/Traversal/GraphSONVersion.cs| 6 ++--- .../Process/Traversal/GryoVersion.cs| 2 +- .../Gremlin.Net/Process/Traversal/Operator.cs | 24 ++-- .../src/Gremlin.Net/Process/Traversal/Order.cs | 16 ++--- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Scope.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/T.cs | 10 14 files changed, 54 insertions(+), 54 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 0be23c7..1f11076 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -32,8 +32,8 @@ namespace Gremlin.Net.Process.Traversal : base("<%= enumClass.simpleName %>", enumValue) { } - -<%= constants %> +<% constants.each { constant -> %> +<%= constant %><%}%> } #pragma warning restore 1591 http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 6d89b2f..0404307 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -354,7 +354,7 @@ def createEnum = { enumClass -> collect { value -> def csharpName = toCSharpName(enumClass, value.name()) return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" -}.join("\n\t\t")] +}] def enumTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Enum.template")).make(b) def enumFile = new File("${projectBaseDir}/src/Gremlin.Net/Process/Traversal/" + enumClass.getSimpleName() + ".cs") http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs index 0ae4fa2..df6d349 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs @@ -32,7 +32,7 @@ namespace Gremlin.Net.Process.Traversal : base("Barrier", enumValue) { } - + public static Barrier NormSack => new Barrier("normSack"); } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs index f158153..d2cbcf2 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs @@ -32,10 +32,10 @@ namespace Gremlin.Net.Process.Traversal : base("Cardinality", enumValue) { } - -public static Cardinality List => new Cardinality("list"); - public static Cardinality Set => new Cardinality("set"); - public static Cardinality Single => new Cardinality("single"); +
[10/20] tinkerpop git commit: TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs
TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/df989dc4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/df989dc4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/df989dc4 Branch: refs/heads/master Commit: df989dc40ab7cf834b6ed275c453c4bb220315bf Parents: 4d5768b Author: Florian HockmannAuthored: Tue Mar 13 19:26:00 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:26:00 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 11 +++ 1 file changed, 11 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df989dc4/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 7d2a80c..0cb8ddc 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -42,6 +42,17 @@ by clients that might mysteriously disappear without properly closing their conn See: link:https://issues.apache.org/jira/browse/TINKERPOP-1726[TINKERPOP-1726] + Gremlin.Net Tokens Improved + +The various Gremlin tokens (e.g. `T`, `Order`, `Operator`, etc.) that were implemented as Enums before in Gremlin.Net +are now implemented as classes. This mainly allows them to implement interfaces which their Java counterparts already +did. `T` for example now implements the new interface `IFunction` which simply mirrors its Java counterpart `Function`. +Steps that expect objects for those interfaces as arguments now explicitly use the interface. Before, they used just +`object` as the type for these arguments which made it hard for users to know what kind of `object` they can use. +However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` is still `T.Id`). + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + === Upgrading for Providers Graph System Providers
[07/20] tinkerpop git commit: TINKERPOP-1901 Use spaces to indent enum values
TINKERPOP-1901 Use spaces to indent enum values Previously, the first enum value used spaces, whereas all following values used tabs. Now, spaces are used consistently. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4d5768b0 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4d5768b0 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4d5768b0 Branch: refs/heads/master Commit: 4d5768b0aa53e06e95738f3faf904d3290a91794 Parents: d012171 Author: Florian HockmannAuthored: Mon Mar 12 16:37:30 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 16:37:30 2018 +0100 -- gremlin-dotnet/glv/Enum.template| 4 ++-- gremlin-dotnet/glv/generate.groovy | 2 +- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../Process/Traversal/Cardinality.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Column.cs | 6 ++--- .../Gremlin.Net/Process/Traversal/Direction.cs | 8 +++ .../Process/Traversal/GraphSONVersion.cs| 6 ++--- .../Process/Traversal/GryoVersion.cs| 2 +- .../Gremlin.Net/Process/Traversal/Operator.cs | 24 ++-- .../src/Gremlin.Net/Process/Traversal/Order.cs | 16 ++--- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Scope.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/T.cs | 10 14 files changed, 54 insertions(+), 54 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 0be23c7..1f11076 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -32,8 +32,8 @@ namespace Gremlin.Net.Process.Traversal : base("<%= enumClass.simpleName %>", enumValue) { } - -<%= constants %> +<% constants.each { constant -> %> +<%= constant %><%}%> } #pragma warning restore 1591 http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 6d89b2f..0404307 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -354,7 +354,7 @@ def createEnum = { enumClass -> collect { value -> def csharpName = toCSharpName(enumClass, value.name()) return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" -}.join("\n\t\t")] +}] def enumTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Enum.template")).make(b) def enumFile = new File("${projectBaseDir}/src/Gremlin.Net/Process/Traversal/" + enumClass.getSimpleName() + ".cs") http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs index 0ae4fa2..df6d349 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs @@ -32,7 +32,7 @@ namespace Gremlin.Net.Process.Traversal : base("Barrier", enumValue) { } - + public static Barrier NormSack => new Barrier("normSack"); } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs index f158153..d2cbcf2 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs @@ -32,10 +32,10 @@ namespace Gremlin.Net.Process.Traversal : base("Cardinality", enumValue) { } - -public static Cardinality List => new Cardinality("list"); - public static Cardinality Set => new Cardinality("set"); - public static Cardinality Single => new Cardinality("single"); +
[04/20] tinkerpop git commit: TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net
TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net These interfaces simply represent their Java counterparts which allows to use them as arguments in Gremlin steps. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d012171e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d012171e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d012171e Branch: refs/heads/tp32 Commit: d012171e97d5d87108eef3d0257a8b859f77de04 Parents: dcf3da3 Author: Florian HockmannAuthored: Sat Mar 10 19:21:46 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:21:46 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/Enum.template| 2 +- gremlin-dotnet/glv/generate.groovy | 20 ++--- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../src/Gremlin.Net/Process/Traversal/Column.cs | 2 +- .../Process/Traversal/GraphTraversal.cs | 45 .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/IBiFunction.cs| 33 ++ .../Process/Traversal/IBinaryOperator.cs| 34 +++ .../Process/Traversal/IComparator.cs| 32 ++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 ++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 ++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 ++ .../Gremlin.Net/Process/Traversal/Operator.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/Order.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/T.cs | 2 +- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 ++-- 18 files changed, 270 insertions(+), 48 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 341a392..568097c 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -23,6 +23,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima [[release-3-2-8]] === TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET) +* Enums are now represented as classes in Gremlin.Net which allows to use them as arguments in more steps. * Bumped to Groovy 2.4.14. * Added `checkAdjacentVertices` option to `SubgraphStrategy`. * Modified `GremlinDslProcessor` so that it generated the `getAnonymousTraversalClass()` method to return the DSL version of `__`. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index fd09312..0be23c7 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,7 +26,7 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public class <%= enumClass.simpleName %> : EnumWrapper +public class <%= enumClass.simpleName %> : <%= implementedTypes %> { private <%= enumClass.simpleName %>(string enumValue) : base("<%= enumClass.simpleName %>", enumValue) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 7894793..6d89b2f 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -48,17 +48,17 @@ def toCSharpTypeMap = ["Long": "long", "TraversalMetrics": "E2", "Traversal": "ITraversal", "Traversal[]": "ITraversal[]", - "Predicate": "TraversalPredicate", + "Predicate": "IPredicate", "P": "TraversalPredicate", "TraversalStrategy": "ITraversalStrategy", "TraversalStrategy[]": "ITraversalStrategy[]", - "Function": "object", - "BiFunction": "object", + "Function": "IFunction", + "BiFunction": "IBiFunction", "UnaryOperator": "object", - "BinaryOperator": "object", - "Consumer": "object", + "BinaryOperator": "IBinaryOperator", + "Consumer": "IConsumer", "Supplier": "object", -
[01/20] tinkerpop git commit: TINKERPOP-1901 Transformed Gremlin.Net enums into classes
Repository: tinkerpop Updated Branches: refs/heads/master 6e0ccd836 -> 345d81a8f refs/heads/tp32 f02f94fd0 -> 504933975 refs/heads/tp33 f9f3d4fc8 -> c22ab901e TINKERPOP-1901 Transformed Gremlin.Net enums into classes Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/dcf3da39 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/dcf3da39 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/dcf3da39 Branch: refs/heads/master Commit: dcf3da3917a9626d432ef26089bb05c6a15158ed Parents: ab66ed3 Author: Florian HockmannAuthored: Sat Mar 10 19:17:15 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:17:15 2018 +0100 -- docs/src/reference/gremlin-variants.asciidoc| 2 +- gremlin-dotnet/glv/Enum.template| 7 +- gremlin-dotnet/glv/generate.groovy | 21 + .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 20 files changed, 181 insertions(+), 170 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/docs/src/reference/gremlin-variants.asciidoc -- diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc index f06fe02..ace8119 100644 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@ -362,7 +362,7 @@ terminal/action methods off of `ITraversal`. === Static Enums and Methods -Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are represented in Gremlin.Net as Enums. +Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are represented in Gremlin.Net as classes. These can be used analogously to how they are used in Gremlin-Java. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 1fddab1..fd09312 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,8 +26,13 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public enum <%= enumClass.simpleName %> +public class <%= enumClass.simpleName %> : EnumWrapper { +private <%= enumClass.simpleName %>(string enumValue) +: base("<%= enumClass.simpleName %>", enumValue) +{ +} + <%= constants %> } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 12cfa88..7894793 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -339,36 +339,23 @@ def toCSharpName = { enumClass, itemName -> return itemName.substring(0, 1).toUpperCase() + itemName.substring(1) } -def createEnum = { enumClass, csharpToJava -> +def createEnum = { enumClass -> def b = ["enumClass": enumClass, "constants": enumClass.getEnumConstants(). sort { a, b -> a.name() <=> b.name() }. collect { value -> def csharpName = toCSharpName(enumClass, value.name()) -csharpToJava.put(enumClass.simpleName + "." + csharpName, value.name()) -return csharpName -}.join(",\n\t\t")] +return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" +}.join("\n\t\t")]
[06/20] tinkerpop git commit: TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net
TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net These interfaces simply represent their Java counterparts which allows to use them as arguments in Gremlin steps. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d012171e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d012171e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d012171e Branch: refs/heads/tp33 Commit: d012171e97d5d87108eef3d0257a8b859f77de04 Parents: dcf3da3 Author: Florian HockmannAuthored: Sat Mar 10 19:21:46 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:21:46 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/Enum.template| 2 +- gremlin-dotnet/glv/generate.groovy | 20 ++--- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../src/Gremlin.Net/Process/Traversal/Column.cs | 2 +- .../Process/Traversal/GraphTraversal.cs | 45 .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/IBiFunction.cs| 33 ++ .../Process/Traversal/IBinaryOperator.cs| 34 +++ .../Process/Traversal/IComparator.cs| 32 ++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 ++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 ++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 ++ .../Gremlin.Net/Process/Traversal/Operator.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/Order.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/T.cs | 2 +- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 ++-- 18 files changed, 270 insertions(+), 48 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 341a392..568097c 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -23,6 +23,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima [[release-3-2-8]] === TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET) +* Enums are now represented as classes in Gremlin.Net which allows to use them as arguments in more steps. * Bumped to Groovy 2.4.14. * Added `checkAdjacentVertices` option to `SubgraphStrategy`. * Modified `GremlinDslProcessor` so that it generated the `getAnonymousTraversalClass()` method to return the DSL version of `__`. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index fd09312..0be23c7 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,7 +26,7 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public class <%= enumClass.simpleName %> : EnumWrapper +public class <%= enumClass.simpleName %> : <%= implementedTypes %> { private <%= enumClass.simpleName %>(string enumValue) : base("<%= enumClass.simpleName %>", enumValue) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 7894793..6d89b2f 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -48,17 +48,17 @@ def toCSharpTypeMap = ["Long": "long", "TraversalMetrics": "E2", "Traversal": "ITraversal", "Traversal[]": "ITraversal[]", - "Predicate": "TraversalPredicate", + "Predicate": "IPredicate", "P": "TraversalPredicate", "TraversalStrategy": "ITraversalStrategy", "TraversalStrategy[]": "ITraversalStrategy[]", - "Function": "object", - "BiFunction": "object", + "Function": "IFunction", + "BiFunction": "IBiFunction", "UnaryOperator": "object", - "BinaryOperator": "object", - "Consumer": "object", + "BinaryOperator": "IBinaryOperator", + "Consumer": "IConsumer", "Supplier": "object", -
[20/20] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/345d81a8 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/345d81a8 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/345d81a8 Branch: refs/heads/master Commit: 345d81a8faf65a24a634c89a524075d24c802550 Parents: 6e0ccd8 c22ab90 Author: Florian HockmannAuthored: Tue Mar 13 21:29:31 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 21:29:31 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 + gremlin-dotnet/glv/Enum.template| 9 +++- gremlin-dotnet/glv/generate.groovy | 41 +++ .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +++- .../Process/Traversal/Cardinality.cs| 13 +++-- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 +++-- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 +++-- .../Process/Traversal/EnumWrapper.cs| 52 .../Process/Traversal/GraphSONVersion.cs| 13 +++-- .../Process/Traversal/GraphTraversal.cs | 43 +--- .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/GryoVersion.cs| 11 +++-- .../Process/Traversal/IBiFunction.cs| 33 + .../Process/Traversal/IBinaryOperator.cs| 34 + .../Process/Traversal/IComparator.cs| 32 .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 + .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 ++- .../src/Gremlin.Net/Process/Traversal/Order.cs | 13 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 15 -- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 +++-- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 -- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 26 +- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../Gherkin/GherkinTestRunner.cs| 1 + .../TraversalEnumParameter.cs | 5 +- 32 files changed, 455 insertions(+), 119 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/345d81a8/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/345d81a8/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs --
[09/20] tinkerpop git commit: TINKERPOP-1901 Use spaces to indent enum values
TINKERPOP-1901 Use spaces to indent enum values Previously, the first enum value used spaces, whereas all following values used tabs. Now, spaces are used consistently. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4d5768b0 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4d5768b0 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4d5768b0 Branch: refs/heads/tp33 Commit: 4d5768b0aa53e06e95738f3faf904d3290a91794 Parents: d012171 Author: Florian HockmannAuthored: Mon Mar 12 16:37:30 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 16:37:30 2018 +0100 -- gremlin-dotnet/glv/Enum.template| 4 ++-- gremlin-dotnet/glv/generate.groovy | 2 +- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../Process/Traversal/Cardinality.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Column.cs | 6 ++--- .../Gremlin.Net/Process/Traversal/Direction.cs | 8 +++ .../Process/Traversal/GraphSONVersion.cs| 6 ++--- .../Process/Traversal/GryoVersion.cs| 2 +- .../Gremlin.Net/Process/Traversal/Operator.cs | 24 ++-- .../src/Gremlin.Net/Process/Traversal/Order.cs | 16 ++--- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 8 +++ .../src/Gremlin.Net/Process/Traversal/Scope.cs | 6 ++--- .../src/Gremlin.Net/Process/Traversal/T.cs | 10 14 files changed, 54 insertions(+), 54 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 0be23c7..1f11076 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -32,8 +32,8 @@ namespace Gremlin.Net.Process.Traversal : base("<%= enumClass.simpleName %>", enumValue) { } - -<%= constants %> +<% constants.each { constant -> %> +<%= constant %><%}%> } #pragma warning restore 1591 http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 6d89b2f..0404307 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -354,7 +354,7 @@ def createEnum = { enumClass -> collect { value -> def csharpName = toCSharpName(enumClass, value.name()) return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" -}.join("\n\t\t")] +}] def enumTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Enum.template")).make(b) def enumFile = new File("${projectBaseDir}/src/Gremlin.Net/Process/Traversal/" + enumClass.getSimpleName() + ".cs") http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs index 0ae4fa2..df6d349 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Barrier.cs @@ -32,7 +32,7 @@ namespace Gremlin.Net.Process.Traversal : base("Barrier", enumValue) { } - + public static Barrier NormSack => new Barrier("normSack"); } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4d5768b0/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs index f158153..d2cbcf2 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Cardinality.cs @@ -32,10 +32,10 @@ namespace Gremlin.Net.Process.Traversal : base("Cardinality", enumValue) { } - -public static Cardinality List => new Cardinality("list"); - public static Cardinality Set => new Cardinality("set"); - public static Cardinality Single => new Cardinality("single"); +
[15/20] tinkerpop git commit: Merge branch 'TINKERPOP-1901' into tp32
Merge branch 'TINKERPOP-1901' into tp32 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/50493397 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/50493397 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/50493397 Branch: refs/heads/master Commit: 504933975d2fbbeb61aa724f38aa8b7c888f63ea Parents: f02f94f df989dc Author: Florian HockmannAuthored: Tue Mar 13 19:27:58 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:27:58 2018 +0100 -- CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc| 2 +- .../upgrade/release-3.2.x-incubating.asciidoc | 11 +++ gremlin-dotnet/glv/Enum.template| 9 +- gremlin-dotnet/glv/generate.groovy | 41 - .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GraphTraversal.cs | 45 ++ .../Process/Traversal/GraphTraversalSource.cs | 14 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/IBiFunction.cs| 33 +++ .../Process/Traversal/IBinaryOperator.cs| 34 .../Process/Traversal/IComparator.cs| 32 +++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 +++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 +++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 +++ .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 +++--- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 32 files changed, 457 insertions(+), 213 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/50493397/CHANGELOG.asciidoc --
[05/20] tinkerpop git commit: TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net
TINKERPOP-1901 Add interfaces for tokens in Gremlin.Net These interfaces simply represent their Java counterparts which allows to use them as arguments in Gremlin steps. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d012171e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d012171e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d012171e Branch: refs/heads/master Commit: d012171e97d5d87108eef3d0257a8b859f77de04 Parents: dcf3da3 Author: Florian HockmannAuthored: Sat Mar 10 19:21:46 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:21:46 2018 +0100 -- CHANGELOG.asciidoc | 1 + gremlin-dotnet/glv/Enum.template| 2 +- gremlin-dotnet/glv/generate.groovy | 20 ++--- .../Gremlin.Net/Process/Traversal/Barrier.cs| 2 +- .../src/Gremlin.Net/Process/Traversal/Column.cs | 2 +- .../Process/Traversal/GraphTraversal.cs | 45 .../Process/Traversal/GraphTraversalSource.cs | 14 -- .../Process/Traversal/IBiFunction.cs| 33 ++ .../Process/Traversal/IBinaryOperator.cs| 34 +++ .../Process/Traversal/IComparator.cs| 32 ++ .../Gremlin.Net/Process/Traversal/IConsumer.cs | 33 ++ .../Gremlin.Net/Process/Traversal/IFunction.cs | 32 ++ .../Gremlin.Net/Process/Traversal/IPredicate.cs | 32 ++ .../Gremlin.Net/Process/Traversal/Operator.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/Order.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/T.cs | 2 +- .../Process/Traversal/TraversalPredicate.cs | 2 +- .../src/Gremlin.Net/Process/Traversal/__.cs | 28 ++-- 18 files changed, 270 insertions(+), 48 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 341a392..568097c 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -23,6 +23,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima [[release-3-2-8]] === TinkerPop 3.2.8 (Release Date: NOT OFFICIALLY RELEASED YET) +* Enums are now represented as classes in Gremlin.Net which allows to use them as arguments in more steps. * Bumped to Groovy 2.4.14. * Added `checkAdjacentVertices` option to `SubgraphStrategy`. * Modified `GremlinDslProcessor` so that it generated the `getAnonymousTraversalClass()` method to return the DSL version of `__`. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index fd09312..0be23c7 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,7 +26,7 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public class <%= enumClass.simpleName %> : EnumWrapper +public class <%= enumClass.simpleName %> : <%= implementedTypes %> { private <%= enumClass.simpleName %>(string enumValue) : base("<%= enumClass.simpleName %>", enumValue) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d012171e/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 7894793..6d89b2f 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -48,17 +48,17 @@ def toCSharpTypeMap = ["Long": "long", "TraversalMetrics": "E2", "Traversal": "ITraversal", "Traversal[]": "ITraversal[]", - "Predicate": "TraversalPredicate", + "Predicate": "IPredicate", "P": "TraversalPredicate", "TraversalStrategy": "ITraversalStrategy", "TraversalStrategy[]": "ITraversalStrategy[]", - "Function": "object", - "BiFunction": "object", + "Function": "IFunction", + "BiFunction": "IBiFunction", "UnaryOperator": "object", - "BinaryOperator": "object", - "Consumer": "object", + "BinaryOperator": "IBinaryOperator", + "Consumer": "IConsumer", "Supplier": "object", -
[02/20] tinkerpop git commit: TINKERPOP-1901 Transformed Gremlin.Net enums into classes
TINKERPOP-1901 Transformed Gremlin.Net enums into classes Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/dcf3da39 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/dcf3da39 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/dcf3da39 Branch: refs/heads/tp32 Commit: dcf3da3917a9626d432ef26089bb05c6a15158ed Parents: ab66ed3 Author: Florian HockmannAuthored: Sat Mar 10 19:17:15 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 19:17:15 2018 +0100 -- docs/src/reference/gremlin-variants.asciidoc| 2 +- gremlin-dotnet/glv/Enum.template| 7 +- gremlin-dotnet/glv/generate.groovy | 21 + .../Gremlin.Net/Process/Traversal/Barrier.cs| 9 +- .../Process/Traversal/Cardinality.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Column.cs | 11 ++- .../Gremlin.Net/Process/Traversal/Direction.cs | 13 ++- .../Process/Traversal/EnumWrapper.cs| 52 +++ .../Process/Traversal/GraphSONVersion.cs| 11 ++- .../Process/Traversal/GryoVersion.cs| 9 +- .../Process/Traversal/NamingConversions.cs | 91 .../Gremlin.Net/Process/Traversal/Operator.cs | 29 --- .../src/Gremlin.Net/Process/Traversal/Order.cs | 21 +++-- .../src/Gremlin.Net/Process/Traversal/Pick.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/Pop.cs| 13 ++- .../src/Gremlin.Net/Process/Traversal/Scope.cs | 11 ++- .../src/Gremlin.Net/Process/Traversal/T.cs | 15 ++-- .../Structure/IO/GraphSON/EnumSerializer.cs | 5 +- .../Structure/IO/GraphSON/GraphSONWriter.cs | 2 +- .../TraversalEnumParameter.cs | 5 +- 20 files changed, 181 insertions(+), 170 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/docs/src/reference/gremlin-variants.asciidoc -- diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc index f06fe02..ace8119 100644 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@ -362,7 +362,7 @@ terminal/action methods off of `ITraversal`. === Static Enums and Methods -Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are represented in Gremlin.Net as Enums. +Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are represented in Gremlin.Net as classes. These can be used analogously to how they are used in Gremlin-Java. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/gremlin-dotnet/glv/Enum.template -- diff --git a/gremlin-dotnet/glv/Enum.template b/gremlin-dotnet/glv/Enum.template index 1fddab1..fd09312 100644 --- a/gremlin-dotnet/glv/Enum.template +++ b/gremlin-dotnet/glv/Enum.template @@ -26,8 +26,13 @@ namespace Gremlin.Net.Process.Traversal { #pragma warning disable 1591 -public enum <%= enumClass.simpleName %> +public class <%= enumClass.simpleName %> : EnumWrapper { +private <%= enumClass.simpleName %>(string enumValue) +: base("<%= enumClass.simpleName %>", enumValue) +{ +} + <%= constants %> } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/dcf3da39/gremlin-dotnet/glv/generate.groovy -- diff --git a/gremlin-dotnet/glv/generate.groovy b/gremlin-dotnet/glv/generate.groovy index 12cfa88..7894793 100644 --- a/gremlin-dotnet/glv/generate.groovy +++ b/gremlin-dotnet/glv/generate.groovy @@ -339,36 +339,23 @@ def toCSharpName = { enumClass, itemName -> return itemName.substring(0, 1).toUpperCase() + itemName.substring(1) } -def createEnum = { enumClass, csharpToJava -> +def createEnum = { enumClass -> def b = ["enumClass": enumClass, "constants": enumClass.getEnumConstants(). sort { a, b -> a.name() <=> b.name() }. collect { value -> def csharpName = toCSharpName(enumClass, value.name()) -csharpToJava.put(enumClass.simpleName + "." + csharpName, value.name()) -return csharpName -}.join(",\n\t\t")] +return "public static ${enumClass.simpleName} ${csharpName} => new ${enumClass.simpleName}(\"${value.name()}\");" +}.join("\n\t\t")] def enumTemplate = engine.createTemplate(new File("${projectBaseDir}/glv/Enum.template")).make(b) def enumFile = new
tinkerpop git commit: CTR: Implemented `Traversal::invalidateTraverserRequirements`.
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST-tp33 [created] bccff988d CTR: Implemented `Traversal::invalidateTraverserRequirements`. This was necessary to allow traversal-mutating strategies (e.g. `SubgraphStrategy`) to invalidate the already cached traverser requirements. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/bccff988 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/bccff988 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/bccff988 Branch: refs/heads/TRAVIS-TEST-tp33 Commit: bccff988dc713b9acdee9e9a3858e2c10b7de163 Parents: f9f3d4f Author: Daniel KuppitzAuthored: Tue Mar 13 11:33:06 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 13:17:43 2018 -0700 -- .../remote/traversal/AbstractRemoteTraversal.java| 5 + .../tinkerpop/gremlin/process/traversal/Traversal.java | 7 +++ .../traversal/lambda/AbstractLambdaTraversal.java| 7 +++ .../traversal/strategy/decoration/SubgraphStrategy.java | 11 ++- .../gremlin/process/traversal/util/DefaultTraversal.java | 5 + 5 files changed, 34 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java index 0c6a7aa..480d1fc 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java @@ -88,6 +88,11 @@ public abstract class AbstractRemoteTraversal implements RemoteTraversalextends Iterator, Serializable, Cloneable, A public Set getTraverserRequirements(); /** + * Invalidates the set of all {@link TraverserRequirement}s for this traversal. + */ +public default void invalidateTraverserRequirements() { + +}; + +/** * Call the {@link Step#reset} method on every step in the traversal. */ public default void reset() { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java index 8f910a0..84e1896 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java @@ -184,6 +184,13 @@ public abstract class AbstractLambdaTraversalimplements Traversal.Adminhttp://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bccff988/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git
tinkerpop git commit: foo
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST ed2366009 -> 9f289d989 foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/9f289d98 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/9f289d98 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/9f289d98 Branch: refs/heads/TRAVIS-TEST Commit: 9f289d989da7b0a976d93599f51b2102d16b822c Parents: ed23660 Author: Daniel KuppitzAuthored: Tue Mar 13 12:46:12 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 12:46:12 2018 -0700 -- .../remote/traversal/AbstractRemoteTraversal.java | 5 + .../tinkerpop/gremlin/process/traversal/Traversal.java | 7 +-- .../traversal/lambda/AbstractLambdaTraversal.java | 7 +++ .../traversal/strategy/decoration/SubgraphStrategy.java | 12 ++-- .../process/traversal/util/DefaultTraversal.java| 2 +- .../traversal/util/DefaultTraversalStrategies.java | 4 ++-- 6 files changed, 26 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9f289d98/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java index 0c6a7aa..480d1fc 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/remote/traversal/AbstractRemoteTraversal.java @@ -88,6 +88,11 @@ public abstract class AbstractRemoteTraversal implements RemoteTraversalextends Iterator, Serializable, Cloneable, A */ public Set getTraverserRequirements(); -public default void resetTraverserRequirements() { - +/** + * Invalidates the set of all {@link TraverserRequirement}s for this traversal. + */ +public default void invalidateTraverserRequirements() { + }; /** http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9f289d98/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java index 8f910a0..84e1896 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/lambda/AbstractLambdaTraversal.java @@ -184,6 +184,13 @@ public abstract class AbstractLambdaTraversalimplements Traversal.Adminhttp://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9f289d98/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java index e5c783a..7968363 100644 ---
tinkerpop git commit: foo
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST 806a7275b -> ed2366009 foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/ed236600 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/ed236600 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/ed236600 Branch: refs/heads/TRAVIS-TEST Commit: ed2366009054defd19f456911296d09bee2a919b Parents: 806a727 Author: Daniel KuppitzAuthored: Tue Mar 13 12:11:19 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 12:11:19 2018 -0700 -- .../apache/tinkerpop/gremlin/process/traversal/Traversal.java | 4 .../process/traversal/strategy/decoration/SubgraphStrategy.java | 3 +-- .../gremlin/process/traversal/util/DefaultTraversal.java| 5 + 3 files changed, 10 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ed236600/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traversal.java index 220c995..e4a3869 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Traversal.java @@ -425,6 +425,10 @@ public interface Traversal extends Iterator, Serializable, Cloneable, A */ public Set getTraverserRequirements(); +public default void resetTraverserRequirements() { + +}; + /** * Call the {@link Step#reset} method on every step in the traversal. */ http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ed236600/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java index f19e83b..e5c783a 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java @@ -198,8 +198,7 @@ public final class SubgraphStrategy extends AbstractTraversalStrategyhttp://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ed236600/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversal.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversal.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversal.java index 585a82b..f045632 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversal.java @@ -166,6 +166,11 @@ public class DefaultTraversalimplements Traversal.Admin{ } @Override +public void resetTraverserRequirements() { +this.requirements = null; +} + +@Override public List getSteps() { return this.unmodifiableSteps; }
[24/31] tinkerpop git commit: TINKERPOP-1892 Fix ignoring of test scenarios in Gremlin.Net CTR
TINKERPOP-1892 Fix ignoring of test scenarios in Gremlin.Net CTR Without this fix, all following scenarios after one ignored scenario in the same feature weren't parsed at all. This also revealed another failing scenario that needed to be ignored for now. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/b25b9767 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/b25b9767 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/b25b9767 Branch: refs/heads/TRAVIS-TEST Commit: b25b9767547b2956f224cbe6fb55c756d5df612e Parents: d3be13b Author: Florian HockmannAuthored: Mon Mar 12 20:08:21 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 20:08:21 2018 +0100 -- .../Gherkin/GherkinTestRunner.cs | 6 +- .../Gherkin/IgnoreException.cs| 10 +- 2 files changed, 10 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b25b9767/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index 9d0f15d..d906357 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@ -57,6 +57,10 @@ namespace Gremlin.Net.IntegrationTest.Gherkin { "g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_inXcreatedX_asXdX_whereXa_ltXbX_orXgtXcXX_andXneqXdXXX_byXageX_byXweightX_byXinXcreatedX_valuesXageX_minX_selectXa_c_dX", IgnoreReason.PNotCreatedCorrectlyByGherkinRunner +}, +{ + "g_V_asXaX_out_asXbX_whereXandXasXaX_outXknowsX_asXbX__orXasXbX_outXcreatedX_hasXname_rippleX__asXbX_inXknowsX_count_isXnotXeqX0X_selectXa_bX", +IgnoreReason.PNotDeserializationProblem } }; @@ -107,7 +111,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin if (IgnoredScenarios.TryGetValue(scenario.Name, out var reason)) { failedSteps.Add(scenario.Steps.First(), new IgnoreException(reason)); -break; +continue; } StepBlock? currentStep = null; StepDefinition stepDefinition = null; http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b25b9767/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs index c8cb29a..dae2ced 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs @@ -47,12 +47,12 @@ namespace Gremlin.Net.IntegrationTest.Gherkin reasonSuffix = " because the Gherkin runner can't call methods in TraversalPredicate class (TINKERPOP-1919)"; break; -case IgnoreReason.NumericalValuesHaveWrongTypes: -reasonSuffix = " because the asserts currently fail due to type mismatches (TINKERPOP-1918)"; -break; case IgnoreReason.PWithinWrapsArgumentsInArray: reasonSuffix = " because P.Within() arguments are incorrectly wrapped in an array (TINKERPOP-1920)"; break; +case IgnoreReason.PNotDeserializationProblem: +reasonSuffix = " because P.Not() cannot be deserialized by Gremlin Server (TINKERPOP-1922)"; +break; } return $"Scenario ignored" + reasonSuffix; } @@ -62,7 +62,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin { LambdaNotSupported, PNotCreatedCorrectlyByGherkinRunner, -NumericalValuesHaveWrongTypes, -PWithinWrapsArgumentsInArray +PWithinWrapsArgumentsInArray, +PNotDeserializationProblem } } \ No newline at end of file
[22/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/097ad015 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/097ad015 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/097ad015 Branch: refs/heads/TRAVIS-TEST Commit: 097ad015ee0595b290824543ebded7558f623a8c Parents: 7f06a18 d3be13b Author: Stephen MalletteAuthored: Mon Mar 12 12:13:10 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 12:13:10 2018 -0400 -- CHANGELOG.asciidoc | 1 + .../jsr223/JavaTranslatorBenchmark.java | 76 .../gremlin/jsr223/JavaTranslator.java | 58 --- 3 files changed, 125 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/097ad015/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/097ad015/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java -- diff --cc gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java index 0806c6d,df12055..2df8db5 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java @@@ -50,10 -50,13 +50,11 @@@ import java.util.concurrent.ConcurrentH */ public final class JavaTranslator> implements Translator.StepTranslator { -private static final boolean IS_TESTING = Boolean.valueOf(System.getProperty("is.testing", "false")); - private final S traversalSource; - private final Class anonymousTraversal; + private final Class anonymousTraversal; private static final Map> GLOBAL_METHOD_CACHE = new ConcurrentHashMap<>(); - + private final Map > localMethodCache = new ConcurrentHashMap<>(); + private final Method anonymousTraversalStart; private JavaTranslator(final S traversalSource) { this.traversalSource = traversalSource;
[26/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/116d743f Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/116d743f Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/116d743f Branch: refs/heads/TRAVIS-TEST Commit: 116d743f209292f675d8ded4907b39c629df1e03 Parents: bf58b63 510231a Author: Florian HockmannAuthored: Mon Mar 12 20:09:10 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 20:09:10 2018 +0100 -- .../Gherkin/GherkinTestRunner.cs | 6 +- .../Gherkin/IgnoreException.cs| 10 +- 2 files changed, 10 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/116d743f/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs --
[25/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/510231ad Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/510231ad Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/510231ad Branch: refs/heads/TRAVIS-TEST Commit: 510231adbe77bf58d65f8f999e4a8b081e9d7894 Parents: 097ad01 b25b976 Author: Florian HockmannAuthored: Mon Mar 12 20:08:44 2018 +0100 Committer: Florian Hockmann Committed: Mon Mar 12 20:08:44 2018 +0100 -- .../Gherkin/GherkinTestRunner.cs | 6 +- .../Gherkin/IgnoreException.cs| 10 +- 2 files changed, 10 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/510231ad/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/510231ad/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs -- diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs index 337a6c9,dae2ced..da455a8 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs @@@ -63,18 -60,9 +63,18 @@@ namespace Gremlin.Net.IntegrationTest.G public enum IgnoreReason { +/// +/// Lambdas are not supported on Gremlin.NET yet. +/// LambdaNotSupported, + +/// +/// Deserialization of g:T on GraphSON3 is not supported. +/// +TraversalTDeserializationNotSupported, + PNotCreatedCorrectlyByGherkinRunner, - NumericalValuesHaveWrongTypes, - PWithinWrapsArgumentsInArray + PWithinWrapsArgumentsInArray, + PNotDeserializationProblem } }
[11/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/22000e44 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/22000e44 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/22000e44 Branch: refs/heads/TRAVIS-TEST Commit: 22000e449fb29abb7ffddad6f65b35a8accffd35 Parents: da63965 53c84bd Author: Florian HockmannAuthored: Sun Mar 11 16:16:35 2018 +0100 Committer: Florian Hockmann Committed: Sun Mar 11 16:16:35 2018 +0100 -- .../Gherkin/GherkinTestRunner.cs| 37 +++- .../Gherkin/IgnoreException.cs | 20 +++ 2 files changed, 42 insertions(+), 15 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/22000e44/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs --
[18/31] tinkerpop git commit: Merge branch 'TINKERPOP-1884-tp33' into tp33
Merge branch 'TINKERPOP-1884-tp33' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7f06a18e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7f06a18e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7f06a18e Branch: refs/heads/TRAVIS-TEST Commit: 7f06a18eafbbfd10ac4ea978afa3fbb2b7fdf658 Parents: d62e50e ed57980 Author: Stephen MalletteAuthored: Mon Mar 12 10:05:38 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 10:05:38 2018 -0400 -- CHANGELOG.asciidoc | 3 ++- pom.xml| 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f06a18e/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7f06a18e/pom.xml --
[29/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/6e0ccd83 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/6e0ccd83 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/6e0ccd83 Branch: refs/heads/TRAVIS-TEST Commit: 6e0ccd836ead210c9e8e9d9b19bf4eabec6ed5f4 Parents: 116d743 f9f3d4f Author: Stephen MalletteAuthored: Tue Mar 13 08:40:59 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:59 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) --
[28/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f9f3d4fc Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f9f3d4fc Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f9f3d4fc Branch: refs/heads/TRAVIS-TEST Commit: f9f3d4fc8a65ddbd73dea51cc692d841e2766852 Parents: 510231a f02f94f Author: Stephen MalletteAuthored: Tue Mar 13 08:40:46 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:46 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9f3d4fc/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java --
[19/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/98ed8757 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/98ed8757 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/98ed8757 Branch: refs/heads/TRAVIS-TEST Commit: 98ed8757ddfd21427b95bf0ac7c8ce3a8892ecf3 Parents: 0ac6ccf 7f06a18 Author: Stephen MalletteAuthored: Mon Mar 12 10:05:47 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 10:05:47 2018 -0400 -- CHANGELOG.asciidoc | 3 ++- pom.xml| 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/98ed8757/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/98ed8757/pom.xml --
[15/31] tinkerpop git commit: Merge branch 'TINKERPOP-1884' into tp32
Merge branch 'TINKERPOP-1884' into tp32 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f80a5427 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f80a5427 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f80a5427 Branch: refs/heads/TRAVIS-TEST Commit: f80a54277d488bae49d4e08032d26b50199189a0 Parents: f38c2bb eefc4db Author: Stephen MalletteAuthored: Mon Mar 12 10:04:17 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 10:04:17 2018 -0400 -- CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f80a5427/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f80a5427/pom.xml --
[27/31] tinkerpop git commit: Minor code refactoring in JavaTranslator CTR
Minor code refactoring in JavaTranslator CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f02f94fd Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f02f94fd Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f02f94fd Branch: refs/heads/TRAVIS-TEST Commit: f02f94fd067799e5f532086a762c35abd3a11a93 Parents: b25b976 Author: Stephen MalletteAuthored: Tue Mar 13 08:40:10 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:10 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f02f94fd/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java index df12055..3e0e6da 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java @@ -190,7 +190,7 @@ public final class JavaTranslator returnType, final String methodName, final Object... arguments) { // populate method cache for fast access to methods in subsequent calls final Map methodCache = GLOBAL_METHOD_CACHE.getOrDefault(delegate.getClass(), new HashMap<>()); if (methodCache.isEmpty()) buildMethodCache(delegate, methodCache); @@ -222,7 +222,7 @@ public final class JavaTranslator list = methodCache.get(method.getName()); -if (null == list) { -list = new ArrayList<>(); -methodCache.put(method.getName(), list); -} +final List list = methodCache.computeIfAbsent(method.getName(), k -> new ArrayList<>()); list.add(method); } }
[30/31] tinkerpop git commit: foo
foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/16c0172a Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/16c0172a Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/16c0172a Branch: refs/heads/TRAVIS-TEST Commit: 16c0172a00c2c39ee67bc1f30968582cb75cb864 Parents: 6e0ccd8 Author: Daniel KuppitzAuthored: Tue Mar 13 11:33:06 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 11:33:06 2018 -0700 -- .../traversal/strategy/decoration/SubgraphStrategy.java | 12 +++- .../traversal/util/DefaultTraversalStrategies.java | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/16c0172a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java index e0d260f..f19e83b 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java @@ -43,6 +43,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.step.map.VertexStep; import org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.SideEffectStep; import org.apache.tinkerpop.gremlin.process.traversal.step.util.EmptyStep; import org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy; +import org.apache.tinkerpop.gremlin.process.traversal.traverser.TraverserRequirement; import org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal; import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalHelper; import org.apache.tinkerpop.gremlin.structure.Direction; @@ -170,6 +171,7 @@ public final class SubgraphStrategy extends AbstractTraversalStrategy step : vertexSteps) { if (step.returnsEdge()) continue; @@ -177,7 +179,8 @@ public final class SubgraphStrategy extends AbstractTraversalStrategy(traversal, (Traversal) this.vertexCriterion.clone()), step, traversal); } else { final VertexStep someEStep = new VertexStep<>(traversal, Edge.class, step.getDirection(), step.getEdgeLabels()); -final Step someVStep = step.getDirection() == Direction.BOTH ? +final boolean requiresPathRequirement; +final Step someVStep = (requiresPathRequirement = step.getDirection() == Direction.BOTH) ? new EdgeOtherVertexStep(traversal) : new EdgeVertexStep(traversal, step.getDirection().opposite()); @@ -189,9 +192,16 @@ public final class SubgraphStrategy extends AbstractTraversalStrategy(traversal, this.edgeCriterion.clone()), someEStep, traversal); if (null != this.vertexCriterion) TraversalHelper.insertAfterStep(new TraversalFilterStep<>(traversal, this.vertexCriterion.clone()), someVStep, traversal); + +addPathRequirement |= requiresPathRequirement; } } +if (addPathRequirement) { +final Traversal.Admin rootTraversal = TraversalHelper.getRootTraversal(traversal); + RequirementsStrategy.addRequirements(rootTraversal.getStrategies(), TraverserRequirement.PATH); +} + // turn g.V().properties() to g.V().properties().xxx // turn g.V().values() to g.V().properties().xxx.value() if (null != this.vertexPropertyCriterion) { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/16c0172a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversalStrategies.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversalStrategies.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversalStrategies.java index 74e84e2..91a49e2 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversalStrategies.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/util/DefaultTraversalStrategies.java @@ -82,8 +82,8 @@ public class DefaultTraversalStrategies implements TraversalStrategies { @Override
[08/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/da63965f Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/da63965f Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/da63965f Branch: refs/heads/TRAVIS-TEST Commit: da63965ff7098c844595518db6f25485f74d4c18 Parents: b4013a2 99b6da2 Author: Florian HockmannAuthored: Sat Mar 10 16:30:38 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 16:30:38 2018 +0100 -- .../src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --
[17/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/0ac6ccfa Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/0ac6ccfa Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/0ac6ccfa Branch: refs/heads/TRAVIS-TEST Commit: 0ac6ccfa8e0885f5ffc11795e6af61bc45184239 Parents: 3bbdbde d62e50e Author: Stephen MalletteAuthored: Mon Mar 12 10:04:41 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 10:04:41 2018 -0400 -- CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/0ac6ccfa/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/0ac6ccfa/pom.xml --
[21/31] tinkerpop git commit: Merge branch 'TINKERPOP-1911' into tp32
Merge branch 'TINKERPOP-1911' into tp32 Conflicts: CHANGELOG.asciidoc Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d3be13b4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d3be13b4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d3be13b4 Branch: refs/heads/TRAVIS-TEST Commit: d3be13b4cbc463a652bf94c1b56fb7050abed20d Parents: f80a542 d9db27f Author: Stephen MalletteAuthored: Mon Mar 12 12:12:59 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 12:12:59 2018 -0400 -- CHANGELOG.asciidoc | 1 + .../jsr223/JavaTranslatorBenchmark.java | 76 .../gremlin/jsr223/JavaTranslator.java | 58 --- 3 files changed, 125 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d3be13b4/CHANGELOG.asciidoc -- diff --cc CHANGELOG.asciidoc index 66fbbb2,54e5347..a31bdf2 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@@ -28,7 -27,7 +28,8 @@@ image::https://raw.githubusercontent.co * Modified `GremlinDslProcessor` so that it generated the `getAnonymousTraversalClass()` method to return the DSL version of `__`. * Added the "Kitchen Sink" test data set. * Fixed deserialization of `P.not()` for GraphSON. +* Bumped to Jackson 2.9.4. + * Improved performance of `JavaTranslator` by caching reflected methods required for traversal construction. * Added `idleConnectionTimeout` and `keepAliveInterval` to Gremlin Server that enables a "ping" and auto-close for seemingly dead clients. * Fixed a bug in `NumberHelper` that led to wrong min/max results if numbers exceeded the Integer limits. * Delayed setting of the request identifier until `RequestMessage` construction by the builder.
[04/31] tinkerpop git commit: TINKERPOP-1446 Added standard string representation for Path objects
TINKERPOP-1446 Added standard string representation for Path objects Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/c7bf69d9 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/c7bf69d9 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/c7bf69d9 Branch: refs/heads/TRAVIS-TEST Commit: c7bf69d98c229dcc5c2f23a17c88d317ae73be6e Parents: 4113f0e Author: Stephen MalletteAuthored: Sat Mar 3 12:25:00 2018 -0500 Committer: Stephen Mallette Committed: Sat Mar 3 12:25:00 2018 -0500 -- CHANGELOG.asciidoc | 1 + .../gremlin/process/traversal/step/util/EmptyPath.java | 6 ++ .../gremlin/process/traversal/step/util/ImmutablePath.java | 3 ++- .../gremlin/process/traversal/step/util/MutablePath.java| 3 ++- .../tinkerpop/gremlin/structure/util/StringFactory.java | 9 +++-- gremlin-dotnet/src/Gremlin.Net/Structure/Path.cs| 2 +- .../Structure/IO/GraphSON/GraphSONReaderTests.cs| 4 ++-- .../test/Gremlin.Net.UnitTest/Structure/PathTests.cs| 2 +- .../javascript/gremlin-javascript/lib/structure/graph.js| 4 .../src/main/jython/gremlin_python/structure/graph.py | 2 +- .../src/main/jython/tests/structure/io/test_graphsonV2d0.py | 5 + .../src/main/jython/tests/structure/io/test_graphsonV3d0.py | 5 + .../src/main/jython/tests/structure/test_graph.py | 2 +- 13 files changed, 30 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c7bf69d9/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 46b0e5b..9ecb5a2 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -25,6 +25,7 @@ NEED AND IMAGE This release also includes changes from < >. +* Change the `toString()` of `Path` to be standardized as other graph elements are. == TinkerPop 3.3.0 (Gremlin Symphony #40 in G Minor) http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c7bf69d9/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/EmptyPath.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/EmptyPath.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/EmptyPath.java index 0c6827e..69111ee 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/EmptyPath.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/EmptyPath.java @@ -19,6 +19,7 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.util; import org.apache.tinkerpop.gremlin.process.traversal.Path; +import org.apache.tinkerpop.gremlin.structure.util.StringFactory; import java.io.Serializable; import java.util.Collections; @@ -103,4 +104,9 @@ public final class EmptyPath implements Path, Serializable { public boolean equals(final Object object) { return object instanceof EmptyPath; } + +@Override +public String toString() { +return StringFactory.pathString(this); +} } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c7bf69d9/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/ImmutablePath.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/ImmutablePath.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/ImmutablePath.java index 7a6b9a8..623b810 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/ImmutablePath.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/ImmutablePath.java @@ -20,6 +20,7 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.util; import org.apache.tinkerpop.gremlin.process.traversal.Path; import org.apache.tinkerpop.gremlin.process.traversal.Pop; +import org.apache.tinkerpop.gremlin.structure.util.StringFactory; import java.io.Serializable; import java.util.ArrayList; @@ -217,7 +218,7 @@ public class ImmutablePath implements Path, Serializable, Cloneable { @Override public String toString() { -return this.objects().toString(); +return StringFactory.pathString(this); } @Override http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/c7bf69d9/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/MutablePath.java
[06/31] tinkerpop git commit: Make decimal serialization in Gremlin.Net culture independent CTR
Make decimal serialization in Gremlin.Net culture independent CTR This led tests fail on my system and probably leads to broken serialization of gx:BigDecimal on systems with ',' as the decimal separator. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/ab66ed38 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/ab66ed38 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/ab66ed38 Branch: refs/heads/TRAVIS-TEST Commit: ab66ed384b8c95475755dff1c558e392e0cc7e8c Parents: 552820a Author: Florian HockmannAuthored: Sat Mar 10 16:29:42 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 16:29:42 2018 +0100 -- .../src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ab66ed38/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs -- diff --git a/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs b/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs index 53dad94..8127415 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs @@ -23,6 +23,7 @@ using System; using System.Collections.Generic; +using System.Globalization; using Newtonsoft.Json.Linq; namespace Gremlin.Net.Structure.IO.GraphSON @@ -44,7 +45,7 @@ namespace Gremlin.Net.Structure.IO.GraphSON object value = objectData; if (StringifyValue) { -value = value?.ToString(); +value = string.Format(CultureInfo.InvariantCulture, "{0}", value); } return GraphSONUtil.ToTypedValue(GraphSONTypeName, value, Prefix); }
[09/31] tinkerpop git commit: TINKERPOP-1892 Add better ignore reasons for tests in Gremlin.Net CTR
TINKERPOP-1892 Add better ignore reasons for tests in Gremlin.Net CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/bbb13772 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/bbb13772 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/bbb13772 Branch: refs/heads/TRAVIS-TEST Commit: bbb13772a791ae7116551ba1d62ea7d136fe60c7 Parents: ab66ed3 Author: Florian HockmannAuthored: Sun Mar 11 16:10:17 2018 +0100 Committer: Florian Hockmann Committed: Sun Mar 11 16:10:17 2018 +0100 -- .../Gherkin/GherkinTestRunner.cs| 32 +--- .../Gherkin/IgnoreException.cs | 17 --- 2 files changed, 40 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bbb13772/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index f3e823a..4a1d646 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@ -37,11 +37,33 @@ namespace Gremlin.Net.IntegrationTest.Gherkin { public class GherkinTestRunner { -private static readonly IDictionary IgnoredScenarios = new Dictionary { -{ "g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name", IgnoreReason.NeedsFurtherInvestigation }, // TINKERPOP-1859?? -{ "g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.NeedsFurtherInvestigation }, // TINKERPOP-1859?? -{ "g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", IgnoreReason.NeedsFurtherInvestigation } // TINKERPOP-1907 -}; +private static readonly IDictionary IgnoredScenarios = +new Dictionary +{ +{ + "g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack", +IgnoreReason.NumericalValuesHaveWrongTypes +}, +{"g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", IgnoreReason.NumericalValuesHaveWrongTypes}, +{"g_V_hasIdXwithinXemptyXX_count", IgnoreReason.PWithinWrapsArgumentsInArray}, +{"g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.PWithinWrapsArgumentsInArray}, +{ + "g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name", +IgnoreReason.PNotCreatedCorrectlyByGherkinRunner +}, +{ + "g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_bothXknowsX_bothXknowsX_asXdX_whereXc__notXeqXaX_orXeqXd_selectXa_b_c_dX", +IgnoreReason.PNotCreatedCorrectlyByGherkinRunner +}, +{ + "g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_whereXa_gtXbX_orXeqXbXXX_byXageX_byXweightX_byXweightX_selectXa_cX_byXnameX", +IgnoreReason.PNotCreatedCorrectlyByGherkinRunner +}, +{ + "g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_inXcreatedX_asXdX_whereXa_ltXbX_orXgtXcXX_andXneqXdXXX_byXageX_byXweightX_byXinXcreatedX_valuesXageX_minX_selectXa_c_dX", +IgnoreReason.PNotCreatedCorrectlyByGherkinRunner +} +}; private static class Keywords { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bbb13772/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs index 0179994..c8cb29a 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs @@ -41,10 +41,17 @@ namespace Gremlin.Net.IntegrationTest.Gherkin switch (reason) { case IgnoreReason.LambdaNotSupported: -reasonSuffix = " because lambdas are not supported in Gremlin.NET"; +reasonSuffix = " because lambdas are not supported in Gremlin.NET (TINKERPOP-1854)";
[23/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/bf58b63e Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/bf58b63e Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/bf58b63e Branch: refs/heads/TRAVIS-TEST Commit: bf58b63ea7855bf59121c6bea862776149057a6a Parents: c6c3f0f 097ad01 Author: Stephen MalletteAuthored: Mon Mar 12 12:13:17 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 12:13:17 2018 -0400 -- CHANGELOG.asciidoc | 1 + .../jsr223/JavaTranslatorBenchmark.java | 76 .../gremlin/jsr223/JavaTranslator.java | 58 --- 3 files changed, 125 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/bf58b63e/CHANGELOG.asciidoc --
[12/31] tinkerpop git commit: TINKERPOP-1918 Fixed some return types in the gherkin tests CTR
TINKERPOP-1918 Fixed some return types in the gherkin tests CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f38c2bbf Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f38c2bbf Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f38c2bbf Branch: refs/heads/TRAVIS-TEST Commit: f38c2bbf15c456f5067c0b65873e33756329269e Parents: bbb1377 Author: Stephen MalletteAuthored: Mon Mar 12 08:23:05 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 08:23:05 2018 -0400 -- .../Gherkin/GherkinTestRunner.cs| 5 - gremlin-test/features/sideEffect/Sack.feature | 12 ++-- 2 files changed, 6 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f38c2bbf/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index 4a1d646..9d0f15d 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@ -40,11 +40,6 @@ namespace Gremlin.Net.IntegrationTest.Gherkin private static readonly IDictionary IgnoredScenarios = new Dictionary { -{ - "g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack", -IgnoreReason.NumericalValuesHaveWrongTypes -}, -{"g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", IgnoreReason.NumericalValuesHaveWrongTypes}, {"g_V_hasIdXwithinXemptyXX_count", IgnoreReason.PWithinWrapsArgumentsInArray}, {"g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.PWithinWrapsArgumentsInArray}, { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f38c2bbf/gremlin-test/features/sideEffect/Sack.feature -- diff --git a/gremlin-test/features/sideEffect/Sack.feature b/gremlin-test/features/sideEffect/Sack.feature index 89e3946..8d97c0c 100644 --- a/gremlin-test/features/sideEffect/Sack.feature +++ b/gremlin-test/features/sideEffect/Sack.feature @@ -92,10 +92,10 @@ Feature: Step - sack() When iterated to list Then the result should be unordered | result | - | d[3].l | - | d[1].l | - | d[1].l | - | d[1].l | + | d[3].i | + | d[1].i | + | d[1].i | + | d[1].i | Scenario: g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack Given the modern graph @@ -107,5 +107,5 @@ Feature: Step - sack() When iterated to list Then the result should be unordered | result | - | d[1.0].d | - | d[1.0].d | \ No newline at end of file + | d[1.0].m | + | d[1.0].m | \ No newline at end of file
[14/31] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/3bbdbded Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/3bbdbded Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/3bbdbded Branch: refs/heads/TRAVIS-TEST Commit: 3bbdbded24dd2f6072873acbfe4c7311b0cc2aa7 Parents: 22000e4 3797c7d Author: Stephen MalletteAuthored: Mon Mar 12 08:30:53 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 08:30:53 2018 -0400 -- .../Gherkin/GherkinTestRunner.cs| 5 - gremlin-test/features/sideEffect/Sack.feature | 12 ++-- 2 files changed, 6 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3bbdbded/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs --
[16/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d62e50e5 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d62e50e5 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d62e50e5 Branch: refs/heads/TRAVIS-TEST Commit: d62e50e5c13fcfe6fcd7958727500816c382a200 Parents: 3797c7d f80a542 Author: Stephen MalletteAuthored: Mon Mar 12 10:04:28 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 10:04:28 2018 -0400 -- CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d62e50e5/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d62e50e5/pom.xml -- diff --cc pom.xml index a29ccf0,da50996..cf1e039 --- a/pom.xml +++ b/pom.xml @@@ -146,10 -147,10 +146,10 @@@ limitations under the License 2.10.4 1.1 3.0.2 - 4.0.53.Final + 4.0.56.Final 1.7.21 1.15 -1.6.1 +2.2.0 UTF-8 UTF-8
[02/31] tinkerpop git commit: Merge branch 'TINKERPOP-1884' into TINKERPOP-1884-tp33
Merge branch 'TINKERPOP-1884' into TINKERPOP-1884-tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/09bb9905 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/09bb9905 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/09bb9905 Branch: refs/heads/TRAVIS-TEST Commit: 09bb99056e853a96b7ba173ef6f66c56d3f9de34 Parents: 27cc574 eefc4db Author: Stephen MalletteAuthored: Sat Mar 3 10:48:48 2018 -0500 Committer: Stephen Mallette Committed: Sat Mar 3 10:48:48 2018 -0500 -- CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/09bb9905/CHANGELOG.asciidoc -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/09bb9905/pom.xml -- diff --cc pom.xml index db8e41b,90e8215..1c7a04b --- a/pom.xml +++ b/pom.xml @@@ -146,10 -147,10 +146,10 @@@ limitations under the License 2.10.4 1.1 3.0.2 - 4.0.53.Final + 4.0.56.Final 1.7.21 1.15 -1.6.1 +2.2.0 UTF-8 UTF-8
[31/31] tinkerpop git commit: foo
foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/806a7275 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/806a7275 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/806a7275 Branch: refs/heads/TRAVIS-TEST Commit: 806a7275b8ad32ec155726ff3606fef2a6ca65ad Parents: 16c0172 Author: Daniel KuppitzAuthored: Tue Mar 13 11:33:21 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 11:33:21 2018 -0700 -- --
[13/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Conflicts: gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/3797c7d6 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/3797c7d6 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/3797c7d6 Branch: refs/heads/TRAVIS-TEST Commit: 3797c7d6dac97d94f27faa8cbda31540b74d2539 Parents: 53c84bd f38c2bb Author: Stephen MalletteAuthored: Mon Mar 12 08:30:41 2018 -0400 Committer: Stephen Mallette Committed: Mon Mar 12 08:30:41 2018 -0400 -- .../Gherkin/GherkinTestRunner.cs| 5 - gremlin-test/features/sideEffect/Sack.feature | 12 ++-- 2 files changed, 6 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3797c7d6/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index 08693b2,9d0f15d..cff0858 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@@ -40,13 -40,6 +40,8 @@@ namespace Gremlin.Net.IntegrationTest.G private static readonly IDictionary IgnoredScenarios = new Dictionary { +{ "g_V_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 +{ "g_V_valueMapXtrue_name_ageX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 - { - "g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack", - IgnoreReason.NumericalValuesHaveWrongTypes - }, - {"g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", IgnoreReason.NumericalValuesHaveWrongTypes}, {"g_V_hasIdXwithinXemptyXX_count", IgnoreReason.PWithinWrapsArgumentsInArray}, {"g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.PWithinWrapsArgumentsInArray}, {
[05/31] tinkerpop git commit: TINKERPOP-1911 Refactored JavaTranslator
TINKERPOP-1911 Refactored JavaTranslator Cached methods that were being reflected on every translation which improved performance a bit. Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/d9db27f4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/d9db27f4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/d9db27f4 Branch: refs/heads/TRAVIS-TEST Commit: d9db27f4aa7b8227a557cf5bbb31203612d7548f Parents: 2c6c151 Author: Stephen MalletteAuthored: Tue Mar 6 13:00:30 2018 -0500 Committer: Stephen Mallette Committed: Tue Mar 6 13:00:30 2018 -0500 -- CHANGELOG.asciidoc | 1 + .../jsr223/JavaTranslatorBenchmark.java | 76 .../gremlin/jsr223/JavaTranslator.java | 58 --- 3 files changed, 125 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d9db27f4/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index b9f22e1..54e5347 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -27,6 +27,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima * Modified `GremlinDslProcessor` so that it generated the `getAnonymousTraversalClass()` method to return the DSL version of `__`. * Added the "Kitchen Sink" test data set. * Fixed deserialization of `P.not()` for GraphSON. +* Improved performance of `JavaTranslator` by caching reflected methods required for traversal construction. * Added `idleConnectionTimeout` and `keepAliveInterval` to Gremlin Server that enables a "ping" and auto-close for seemingly dead clients. * Fixed a bug in `NumberHelper` that led to wrong min/max results if numbers exceeded the Integer limits. * Delayed setting of the request identifier until `RequestMessage` construction by the builder. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/d9db27f4/gremlin-benchmark/src/main/java/org/apache/tinkerpop/jsr223/JavaTranslatorBenchmark.java -- diff --git a/gremlin-benchmark/src/main/java/org/apache/tinkerpop/jsr223/JavaTranslatorBenchmark.java b/gremlin-benchmark/src/main/java/org/apache/tinkerpop/jsr223/JavaTranslatorBenchmark.java new file mode 100644 index 000..d33b574 --- /dev/null +++ b/gremlin-benchmark/src/main/java/org/apache/tinkerpop/jsr223/JavaTranslatorBenchmark.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.jsr223; + +import org.apache.tinkerpop.benchmark.util.AbstractBenchmarkBase; +import org.apache.tinkerpop.gremlin.jsr223.JavaTranslator; +import org.apache.tinkerpop.gremlin.process.traversal.P; +import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal; +import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource; +import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy; +import org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy; +import org.apache.tinkerpop.gremlin.structure.Graph; +import org.apache.tinkerpop.gremlin.structure.Vertex; +import org.apache.tinkerpop.gremlin.structure.util.empty.EmptyGraph; +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.State; + +import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.as; +import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.hasLabel; +import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.inE; +import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.values; + +/** + * @author Stephen Mallette (http://stephen.genoprime.com) + */ +@State(Scope.Thread) +public class JavaTranslatorBenchmark extends AbstractBenchmarkBase { + +private final Graph
[03/31] tinkerpop git commit: TINKERPOP-1884 Bump to Netty 4.1.21.Final
TINKERPOP-1884 Bump to Netty 4.1.21.Final Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/ed57980c Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/ed57980c Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/ed57980c Branch: refs/heads/TRAVIS-TEST Commit: ed57980cb34e2b60fc5a1a1570c7aa2252ee3c5a Parents: 09bb990 Author: Stephen MalletteAuthored: Sat Mar 3 10:30:48 2018 -0500 Committer: Stephen Mallette Committed: Sat Mar 3 10:49:18 2018 -0500 -- CHANGELOG.asciidoc | 3 ++- pom.xml| 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ed57980c/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 7f0496d..27bfa54 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -25,7 +25,8 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima This release also includes changes from < >. -* Fixed regression issue where the HTTPChannelizer doesn't instantiate the specified AuthenticationHandler +* Fixed regression issue where the HTTPChannelizer doesn't instantiate the specified AuthenticationHandler. +* Bumped to Netty 4.1.21.Final. * Defaulted GLV tests for gremlin-python to run for GraphSON 3.0. * Fixed a bug with `Tree` serialization in GraphSON 3.0. * In gremlin-python, the GraphSON 3.0 `g:Set` type is now deserialized to `List`. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/ed57980c/pom.xml -- diff --git a/pom.xml b/pom.xml index 1c7a04b..10dde57 100644 --- a/pom.xml +++ b/pom.xml @@ -146,7 +146,7 @@ limitations under the License. 2.10.4 1.1 3.0.2 -4.0.56.Final +4.1.21.Final 1.7.21 1.15 2.2.0
[01/31] tinkerpop git commit: TINKERPOP-1884 Bump to Netty 4.0.56.Final [Forced Update!]
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST f18cec874 -> 806a7275b (forced update) TINKERPOP-1884 Bump to Netty 4.0.56.Final Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/eefc4dbf Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/eefc4dbf Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/eefc4dbf Branch: refs/heads/TRAVIS-TEST Commit: eefc4dbf04396b57e1ff1d66292e5bedaf5ee1da Parents: 4db0991 Author: Stephen MalletteAuthored: Sat Mar 3 09:41:34 2018 -0500 Committer: Stephen Mallette Committed: Sat Mar 3 10:47:00 2018 -0500 -- CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/eefc4dbf/CHANGELOG.asciidoc -- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index a24b1fb..9544e2a 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -34,6 +34,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima * Removed hardcoded expectation in metrics serialization test suite as different providers may have different outputs. * Added `IndexedTraverserSet` which indexes on the value of a `Traverser` thus improving performance when used. * Utilized `IndexedTraverserSet` in `TraversalVertexProgram` to avoid extra iteration when doing `Vertex` lookups. +* Bumped to Netty 4.0.56.Final. * Fixed a bug in Gremlin Console which prevented handling of `gremlin.sh` flags that had an "=" between the flag and its arguments. * Fixed bug where `SparkMessenger` was not applying the `edgeFunction` from `MessageScope`. * Fixed a bug in `ComputerAwareStep` that didn't handle `reset()` properly and thus occasionally produced some extra traversers. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/eefc4dbf/pom.xml -- diff --git a/pom.xml b/pom.xml index f6ff536..90e8215 100644 --- a/pom.xml +++ b/pom.xml @@ -147,7 +147,7 @@ limitations under the License. 2.10.4 1.1 3.0.2 -4.0.53.Final +4.0.56.Final 1.7.21 1.15 1.6.1
[10/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/53c84bdb Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/53c84bdb Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/53c84bdb Branch: refs/heads/TRAVIS-TEST Commit: 53c84bdb49386e16ca6d955941be101a0fd8e1d1 Parents: 99b6da2 bbb1377 Author: Florian HockmannAuthored: Sun Mar 11 16:16:17 2018 +0100 Committer: Florian Hockmann Committed: Sun Mar 11 16:16:17 2018 +0100 -- .../Gherkin/GherkinTestRunner.cs| 37 +++- .../Gherkin/IgnoreException.cs | 20 +++ 2 files changed, 42 insertions(+), 15 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/53c84bdb/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs -- diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index eb0a7e1,4a1d646..08693b2 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@@ -37,14 -37,33 +37,35 @@@ namespace Gremlin.Net.IntegrationTest.G { public class GherkinTestRunner { - private static readonly IDictionary IgnoredScenarios = new Dictionary - { - { "g_V_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 - { "g_V_valueMapXtrue_name_ageX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 - { "g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name", IgnoreReason.NeedsFurtherInvestigation }, // TINKERPOP-1859?? - { "g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.NeedsFurtherInvestigation },// TINKERPOP-1859?? - { "g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", IgnoreReason.NeedsFurtherInvestigation } // TINKERPOP-1907 - }; + private static readonly IDictionary IgnoredScenarios = + new Dictionary + { ++{ "g_V_valueMapXtrueX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 ++{ "g_V_valueMapXtrue_name_ageX", IgnoreReason.TraversalTDeserializationNotSupported }, // TINKERPOP-1866 + { + "g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack", + IgnoreReason.NumericalValuesHaveWrongTypes + }, + {"g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack", IgnoreReason.NumericalValuesHaveWrongTypes}, + {"g_V_hasIdXwithinXemptyXX_count", IgnoreReason.PWithinWrapsArgumentsInArray}, + {"g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX", IgnoreReason.PWithinWrapsArgumentsInArray}, + { + "g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20_andXltX29X_orXeqX35_name", + IgnoreReason.PNotCreatedCorrectlyByGherkinRunner + }, + { + "g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_bothXknowsX_bothXknowsX_asXdX_whereXc__notXeqXaX_orXeqXd_selectXa_b_c_dX", + IgnoreReason.PNotCreatedCorrectlyByGherkinRunner + }, + { + "g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_whereXa_gtXbX_orXeqXbXXX_byXageX_byXweightX_byXweightX_selectXa_cX_byXnameX", + IgnoreReason.PNotCreatedCorrectlyByGherkinRunner + }, + { + "g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_inXcreatedX_asXdX_whereXa_ltXbX_orXgtXcXX_andXneqXdXXX_byXageX_byXweightX_byXinXcreatedX_valuesXageX_minX_selectXa_c_dX", + IgnoreReason.PNotCreatedCorrectlyByGherkinRunner + } + }; private static class Keywords { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/53c84bdb/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs -- diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs index 7733f34,c8cb29a..337a6c9 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/IgnoreException.cs @@@ -41,13 -41,17 +41,20 @@@ namespace
[07/31] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/99b6da25 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/99b6da25 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/99b6da25 Branch: refs/heads/TRAVIS-TEST Commit: 99b6da259f4428f338bdb1b2d4528cfb201aca2e Parents: 02e47ff ab66ed3 Author: Florian HockmannAuthored: Sat Mar 10 16:30:07 2018 +0100 Committer: Florian Hockmann Committed: Sat Mar 10 16:30:07 2018 +0100 -- .../src/Gremlin.Net/Structure/IO/GraphSON/NumberConverter.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --
tinkerpop git commit: TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs
Repository: tinkerpop Updated Branches: refs/heads/TINKERPOP-1901 4d5768b0a -> df989dc40 TINKERPOP-1901 Describe improved Gremlin.Net tokens in upgrade docs Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/df989dc4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/df989dc4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/df989dc4 Branch: refs/heads/TINKERPOP-1901 Commit: df989dc40ab7cf834b6ed275c453c4bb220315bf Parents: 4d5768b Author: Florian HockmannAuthored: Tue Mar 13 19:26:00 2018 +0100 Committer: Florian Hockmann Committed: Tue Mar 13 19:26:00 2018 +0100 -- docs/src/upgrade/release-3.2.x-incubating.asciidoc | 11 +++ 1 file changed, 11 insertions(+) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df989dc4/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 7d2a80c..0cb8ddc 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -42,6 +42,17 @@ by clients that might mysteriously disappear without properly closing their conn See: link:https://issues.apache.org/jira/browse/TINKERPOP-1726[TINKERPOP-1726] + Gremlin.Net Tokens Improved + +The various Gremlin tokens (e.g. `T`, `Order`, `Operator`, etc.) that were implemented as Enums before in Gremlin.Net +are now implemented as classes. This mainly allows them to implement interfaces which their Java counterparts already +did. `T` for example now implements the new interface `IFunction` which simply mirrors its Java counterpart `Function`. +Steps that expect objects for those interfaces as arguments now explicitly use the interface. Before, they used just +`object` as the type for these arguments which made it hard for users to know what kind of `object` they can use. +However, usage of these tokens themselves shouldn't change at all (e.g. `T.Id` is still `T.Id`). + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1901[TINKERPOP-1901] + === Upgrading for Providers Graph System Providers
tinkerpop git commit: foo
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST 37d7d2953 -> f18cec874 foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f18cec87 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f18cec87 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f18cec87 Branch: refs/heads/TRAVIS-TEST Commit: f18cec874268649dad3041ddac5dd596949b3966 Parents: 37d7d29 Author: Daniel KuppitzAuthored: Tue Mar 13 11:13:16 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 11:13:16 2018 -0700 -- .../process/traversal/TraversalSource.java | 23 +--- .../decoration/RequirementsStrategy.java| 4 .../util/DefaultTraversalStrategies.java| 5 +++-- 3 files changed, 27 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f18cec87/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalSource.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalSource.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalSource.java index 2421a78..f6a4bb2 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalSource.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/TraversalSource.java @@ -24,12 +24,16 @@ import org.apache.tinkerpop.gremlin.process.computer.Computer; import org.apache.tinkerpop.gremlin.process.computer.GraphComputer; import org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.decoration.VertexProgramStrategy; import org.apache.tinkerpop.gremlin.process.remote.RemoteConnection; +import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.RequirementsStrategy; import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SackStrategy; import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SideEffectStrategy; +import org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy; import org.apache.tinkerpop.gremlin.structure.Graph; import org.apache.tinkerpop.gremlin.util.function.ConstantSupplier; import java.lang.reflect.Constructor; +import java.util.ArrayList; +import java.util.List; import java.util.Optional; import java.util.function.BinaryOperator; import java.util.function.Supplier; @@ -100,10 +104,23 @@ public interface TraversalSource extends Cloneable, AutoCloseable { * @return a new traversal source with updated strategies */ public default TraversalSource withStrategies(final TraversalStrategy... traversalStrategies) { -final TraversalSource clone = this.clone(); -clone.getStrategies().addStrategies(traversalStrategies); -clone.getBytecode().addSource(TraversalSource.Symbols.withStrategies, traversalStrategies); +final List strategiesWithDependencies = new ArrayList<>(traversalStrategies.length); +boolean addRequirementStrategy = false, containsRequirementStrategy = false; for (final TraversalStrategy traversalStrategy : traversalStrategies) { +strategiesWithDependencies.add(traversalStrategy); +addRequirementStrategy |= traversalStrategy instanceof SubgraphStrategy; +containsRequirementStrategy |= traversalStrategy instanceof RequirementsStrategy; +} +if (addRequirementStrategy && !containsRequirementStrategy) { +strategiesWithDependencies.add(RequirementsStrategy.instance()); +} +final TraversalStrategy[] allStrategies = strategiesWithDependencies.toArray( +new TraversalStrategy[strategiesWithDependencies.size()]); + +final TraversalSource clone = this.clone(); +clone.getStrategies().addStrategies(allStrategies); +clone.getBytecode().addSource(TraversalSource.Symbols.withStrategies, allStrategies); +for (final TraversalStrategy traversalStrategy : allStrategies) { if (traversalStrategy instanceof VertexProgramStrategy) { ((VertexProgramStrategy) traversalStrategy).addGraphComputerStrategies(clone); } http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f18cec87/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/RequirementsStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/RequirementsStrategy.java
tinkerpop git commit: foo
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST 409fada48 -> 37d7d2953 foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/37d7d295 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/37d7d295 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/37d7d295 Branch: refs/heads/TRAVIS-TEST Commit: 37d7d2953936134d04ebde71a074df5bd54a195b Parents: 409fada Author: Daniel KuppitzAuthored: Tue Mar 13 09:55:58 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 09:55:58 2018 -0700 -- --
tinkerpop git commit: foo
Repository: tinkerpop Updated Branches: refs/heads/TRAVIS-TEST f90ae732e -> 409fada48 foo Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/409fada4 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/409fada4 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/409fada4 Branch: refs/heads/TRAVIS-TEST Commit: 409fada48163604fe78736ae200be41fa17f1af0 Parents: f90ae73 Author: Daniel KuppitzAuthored: Tue Mar 13 08:21:00 2018 -0700 Committer: Daniel Kuppitz Committed: Tue Mar 13 08:21:00 2018 -0700 -- .../traversal/strategy/decoration/SubgraphStrategy.java | 12 +++- .../decoration/SubgraphStrategyProcessTest.java | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/409fada4/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java index d7b5557..734f24d 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategy.java @@ -174,6 +174,8 @@ public final class SubgraphStrategy extends AbstractTraversalStrategy step : vertexSteps) { if (step.returnsEdge()) @@ -182,7 +184,8 @@ public final class SubgraphStrategy extends AbstractTraversalStrategy(traversal, (Traversal) this.vertexCriterion.clone()), step, traversal); } else { final VertexStep someEStep = new VertexStep<>(traversal, Edge.class, step.getDirection(), step.getEdgeLabels()); -final Step someVStep = step.getDirection() == Direction.BOTH ? +final boolean requiresPathRequirement; +final Step someVStep = (requiresPathRequirement = step.getDirection() == Direction.BOTH) ? new EdgeOtherVertexStep(traversal) : new EdgeVertexStep(traversal, step.getDirection().opposite()); @@ -194,9 +197,16 @@ public final class SubgraphStrategy extends AbstractTraversalStrategy(traversal, this.edgeCriterion.clone()), someEStep, traversal); if (null != this.vertexCriterion) TraversalHelper.insertAfterStep(new TraversalFilterStep<>(traversal, this.vertexCriterion.clone()), someVStep, traversal); + +addPathRequirement |= requiresPathRequirement; } } +if (addPathRequirement) { +final Traversal.Admin rootTraversal = TraversalHelper.getRootTraversal(traversal); + RequirementsStrategy.addRequirements(rootTraversal.getStrategies(), TraverserRequirement.PATH); +} + // turn g.V().properties() to g.V().properties().xxx // turn g.V().values() to g.V().properties().xxx.value() if (null != this.vertexPropertyCriterion) { http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/409fada4/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java -- diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java index 6dac9b0..3e6596b 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java @@ -290,7 +290,7 @@ public class SubgraphStrategyProcessTest extends AbstractGremlinProcessTest { assertEquals(2, sg.withPath().V(convertToVertexId("josh")).bothE().count().next().longValue()); assertEquals(3, g.V(convertToVertexId("josh")).both().count().next().longValue()); -final Traversal t = sg.withPath().V(convertToVertexId("josh")).both().count(); +final Traversal t = sg./*withPath().*/V(convertToVertexId("josh")).both().count(); try { assertEquals(2, t.next().longValue()); } catch (IllegalStateException ex) {
[3/3] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33' Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/6e0ccd83 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/6e0ccd83 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/6e0ccd83 Branch: refs/heads/master Commit: 6e0ccd836ead210c9e8e9d9b19bf4eabec6ed5f4 Parents: 116d743 f9f3d4f Author: Stephen MalletteAuthored: Tue Mar 13 08:40:59 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:59 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) --
[2/2] tinkerpop git commit: Merge branch 'tp32' into tp33
Merge branch 'tp32' into tp33 Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f9f3d4fc Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f9f3d4fc Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f9f3d4fc Branch: refs/heads/tp33 Commit: f9f3d4fc8a65ddbd73dea51cc692d841e2766852 Parents: 510231a f02f94f Author: Stephen MalletteAuthored: Tue Mar 13 08:40:46 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:46 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f9f3d4fc/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java --
[1/2] tinkerpop git commit: Minor code refactoring in JavaTranslator CTR
Repository: tinkerpop Updated Branches: refs/heads/tp33 510231adb -> f9f3d4fc8 Minor code refactoring in JavaTranslator CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f02f94fd Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f02f94fd Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f02f94fd Branch: refs/heads/tp33 Commit: f02f94fd067799e5f532086a762c35abd3a11a93 Parents: b25b976 Author: Stephen MalletteAuthored: Tue Mar 13 08:40:10 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:10 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f02f94fd/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java index df12055..3e0e6da 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java @@ -190,7 +190,7 @@ public final class JavaTranslator returnType, final String methodName, final Object... arguments) { // populate method cache for fast access to methods in subsequent calls final Map methodCache = GLOBAL_METHOD_CACHE.getOrDefault(delegate.getClass(), new HashMap<>()); if (methodCache.isEmpty()) buildMethodCache(delegate, methodCache); @@ -222,7 +222,7 @@ public final class JavaTranslator list = methodCache.get(method.getName()); -if (null == list) { -list = new ArrayList<>(); -methodCache.put(method.getName(), list); -} +final List list = methodCache.computeIfAbsent(method.getName(), k -> new ArrayList<>()); list.add(method); } }
tinkerpop git commit: Minor code refactoring in JavaTranslator CTR
Repository: tinkerpop Updated Branches: refs/heads/tp32 b25b97675 -> f02f94fd0 Minor code refactoring in JavaTranslator CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f02f94fd Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f02f94fd Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f02f94fd Branch: refs/heads/tp32 Commit: f02f94fd067799e5f532086a762c35abd3a11a93 Parents: b25b976 Author: Stephen MalletteAuthored: Tue Mar 13 08:40:10 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:10 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f02f94fd/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java index df12055..3e0e6da 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java @@ -190,7 +190,7 @@ public final class JavaTranslator returnType, final String methodName, final Object... arguments) { // populate method cache for fast access to methods in subsequent calls final Map methodCache = GLOBAL_METHOD_CACHE.getOrDefault(delegate.getClass(), new HashMap<>()); if (methodCache.isEmpty()) buildMethodCache(delegate, methodCache); @@ -222,7 +222,7 @@ public final class JavaTranslator list = methodCache.get(method.getName()); -if (null == list) { -list = new ArrayList<>(); -methodCache.put(method.getName(), list); -} +final List list = methodCache.computeIfAbsent(method.getName(), k -> new ArrayList<>()); list.add(method); } }
[1/3] tinkerpop git commit: Minor code refactoring in JavaTranslator CTR
Repository: tinkerpop Updated Branches: refs/heads/master 116d743f2 -> 6e0ccd836 Minor code refactoring in JavaTranslator CTR Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/f02f94fd Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/f02f94fd Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/f02f94fd Branch: refs/heads/master Commit: f02f94fd067799e5f532086a762c35abd3a11a93 Parents: b25b976 Author: Stephen MalletteAuthored: Tue Mar 13 08:40:10 2018 -0400 Committer: Stephen Mallette Committed: Tue Mar 13 08:40:10 2018 -0400 -- .../apache/tinkerpop/gremlin/jsr223/JavaTranslator.java | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/f02f94fd/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java -- diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java index df12055..3e0e6da 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java @@ -190,7 +190,7 @@ public final class JavaTranslator returnType, final String methodName, final Object... arguments) { // populate method cache for fast access to methods in subsequent calls final Map methodCache = GLOBAL_METHOD_CACHE.getOrDefault(delegate.getClass(), new HashMap<>()); if (methodCache.isEmpty()) buildMethodCache(delegate, methodCache); @@ -222,7 +222,7 @@ public final class JavaTranslator list = methodCache.get(method.getName()); -if (null == list) { -list = new ArrayList<>(); -methodCache.put(method.getName(), list); -} +final List list = methodCache.computeIfAbsent(method.getName(), k -> new ArrayList<>()); list.add(method); } }