deferred_associations 0.6.3 → 0.6.4

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
  SHA1:
3
- metadata.gz: 36ea01ec9f183372ada7f082fcfedae522768719
4
- data.tar.gz: dce7549d0c83be9d0c4e05bc17c939c769d445e9
3
+ metadata.gz: 1eb06150c83e5fbcc9784e59d4ac930a78549d31
4
+ data.tar.gz: c55f5ec4758ae4bed1cce95a3250f0380c5e6a64
5
5
  SHA512:
6
- metadata.gz: d215d8fbdde1bdd5c7011521e3bd86e7f48ae9f10177977f3e8ef1eec412db2ed3cb566e02fde7356a5b9407ad43dc88d1cdbe1e41f3cfe8971c4a9fc6809a15
7
- data.tar.gz: 537f53870f1ab7baa2de4d06552971c9465c0cf376d4208b6528529ae02b3dfdfc7cd368cb54b2995c198613291f15fb8f61e1aaa57d8889b9115aa6f7ae87e8
6
+ metadata.gz: 6458c1ce77f68884da941359b25925d70fec9e1b054ad9902b2dcab7f989d688f0e1ec1a78ba33cb2d7d1300b0c87e96bd608d8f0b0711587cbe651e3fa130f5
7
+ data.tar.gz: fbed599d94b0139b531a951684a3fbc6e50349a58ea790f48dc7dba7f28b69607846197714c90ed962058b7f285fe5a555f9404309d098bd22dd0680787c3db7
data/CHANGELOG CHANGED
@@ -1,3 +1,8 @@
1
+ 0.6.4
2
+ =====
3
+ * the after_save action on has_and_belongs_to_many associations is only done, if the association was loaded
4
+ before ( same behavior like has_many; prevents loading of all associations after save)
5
+
1
6
  0.6.3
2
7
  =====
3
8
  * Revert Changes form 0.6.1/0.6.2
data/Readme.markdown CHANGED
@@ -46,7 +46,7 @@ end
46
46
  Compatibility
47
47
  =============
48
48
 
49
- Tested with Rails 2.3.18, 3.2.22, 4.1.14, 4.2.5 on Ruby 1.9.3, 2.2.4, 2.3.1 and JRuby 1.7, JRuby 9.1.0.0
49
+ Tested with Rails 2.3.18, 3.2.22, 4.1.14, 4.2.6 on Ruby 1.9.3, 2.2.4, 2.3.1 and JRuby 1.7, JRuby 9.1.1.0
50
50
 
51
51
  Note, that Rails 3.2.14 associations are partly broken under JRuby cause of https://github.com/rails/rails/issues/11595
52
52
  You'll need to upgrade activerecord-jdbc-adapter to >= 1.3.0.beta1, if you want to use this combination.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.3
1
+ 0.6.4
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'deferred_associations'
5
- s.version = '0.6.3'
5
+ s.version = '0.6.4'
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new('>= 0') if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ['Martin Koerner', 'Tyler Rick', 'Alessio Caiazza']
9
- s.date = '2016-05-13'
9
+ s.date = '2016-05-23'
10
10
  s.description = "Makes ActiveRecord defer/postpone saving the records you add to an habtm (has_and_belongs_to_many) or has_many\n association until you call model.save, allowing validation in the style of normal attributes. Additionally you\n can check inside before_save filters, if the association was altered."
11
11
  s.email = 'martin.koerner@objectfab.de'
12
12
  s.licenses = 'MIT'
@@ -77,13 +77,14 @@ module ActiveRecord
77
77
  # But we only want the old behavior in this case -- most of the time we want the *new* behavior -- so we use
78
78
  # @use_original_collection_reader_behavior as a switch.
79
79
 
80
- send "use_original_collection_reader_behavior_for_#{collection_name}=", true
81
- send("initialize_unsaved_#{collection_name}") if send("unsaved_#{collection_name}").nil?
80
+ unless send("unsaved_#{collection_name}").nil?
81
+ send "use_original_collection_reader_behavior_for_#{collection_name}=", true
82
82
 
83
- # vv This is where the actual save occurs vv
84
- send "#{collection_name}_without_deferred_save=", send("unsaved_#{collection_name}")
83
+ # vv This is where the actual save occurs vv
84
+ send "#{collection_name}_without_deferred_save=", send("unsaved_#{collection_name}")
85
85
 
86
- send "use_original_collection_reader_behavior_for_#{collection_name}=", false
86
+ send "use_original_collection_reader_behavior_for_#{collection_name}=", false
87
+ end
87
88
  true
88
89
  end
89
90
  after_save "do_#{collection_name}_save!"
@@ -15,7 +15,7 @@ module ActiveRecord
15
15
 
16
16
  after_save "hmwds_update_#{collection_name}"
17
17
 
18
- define_obj_setter collection_name, collection_singular_ids
18
+ define_obj_setter collection_name
19
19
  define_obj_getter collection_name
20
20
  define_id_setter collection_name, collection_singular_ids
21
21
  define_id_getter collection_name, collection_singular_ids
@@ -24,7 +24,7 @@ module ActiveRecord
24
24
  define_reload_method collection_name
25
25
  end
26
26
 
27
- def define_obj_setter(collection_name, collection_singular_ids)
27
+ def define_obj_setter(collection_name)
28
28
  define_method("#{collection_name}_with_deferred_save=") do |objs|
29
29
  instance_variable_set "@hmwds_temp_#{collection_name}", objs || []
30
30
  attribute_will_change!(collection_name) if objs != send("#{collection_name}_without_deferred_save")
metadata CHANGED
@@ -1,40 +1,40 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deferred_associations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.3
4
+ version: 0.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Koerner
8
8
  - Tyler Rick
9
9
  - Alessio Caiazza
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-05-13 00:00:00.000000000 Z
13
+ date: 2016-05-23 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: activerecord
17
16
  requirement: !ruby/object:Gem::Requirement
18
17
  requirements:
19
18
  - - ">="
20
19
  - !ruby/object:Gem::Version
21
20
  version: '0'
22
- type: :runtime
21
+ name: activerecord
23
22
  prerelease: false
23
+ type: :runtime
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - ">="
27
27
  - !ruby/object:Gem::Version
28
28
  version: '0'
29
29
  - !ruby/object:Gem::Dependency
30
- name: rspec
31
30
  requirement: !ruby/object:Gem::Requirement
32
31
  requirements:
33
32
  - - ">="
34
33
  - !ruby/object:Gem::Version
35
34
  version: '0'
36
- type: :development
35
+ name: rspec
37
36
  prerelease: false
37
+ type: :development
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - ">="
@@ -76,7 +76,7 @@ homepage: http://github.com/MartinKoerner/deferred_associations
76
76
  licenses:
77
77
  - MIT
78
78
  metadata: {}
79
- post_install_message:
79
+ post_install_message:
80
80
  rdoc_options: []
81
81
  require_paths:
82
82
  - lib
@@ -91,9 +91,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
91
  - !ruby/object:Gem::Version
92
92
  version: '0'
93
93
  requirements: []
94
- rubyforge_project:
95
- rubygems_version: 2.5.1
96
- signing_key:
94
+ rubyforge_project:
95
+ rubygems_version: 2.6.4
96
+ signing_key:
97
97
  specification_version: 3
98
98
  summary: Makes ActiveRecord defer/postpone habtm or has_many associations
99
99
  test_files: []