neo4j 9.5.3 → 9.6.0

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
  SHA256:
3
- metadata.gz: 822965793898b0cdde8a1e6410520b411478b84e849ee4130a53e6391858f8c4
4
- data.tar.gz: c92710ffdbca32f588378bf11ea0466fc69233f571656e499b0287fa685f1578
3
+ metadata.gz: 43e2766ba1ce0e8a8f3a87d750f2b162b5dbf3428cf1be8f564323a499e1701a
4
+ data.tar.gz: 05cf66caefa84395b4e5a1c24b81b65aa9a1cd1f519a681ee6b43cd18dfc7005
5
5
  SHA512:
6
- metadata.gz: ff8a3d6a6122ad2f9fee70dcafbb10a2c30de757c0d98b755547334d56b5df020ae66eebaa12750dbdb2ab418a57ee071fd736960225426e0d55bef178e104bf
7
- data.tar.gz: 19a8e93b5dd488c8d119d48230a02127b2622842de1adda468fe57f996ad00ec128f927e2b05e5ddea2cf4fd298cde324a5c7f3c90a16473614ea48ca838563f
6
+ metadata.gz: a1d7a3986d18fb877ccd4defc85cd2b98d1b5bf2f3907cc8098825209226c3417610c7fe7d4f9a0df5725d1fbf844ac5d3e275047650e8ddb7ff93762260f79d
7
+ data.tar.gz: 233023315b80577975f7239fe5ac1e69b2b0506786ed062f027f13fdb5f376873ccca86d0f4b10e9e6da8b1142c1a1f0f7c4a5f2fc32a7836197e044351930e0
@@ -3,6 +3,17 @@ 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
+ ## [9.6.0] 2019-09-3
7
+
8
+ ## Added
9
+
10
+ - support for activemodel and activesupport version 6 (thanks @mrhardikjoshi)
11
+
12
+ ## Fixed
13
+
14
+ - fixed cypher generation for `remove_property` (thanks @lshimokawa)
15
+ - cleaned up deprecations, unused files and badges (thanks @olleolleolle)
16
+
6
17
  ## [9.5.3] 2019-08-16
7
18
 
8
19
  ## Fixed
data/README.md CHANGED
@@ -3,16 +3,9 @@
3
3
  ## Code Status
4
4
 
