grumlin 0.19.0 → 0.19.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f899b66f4f483334c271ca60f6ade26d5b403bc10552e03700595e983e0268cb
4
- data.tar.gz: ea689ad161f0b220e37af0fd5aa32adaa50990ebdcdc6d8e8cef7b12b53067e5
3
+ metadata.gz: 7ce013b3f95a61f038a3dd646c4f47de81026bf9ec396467a0500f2fc7c055e3
4
+ data.tar.gz: 78cd3caf0ce18bce7741236cf9f232b58eb0b675492102826635ccc441f98cec
5
5
  SHA512:
6
- metadata.gz: f9d3c770966a9f44efc25c7f7ad3a33203daafc0e1f3887db22ef6cd9c37415073c72cb90dd7cb7658c12a5e9ac2aa587c48d590ff417a7ba4c26b1f2586214d
7
- data.tar.gz: 5a9ed3d9e7ff5c717083b5d36b8de17a4ef8b3ed4310c67b35b8ff56d5f7b49e2d74770e47cd1aa96f3544549f9fad9ddba5bf5695ca4bf9e23c04bb4d15f90b
6
+ metadata.gz: 3f49d27bc55301991f4eff5935eb90d1a3dff873551466ffcbf6ecc978d25149eba939a45b2e9e966b706470a7c47496e575f51ba2fab26ebb96e9deb9d31bcd
7
+ data.tar.gz: 656e68d9d2ba385d0e2c17d4e28658f15b2d224338e9e3d0bc93b2336bcfe4c4d30226f2efb653e21678c0131f79c9a3d3043e1ac8b1a0b9489e12606c65d425
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- grumlin (0.19.0)
4
+ grumlin (0.19.3)
5
5
  async-pool (~> 0.3)
6
6
  async-websocket (~> 0.19)
7
7
  oj (~> 3.12)
@@ -18,7 +18,7 @@ GEM
18
18
  tzinfo (~> 2.0)
19
19
  zeitwerk (~> 2.3)
20
20
  ast (2.4.2)
21
- async (1.30.1)
21
+ async (1.30.2)
22
22
  console (~> 1.10)
23
23
  nio4r (~> 2.3)
24
24
  timers (~> 4.1)
@@ -32,7 +32,7 @@ GEM
32
32
  traces (~> 0.4.0)
33
33
  async-io (1.33.0)
34
34
  async
35
- async-pool (0.3.9)
35
+ async-pool (0.3.10)
36
36
  async (>= 1.25)
37
37
  async-rspec (1.16.0)
38
38
  rspec (~> 3.0)
data/lib/definitions.yml CHANGED
@@ -77,6 +77,9 @@ steps:
77
77
  - withSack
78
78
  - withSideEffect
79
79
  expressions:
80
+ column:
81
+ - keys
82
+ - values
80
83
  operator:
81
84
  - addAll
82
85
  - and
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Grumlin
4
+ module Expressions
5
+ module Column
6
+ SUPPORTED_STEPS = Grumlin.definitions.dig(:expressions, :column).map(&:to_sym).freeze
7
+
8
+ class << self
9
+ extend Expression
10
+
11
+ define_steps(SUPPORTED_STEPS, "Column")
12
+ end
13
+ end
14
+ end
15
+ end
@@ -64,8 +64,8 @@ module Grumlin
64
64
  # [["label", "id", {create: :properties}, {update: properties}]]
65
65
  # params can override Retryable config from UPSERT_RETRY_PARAMS
66
66
  def upsert_vertices(vertices, batch_size: 100, on_failure: :retry, **params)
67
- with_upsert_error_handling(on_failure, params) do
68
- vertices.each_slice(batch_size) do |slice|
67
+ vertices.each_slice(batch_size) do |slice|
68
+ with_upsert_error_handling(on_failure, params) do
69
69
  slice.reduce(g) do |t, (label, id, create_properties, update_properties)|
70
70
  create_properties, update_properties = cleanup_properties(create_properties, update_properties)
71
71
 
@@ -88,8 +88,8 @@ module Grumlin
88
88
  # [["label", "id", {create: :properties}, {update: properties}]]
89
89
  # params can override Retryable config from UPSERT_RETRY_PARAMS
90
90
  def upsert_edges(edges, batch_size: 100, on_failure: :retry, **params)
91
- with_upsert_error_handling(on_failure, params) do
92
- edges.each_slice(batch_size) do |slice|
91
+ edges.each_slice(batch_size) do |slice|
92
+ with_upsert_error_handling(on_failure, params) do
93
93
  slice.reduce(g) do |t, (label, from, to, create_properties, update_properties)|
94
94
  create_properties, update_properties = cleanup_properties(create_properties, update_properties, T.label)
95
95
 
@@ -21,7 +21,7 @@ module Grumlin
21
21
  "g:T" => ->(value) { Grumlin::Expressions::T.public_send(value) }
22
22
  }.freeze
23
23
 
24
- CASTABLE_TYPES = [Hash, String, Integer, TrueClass, FalseClass].freeze
24
+ CASTABLE_TYPES = [Hash, String, Integer, TrueClass, FalseClass, NilClass].freeze
25
25
 
26
26
  class << self
27
27
  def cast(value)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Grumlin
4
- VERSION = "0.19.0"
4
+ VERSION = "0.19.3"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grumlin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.19.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gleb Sinyavskiy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-03 00:00:00.000000000 Z
11
+ date: 2022-05-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async-pool
@@ -115,6 +115,7 @@ files:
115
115
  - lib/grumlin/action.rb
116
116
  - lib/grumlin/client.rb
117
117
  - lib/grumlin/edge.rb
118
+ - lib/grumlin/expressions/column.rb
118
119
  - lib/grumlin/expressions/expression.rb
119
120
  - lib/grumlin/expressions/operator.rb
120
121
  - lib/grumlin/expressions/order.rb