[jira] [Commented] (TINKERPOP-1806) Consistently use Gremlin.Net instead of Gremlin-DotNet
[ https://issues.apache.org/jira/browse/TINKERPOP-1806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272981#comment-16272981 ] ASF GitHub Bot commented on TINKERPOP-1806: --- Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/760 lgtm! VOTE +1 > Consistently use Gremlin.Net instead of Gremlin-DotNet > -- > > Key: TINKERPOP-1806 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1806 > Project: TinkerPop > Issue Type: Improvement > Components: documentation, dotnet >Affects Versions: 3.3.0, 3.2.6 >Reporter: Florian Hockmann >Assignee: stephen mallette >Priority: Trivial > > We agreed in TINKERPOP-1552 to name the .NET GLV and driver Gremlin.Net, but > I used Gremlin-DotNet instead in the initial pull request. The documentation > still uses mainly Gremlin-DotNet which could be a bit confusing to new users. > So we should simply replace _Gremlin-DotNet_ everywhere by _Gremlin.Net_. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop issue #760: TINKERPOP-1806 Consistent use of Gremlin.Net instead o...
Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/760 lgtm! VOTE +1 ---
[jira] [Assigned] (TINKERPOP-1806) Consistently use Gremlin.Net instead of Gremlin-DotNet
[ https://issues.apache.org/jira/browse/TINKERPOP-1806?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reassigned TINKERPOP-1806: --- Assignee: stephen mallette > Consistently use Gremlin.Net instead of Gremlin-DotNet > -- > > Key: TINKERPOP-1806 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1806 > Project: TinkerPop > Issue Type: Improvement > Components: documentation, dotnet >Affects Versions: 3.3.0, 3.2.6 >Reporter: Florian Hockmann >Assignee: stephen mallette >Priority: Trivial > > We agreed in TINKERPOP-1552 to name the .NET GLV and driver Gremlin.Net, but > I used Gremlin-DotNet instead in the initial pull request. The documentation > still uses mainly Gremlin-DotNet which could be a bit confusing to new users. > So we should simply replace _Gremlin-DotNet_ everywhere by _Gremlin.Net_. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1806) Consistently use Gremlin.Net instead of Gremlin-DotNet
[ https://issues.apache.org/jira/browse/TINKERPOP-1806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272922#comment-16272922 ] ASF GitHub Bot commented on TINKERPOP-1806: --- GitHub user spmallette opened a pull request: https://github.com/apache/tinkerpop/pull/760 TINKERPOP-1806 Consistent use of Gremlin.Net instead of Gremlin-DotNet https://issues.apache.org/jira/browse/TINKERPOP-1806 This change really just applies to documentation. Directory structures, links and other identifiers have been left as "dotnet" VOTE +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1806 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/760.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #760 commit 1e68b44a9b97f96109b3d0fb3e89b8d5673eb850 Author: Stephen MalletteDate: 2017-11-30T16:48:34Z TINKERPOP-1806 Consistent use of Gremlin.Net instead of Gremlin-DotNet This change really just applies to documentation. Directory structures, links and other identifiers have been left as "dotnet" > Consistently use Gremlin.Net instead of Gremlin-DotNet > -- > > Key: TINKERPOP-1806 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1806 > Project: TinkerPop > Issue Type: Improvement > Components: documentation, dotnet >Affects Versions: 3.3.0, 3.2.6 >Reporter: Florian Hockmann >Priority: Trivial > > We agreed in TINKERPOP-1552 to name the .NET GLV and driver Gremlin.Net, but > I used Gremlin-DotNet instead in the initial pull request. The documentation > still uses mainly Gremlin-DotNet which could be a bit confusing to new users. > So we should simply replace _Gremlin-DotNet_ everywhere by _Gremlin.Net_. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop pull request #760: TINKERPOP-1806 Consistent use of Gremlin.Net in...
GitHub user spmallette opened a pull request: https://github.com/apache/tinkerpop/pull/760 TINKERPOP-1806 Consistent use of Gremlin.Net instead of Gremlin-DotNet https://issues.apache.org/jira/browse/TINKERPOP-1806 This change really just applies to documentation. Directory structures, links and other identifiers have been left as "dotnet" VOTE +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1806 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/760.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #760 commit 1e68b44a9b97f96109b3d0fb3e89b8d5673eb850 Author: Stephen MalletteDate: 2017-11-30T16:48:34Z TINKERPOP-1806 Consistent use of Gremlin.Net instead of Gremlin-DotNet This change really just applies to documentation. Directory structures, links and other identifiers have been left as "dotnet" ---
[jira] [Updated] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
[ https://issues.apache.org/jira/browse/TINKERPOP-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1847: Issue Type: Bug (was: Improvement) > tinkergraph-gremlin dependency on gremlin-test, bad scope? > -- > > Key: TINKERPOP-1847 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 > Project: TinkerPop > Issue Type: Bug > Components: build-release >Affects Versions: 3.3.0 >Reporter: Cservenak, Tamas > Fix For: 3.3.1 > > > This issue would be more a "question" type, sorry if missed the point. > Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven > default scope ("compile"). Is this scope proper? > Cause gremlin-test pulls in stuff like junit, hamcrest and all the test > related things, while if I exclude gremlin-test, at runtime tinkergraph runs > just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Closed] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
[ https://issues.apache.org/jira/browse/TINKERPOP-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1847. --- Resolution: Fixed > tinkergraph-gremlin dependency on gremlin-test, bad scope? > -- > > Key: TINKERPOP-1847 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 > Project: TinkerPop > Issue Type: Bug > Components: build-release >Affects Versions: 3.3.0 >Reporter: Cservenak, Tamas >Assignee: stephen mallette > Fix For: 3.3.1 > > > This issue would be more a "question" type, sorry if missed the point. > Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven > default scope ("compile"). Is this scope proper? > Cause gremlin-test pulls in stuff like junit, hamcrest and all the test > related things, while if I exclude gremlin-test, at runtime tinkergraph runs > just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
Re: [DISCUSS] 3.3.1/3.2.7 December Release
I made a first attempt at TINKERPOP-1825, but it wasn't as easy to fix as I thought initially. As we already talked about a bit in that ticket, I think that the .NET GLV generation would benefit from a bigger clean-up as that code is really confusing which makes every change to the GLV rather complicated. But feel free to tackle this ticket if you want. I think that we should also try to get TINKERPOP-1745 and maybe TINKERPOP-1696 in before the official release of the .NET GLV as those are breaking changes, but I wouldn't necessarily consider those as blockers for a release. In general I'm also definitely +1 on a release as soon as we have the .NET test suite in. Am 30.11.2017 um 17:01 schrieb Jorge Bay Gondra: > There is one ticket I'd like to include related to .NET GLV: TINKERPOP-1825 > (includes API changes, related to code generation). I don't know if Florian > wanted to tackle it, otherwise I could work on it early next week. > > Besides that, I'm +1 on releasing once .NET test suite is merged. > > On Thu, Nov 30, 2017 at 1:52 PM, Stephen Mallette> wrote: > >> I'd like to propose that we do a release before the end of the year. Now >> that the GLV Test Suite is largely in place and we're close to having .NET >> running under that suite we have a reasonable degree of confidence to make >> that release official and get off the release candidate system we've been >> using. It would further be good to get official releases of Gremlin Python >> out there as the release candidates for 3.3.1 and 3.2.7 have been out for >> about a month now without any report of trouble so those should be ready to >> go. >> >> Aside for GLV related changes there are a fair number of bug fixes and the >> import feature of math() step that need to get out into the wild. >> >> Other than existing open PRs >> >> https://github.com/apache/tinkerpop/pull/758 (.NET DSLs) >> https://github.com/apache/tinkerpop/pull/754 (.NET test suite) >> >> I'm not aware of any major issues that need to be closed before release, >> but I don't think we need to be in a huge rush to go to code freeze. Please >> raise any issues or concerns that you feel are relevant to 3.3.1 and 3.2.7 >> and we'll figure out where to go from here. >> >> Thanks, >> >> Stephen >>
[jira] [Closed] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
[ https://issues.apache.org/jira/browse/TINKERPOP-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1847. --- Resolution: Fixed Assignee: stephen mallette Fix Version/s: 3.3.1 Fixed via CTR on https://github.com/apache/tinkerpop/commit/9f874ed676733d4e3a78fa091bc938cc1dfc46cd > tinkergraph-gremlin dependency on gremlin-test, bad scope? > -- > > Key: TINKERPOP-1847 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 > Project: TinkerPop > Issue Type: Bug > Components: build-release >Affects Versions: 3.3.0 >Reporter: Cservenak, Tamas >Assignee: stephen mallette > Fix For: 3.3.1 > > > This issue would be more a "question" type, sorry if missed the point. > Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven > default scope ("compile"). Is this scope proper? > Cause gremlin-test pulls in stuff like junit, hamcrest and all the test > related things, while if I exclude gremlin-test, at runtime tinkergraph runs > just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Reopened] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
[ https://issues.apache.org/jira/browse/TINKERPOP-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette reopened TINKERPOP-1847: - > tinkergraph-gremlin dependency on gremlin-test, bad scope? > -- > > Key: TINKERPOP-1847 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 > Project: TinkerPop > Issue Type: Bug > Components: build-release >Affects Versions: 3.3.0 >Reporter: Cservenak, Tamas >Assignee: stephen mallette > Fix For: 3.3.1 > > > This issue would be more a "question" type, sorry if missed the point. > Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven > default scope ("compile"). Is this scope proper? > Cause gremlin-test pulls in stuff like junit, hamcrest and all the test > related things, while if I exclude gremlin-test, at runtime tinkergraph runs > just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Updated] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
[ https://issues.apache.org/jira/browse/TINKERPOP-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette updated TINKERPOP-1847: Component/s: build-release > tinkergraph-gremlin dependency on gremlin-test, bad scope? > -- > > Key: TINKERPOP-1847 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 > Project: TinkerPop > Issue Type: Bug > Components: build-release >Affects Versions: 3.3.0 >Reporter: Cservenak, Tamas >Assignee: stephen mallette > Fix For: 3.3.1 > > > This issue would be more a "question" type, sorry if missed the point. > Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven > default scope ("compile"). Is this scope proper? > Cause gremlin-test pulls in stuff like junit, hamcrest and all the test > related things, while if I exclude gremlin-test, at runtime tinkergraph runs > just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
Re: [DISCUSS] 3.3.1/3.2.7 December Release
There is one ticket I'd like to include related to .NET GLV: TINKERPOP-1825 (includes API changes, related to code generation). I don't know if Florian wanted to tackle it, otherwise I could work on it early next week. Besides that, I'm +1 on releasing once .NET test suite is merged. On Thu, Nov 30, 2017 at 1:52 PM, Stephen Mallettewrote: > I'd like to propose that we do a release before the end of the year. Now > that the GLV Test Suite is largely in place and we're close to having .NET > running under that suite we have a reasonable degree of confidence to make > that release official and get off the release candidate system we've been > using. It would further be good to get official releases of Gremlin Python > out there as the release candidates for 3.3.1 and 3.2.7 have been out for > about a month now without any report of trouble so those should be ready to > go. > > Aside for GLV related changes there are a fair number of bug fixes and the > import feature of math() step that need to get out into the wild. > > Other than existing open PRs > > https://github.com/apache/tinkerpop/pull/758 (.NET DSLs) > https://github.com/apache/tinkerpop/pull/754 (.NET test suite) > > I'm not aware of any major issues that need to be closed before release, > but I don't think we need to be in a huge rush to go to code freeze. Please > raise any issues or concerns that you feel are relevant to 3.3.1 and 3.2.7 > and we'll figure out where to go from here. > > Thanks, > > Stephen >
[GitHub] tinkerpop issue #695: TINKERPOP-1489 JavaScript GLV
Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/695 this is excellent. i agree that we should look to merge this for 3.2.8/3.3.2. as we hopefully release 3.2.7/3.3.1 we should see gremlin-js come into an official state in the first few months of 2018. ---
[jira] [Commented] (TINKERPOP-1489) Provide a Javascript Gremlin Language Variant
[ https://issues.apache.org/jira/browse/TINKERPOP-1489?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272803#comment-16272803 ] ASF GitHub Bot commented on TINKERPOP-1489: --- Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/695 this is excellent. i agree that we should look to merge this for 3.2.8/3.3.2. as we hopefully release 3.2.7/3.3.1 we should see gremlin-js come into an official state in the first few months of 2018. > Provide a Javascript Gremlin Language Variant > - > > Key: TINKERPOP-1489 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1489 > Project: TinkerPop > Issue Type: Improvement > Components: javascript >Affects Versions: 3.2.5 >Reporter: Jorge Bay > > It would be nice to have a Javascript Gremlin Language Variant that could > work with any ES5 runtime, specially the ones that support > [CommonJs|http://requirejs.org/docs/commonjs.html], like Node.js. > Nashorn, the engine shipped with JDK 8+, does not implement CommonJs but > provides [additional > extensions|https://wiki.openjdk.java.net/display/Nashorn/Nashorn+extensions] > making modular JavaScript possible. Nashorn should be supported in order to > run glv tests under the same infrastructure (JDK8). -- This message was sent by Atlassian JIRA (v6.4.14#64029)
Re: dropStep and BarrierStep
Hi, Any ideas about this one? Thanks Pieter On 22/11/2017 19:49, pieter gmail wrote: Hi, Whilst optimizing the DropStep in Sqlg I came across RepeatStep plus DropStep in a traversal going into a infinite loop. To test Sqlg I tested on TinkerPop's ComplexTest.playlistPath() changing the gremlin to have a drop() @Test public void testDropPlaylist() { final TinkerGraph g = TinkerGraph.open(); Io.Builder builder = GraphSONIo.build(GraphSONVersion.V3_0); final GraphReader reader = g.io(builder).reader().create(); try (final InputStream stream = AbstractGremlinTest.class.getResourceAsStream("/grateful-dead-v3d0.json")) { reader.readGraph(stream, g); } catch (IOException e) { Assert.fail(e.getMessage()); } TraversalplayListTraversal = getPlaylistPaths(g); System.out.println(playListTraversal.toString()); List vertices = playListTraversal.toList(); Assert.assertEquals(100, vertices.size()); System.out.println("counted"); Traversal dropTraversal = getPlaylistPaths(g).drop().drop().iterate(); System.out.println("done"); } public GraphTraversal getPlaylistPaths(Graph graph) { return graph.traversal().V().has("name", "Bob_Dylan").in("sungBy").as("a"). repeat(__.out().order().by(Order.shuffle).simplePath().from("a")). until(__.out("writtenBy").has("name", "Johnny_Cash")).limit(1).as("b"). repeat(__.out().order().by(Order.shuffle).as("c").simplePath().from("b").to("c")). until(__.out("sungBy").has("name", "Grateful_Dead")).limit(100); } The second dropTraversal goes into an infinite loop. A simpler scenario illustrating the infinite loop, @Test public void testRepeatDrop() { final TinkerGraph g = TinkerGraph.open(); Vertex a1 = g.addVertex(T.label, "A"); Vertex b1 = g.addVertex(T.label, "B"); Vertex c1 = g.addVertex(T.label, "C"); a1.addEdge("ab", b1); b1.addEdge("ba", a1); b1.addEdge("bc", c1); Vertex a2 = g.addVertex(T.label, "A"); Vertex b2 = g.addVertex(T.label, "B"); Vertex c2 = g.addVertex(T.label, "C"); a2.addEdge("ab", b2); b2.addEdge("ba", a2); b2.addEdge("bc", c2); a1.addEdge("ac", c1); a1.addEdge("ac", c2); List vertices = g.traversal().withoutStrategies(LazyBarrierStrategy.class) .V().hasLabel("A") .repeat(__.out("ab", "ba")) .until(__.out("bc")) .out("bc") .in("ac") .out("ac") .toList(); Assert.assertEquals(4, vertices.size()); g.traversal().withoutStrategies(LazyBarrierStrategy.class) .V().hasLabel("A") .repeat(__.out("ab", "ba")) .until(__.out("bc")) .out("bc") .in("ac") .out("ac") .drop() .iterate(); System.out.println("asdasdasd"); } Adding a BarrierStep before drop() resolves the issue but probably this should happen automatically in a strategy? Afraid I can not quite tell what the scenarios are that would cause this issue so not sure if a BarrierStep should always be added or only sometimes. Cheers Pieter
[GitHub] tinkerpop issue #695: TINKERPOP-1489 JavaScript GLV
Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/695 I've implemented the support files for the gherkin test suite. Thanks to the test suite, I've found and fixed some bugs that were part of the original implementation. `mvn clean install -pl :gremlin-javascript -DskipIntegrationTests=false` run the mocha based tests and the cucumber-based tests. I've included it on TravisCI also. ``` 328 scenarios (22 skipped, 306 passed) ``` It's ready to be reviewed! I would like the JavaScript GLV to be part of the next release cycle (3.2.8 / 3.3.2). This GLV have been sidelined several times since the original pull request #450 (Oct 2016!)... ---
[jira] [Commented] (TINKERPOP-1489) Provide a Javascript Gremlin Language Variant
[ https://issues.apache.org/jira/browse/TINKERPOP-1489?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272800#comment-16272800 ] ASF GitHub Bot commented on TINKERPOP-1489: --- Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/695 I've implemented the support files for the gherkin test suite. Thanks to the test suite, I've found and fixed some bugs that were part of the original implementation. `mvn clean install -pl :gremlin-javascript -DskipIntegrationTests=false` run the mocha based tests and the cucumber-based tests. I've included it on TravisCI also. ``` 328 scenarios (22 skipped, 306 passed) ``` It's ready to be reviewed! I would like the JavaScript GLV to be part of the next release cycle (3.2.8 / 3.3.2). This GLV have been sidelined several times since the original pull request #450 (Oct 2016!)... > Provide a Javascript Gremlin Language Variant > - > > Key: TINKERPOP-1489 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1489 > Project: TinkerPop > Issue Type: Improvement > Components: javascript >Affects Versions: 3.2.5 >Reporter: Jorge Bay > > It would be nice to have a Javascript Gremlin Language Variant that could > work with any ES5 runtime, specially the ones that support > [CommonJs|http://requirejs.org/docs/commonjs.html], like Node.js. > Nashorn, the engine shipped with JDK 8+, does not implement CommonJs but > provides [additional > extensions|https://wiki.openjdk.java.net/display/Nashorn/Nashorn+extensions] > making modular JavaScript possible. Nashorn should be supported in order to > run glv tests under the same infrastructure (JDK8). -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
[ https://issues.apache.org/jira/browse/TINKERPOP-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272750#comment-16272750 ] stephen mallette commented on TINKERPOP-1847: - That's really bad.thanks for pointing that out. The scope should be set to "test". Fixing that now. > tinkergraph-gremlin dependency on gremlin-test, bad scope? > -- > > Key: TINKERPOP-1847 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 > Project: TinkerPop > Issue Type: Improvement >Affects Versions: 3.3.0 >Reporter: Cservenak, Tamas > > This issue would be more a "question" type, sorry if missed the point. > Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven > default scope ("compile"). Is this scope proper? > Cause gremlin-test pulls in stuff like junit, hamcrest and all the test > related things, while if I exclude gremlin-test, at runtime tinkergraph runs > just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Created] (TINKERPOP-1847) tinkergraph-gremlin dependency on gremlin-test, bad scope?
Cservenak, Tamas created TINKERPOP-1847: --- Summary: tinkergraph-gremlin dependency on gremlin-test, bad scope? Key: TINKERPOP-1847 URL: https://issues.apache.org/jira/browse/TINKERPOP-1847 Project: TinkerPop Issue Type: Improvement Affects Versions: 3.3.0 Reporter: Cservenak, Tamas This issue would be more a "question" type, sorry if missed the point. Question is: tinkergraph-gremlin depends on gremlin-tes, but using maven default scope ("compile"). Is this scope proper? Cause gremlin-test pulls in stuff like junit, hamcrest and all the test related things, while if I exclude gremlin-test, at runtime tinkergraph runs just fine. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop pull request #759: TINKERPOP-1846 Fixed bug in LambdaRestrictionSt...
GitHub user spmallette opened a pull request: https://github.com/apache/tinkerpop/pull/759 TINKERPOP-1846 Fixed bug in LambdaRestrictionStrategy https://issues.apache.org/jira/browse/TINKERPOP-1846 Traversals using Lambda scripts were not triggering this strategy. The strategy expected the word "lambda" in the toString() of the step that held it. Lambda objects weren't including that word. This is ready for review/feedback. I'll withhold my vote while tests are running and others have a chance to chime in as there are other ways this could be resolved. You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-1846 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/759.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #759 commit f5f4a046f211851e901d303c6593975314171e55 Author: Stephen MalletteDate: 2017-11-30T14:26:51Z TINKERPOP-1846 Fixed bug in LambdaRestrictionStrategy Traversals using Lambda scripts were not triggering this strategy. The strategy expected the word "lambda" in the toString() of the step that held it. Lambda objects weren't including that word. ---
[jira] [Created] (TINKERPOP-1846) LambdaRestrictionStrategy not triggering for Lambda scripts
stephen mallette created TINKERPOP-1846: --- Summary: LambdaRestrictionStrategy not triggering for Lambda scripts Key: TINKERPOP-1846 URL: https://issues.apache.org/jira/browse/TINKERPOP-1846 Project: TinkerPop Issue Type: Bug Components: process Affects Versions: 3.2.6 Reporter: stephen mallette Assignee: stephen mallette Priority: Critical Traversals that use {{Lambda}} as described here: http://tinkerpop.apache.org/docs/current/reference/#_the_lambda_solution for example are not triggering the {{LambdaRestrictionStrategy}}. The problem is with the rule for the trigger itself which expects that the word "lambda" be in {{toString()}} of the step being evaluated. Currently steps that use {{Lambda}} don't produce that in their {{toString()}} - they simply return the lambda script. There are multiple fixes to this, but I think the easiest might be to just change the {{Lambda.toString()}} to include the word "lambda" and then it all just works. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1734) DSL for Gremlin .NET
[ https://issues.apache.org/jira/browse/TINKERPOP-1734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272624#comment-16272624 ] ASF GitHub Bot commented on TINKERPOP-1734: --- Github user FlorianHockmann commented on the issue: https://github.com/apache/tinkerpop/pull/758 VOTE +1 > DSL for Gremlin .NET > > > Key: TINKERPOP-1734 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1734 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet >Affects Versions: 3.2.5 >Reporter: stephen mallette > > This may just be a documentation issue, but we need to determine the approach > to building DSLs with .NET. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop issue #758: TINKERPOP-1734 DSL for Gremlin .NET
Github user FlorianHockmann commented on the issue: https://github.com/apache/tinkerpop/pull/758 VOTE +1 ---
[DISCUSS] 3.3.1/3.2.7 December Release
I'd like to propose that we do a release before the end of the year. Now that the GLV Test Suite is largely in place and we're close to having .NET running under that suite we have a reasonable degree of confidence to make that release official and get off the release candidate system we've been using. It would further be good to get official releases of Gremlin Python out there as the release candidates for 3.3.1 and 3.2.7 have been out for about a month now without any report of trouble so those should be ready to go. Aside for GLV related changes there are a fair number of bug fixes and the import feature of math() step that need to get out into the wild. Other than existing open PRs https://github.com/apache/tinkerpop/pull/758 (.NET DSLs) https://github.com/apache/tinkerpop/pull/754 (.NET test suite) I'm not aware of any major issues that need to be closed before release, but I don't think we need to be in a huge rush to go to code freeze. Please raise any issues or concerns that you feel are relevant to 3.3.1 and 3.2.7 and we'll figure out where to go from here. Thanks, Stephen
[jira] [Closed] (TINKERPOP-1811) Improve error reporting for serialization errors between gremlin-python and gremlin-server
[ https://issues.apache.org/jira/browse/TINKERPOP-1811?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stephen mallette closed TINKERPOP-1811. --- Resolution: Done Assignee: stephen mallette Fix Version/s: 3.3.1 3.2.7 > Improve error reporting for serialization errors between gremlin-python and > gremlin-server > -- > > Key: TINKERPOP-1811 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1811 > Project: TinkerPop > Issue Type: Improvement > Components: python, server >Affects Versions: 3.2.6 >Reporter: Hugo Arts >Assignee: stephen mallette >Priority: Minor > Fix For: 3.2.7, 3.3.1 > > > We ran into an issue while attempting to add a PartitionStrategy to our > traversals. This is a small example of a traversal I tried: > {code:none} > remote = DriverRemoteConnection('ws://localhost:8182/gremlin', > 'DSE_GRAPH_QUICKSTART.g') > strategy = PartitionStrategy('community_id', '2097442560', 2097442560) > g = Graph().traversal().withRemote(remote).withStrategies(strategy) > print(g.V().toList()) > {code} > The third argument of PartitionStrategy should be a list. However, the > traversal strategies in gremlin-python do not do any kind of argument/type > checking, and any mistake you make results in the following error from > gremlin server: > {noformat} > ERROR [gremlin-server-worker-1] 2017-10-25 10:15:53,285 GREMLIN > TraversalOpProcessor.java:365 - Could not deserialize the Traversal instance > {noformat} > I've omitted the [full > traceback|https://gist.github.com/anonymous/2ad6541d0169256afb1a23fbdc376009] > for brevity. There is not much indication as to what has gone wrong. > gremlin-python gives this error: > {noformat} > gremlin_python.driver.protocol.GremlinServerError: 599: None > {noformat} > Which is also unhelpful. We were eventually able to figure out what we were > doing wrong, but it would be very nice to have either some input validation > on the gremlin-python side, or have gremlin-server be more specific about the > nature of the deserialisation error (or both). -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1811) Improve error reporting for serialization errors between gremlin-python and gremlin-server
[ https://issues.apache.org/jira/browse/TINKERPOP-1811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272597#comment-16272597 ] ASF GitHub Bot commented on TINKERPOP-1811: --- Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/753 > Improve error reporting for serialization errors between gremlin-python and > gremlin-server > -- > > Key: TINKERPOP-1811 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1811 > Project: TinkerPop > Issue Type: Improvement > Components: python, server >Affects Versions: 3.2.6 >Reporter: Hugo Arts >Priority: Minor > > We ran into an issue while attempting to add a PartitionStrategy to our > traversals. This is a small example of a traversal I tried: > {code:none} > remote = DriverRemoteConnection('ws://localhost:8182/gremlin', > 'DSE_GRAPH_QUICKSTART.g') > strategy = PartitionStrategy('community_id', '2097442560', 2097442560) > g = Graph().traversal().withRemote(remote).withStrategies(strategy) > print(g.V().toList()) > {code} > The third argument of PartitionStrategy should be a list. However, the > traversal strategies in gremlin-python do not do any kind of argument/type > checking, and any mistake you make results in the following error from > gremlin server: > {noformat} > ERROR [gremlin-server-worker-1] 2017-10-25 10:15:53,285 GREMLIN > TraversalOpProcessor.java:365 - Could not deserialize the Traversal instance > {noformat} > I've omitted the [full > traceback|https://gist.github.com/anonymous/2ad6541d0169256afb1a23fbdc376009] > for brevity. There is not much indication as to what has gone wrong. > gremlin-python gives this error: > {noformat} > gremlin_python.driver.protocol.GremlinServerError: 599: None > {noformat} > Which is also unhelpful. We were eventually able to figure out what we were > doing wrong, but it would be very nice to have either some input validation > on the gremlin-python side, or have gremlin-server be more specific about the > nature of the deserialisation error (or both). -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop pull request #753: TINKERPOP-1811 Fixed bytecode deserialization e...
Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/753 ---
[jira] [Commented] (TINKERPOP-1734) DSL for Gremlin .NET
[ https://issues.apache.org/jira/browse/TINKERPOP-1734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272580#comment-16272580 ] ASF GitHub Bot commented on TINKERPOP-1734: --- Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/758 VOTE +1 > DSL for Gremlin .NET > > > Key: TINKERPOP-1734 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1734 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet >Affects Versions: 3.2.5 >Reporter: stephen mallette > > This may just be a documentation issue, but we need to determine the approach > to building DSLs with .NET. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop issue #758: TINKERPOP-1734 DSL for Gremlin .NET
Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/758 VOTE +1 ---
[jira] [Commented] (TINKERPOP-1734) DSL for Gremlin .NET
[ https://issues.apache.org/jira/browse/TINKERPOP-1734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272578#comment-16272578 ] ASF GitHub Bot commented on TINKERPOP-1734: --- Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/758 Addressed all the feedback with the latest changed and rebased to get rid of the changelog conflict. > DSL for Gremlin .NET > > > Key: TINKERPOP-1734 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1734 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet >Affects Versions: 3.2.5 >Reporter: stephen mallette > > This may just be a documentation issue, but we need to determine the approach > to building DSLs with .NET. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop issue #758: TINKERPOP-1734 DSL for Gremlin .NET
Github user spmallette commented on the issue: https://github.com/apache/tinkerpop/pull/758 Addressed all the feedback with the latest changed and rebased to get rid of the changelog conflict. ---
[jira] [Commented] (TINKERPOP-1827) Gremlin .NET: Test Suite Runner
[ https://issues.apache.org/jira/browse/TINKERPOP-1827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272474#comment-16272474 ] ASF GitHub Bot commented on TINKERPOP-1827: --- Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/754 I've rebased after #757 was merged. Included all previously skipped scenarios related to `IDictionary` coercion. I included two type-related fixes to the Match and Group features. ``` Total scenarios: 328. Passed: 306. Failed: 0. Skipped: 22. ``` > Gremlin .NET: Test Suite Runner > --- > > Key: TINKERPOP-1827 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1827 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet, test-suite >Affects Versions: 3.2.6 >Reporter: Jorge Bay >Assignee: Jorge Bay > > Provide a way to run the language agnostic test framework from TINKERPOP-1784 > on the .NET GLV. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop issue #754: TINKERPOP-1827 Gremlin .NET: Test Suite Runner
Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/754 I've rebased after #757 was merged. Included all previously skipped scenarios related to `IDictionary` coercion. I included two type-related fixes to the Match and Group features. ``` Total scenarios: 328. Passed: 306. Failed: 0. Skipped: 22. ``` ---
[jira] [Closed] (TINKERPOP-1837) Gremlin .NET: Provide type coercion between IDictionary<K, V> instances
[ https://issues.apache.org/jira/browse/TINKERPOP-1837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jorge Bay closed TINKERPOP-1837. Resolution: Done > Gremlin .NET: Provide type coercion between IDictionaryinstances > --- > > Key: TINKERPOP-1837 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1837 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet >Affects Versions: 3.3.0, 3.2.6 >Reporter: Jorge Bay >Assignee: Jorge Bay > Fix For: 3.2.7, 3.3.1 > > > As [described on the mailing > list|https://lists.apache.org/thread.html/368c4aa3b37ef9628a3af612aece93fe9ca1914e3b3393e7e2e9fbdd@%3Cdev.tinkerpop.apache.org%3E], > the limitation for of the specification combined with the strictness of .NET > generics, makes dealing with maps on the .NET GLV hard / impossible. > All methods returning a map have this issue, as in the following example: > {code} > IDictionary result = > g.V().ValueMap ("age").Next(); > {code} > Causes an exception at runtime: > {code} > System.InvalidCastException: Unable to cast object of type > 'System.Collections.Generic.Dictionary`2[System.Object,System.Object]' to > type > 'System.Collections.Generic.IDictionary`2[System.String,System.Collections.Generic.IList`2[System.Int32]]'. > {code} > We should provide conversion mechanism inside the default traversal. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1837) Gremlin .NET: Provide type coercion between IDictionary<K, V> instances
[ https://issues.apache.org/jira/browse/TINKERPOP-1837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272387#comment-16272387 ] ASF GitHub Bot commented on TINKERPOP-1837: --- Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/757 > Gremlin .NET: Provide type coercion between IDictionaryinstances > --- > > Key: TINKERPOP-1837 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1837 > Project: TinkerPop > Issue Type: Improvement > Components: dotnet >Affects Versions: 3.3.0, 3.2.6 >Reporter: Jorge Bay >Assignee: Jorge Bay > Fix For: 3.2.7, 3.3.1 > > > As [described on the mailing > list|https://lists.apache.org/thread.html/368c4aa3b37ef9628a3af612aece93fe9ca1914e3b3393e7e2e9fbdd@%3Cdev.tinkerpop.apache.org%3E], > the limitation for of the specification combined with the strictness of .NET > generics, makes dealing with maps on the .NET GLV hard / impossible. > All methods returning a map have this issue, as in the following example: > {code} > IDictionary result = > g.V().ValueMap ("age").Next(); > {code} > Causes an exception at runtime: > {code} > System.InvalidCastException: Unable to cast object of type > 'System.Collections.Generic.Dictionary`2[System.Object,System.Object]' to > type > 'System.Collections.Generic.IDictionary`2[System.String,System.Collections.Generic.IList`2[System.Int32]]'. > {code} > We should provide conversion mechanism inside the default traversal. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop pull request #757: TINKERPOP-1837 Gremlin .NET: Provide type coerc...
Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/757 ---
[jira] [Commented] (TINKERPOP-1734) DSL for Gremlin .NET
[ https://issues.apache.org/jira/browse/TINKERPOP-1734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272381#comment-16272381 ] ASF GitHub Bot commented on TINKERPOP-1734: --- Github user jorgebay commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/758#discussion_r154014270 --- Diff: docs/src/reference/the-traversal.asciidoc --- @@ -3218,3 +3218,93 @@ social.persons("marko").youngestFriendsAge() social.persons().filter(__.createdAtLeast(2)).count() +=== Gremlin.Net + +Developing DSLs for .Net is most easily implemented using link:https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/extension-methods[Extension Methods] +as they don't require direct extension of classes in the TinkerPop hierarchy. Extension Method classes simply need to +be constructed for the `GraphTraversal` and the `GraphTraversalSource`. Unfortunately, anonymous traversals (spawned +from `__`) can't use the Extension Method approach as they do not work for static classes and static classes can't be +extended. The only option is to re-implement the methods of `__` as a wrapper in the anonymous traversal for the DSL +or to simply create a static class for the DSL and use the two anonymous traversals creators independently. The +following example uses the latter approach as it saves a lot of boilerplate code with the minor annoyance of having a +second static class to deal with when writing traversals rather than just calling `__` for everything. + +[source,csharp] + +namespace Dsl +{ + +public static class SocialTraversal +{ +public static GraphTraversalKnows(this GraphTraversal t, string personName) +{ +return t.Out("knows").HasLabel("person").Has("name", personName); +} + +public static GraphTraversal YoungestFriendsAge(this GraphTraversal t) +{ +return t.Out("knows").HasLabel("person").Values("age").Min(); +} + +public static GraphTraversal CreatedAtLeast(this GraphTraversal t, long number) +{ +return t.OutE("created").Count().Is(P.Gte(number)); +} +} + +public static class __Social +{ +public static GraphTraversal
[jira] [Commented] (TINKERPOP-1811) Improve error reporting for serialization errors between gremlin-python and gremlin-server
[ https://issues.apache.org/jira/browse/TINKERPOP-1811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272345#comment-16272345 ] ASF GitHub Bot commented on TINKERPOP-1811: --- Github user jorgebay commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/753#discussion_r154010923 --- Diff: gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java --- @@ -173,6 +173,12 @@ private Object invokeMethod(final Object delegate, final Class returnType, final for (int i = 0; i < arguments.length; i++) { argumentsCopy[i] = translateObject(arguments[i]); } + +// without this initial check iterating an invalid methodName will lead to a null pointer and a less than +// great error message for the user. +if (!methodCache.containsKey(methodName)) +throw new IllegalStateException("Could not locate method: " + delegate.getClass().getSimpleName() + "." + methodName + "(" + Arrays.toString(argumentsCopy) + ")"); --- End diff -- I agree, its more clear with empty parameters in the case of no method args. > Improve error reporting for serialization errors between gremlin-python and > gremlin-server > -- > > Key: TINKERPOP-1811 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1811 > Project: TinkerPop > Issue Type: Improvement > Components: python, server >Affects Versions: 3.2.6 >Reporter: Hugo Arts >Priority: Minor > > We ran into an issue while attempting to add a PartitionStrategy to our > traversals. This is a small example of a traversal I tried: > {code:none} > remote = DriverRemoteConnection('ws://localhost:8182/gremlin', > 'DSE_GRAPH_QUICKSTART.g') > strategy = PartitionStrategy('community_id', '2097442560', 2097442560) > g = Graph().traversal().withRemote(remote).withStrategies(strategy) > print(g.V().toList()) > {code} > The third argument of PartitionStrategy should be a list. However, the > traversal strategies in gremlin-python do not do any kind of argument/type > checking, and any mistake you make results in the following error from > gremlin server: > {noformat} > ERROR [gremlin-server-worker-1] 2017-10-25 10:15:53,285 GREMLIN > TraversalOpProcessor.java:365 - Could not deserialize the Traversal instance > {noformat} > I've omitted the [full > traceback|https://gist.github.com/anonymous/2ad6541d0169256afb1a23fbdc376009] > for brevity. There is not much indication as to what has gone wrong. > gremlin-python gives this error: > {noformat} > gremlin_python.driver.protocol.GremlinServerError: 599: None > {noformat} > Which is also unhelpful. We were eventually able to figure out what we were > doing wrong, but it would be very nice to have either some input validation > on the gremlin-python side, or have gremlin-server be more specific about the > nature of the deserialisation error (or both). -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop issue #753: TINKERPOP-1811 Fixed bytecode deserialization error me...
Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/753 Besides the suggestion from @dkuppitz , lgtm! VOTE +1 ---
[jira] [Commented] (TINKERPOP-1811) Improve error reporting for serialization errors between gremlin-python and gremlin-server
[ https://issues.apache.org/jira/browse/TINKERPOP-1811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16272346#comment-16272346 ] ASF GitHub Bot commented on TINKERPOP-1811: --- Github user jorgebay commented on the issue: https://github.com/apache/tinkerpop/pull/753 Besides the suggestion from @dkuppitz , lgtm! VOTE +1 > Improve error reporting for serialization errors between gremlin-python and > gremlin-server > -- > > Key: TINKERPOP-1811 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1811 > Project: TinkerPop > Issue Type: Improvement > Components: python, server >Affects Versions: 3.2.6 >Reporter: Hugo Arts >Priority: Minor > > We ran into an issue while attempting to add a PartitionStrategy to our > traversals. This is a small example of a traversal I tried: > {code:none} > remote = DriverRemoteConnection('ws://localhost:8182/gremlin', > 'DSE_GRAPH_QUICKSTART.g') > strategy = PartitionStrategy('community_id', '2097442560', 2097442560) > g = Graph().traversal().withRemote(remote).withStrategies(strategy) > print(g.V().toList()) > {code} > The third argument of PartitionStrategy should be a list. However, the > traversal strategies in gremlin-python do not do any kind of argument/type > checking, and any mistake you make results in the following error from > gremlin server: > {noformat} > ERROR [gremlin-server-worker-1] 2017-10-25 10:15:53,285 GREMLIN > TraversalOpProcessor.java:365 - Could not deserialize the Traversal instance > {noformat} > I've omitted the [full > traceback|https://gist.github.com/anonymous/2ad6541d0169256afb1a23fbdc376009] > for brevity. There is not much indication as to what has gone wrong. > gremlin-python gives this error: > {noformat} > gremlin_python.driver.protocol.GremlinServerError: 599: None > {noformat} > Which is also unhelpful. We were eventually able to figure out what we were > doing wrong, but it would be very nice to have either some input validation > on the gremlin-python side, or have gremlin-server be more specific about the > nature of the deserialisation error (or both). -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[GitHub] tinkerpop pull request #753: TINKERPOP-1811 Fixed bytecode deserialization e...
Github user jorgebay commented on a diff in the pull request: https://github.com/apache/tinkerpop/pull/753#discussion_r154010923 --- Diff: gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/jsr223/JavaTranslator.java --- @@ -173,6 +173,12 @@ private Object invokeMethod(final Object delegate, final Class returnType, final for (int i = 0; i < arguments.length; i++) { argumentsCopy[i] = translateObject(arguments[i]); } + +// without this initial check iterating an invalid methodName will lead to a null pointer and a less than +// great error message for the user. +if (!methodCache.containsKey(methodName)) +throw new IllegalStateException("Could not locate method: " + delegate.getClass().getSimpleName() + "." + methodName + "(" + Arrays.toString(argumentsCopy) + ")"); --- End diff -- I agree, its more clear with empty parameters in the case of no method args. ---