[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit c1235268a5ec92444c0885ff460c02e705a04666 Merge: 6c8669a 160aa0d Author: Stephen Mallette AuthorDate: Wed Apr 7 09:22:39 2021 -0400 Merge branch '3.4-dev' docs/src/upgrade/release-3.3.x.asciidoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 0ab72cc3615cd3c00e2a5846883d939ad89fd72d Merge: 77a1312 94c6cab Author: Stephen Mallette AuthorDate: Mon Apr 5 15:23:03 2021 -0400 Merge branch '3.4-dev' .../tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java| 1 + 1 file changed, 1 insertion(+) diff --cc gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java index fcb6318,1df9976..3baac05 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java @@@ -2127,9 -2095,10 +2127,10 @@@ public interface GraphTraversal e * @since 3.0.0-incubating * @deprecated As of release 3.4.3, replaced by {@link #aggregate(Scope, String)} using {@link Scope#local}. */ + @Deprecated public default GraphTraversal store(final String sideEffectKey) { this.asAdmin().getBytecode().addStep(Symbols.store, sideEffectKey); -return this.asAdmin().addStep(new StoreStep<>(this.asAdmin(), sideEffectKey)); +return this.asAdmin().addStep(new AggregateLocalStep<>(this.asAdmin(), sideEffectKey)); } /**
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 294919630706dcabedfd22ff06b2a4d46517fa9e Merge: 5f52d21 32249db Author: Stephen Mallette AuthorDate: Fri Mar 12 11:27:34 2021 -0500 Merge branch '3.4-dev' NOTICE | 2 +- gremlin-console/src/main/static/NOTICE | 8 gremlin-server/src/main/static/NOTICE | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit c59bbdd692c37a50b724052f8641f102ad982ddc Merge: 14dff29 5fdc399 Author: Stephen Mallette AuthorDate: Mon Feb 22 16:29:04 2021 -0500 Merge branch '3.4-dev' docker/Dockerfile | 11 +-- 1 file changed, 5 insertions(+), 6 deletions(-) diff --cc docker/Dockerfile index 62856e6,2d5398e..6fa1f9f --- a/docker/Dockerfile +++ b/docker/Dockerfile @@@ -35,15 -35,12 +35,14 @@@ RUN apt-get install -y openjdk-8-jdk op RUN apt-get install -y --force-yes dotnet-sdk-3.1 mono-devel # python3 on xenial install 3.5.2 which is insufficient for newer versions of python/typing#259 so - # custom build and install 3.5.3 and upgrade pip along the way. this could be resolved by using bionic - # but trying to keep all of our release branches on the same docker image and the older versions sorta - # suit 3.3.x and 3.4.x + # custom build and install 3.6.9 and upgrade pip along the way. this could be resolved by using bionic + # but trying to keep all of our release branches on the same docker image and the older versions suit 3.4.x+ -RUN apt-get install -y --force-yes python python-dev python-pip build-essential checkinstall zlib1g-dev libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev +ENV DEBIAN_FRONTEND=noninteractive +RUN apt-get install -y python python-dev python-pip build-essential checkinstall zlib1g-dev libreadline-gplv2-dev \ +libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libkrb5-dev krb5-user - RUN cd /opt && wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tgz && tar -xvf Python-3.5.3.tgz - RUN cd /opt/Python-3.5.3 && ./configure && make && make install - RUN ln -sf /usr/bin/python3.5.3 /usr/bin/python3 + RUN cd /opt && wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz && tar -xvf Python-3.6.9.tgz + RUN cd /opt/Python-3.6.9 && ./configure && make && make install + RUN ln -sf /usr/bin/python3.6.9 /usr/bin/python3 # pip drops support of Python 2 starting from version 21.0 RUN pip install --upgrade "pip<21.0" RUN pip install virtualenv virtualenvwrapper
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit aee427c6239bb5c80f397768dc3d917861487ec0 Merge: 1cb1d8b e7f0669 Author: Stephen Mallette AuthorDate: Wed Feb 17 14:14:03 2021 -0500 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + .../traversal/step/sideEffect/AddPropertyStep.java | 8 - .../tinkergraph/structure/TinkerGraphTest.java | 34 ++ 3 files changed, 42 insertions(+), 1 deletion(-) diff --cc tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java index baa84a6,329a648..442c779 --- a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java +++ b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerGraphTest.java @@@ -715,18 -713,39 +715,52 @@@ public class TinkerGraphTest } @Test + public void shouldProvideClearErrorWhenTryingToMutateT() { + final GraphTraversalSource g = TinkerGraph.open().traversal(); + g.addV("person").property(T.id, 100).iterate(); + + try { + g.V(100).property(T.label, "software").iterate(); + fail("Should have thrown an error"); + } catch (IllegalStateException ise) { + assertEquals("T.label is immutable on existing elements", ise.getMessage()); + } + + try { + g.V(100).property(T.id, 101).iterate(); + fail("Should have thrown an error"); + } catch (IllegalStateException ise) { + assertEquals("T.id is immutable on existing elements", ise.getMessage()); + } + + try { + g.V(100).property("name", "marko").property(T.label, "software").iterate(); + fail("Should have thrown an error"); + } catch (IllegalStateException ise) { + assertEquals("T.label is immutable on existing elements", ise.getMessage()); + } + + try { + g.V(100).property(T.id, 101).property("name", "marko").iterate(); + fail("Should have thrown an error"); + } catch (IllegalStateException ise) { + assertEquals("T.id is immutable on existing elements", ise.getMessage()); + } + } + ++@Test +public void shouldWorkWithoutIdentityStrategy() { +final Graph graph = TinkerFactory.createModern(); +final GraphTraversalSource g = traversal().withEmbedded(graph).withoutStrategies(IdentityRemovalStrategy.class); +final List> result = g.V().match(__.as("a").out("knows").values("name").as("b")).identity().toList(); +assertEquals(2, result.size()); +result.stream().forEach(m -> { +assertEquals(2, m.size()); +assertThat(m.containsKey("a"), is(true)); +assertThat(m.containsKey("b"), is(true)); +}); +} + /** * Coerces a {@code Color} to a {@link TinkerGraph} during serialization. Demonstrates how custom serializers * can be developed that can coerce one value to another during serialization.
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 1cb1d8b706b31c7fc04d99a63c1661dcbad05523 Merge: cf30afb 1c1c48a Author: Stephen Mallette AuthorDate: Wed Feb 17 12:24:04 2021 -0500 Merge branch '3.4-dev' docs/src/reference/gremlin-variants.asciidoc | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --cc docs/src/reference/gremlin-variants.asciidoc index a3f70fa,ee2e530..06c7306 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@@ -782,21 -752,32 +782,34 @@@ Moreover, by importing the `statics` o With statics loaded its possible to represent the above traversal as below. -[gremlin-python,modern] +[source,python] -g.V().hasLabel('person').has('age',gt(30)).order().by('age',desc).toList() +>>> g.V().hasLabel('person').has('age',gt(30)).order().by('age',desc).toList() +[v[6], v[4]] - Finally, statics includes all the `+__+`-methods and thus, anonymous traversals like `+__.out()+` can be expressed as below. + Statics includes all the `+__+`-methods and thus, anonymous traversals like `+__.out()+` can be expressed as below. That is, without the `+__+`-prefix. -[gremlin-python,modern] +[source,python] -g.V().repeat(out()).times(2).name.fold().toList() +>>> g.V().repeat(out()).times(2).name.fold().toList() +[['ripple', 'lop']] + There may be situations where certain graphs may want a more exact data type than what Python will allow as a language. + To support these situations `gremlin-python` has a few special type classes that can be imported from `statics`. They + include: + + [source,python] + + from gremlin_python.statics import long # Java long + from gremlin_python.statics import timestamp# Java timestamp + from gremlin_python.statics import SingleByte # Java byte type + from gremlin_python.statics import SingleChar # Java char type + from gremlin_python.statics import GremlinType # Java Class + + anchor:python-configuration[] [[gremlin-python-configuration]] === Configuration
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 6c3844bfae0d36a2d517f44468e9167ca5e4c0a4 Merge: 975e46b f8b2449 Author: Stephen Mallette AuthorDate: Wed Jan 13 06:31:21 2021 -0500 Merge branch '3.4-dev' gremlin-python/src/main/python/gremlin_python/process/strategies.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --cc gremlin-python/src/main/python/gremlin_python/process/strategies.py index 465659c,000..86fc3f8 mode 100644,00..100644 --- a/gremlin-python/src/main/python/gremlin_python/process/strategies.py +++ b/gremlin-python/src/main/python/gremlin_python/process/strategies.py @@@ -1,232 -1,0 +1,232 @@@ +# +# 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. +# + +__author__ = 'Marko A. Rodriguez (http://markorodriguez.com)' + +from gremlin_python.process.traversal import TraversalStrategy + +base_namespace = 'org.apache.tinkerpop.gremlin.process.traversal.strategy.' +decoration_namespace = base_namespace + 'decoration.' +finalization_namespace = base_namespace + 'finalization.' +optimization_namespace = base_namespace + 'optimization.' +verification_namespace = base_namespace + 'verification.' +computer_decoration_namespace = 'org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.decoration.' + +# +# DECORATION STRATEGIES # +# + + +class ConnectiveStrategy(TraversalStrategy): +def __init__(self): +TraversalStrategy.__init__(self, fqcn=decoration_namespace + 'ConnectiveStrategy') + + +class ElementIdStrategy(TraversalStrategy): +def __init__(self): +TraversalStrategy.__init__(self, fqcn=decoration_namespace + 'ElementIdStrategy') + + +# EventStrategy doesn't make sense outside JVM traversal machine + +class HaltedTraverserStrategy(TraversalStrategy): +def __init__(self, halted_traverser_factory=None): +TraversalStrategy.__init__(self, fqcn=decoration_namespace + 'HaltedTraverserStrategy') +if halted_traverser_factory is not None: +self.configuration["haltedTraverserFactory"] = halted_traverser_factory + + +class OptionsStrategy(TraversalStrategy): +def __init__(self, options=None): +TraversalStrategy.__init__(self, configuration=options, fqcn=decoration_namespace + 'OptionsStrategy') + + +class PartitionStrategy(TraversalStrategy): +def __init__(self, partition_key=None, write_partition=None, read_partitions=None, include_meta_properties=None): +TraversalStrategy.__init__(self, fqcn=decoration_namespace + 'PartitionStrategy') +if partition_key is not None: +self.configuration["partitionKey"] = partition_key +if write_partition is not None: +self.configuration["writePartition"] = write_partition - if write_partition is not None: ++if read_partitions is not None: +self.configuration["readPartitions"] = read_partitions +if include_meta_properties is not None: +self.configuration["includeMetaProperties"] = include_meta_properties + + +class SeedStrategy(TraversalStrategy): +def __init__(self, seed): +TraversalStrategy.__init__(self, fqcn="org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy") +self.configuration["seed"] = seed + + +class SubgraphStrategy(TraversalStrategy): + +def __init__(self, vertices=None, edges=None, vertex_properties=None): +TraversalStrategy.__init__(self, fqcn=decoration_namespace + 'SubgraphStrategy') +if vertices is not None: +self.configuration["vertices"] = vertices +if edges is not None: +self.configuration["edges"] = edges +if vertex_properties is not None: +self.configuration["vertexProperties"] = vertex_properties + + +class VertexProgramStrategy(TraversalStrategy): +def __init__(self, graph_computer=None, workers=None, persist=None, result=None, vertices=None, edges=None, + configuration=None): +
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 4d6d974a3960be1d080bc889ed50f929e381a4b9 Merge: d029172 931a75d Author: Stephen Mallette AuthorDate: Fri Jan 8 08:26:37 2021 -0500 Merge branch '3.4-dev' .../tinkerpop/gremlin/process/traversal/Traversal.java | 4 +++- .../gremlin/process/traversal/dsl/graph/GraphTraversal.java | 13 + .../src/Gremlin.Net/Process/Traversal/GraphTraversal.cs | 9 + .../gremlin-javascript/lib/process/graph-traversal.js | 10 ++ .../main/python/gremlin_python/process/graph_traversal.py | 4 5 files changed, 39 insertions(+), 1 deletion(-) diff --cc gremlin-python/src/main/python/gremlin_python/process/graph_traversal.py index 65f3b03,000..698056f mode 100644,00..100644 --- a/gremlin-python/src/main/python/gremlin_python/process/graph_traversal.py +++ b/gremlin-python/src/main/python/gremlin_python/process/graph_traversal.py @@@ -1,1576 -1,0 +1,1580 @@@ +# +# 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. +# + +import sys +import copy +from .traversal import Traversal +from .traversal import TraversalStrategies +from .strategies import VertexProgramStrategy, OptionsStrategy +from .traversal import Bytecode +from ..driver.remote_connection import RemoteStrategy +from .. import statics +from ..statics import long + + +class GraphTraversalSource(object): +def __init__(self, graph, traversal_strategies, bytecode=None): +self.graph = graph +self.traversal_strategies = traversal_strategies +if bytecode is None: + bytecode = Bytecode() +self.bytecode = bytecode +self.graph_traversal = GraphTraversal + +def __repr__(self): +return "graphtraversalsource[" + str(self.graph) + "]" + +def get_graph_traversal_source(self): +return self.__class__(self.graph, TraversalStrategies(self.traversal_strategies), Bytecode(self.bytecode)) + +def get_graph_traversal(self): +return self.graph_traversal(self.graph, self.traversal_strategies, Bytecode(self.bytecode)) + +def withBulk(self, *args): +source = self.get_graph_traversal_source() +source.bytecode.add_source("withBulk", *args) +return source + +def withPath(self, *args): +source = self.get_graph_traversal_source() +source.bytecode.add_source("withPath", *args) +return source + +def withSack(self, *args): +source = self.get_graph_traversal_source() +source.bytecode.add_source("withSack", *args) +return source + +def withSideEffect(self, *args): +source = self.get_graph_traversal_source() +source.bytecode.add_source("withSideEffect", *args) +return source + +def withStrategies(self, *args): +source = self.get_graph_traversal_source() +source.bytecode.add_source("withStrategies", *args) +return source + +def withoutStrategies(self, *args): +source = self.get_graph_traversal_source() +source.bytecode.add_source("withoutStrategies", *args) +return source + +def with_(self, k, v=None): +source = self.get_graph_traversal_source() +options_strategy = next((x for x in source.bytecode.source_instructions +if x[0] == "withStrategies" and type(x[1]) is OptionsStrategy), None) + +val = True if v is None else v +if options_strategy is None: +options_strategy = OptionsStrategy({k: val}) +source = self.withStrategies(options_strategy) +else: +options_strategy[1].configuration[k] = val + +return source + +def withRemote(self, remote_connection): +source = self.get_graph_traversal_source() + source.traversal_strategies.add_strategies([RemoteStrategy(remote_connection)]) +return source + +def withComputer(self, graph_computer=None, workers=None, result=None, persist=None, vertices=None, + edges=None,
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 14977047915c0f706daa856b7ba911ab62d9c723 Merge: 3f55514 fbb5a34 Author: Stephen Mallette AuthorDate: Tue Dec 15 06:52:09 2020 -0500 Merge branch '3.4-dev' docs/src/reference/gremlin-variants.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --cc docs/src/reference/gremlin-variants.asciidoc index 10607e3,bb8703d..9869e03 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@@ -1072,7 -1092,7 +1072,7 @@@ and then convert those results to somet === Application Examples The TinkerPop source code contains a simple Python script that shows a basic example of how gremlinpython works. It - can be found in GitHub link:https://github.com/apache/tinkerpop/tree/xx.yy.zz/gremlin-python/src/main/python/example.py[here] -can be found in GitHub link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-python/src/main/jython/example.py[here] ++can be found in GitHub link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-python/src/main/python/example.py[here] and is designed to work best with a running <> configured with the default `conf/gremlin-server.yaml` file as included with the standard release packaging.
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 2c3ae370e13370f4d677a2d92b2592faee74e9a6 Merge: 8aa3c9d ffc3d92 Author: Stephen Mallette AuthorDate: Fri Nov 27 09:40:35 2020 -0500 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + .../gremlin-javascript/lib/driver/connection.js| 5 - .../test/integration/traversal-test.js | 26 +- 3 files changed, 25 insertions(+), 7 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev' into master
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch travis-fix in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 959af077c7028795eafc186592ee43786ce4 Merge: 8548860 8156a51 Author: Stephen Mallette AuthorDate: Tue Oct 13 15:19:59 2020 -0400 Merge branch '3.4-dev' into master CHANGELOG.asciidoc | 2 +- docs/src/reference/gremlin-variants.asciidoc | 40 ++ docs/src/upgrade/release-3.4.x.asciidoc| 32 + .../Driver/Remote/DriverRemoteConnection.cs| 30 ++-- gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs| 28 ++- .../Process/Traversal/GraphTraversalSource.cs | 26 +- .../Docs/Reference/GremlinVariantsTests.cs | 18 ++ .../DriverRemoteConnection/GraphTraversalTests.cs | 15 .../apache/tinkerpop/gremlin/driver/Tokens.java| 39 + 9 files changed, 196 insertions(+), 34 deletions(-) diff --cc gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs index f8d0140,1833855..f35b128 --- a/gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs @@@ -32,6 -32,11 +32,11 @@@ namespace Gremlin.Net.Drive public class Tokens { /// -/// The key for the unique identifier of the request. ++/// The key for the unique identifier of the request. + /// + public static string RequestId = "requestId"; - ++ + /// /// Operation used by the client to authenticate itself. /// public static string OpsAuthentication = "authentication"; @@@ -89,7 -107,31 +95,13 @@@ public static string ArgsSession = "session"; /// - /// Argument name that allows to change the flavor of Gremlin used (e.g. gremlin-groovy). + /// Argument name that allows a value that is a custom string that the user can pass to a server that + /// might accept it for purpose of identifying the kind of client it came from. + /// + public static string ArgsUserAgent = "userAgent"; + + /// -/// Argument name that allows to specify the unique identifier for the request. -/// -[Obsolete("As of release 3.3.8, not replaced, prefer use of cap()-step to retrieve side-effects as part of traversal iteration", false)] -public static string ArgsSideEffect = "sideEffect"; - -/// -/// Argument name that allows to specify the key for a specific side-effect. -/// -[Obsolete("As of release 3.3.8, not replaced, prefer use of cap()-step to retrieve side-effects as part of traversal iteration", false)] -public static string ArgsSideEffectKey = "sideEffectKey"; - -/// -/// argument that describes how side-effect data should be treated. -/// -[Obsolete("As of release 3.3.8, not replaced, prefer use of cap()-step to retrieve side-effects as part of traversal iteration", false)] -public static string ArgsAggregateTo = "aggregateTo"; - -/// + /// Argument name that allows definition of the flavor of Gremlin used (e.g. gremlin-groovy) to process the request. /// public static string ArgsLanguage = "language"; diff --cc gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Tokens.java index 867edf2,92641a7..68b5ebd --- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Tokens.java +++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Tokens.java @@@ -32,22 -36,133 +36,57 @@@ public final class Tokens public static final String OPS_INVALID = "invalid"; public static final String OPS_CLOSE = "close"; + /** - * @deprecated As of release 3.3.8, not directly replaced in the protocol as side-effect retrieval after - * traversal iteration is not being promoted anymore as a feature. - */ -@Deprecated -public static final String OPS_GATHER = "gather"; - -/** - * @deprecated As of release 3.3.8, not directly replaced in the protocol as side-effect retrieval after - * traversal iteration is not being promoted anymore as a feature. - */ -@Deprecated -public static final String OPS_KEYS = "keys"; - -/** + * The key for the unique identifier of the request. + */ public static final String REQUEST_ID = "requestId"; + /** + * Argument name that allows definition of the number of iterations each {@link ResponseMessage} should contain - + * overrides the @{code resultIterationBatchSize} server setting. + */ public static final String ARGS_BATCH_SIZE = "batchSize"; + + /** + * Argument name that allows to provide a map of
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit b66805cda137887b8499ab6c0452f8cc2f378b1f Merge: f52ee7c 1bddbba Author: Stephen Mallette AuthorDate: Mon Oct 5 07:56:17 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc| 1 + .../tinkerpop/gremlin/structure/util/StringFactory.java | 11 ++- 2 files changed, 11 insertions(+), 1 deletion(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit a78fc7dbe26f46f01052ea636eb3b2f394e98d74 Merge: f525f4f 5e4456b Author: Stephen Mallette AuthorDate: Wed Sep 30 14:51:54 2020 -0400 Merge branch '3.4-dev' pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --cc pom.xml index 78bf5b6,d725baa..c34c3df --- a/pom.xml +++ b/pom.xml @@@ -158,8 -158,8 +158,8 @@@ limitations under the License 3.0.2 4.1.52.Final 1.7.25 - 1.15 + 1.27 -2.4.0 +3.0.0 UTF-8 UTF-8
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 236e7d792b3133fb5135934e59cab578c5274c0d Merge: b420ff5 bcc0f24 Author: Stephen Mallette AuthorDate: Fri Sep 25 11:40:14 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc | 30 ++ .../main/python/gremlin_python/driver/client.py| 8 ++- .../driver/driver_remote_connection.py | 16 +- .../gremlin_python/process/graph_traversal.py | 19 +-- .../python/gremlin_python/process/strategies.py| 64 +- .../tests/driver/test_driver_remote_connection.py | 7 +++ .../main/python/tests/process/test_strategies.py | 11 8 files changed, 120 insertions(+), 36 deletions(-) diff --cc gremlin-python/src/main/python/gremlin_python/driver/client.py index ff8dddb,000..4e2d026 mode 100644,00..100644 --- a/gremlin-python/src/main/python/gremlin_python/driver/client.py +++ b/gremlin-python/src/main/python/gremlin_python/driver/client.py @@@ -1,147 -1,0 +1,149 @@@ +# +# 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. +# +from concurrent.futures import ThreadPoolExecutor + +from six.moves import queue + +from gremlin_python.driver import connection, protocol, request, serializer +from gremlin_python.process import traversal + +# This is until concurrent.futures backport 3.1.0 release +try: +from multiprocessing import cpu_count +except ImportError: +# some platforms don't have multiprocessing +def cpu_count(): +return None + +__author__ = 'David M. Brown (davebs...@gmail.com)' + + +class Client: + +def __init__(self, url, traversal_source, protocol_factory=None, + transport_factory=None, pool_size=None, max_workers=None, + message_serializer=None, username="", password="", + kerberized_service="", headers=None, session=""): +self._url = url +self._headers = headers +self._traversal_source = traversal_source +if message_serializer is None: +message_serializer = serializer.GraphSONSerializersV3d0() +self._message_serializer = message_serializer +self._username = username +self._password = password +self._session = session +self._sessionEnabled = (session != "") +if transport_factory is None: +try: +from gremlin_python.driver.tornado.transport import ( +TornadoTransport) +except ImportError: +raise Exception("Please install Tornado or pass" +"custom transport factory") +else: +transport_factory = lambda: TornadoTransport() +self._transport_factory = transport_factory +if protocol_factory is None: +protocol_factory = lambda: protocol.GremlinServerWSProtocol( +self._message_serializer, +username=self._username, +password=self._password, +kerberized_service=kerberized_service) +self._protocol_factory = protocol_factory +if self._sessionEnabled: +if pool_size is None: +pool_size = 1 +elif pool_size != 1: +raise Exception("PoolSize must be 1 on session mode!") +if pool_size is None: +pool_size = 4 +self._pool_size = pool_size +# This is until concurrent.futures backport 3.1.0 release +if max_workers is None: +# If your application is overlapping Gremlin I/O on multiple threads +# consider passing kwarg max_workers = (cpu_count() or 1) * 5 +max_workers = pool_size +self._executor = ThreadPoolExecutor(max_workers=max_workers) +# Threadsafe queue +self._pool = queue.Queue() +self._fill_pool() + +@property +def available_pool_size(self): +return self._pool.qsize() + +
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit d77a29ffa68196c4ef42182e322961ec254db768 Merge: 3e7c6a2 be8d736 Author: Stephen Mallette AuthorDate: Thu Sep 10 08:27:06 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + gremlin-shaded/pom.xml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit be2249e63d511836a1a08a06df11ce623fbf307b Merge: 8528d56 a7b7c33 Author: Stephen Mallette AuthorDate: Fri Sep 4 13:14:18 2020 -0400 Merge branch '3.4-dev' .../io/graphbinary/GraphBinaryCompatibility.java | 1 + .../io/graphson/GraphSONCompatibility.java | 4 + .../structure/io/gryo/GryoCompatibility.java | 2 + .../graphbinary/GraphBinaryCompatibilityTest.java | 1 + .../graphson/GraphSONTypedCompatibilityTest.java | 2 + .../graphson/GraphSONUntypedCompatibilityTest.java | 2 + .../structure/io/gryo/GryoCompatibilityTest.java | 2 + .../io/graphbinary/_3_4_9/barrier-v1.gbin | Bin 0 -> 16 bytes .../io/graphbinary/_3_4_9/bigdecimal-v1.gbin | Bin 0 -> 25 bytes .../io/graphbinary/_3_4_9/biginteger-v1.gbin | Bin 0 -> 21 bytes .../io/graphbinary/_3_4_9/binding-v1.gbin | Bin 0 -> 13 bytes .../io/graphbinary/_3_4_9/bulkset-v1.gbin | Bin 0 -> 43 bytes .../structure/io/graphbinary/_3_4_9/byte-v1.gbin | Bin 0 -> 3 bytes .../io/graphbinary/_3_4_9/bytebuffer-v1.gbin | Bin 0 -> 24 bytes .../io/graphbinary/_3_4_9/bytecode-v1.gbin | Bin 0 -> 80 bytes .../io/graphbinary/_3_4_9/cardinality-v1.gbin | Bin 0 -> 12 bytes .../structure/io/graphbinary/_3_4_9/char-v1.gbin | Bin 0 -> 3 bytes .../structure/io/graphbinary/_3_4_9/class-v1.gbin | Bin 0 -> 18 bytes .../structure/io/graphbinary/_3_4_9/column-v1.gbin | Bin 0 -> 12 bytes .../structure/io/graphbinary/_3_4_9/date-v1.gbin | Bin 0 -> 10 bytes .../io/graphbinary/_3_4_9/direction-v1.gbin| Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_9/double-v1.gbin | Bin 0 -> 10 bytes .../io/graphbinary/_3_4_9/duration-v1.gbin | Bin 0 -> 14 bytes .../structure/io/graphbinary/_3_4_9/edge-v1.gbin | Bin 0 -> 58 bytes .../structure/io/graphbinary/_3_4_9/float-v1.gbin | Bin 0 -> 6 bytes .../io/graphbinary/_3_4_9/inetaddress-v1.gbin | Bin 0 -> 10 bytes .../io/graphbinary/_3_4_9/instant-v1.gbin | Bin 0 -> 14 bytes .../io/graphbinary/_3_4_9/integer-v1.gbin | Bin 0 -> 6 bytes .../structure/io/graphbinary/_3_4_9/lambda-v1.gbin | Bin 0 -> 40 bytes .../structure/io/graphbinary/_3_4_9/list-v1.gbin | Bin 0 -> 27 bytes .../io/graphbinary/_3_4_9/localdate-v1.gbin| Bin 0 -> 8 bytes .../io/graphbinary/_3_4_9/localdatetime-v1.gbin| Bin 0 -> 16 bytes .../io/graphbinary/_3_4_9/localtime-v1.gbin| Bin 0 -> 10 bytes .../structure/io/graphbinary/_3_4_9/long-v1.gbin | Bin 0 -> 10 bytes .../structure/io/graphbinary/_3_4_9/map-v1.gbin| Bin 0 -> 75 bytes .../io/graphbinary/_3_4_9/metrics-v1.gbin | Bin 0 -> 307 bytes .../io/graphbinary/_3_4_9/monthday-v1.gbin | Bin 0 -> 4 bytes .../io/graphbinary/_3_4_9/offsetdatetime-v1.gbin | Bin 0 -> 20 bytes .../io/graphbinary/_3_4_9/offsettime-v1.gbin | Bin 0 -> 14 bytes .../io/graphbinary/_3_4_9/operator-v1.gbin | Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_9/order-v1.gbin | Bin 0 -> 15 bytes .../structure/io/graphbinary/_3_4_9/p-v1.gbin | Bin 0 -> 18 bytes .../structure/io/graphbinary/_3_4_9/pand-v1.gbin | Bin 0 -> 49 bytes .../structure/io/graphbinary/_3_4_9/path-v1.gbin | Bin 0 -> 96 bytes .../structure/io/graphbinary/_3_4_9/period-v1.gbin | Bin 0 -> 14 bytes .../structure/io/graphbinary/_3_4_9/pick-v1.gbin | Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_9/pop-v1.gbin| Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_9/por-v1.gbin| Bin 0 -> 64 bytes .../io/graphbinary/_3_4_9/property-v1.gbin | Bin 0 -> 19 bytes .../io/graphbinary/_3_4_9/pwithin-v1.gbin | Bin 0 -> 22 bytes .../io/graphbinary/_3_4_9/pwithout-v1.gbin | Bin 0 -> 29 bytes .../structure/io/graphbinary/_3_4_9/scope-v1.gbin | Bin 0 -> 13 bytes .../structure/io/graphbinary/_3_4_9/set-v1.gbin| Bin 0 -> 27 bytes .../structure/io/graphbinary/_3_4_9/short-v1.gbin | Bin 0 -> 4 bytes .../structure/io/graphbinary/_3_4_9/t-v1.gbin | Bin 0 -> 13 bytes .../structure/io/graphbinary/_3_4_9/textp-v1.gbin | Bin 0 -> 29 bytes .../io/graphbinary/_3_4_9/timestamp-v1.gbin| Bin 0 -> 10 bytes .../io/graphbinary/_3_4_9/tinkergraph-v1.gbin | Bin 0 -> 2264 bytes .../io/graphbinary/_3_4_9/traversalmetrics-v1.gbin | Bin 0 -> 593 bytes .../io/graphbinary/_3_4_9/traverser-v1.gbin| Bin 0 -> 30 bytes .../structure/io/graphbinary/_3_4_9/uuid-v1.gbin | Bin 0 -> 18 bytes .../structure/io/graphbinary/_3_4_9/vertex-v1.gbin | Bin 0 -> 20 bytes .../io/graphbinary/_3_4_9/vertexproperty-v1.gbin | Bin 0 -> 35 bytes .../structure/io/graphbinary/_3_4_9/year-v1.gbin | Bin 0 -> 6 bytes .../io/graphbinary/_3_4_9/yearmonth-v1.gbin| Bin 0 -> 7 bytes .../io/graphbinary/_3_4_9/zoneoffset-v1.gbin | Bin 0
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 1290265e7b23fecbfe75e34780ff11a017bb3d0c Merge: 64c95ba 93fb0bb Author: Stephen Mallette AuthorDate: Wed Sep 2 10:36:47 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + docs/src/reference/gremlin-variants.asciidoc | 16 +--- .../python/gremlin_python/driver/tornado/transport.py| 8 +--- 3 files changed, 19 insertions(+), 6 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 11001d7d911a3e680ac92b3112036e6126061a02 Merge: 9ccac59 b922f89 Author: Stephen Mallette AuthorDate: Mon Aug 31 07:37:43 2020 -0400 Merge branch '3.4-dev' .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit bbd9b873f87a18b1b62a4651d855720c344e926d Merge: 918bfe1 4a4debe Author: Stephen Mallette AuthorDate: Thu Jul 16 10:14:23 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + .../gremlin/process/traversal/step/filter/SampleGlobalStep.java | 9 - 2 files changed, 5 insertions(+), 5 deletions(-) diff --cc gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/SampleGlobalStep.java index e0f772a,5290f97..5232d60 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/SampleGlobalStep.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/SampleGlobalStep.java @@@ -104,8 -92,7 +104,7 @@@ public final class SampleGlobalStep if (sampleBulk < s.bulk()) { final double currentWeight = ((ProjectedTraverser) s).getProjections().get(0).doubleValue(); for (int i = 0; i < (s.bulk() - sampleBulk); i++) { - runningWeight = runningWeight + currentWeight; - if (random.nextDouble() <= ((runningWeight / totalWeight))) { -if (RANDOM.nextDouble() <= ((currentWeight / runningTotalWeight))) { ++if (random.nextDouble() <= ((currentWeight / runningTotalWeight))) { final Traverser.Admin split = s.split(); split.setBulk(1L); sampledSet.add(split);
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit c27d3aa1fa8f9b3a727a0ea3c526e6489e245b82 Merge: 7780f4d bd4bd43 Author: Stephen Mallette AuthorDate: Fri Jun 19 11:51:25 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 3 ++- .../process/traversal/dsl/graph/GraphTraversal.java | 21 - gremlin-test/features/filter/Has.feature| 12 .../process/traversal/step/filter/HasTest.java | 19 +++ 4 files changed, 49 insertions(+), 6 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit ec18b3e575e5dd6bacf87087473cf0cc29231ac7 Merge: b9f998a d7b46b6 Author: Stephen Mallette AuthorDate: Mon Jun 8 11:46:44 2020 -0400 Merge branch '3.4-dev' gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj | 2 +- .../io/graphbinary/GraphBinaryCompatibility.java | 1 + .../io/graphson/GraphSONCompatibility.java | 4 + .../structure/io/gryo/GryoCompatibility.java | 2 + .../graphbinary/GraphBinaryCompatibilityTest.java | 1 + .../graphson/GraphSONTypedCompatibilityTest.java | 2 + .../graphson/GraphSONUntypedCompatibilityTest.java | 2 + .../structure/io/gryo/GryoCompatibilityTest.java | 2 + .../io/graphbinary/_3_4_7/barrier-v1.gbin | Bin 0 -> 16 bytes .../io/graphbinary/_3_4_7/bigdecimal-v1.gbin | Bin 0 -> 25 bytes .../io/graphbinary/_3_4_7/biginteger-v1.gbin | Bin 0 -> 21 bytes .../io/graphbinary/_3_4_7/binding-v1.gbin | Bin 0 -> 13 bytes .../io/graphbinary/_3_4_7/bulkset-v1.gbin | Bin 0 -> 43 bytes .../structure/io/graphbinary/_3_4_7/byte-v1.gbin | Bin 0 -> 3 bytes .../io/graphbinary/_3_4_7/bytebuffer-v1.gbin | Bin 0 -> 24 bytes .../io/graphbinary/_3_4_7/bytecode-v1.gbin | Bin 0 -> 80 bytes .../io/graphbinary/_3_4_7/cardinality-v1.gbin | Bin 0 -> 12 bytes .../structure/io/graphbinary/_3_4_7/char-v1.gbin | Bin 0 -> 3 bytes .../structure/io/graphbinary/_3_4_7/class-v1.gbin | Bin 0 -> 18 bytes .../structure/io/graphbinary/_3_4_7/column-v1.gbin | Bin 0 -> 12 bytes .../structure/io/graphbinary/_3_4_7/date-v1.gbin | Bin 0 -> 10 bytes .../io/graphbinary/_3_4_7/direction-v1.gbin| Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_7/double-v1.gbin | Bin 0 -> 10 bytes .../io/graphbinary/_3_4_7/duration-v1.gbin | Bin 0 -> 14 bytes .../structure/io/graphbinary/_3_4_7/edge-v1.gbin | Bin 0 -> 58 bytes .../structure/io/graphbinary/_3_4_7/float-v1.gbin | Bin 0 -> 6 bytes .../io/graphbinary/_3_4_7/inetaddress-v1.gbin | Bin 0 -> 10 bytes .../io/graphbinary/_3_4_7/instant-v1.gbin | Bin 0 -> 14 bytes .../io/graphbinary/_3_4_7/integer-v1.gbin | Bin 0 -> 6 bytes .../structure/io/graphbinary/_3_4_7/lambda-v1.gbin | Bin 0 -> 40 bytes .../structure/io/graphbinary/_3_4_7/list-v1.gbin | Bin 0 -> 27 bytes .../io/graphbinary/_3_4_7/localdate-v1.gbin| Bin 0 -> 8 bytes .../io/graphbinary/_3_4_7/localdatetime-v1.gbin| Bin 0 -> 16 bytes .../io/graphbinary/_3_4_7/localtime-v1.gbin| Bin 0 -> 10 bytes .../structure/io/graphbinary/_3_4_7/long-v1.gbin | Bin 0 -> 10 bytes .../structure/io/graphbinary/_3_4_7/map-v1.gbin| Bin 0 -> 75 bytes .../io/graphbinary/_3_4_7/metrics-v1.gbin | Bin 0 -> 307 bytes .../io/graphbinary/_3_4_7/monthday-v1.gbin | Bin 0 -> 4 bytes .../io/graphbinary/_3_4_7/offsetdatetime-v1.gbin | Bin 0 -> 20 bytes .../io/graphbinary/_3_4_7/offsettime-v1.gbin | Bin 0 -> 14 bytes .../io/graphbinary/_3_4_7/operator-v1.gbin | Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_7/order-v1.gbin | Bin 0 -> 15 bytes .../structure/io/graphbinary/_3_4_7/p-v1.gbin | Bin 0 -> 18 bytes .../structure/io/graphbinary/_3_4_7/pand-v1.gbin | Bin 0 -> 49 bytes .../structure/io/graphbinary/_3_4_7/path-v1.gbin | Bin 0 -> 96 bytes .../structure/io/graphbinary/_3_4_7/period-v1.gbin | Bin 0 -> 14 bytes .../structure/io/graphbinary/_3_4_7/pick-v1.gbin | Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_7/pop-v1.gbin| Bin 0 -> 11 bytes .../structure/io/graphbinary/_3_4_7/por-v1.gbin| Bin 0 -> 64 bytes .../io/graphbinary/_3_4_7/property-v1.gbin | Bin 0 -> 19 bytes .../io/graphbinary/_3_4_7/pwithin-v1.gbin | Bin 0 -> 22 bytes .../io/graphbinary/_3_4_7/pwithout-v1.gbin | Bin 0 -> 29 bytes .../structure/io/graphbinary/_3_4_7/scope-v1.gbin | Bin 0 -> 13 bytes .../structure/io/graphbinary/_3_4_7/set-v1.gbin| Bin 0 -> 27 bytes .../structure/io/graphbinary/_3_4_7/short-v1.gbin | Bin 0 -> 4 bytes .../structure/io/graphbinary/_3_4_7/t-v1.gbin | Bin 0 -> 13 bytes .../structure/io/graphbinary/_3_4_7/textp-v1.gbin | Bin 0 -> 29 bytes .../io/graphbinary/_3_4_7/timestamp-v1.gbin| Bin 0 -> 10 bytes .../io/graphbinary/_3_4_7/tinkergraph-v1.gbin | Bin 0 -> 2264 bytes .../io/graphbinary/_3_4_7/traversalmetrics-v1.gbin | Bin 0 -> 593 bytes .../io/graphbinary/_3_4_7/traverser-v1.gbin| Bin 0 -> 30 bytes .../structure/io/graphbinary/_3_4_7/uuid-v1.gbin | Bin 0 -> 18 bytes .../structure/io/graphbinary/_3_4_7/vertex-v1.gbin | Bin 0 -> 20 bytes .../io/graphbinary/_3_4_7/vertexproperty-v1.gbin | Bin 0 -> 35 bytes .../structure/io/graphbinary/_3_4_7/year-v1.gbin | Bin 0 -> 6 bytes .../io/graphbinary/_3_4_7/yearmonth-v1.gbin| Bin 0 -> 7 bytes
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit b9f998ae032cfe36cd34cece771994d9e36d387f Merge: 95769e7 e0823e0 Author: Stephen Mallette AuthorDate: Fri Jun 5 10:38:10 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc| 5 + docs/src/upgrade/release-3.4.x.asciidoc | 9 + gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) diff --cc gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj index 9eedc40,752e8c8..6665594 --- a/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj +++ b/gremlin-dotnet/src/Gremlin.Net/Gremlin.Net.csproj @@@ -61,8 -61,8 +61,8 @@@ NOTE that versions suffixed with "-rc" - - - ++ +
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 2c5c3e6999ee6ac20a33f6eafbca2e2ea32de5fe Merge: 3bfe50b 334edb5 Author: Stephen Mallette AuthorDate: Mon Jun 1 13:35:03 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 18 +- docs/src/upgrade/release-3.3.x.asciidoc | 2 +- 2 files changed, 18 insertions(+), 2 deletions(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. rdale pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit b73d2f3c0187dbdabc683260ace5cee17a4342aa Merge: 5ace91f 693953f Author: Robert Dale AuthorDate: Wed Apr 29 16:00:29 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. rdale pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 5ace91fef67a58623645450c47c15d7e661ae89b Merge: 2453536 4c4de66 Author: Robert Dale AuthorDate: Wed Apr 29 15:57:19 2020 -0400 Merge branch '3.4-dev' CHANGELOG.asciidoc | 1 + pom.xml| 2 +- 2 files changed, 2 insertions(+), 1 deletion(-)
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit dade989d09b1231f9e65f4e672902a64e191223d Merge: 093bd92 7db7a2d Author: Stephen Mallette AuthorDate: Wed Apr 1 11:06:44 2020 -0400 Merge branch '3.4-dev' .../src/Gremlin.Net/Driver/Connection.cs | 31 ++- .../src/Gremlin.Net/Driver/ConnectionFactory.cs| 7 +++- .../src/Gremlin.Net/Driver/GremlinClient.cs| 20 +- gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs| 10 + .../Driver/GremlinClientTests.cs | 15 +++- .../Driver/GremlinClientTests.cs | 45 ++ 6 files changed, 122 insertions(+), 6 deletions(-) diff --cc gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs index a1ab9d0,a7f804a..f8d0140 --- a/gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Driver/Tokens.cs @@@ -79,6 -96,29 +84,11 @@@ namespace Gremlin.Net.Drive public static string ArgsGremlin = "gremlin"; /// + /// Argument name that allows to define the id of session. + /// + public static string ArgsSession = "session"; + + /// -/// Argument name that allows to specify the unique identifier for the request. -/// -[Obsolete("As of release 3.3.8, not replaced, prefer use of cap()-step to retrieve side-effects as part of traversal iteration", false)] -public static string ArgsSideEffect = "sideEffect"; - -/// -/// Argument name that allows to specify the key for a specific side-effect. -/// -[Obsolete("As of release 3.3.8, not replaced, prefer use of cap()-step to retrieve side-effects as part of traversal iteration", false)] -public static string ArgsSideEffectKey = "sideEffectKey"; - -/// -/// argument that describes how side-effect data should be treated. -/// -[Obsolete("As of release 3.3.8, not replaced, prefer use of cap()-step to retrieve side-effects as part of traversal iteration", false)] -public static string ArgsAggregateTo = "aggregateTo"; - -/// /// Argument name that allows to change the flavor of Gremlin used (e.g. gremlin-groovy). /// public static string ArgsLanguage = "language";
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit ad66b5d5566b52421198f6a2a4d5ac0d96b10103 Merge: c3b07a8 ed03483 Author: Stephen Mallette AuthorDate: Thu Feb 20 06:20:27 2020 -0500 Merge branch '3.4-dev' CHANGELOG.asciidoc | 2 +- docs/src/upgrade/release-3.4.x.asciidoc| 12 ++ .../strategy/optimization/LazyBarrierStrategy.java | 5 +++ .../optimization/LazyBarrierStrategyTest.java | 9 - .../Gherkin/GherkinTestRunner.cs | 2 +- .../ModernGraphTypeInformation.cs | 1 + .../src/main/python/radish/feature_steps.py| 2 + gremlin-test/features/filter/Drop.feature | 43 +- .../process/traversal/step/filter/DropTest.java| 37 +++ 9 files changed, 109 insertions(+), 4 deletions(-) diff --cc gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs index 0a3d5ed,59fd11e..2649e68 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/GherkinTestRunner.cs @@@ -41,8 -41,7 +41,8 @@@ namespace Gremlin.Net.IntegrationTest.G new Dictionary { // Add here the name of scenarios to ignore and the reason, e.g.: +{ "g_V_group_byXageX", IgnoreReason.NullKeysInMapNotSupported } - // { "g_V_peerPressure_withXpropertyName_clusterX_withXedges_outEXknowsXX_pageRankX1X_byXrankX_withXedges_outEXknowsX_withXtimes_2X_group_byXclusterX_byXrank_sumX_limitX100X", IgnoreReason.NoReason }, + //{ "g_V_properties_propertiesXstartTimeX_drop", IgnoreReason.NoReason }, }; private static class Keywords diff --cc gremlin-python/src/main/python/radish/feature_steps.py index 0b26bf4,000..5b9808f mode 100644,00..100644 --- a/gremlin-python/src/main/python/radish/feature_steps.py +++ b/gremlin-python/src/main/python/radish/feature_steps.py @@@ -1,293 -1,0 +1,295 @@@ +# +# 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. +# + +import json +import re +from gremlin_python.statics import long +from gremlin_python.structure.graph import Path +from gremlin_python.process.anonymous_traversal import traversal +from gremlin_python.process.graph_traversal import __ +from gremlin_python.process.traversal import Barrier, Cardinality, P, TextP, Pop, Scope, Column, Order, Direction, T, Pick, Operator, IO, WithOptions +from radish import given, when, then +from hamcrest import * + +regex_all = re.compile(r"Pop\.all") +regex_and = re.compile(r"([(.,\s])and\(") +regex_as = re.compile(r"([(.,\s])as\(") +regex_from = re.compile(r"([(.,\s])from\(") +regex_global = re.compile(r"([(.,\s])global") ++regex_cardlist = re.compile(r"Cardinality\.list") +regex_in = re.compile(r"([(.,\s])in\(") +regex_is = re.compile(r"([(.,\s])is\(") +regex_not = re.compile(r"([(.,\s])not\(") +regex_or = re.compile(r"([(.,\s])or\(") +regex_with = re.compile(r"([(.,\s])with\(") +regex_true = re.compile(r"(true)") +regex_false = re.compile(r"(false)") +regex_null = re.compile(r"(null)") + +outV = __.outV +label = __.label +inV = __.inV +project = __.project +tail = __.tail + +ignores = [] + + +@given("the {graph_name:w} graph") +def choose_graph(step, graph_name): +step.context.graph_name = graph_name +step.context.g = traversal().withRemote(step.context.remote_conn[graph_name]) + + +@given("the graph initializer of") +def initialize_graph(step): +t = _make_traversal(step.context.g, step.text, {}) + +# just be sure that the traversal returns something to prove that it worked to some degree. probably +# is overkill to try to assert the complete success of this init operation. presumably the test +# suite would fail elsewhere if this didn't work which would help identify a problem. +result = t.toList() +assert len(result) > 0 + +# add the first result - if a map - to the bindings. this is useful for cases when
[tinkerpop] 02/02: Merge branch '3.4-dev'
This is an automated email from the ASF dual-hosted git repository. jorgebg pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 06f6fe995b3661508f24d265c151d169cd0d08ab Merge: 4c4a7b6 89903ff Author: Jorge Bay Gondra AuthorDate: Tue Jan 21 15:31:51 2020 +0100 Merge branch '3.4-dev' gremlin-javascript/glv/PackageJson.template| 18 +- .../main/javascript/gremlin-javascript/package.json| 18 +- 2 files changed, 18 insertions(+), 18 deletions(-)