{"action":"created","issue":{"url":"https://api.github.com/repos/google/cayley/issues/153","labels_url":"https://api.github.com/repos/google/cayley/issues/153/labels{/name}","comments_url":"https://api.github.com/repos/google/cayley/issues/153/comments","events_url":"https://api.github.com/repos/google/cayley/issues/153/events","html_url":"https://github.com/google/cayley/pull/153","id":42258762,"number":153,"title":"Except Operator for Gremlin.","user":{"login":"mataevs","id":4065897,"avatar_url":"https://avatars.githubusercontent.com/u/4065897?v=3","gravatar_id":"","url":"https://api.github.com/users/mataevs","html_url":"https://github.com/mataevs","followers_url":"https://api.github.com/users/mataevs/followers","following_url":"https://api.github.com/users/mataevs/following{/other_user}","gists_url":"https://api.github.com/users/mataevs/gists{/gist_id}","starred_url":"https://api.github.com/users/mataevs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mataevs/subscriptions","organizations_url":"https://api.github.com/users/mataevs/orgs","repos_url":"https://api.github.com/users/mataevs/repos","events_url":"https://api.github.com/users/mataevs/events{/privacy}","received_events_url":"https://api.github.com/users/mataevs/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2014-09-09T00:23:08Z","updated_at":"2015-02-06T01:38:09Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/google/cayley/pulls/153","html_url":"https://github.com/google/cayley/pull/153","diff_url":"https://github.com/google/cayley/pull/153.diff","patch_url":"https://github.com/google/cayley/pull/153.patch"},"body":"Proposing an Except (alias Difference) operator for Gremlin query language.\r\n\r\nUsage:\r\nHasNot pattern - get all nodes that don't have a 'status' predicate to object 'cool'.\r\ng.V().Except(g.V().Has('status', 'cool')).All()\r\n\r\nA.Except(B) - where A and B are complete iterators (not morphisms). The result will be the elements of A which do not appear in B (hence the \"difference\" alias for it)."},"comment":{"url":"https://api.github.com/repos/google/cayley/issues/comments/73166352","html_url":"https://github.com/google/cayley/pull/153#issuecomment-73166352","issue_url":"https://api.github.com/repos/google/cayley/issues/153","id":73166352,"user":{"login":"barakmich","id":98356,"avatar_url":"https://avatars.githubusercontent.com/u/98356?v=3","gravatar_id":"","url":"https://api.github.com/users/barakmich","html_url":"https://github.com/barakmich","followers_url":"https://api.github.com/users/barakmich/followers","following_url":"https://api.github.com/users/barakmich/following{/other_user}","gists_url":"https://api.github.com/users/barakmich/gists{/gist_id}","starred_url":"https://api.github.com/users/barakmich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/barakmich/subscriptions","organizations_url":"https://api.github.com/users/barakmich/orgs","repos_url":"https://api.github.com/users/barakmich/repos","events_url":"https://api.github.com/users/barakmich/events{/privacy}","received_events_url":"https://api.github.com/users/barakmich/received_events","type":"User","site_admin":false},"created_at":"2015-02-06T01:38:09Z","updated_at":"2015-02-06T01:38:09Z","body":"So, thorough belated review tonight. It's exactly how I'd have written it, and I'm glad to finally merge this.\r\n\r\nDamn, it's perfect. I've opened the doc addition as #205.\r\n\r\nLGTM"}}