neo4j 7.0.0.rc.2 → 7.0.0.rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1a8afc709bd3d4e369395546f660ec08451e9d28
4
- data.tar.gz: 181c2899fbab41d65b573631dea7db7a9333ef79
3
+ metadata.gz: 8d5bc4e8f2bcb42f5e7747829c71fcb95428bf34
4
+ data.tar.gz: a0bfde6039373ffdcec00dafb52aad95011575f8
5
5
  SHA512:
6
- metadata.gz: f35c3f75e3a7fd737738892811844381d8b2fb83d4533635ddf0b790ff04a9e10634a0fee4199324365c89ae144e00d9520655adc459a0d41308cbc170e21696
7
- data.tar.gz: 080b24bf7d0bb3c9990cbbfd72de0f7a60ba172ecc0089364b2c7d5bd9c3ff0deef3a0fd7a8cf4b64e11504aa53efd9e45f10718f3b97b9d91e16efa4ec44c7f
6
+ metadata.gz: d43b84a06a654cd8c35aaed5fb300690f9bfc3e626657f6aa459e0a124349ede4c3933449c2c0e16ec8fe98c30b1a55ac1c5abfb49e05dbe32367124358f0258
7
+ data.tar.gz: 5b4d1156d174b8c26c8d55f2fb16634b25698435af6532fbbf2b7fe19b55f48f8e6ae616be2b89e2fc9d5f0cfd139333b174c7a18727794d220574d67d441703
data/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@ All notable changes to this project will be documented in this file.
3
3
  This file should follow the standards specified on [http://keepachangelog.com/]
4
4
  This project adheres to [Semantic Versioning](http://semver.org/).
5
5
 
6
+ ## [7.0.0.rc.2] - 03-08-2016
7
+
8
+ ### Fixed
9
+
10
+ - Allow for array values when querying for enums (i.e. `where(enum_field: [:value1, :value2])`) (see #1150)
11
+
12
+ ## [7.0.0.rc.2] - 03-08-2016
13
+
14
+ ### Fixed
15
+
16
+ - Issue where creating relationships via `has_one` association created two relationships (forward ported from 6.0.7 / 6.1.9)
17
+
6
18
  ## [7.0.0.rc.1] - 03-08-2016
7
19
 
8
20
  ### Changed
@@ -32,6 +44,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
32
44
  - All `call` class methods from Type Converters. Use `to_ruby` instead.
33
45
  - `Neo4j::ActiveNode::Labels::InvalidQueryError`, since it's unused.
34
46
 
47
+ ## [6.1.9] - 2016-03-08
48
+
49
+ ### Fixed
50
+
51
+ - Issue where creating relationships via `has_one` association created two relationships (forward ported from 6.0.7)
52
+
35
53
  ## [6.1.8] - 2016-03-02
36
54
 
37
55
  ### Fixed
@@ -99,6 +117,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
99
117
  - `config/neo4j.yml` now renders with an ERB step (thanks to mrstif via #1060)
100
118
  - `#increment`, `#increment!` and `#concurrent_increment!` methods added to instances of ActiveNode and ActiveRel (thanks to ProGM in #1074)
101
119
 
120
+ ## [6.0.7] - 03-08-2016
121
+
122
+ ### Fixed
123
+
124
+ - Issue where creating relationships via `has_one` association created two relationships
125
+
102
126
  ## [6.0.6] - 01-20-2016
103
127
 
104
128
  ### Fixed
@@ -136,7 +136,12 @@ module Neo4j::Shared
136
136
  def value_for_where(key, value)
137
137
  return value unless prop = registered_properties[key]
138
138
  return value_for_db(key, value) if prop.typecaster && prop.typecaster.convert_type == value.class
139
- EXCLUDED_TYPES.include?(value.class) ? value : value_for_db(key, value)
139
+
140
+ if should_convert_for_where?(key, value)
141
+ value_for_db(key, value)
142
+ else
143
+ value
144
+ end
140
145
  end
141
146
 
142
147
  def value_for_db(key, value)
@@ -165,6 +170,10 @@ module Neo4j::Shared
165
170
 
166
171
  private
167
172
 
173
+ def should_convert_for_where?(key, value)
174
+ (value.is_a?(Array) && supports_array?(key)) || !EXCLUDED_TYPES.include?(value.class)
175
+ end
176
+
168
177
  # @param [Symbol] key An undeclared property value found in the _persisted_obj.props hash.
169
178
  # Typically, this is a node's id property, which will not be registered as other properties are.
170
179
  # In the future, this should probably be reworked a bit. This class should either not know or care
@@ -17,6 +17,10 @@ module Neo4j::Shared
17
17
  value.is_a?(db_type)
18
18
  end
19
19
  end
20
+
21
+ def supports_array?
22
+ false
23
+ end
20
24
  end
21
25
 
22
26
  class IntegerConverter < BaseConverter
@@ -274,6 +278,10 @@ module Neo4j::Shared
274
278
  value.is_a?(db_type)
275
279
  end
276
280
 
281
+ def supports_array?
282
+ true
283
+ end
284
+
277
285
  def db_type
278
286
  Integer
279
287
  end
@@ -289,7 +297,11 @@ module Neo4j::Shared
289
297
  alias_method :call, :to_ruby
290
298
 
291
299
  def to_db(value)
292
- @enum_keys[value.to_s.to_sym] || 0
300
+ if value.is_a?(Array)
301
+ value.map(&method(:to_db))
302
+ else
303
+ @enum_keys[value.to_s.to_sym] || 0
304
+ end
293
305
  end
294
306
  end
295
307
 
@@ -326,6 +338,11 @@ module Neo4j::Shared
326
338
  converted_property(primitive_type(key.to_sym), value, direction)
327
339
  end
328
340
 
341
+ def supports_array?(key)
342
+ type = primitive_type(key.to_sym)
343
+ type.respond_to?(:supports_array?) && type.supports_array?
344
+ end
345
+
329
346
  def typecaster_for(value)
330
347
  Neo4j::Shared::TypeConverters.typecaster_for(value)
331
348
  end
data/lib/neo4j/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Neo4j
2
- VERSION = '7.0.0.rc.2'
2
+ VERSION = '7.0.0.rc.3'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: neo4j
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.0.rc.2
4
+ version: 7.0.0.rc.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andreas Ronge, Brian Underwood, Chris Grigg
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-08 00:00:00.000000000 Z
11
+ date: 2016-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: orm_adapter