activerecord_cloneable 0.3.10 → 0.3.11

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: c1eb104db629e55177011dba45935651258f3c55
4
- data.tar.gz: 52416a66d11244db49389e9dda401b96cd22ed95
3
+ metadata.gz: 15db8787833286d526f4e5aed5208004c37e4dc1
4
+ data.tar.gz: 338c714113747d21e78607d28b02d746decdba0a
5
5
  SHA512:
6
- metadata.gz: e319eda36881ef90cad03ddb15fbfc279c6f3129c36ac9706dc5acdea5af4b9b57f2b905fd2d39676feab609a3811d7c2b001319ad42f99a39ba74dfe930a26e
7
- data.tar.gz: a885179f43d5f03dcaf3f3de1bc0c808657106d69aa56b1d94b93142e86e56bd9b30fbdf2e7969ed4d3149a30d5efbc62227850bf963c39eb1f04fd95bb083a2
6
+ metadata.gz: 31a1a0ffaf5bd75a2deca989c48df83e2fede39934f227967d7209daf1a1d80e88c529a3dcd19e10861645f19bf035fbe07d06da64dacfa3c8cb70bee083e14e
7
+ data.tar.gz: a513b697c49933fc759b37ad14ad98a7f5acf245dd69a827c06347a2f950abd7d3594911108da04d36e499bc5c34590a8f0d6d10ee869c742bdc0b72e6f203ec
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'activerecord_cloneable'
3
- s.version = '0.3.10'
3
+ s.version = '0.3.11'
4
4
  s.summary = "A library to help clone active records - that is, generate active new record objects with the data copied from an existing record."
5
5
  s.authors = ["Adam Palmblad"]
6
6
  s.email = 'apalmblad@gmail.com'
@@ -114,12 +114,13 @@ module ActiveRecord::Cloneable
114
114
  next if kids.nil?
115
115
  kids.each do |child_record|
116
116
  next if args[:skipped_children].include?( child_record )
117
+ args[:skipped_children] += [child_record]
117
118
  cloned_child_record = kids.build
118
119
  child_args = { cloned_parents: args[:cloned_parents] + [self],
119
120
  attributes: {},
120
121
  stack: args[:stack] + [ child_relation.name ],
121
122
  object: cloned_child_record,
122
- skipped_children: args[:skipped_children] + [self, child_record],
123
+ skipped_children: args[:skipped_children],
123
124
  skipped_parent_relations: find_applicable_clone_args( child_relation.name, args[:skipped_parent_relations] ),
124
125
  shared_parent_relations: find_applicable_clone_args( child_relation.name, args[:shared_parent_relations] ),
125
126
  skipped_child_relations: find_applicable_clone_args( child_relation.name, args[:skipped_child_relations] ) }
@@ -141,6 +142,7 @@ module ActiveRecord::Cloneable
141
142
  kid = send( child_relation.name )
142
143
  next if kid.nil?
143
144
  next if args[:skipped_children].include?( kid )
145
+ args[:skipped_children] += [kid]
144
146
  cloned_child_record = kid.build
145
147
  child_args = { cloned_parents: args[:cloned_parents] + [self],
146
148
  attributes: {},
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord_cloneable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.10
4
+ version: 0.3.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Palmblad