5
5
  [![Actively Maintained](https://img.shields.io/badge/Maintenance%20Level-Actively%20Maintained-green.svg)](https://gist.github.com/cheerfulstoic/d107229326a01ff0f333a1d3476e068d)
6
- [![Build Status](https://secure.travis-ci.org/neo4jrb/neo4j.png?branch=master)](http://travis-ci.org/neo4jrb/neo4j)
7
- [![Coverage Status](https://coveralls.io/repos/neo4jrb/neo4j/badge.png?branch=master)](https://coveralls.io/r/neo4jrb/neo4j?branch=master)
8
- [![Code Climate](https://codeclimate.com/github/neo4jrb/neo4j.png)](https://codeclimate.com/github/neo4jrb/neo4j)
9
- [![PullReview stats](https://www.pullreview.com/github/neo4jrb/neo4j/badges/master.svg?)](https://www.pullreview.com/github/neo4jrb/neo4j/reviews/master)
10
-
11
- ## Issues
12
-
13
- [![Next Release](https://badge.waffle.io/neo4jrb/neo4j.png?label=Next%20Release&title=Next%20Release) ![In Progress](https://badge.waffle.io/neo4jrb/neo4j.png?label=In%20Progress&title=In%20Progress) ![In Master](https://badge.waffle.io/neo4jrb/neo4j.png?label=In%20Master&title=In%20Master)](https://waffle.io/neo4jrb/neo4j)
14
-
15
- [![Post an issue](https://img.shields.io/badge/Bug%3F-Post%20an%20issue!-blue.svg)](https://waffle.io/neo4jrb/neo4j)
6
+ [![Build Status](https://secure.travis-ci.org/neo4jrb/neo4j.svg?branch=master)](http://travis-ci.org/neo4jrb/neo4j)
7
+ [![Coverage Status](https://coveralls.io/repos/neo4jrb/neo4j/badge.svg?branch=master)](https://coveralls.io/r/neo4jrb/neo4j?branch=master)
8
+ [![Code Climate](https://codeclimate.com/github/neo4jrb/neo4j.svg)](https://codeclimate.com/github/neo4jrb/neo4j)
16
9
 
17
10
  ## Get Support
18
11
 
@@ -14,7 +14,7 @@ module Neo4j
14
14
  'To overwrite, call `remove_property(:%{label}, :%{new_property})` before this method.'.freeze
15
15
 
16
16
  def remove_property(label, property)
17
- by_label(label).remove(n: property).exec
17
+ by_label(label).remove("n.#{property}").exec
18
18
  end
19
19
 
20
20
  def rename_property(label, old_property, new_property)
@@ -27,9 +27,14 @@ module Neo4j::Shared
27
27
 
28
28
  # We should be using #clear_changes_information
29
29
  # but right now we don't use `ActiveModel` attributes correctly and so it doesn't work
30
+ # Once we set @attribute correctly from using class ActiveModel::Attribute
31
+ # we will no longer need to explicitly call following method and can safely remove it
30
32
  def changed_attributes_clear!
31
33
  return if changed_attributes.nil?
32
34
 
35
+ # with ActiveModel 6.0.0 we have to clear attribute changes with clear_attribute_changes
36
+ clear_attribute_changes(self.attributes.keys)
37
+
33
38
  # changed_attributes is frozen starting with ActiveModel 5.2.0
34
39
  # Not a good long term solution
35
40
  if changed_attributes.frozen?
@@ -39,7 +44,12 @@ module Neo4j::Shared
39
44
  end
40
45
  end
41
46
 
47
+ # Once we set @attribute correctly from using class ActiveModel::Attribute
48
+ # we will no longer need to explicitly call following method and can safely remove it
42
49
  def changed_attributes_selective_clear!(hash_to_clear)
50
+ # with ActiveModel 6.0.0 we have to clear attribute changes with clear_attribute_change
51
+ hash_to_clear.each_key { |k| clear_attribute_change(k) } if defined?(ActiveModel::ForcedMutationTracker)
52
+
43
53
  # changed_attributes is frozen starting with ActiveModel 5.2.0
44
54
  # Not a good long term solution
45
55
  if changed_attributes.frozen?
@@ -242,7 +242,14 @@ module Neo4j::Shared
242
242
  .pluck("#{element_name}.`#{attribute}`").first
243
243
  return false unless new_attribute
244
244
  self[attribute] = new_attribute
245
- set_attribute_was(attribute, new_attribute)
245
+
246
+ if defined? ActiveModel::ForcedMutationTracker
247
+ # with ActiveModel 6.0.0 set_attribute_was is removed
248
+ # so we mark attribute's previous value using attr_will_change method
249
+ clear_attribute_change(attribute)
250
+ else
251
+ set_attribute_was(attribute, new_attribute)
252
+ end
246
253
  true
247
254
  end
248
255
 
@@ -11,8 +11,11 @@ module Neo4j::Shared
11
11
 
12
12
  attr_reader :_persisted_obj
13
13
 
14
+ # TODO: Set @attribute correctly using class ActiveModel::Attribute, and after that
15
+ # remove mutations_from_database and other ActiveModel::Dirty overrided methods
14
16
  def mutations_from_database
15
- ActiveModel::NullMutationTracker.instance
17
+ @mutations_from_database ||=
18
+ defined?(ActiveModel::ForcedMutationTracker) ? ActiveModel::ForcedMutationTracker.new(self) : ActiveModel::NullMutationTracker.instance
16
19
  end
17
20
 
18
21
  def inspect
@@ -1,3 +1,3 @@
1
1
  module Neo4j
2
- VERSION = '9.5.3'
2
+ VERSION = '9.6.0'
3
3
  end
@@ -23,7 +23,6 @@ DESCRIPTION
23
23
  s.require_path = 'lib'
24
24
  s.files = Dir.glob('{bin,lib,config}/**/*') + %w(README.md CHANGELOG.md CONTRIBUTORS Gemfile neo4j.gemspec)
25
25
  s.executables = ['neo4j-jars']
26
- s.has_rdoc = true
27
26
  s.extra_rdoc_files = %w( README.md )
28
27
  s.rdoc_options = ['--quiet', '--title', 'Neo4j.rb', '--line-numbers', '--main', 'README.rdoc', '--inline-source']
29
28
  s.metadata = {
@@ -33,8 +32,8 @@ DESCRIPTION
33
32
  'bug_tracker_uri' => 'https://github.com/neo4jrb/neo4j/issues'
34
33
  }
35
34
 
36
- s.add_dependency('activemodel', ['>= 4.0', '< 6'])
37
- s.add_dependency('activesupport', ['>= 4.0', '< 6'])
35
+ s.add_dependency('activemodel', '>= 4.0')
36
+ s.add_dependency('activesupport', '>= 4.0')
38
37
  s.add_dependency('i18n', '!= 1.3.0') # version 1.3.0 introduced a bug with `symbolize_key`
39
38
  s.add_dependency('neo4j-core', '>= 9.0.0')
40
39
  s.add_dependency('orm_adapter', '~> 0.5.0')
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: 9.5.3
4
+ version: 9.6.0
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: 2019-08-23 00:00:00.000000000 Z
11
+ date: 2019-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -17,9 +17,6 @@ dependencies:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '4.0'
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: '6'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
@@ -27,9 +24,6 @@ dependencies:
27
24
  - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '4.0'
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '6'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: activesupport
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -37,9 +31,6 @@ dependencies:
37
31
  - - ">="
38
32
  - !ruby/object:Gem::Version
39
33
  version: '4.0'
40
- - - "<"
41
- - !ruby/object:Gem::Version
42
- version: '6'
43
34
  type: :runtime
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
@@ -47,9 +38,6 @@ dependencies:
47
38
  - - ">="
48
39
  - !ruby/object:Gem::Version
49
40
  version: '4.0'
50
- - - "<"
51
- - !ruby/object:Gem::Version
52
- version: '6'
53
41
  - !ruby/object:Gem::Dependency
54
42
  name: i18n
55
43
  requirement: !ruby/object:Gem::Requirement
@@ -234,7 +222,7 @@ dependencies:
234
222
  version: '0'
235
223
  description: 'A Neo4j OGM (Object-Graph-Mapper) for Ruby heavily inspired by ActiveRecord.
236
224
 
237
- '
225
+ '
238
226
  email: andreas.ronge@gmail.com, public@brian-underwood.codes, chris@subvertallmedia.com
239
227
  executables:
240
228
  - neo4j-jars
@@ -394,7 +382,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
394
382
  version: '0'
395
383
  requirements: []
396
384
  rubyforge_project: neo4j
397
- rubygems_version: 2.7.6
385
+ rubygems_version: 2.7.8
398
386
  signing_key:
399
387
  specification_version: 4
400
388
  summary: A graph database for Ruby