soft_deletion 1.6.0 → 1.9.0

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: 5ca056615af191c4edb5663f3b1c56067930777172ec9a02fe2b58180b7319ae
4
- data.tar.gz: 214ea720e110dbde3fe8bd0e86c9a3a970abd48ae1e0001b339b8fbf2a06e408
3
+ metadata.gz: 1cf0c1e653102035bfb7f3bf4532a4e3023ebc8a7ead8748914a10bd2ba7185a
4
+ data.tar.gz: 8303f8471597e6ca82a2c851fcc28f3d293a621eb8cf7892623f8590f137cfbd
5
5
  SHA512:
6
- metadata.gz: 0152d17ffb4687a319e95de937f0205baf0fd310af7eb42d881f38654d64217b1fb6fd82c4a5a6b4b9a5a6c84c0e0d7f96bf1aae85d7d71385459ed40f63fc12
7
- data.tar.gz: f1f871ef34ce9f46819ee2c02ca3333a8525d0ac90678fb7dd8069458b146e1a64bda07a43ce9b4cf537c7dbf21e86a443dea3bed263f86bde335d0f1060ff8a
6
+ metadata.gz: 756500b68386244904fdc517ea3470f421ab7c9381b1fc678b501d28743ffcfb5ad9d5a7df11169c6f39d235100b51db3c93442d93dc969dcf9da576041fcee6
7
+ data.tar.gz: b34db1ffd120955d4913f91a0c43649edbf5f19cde454a012bd65e3bbabd045c1b8c6d0a70172a5d9150e0d342a2dc25d28b3c06eaf1b9b5440ca56a31767ace
@@ -45,7 +45,7 @@ module SoftDeletion
45
45
  where(:id => ids).update_all(mark_as_soft_deleted_sql)
46
46
 
47
47
  models.each do |model|
48
- model.soft_delete_dependencies.each { |dep| dep.execute_soft_delete(:soft_delete!, []) }
48
+ model.soft_delete_dependencies.each { |dep| dep.execute_soft_delete(:soft_delete!) }
49
49
  model.run_callbacks :soft_delete
50
50
  end
51
51
  end
@@ -64,12 +64,12 @@ module SoftDeletion
64
64
  self.deleted_at = nil
65
65
  end
66
66
 
67
- def soft_delete!(*args)
68
- _run_soft_delete(:soft_delete!, args) { save!(*args) } || soft_delete_hook_failed(:before_soft_delete)
67
+ def soft_delete!(*args, **kwargs)
68
+ _run_soft_delete(:soft_delete!, *args, **kwargs) { save!(*args, **kwargs) } || soft_delete_hook_failed(:before_soft_delete)
69
69
  end
70
70
 
71
- def soft_delete(*args)
72
- _run_soft_delete(:soft_delete, args) { save(*args) }
71
+ def soft_delete(*args, **kwargs)
72
+ _run_soft_delete(:soft_delete, *args, **kwargs) { save(*args, **kwargs) }
73
73
  end
74
74
 
75
75
  def soft_undelete
@@ -96,12 +96,12 @@ module SoftDeletion
96
96
  end
97
97
  end
98
98
 
99
- def _run_soft_delete(method, args, &block)
99
+ def _run_soft_delete(method, *args, **kwargs, &block)
100
100
  result = false
101
101
  self.class.transaction do
102
102
  internal = lambda do
103
103
  mark_as_deleted
104
- raise ActiveRecord::Rollback unless soft_delete_dependencies.all? { |dep| dep.execute_soft_delete(method, args) }
104
+ raise ActiveRecord::Rollback unless soft_delete_dependencies.all? { |dep| dep.execute_soft_delete(method, *args, **kwargs) }
105
105
  result = block.call
106
106
  raise ActiveRecord::Rollback unless result
107
107
  update_soft_delete_counter_caches(-1)
@@ -7,7 +7,7 @@ module SoftDeletion
7
7
  @association_name = association_name
8
8
  end
9
9
 
10
- def execute_soft_delete(method, args)
10
+ def execute_soft_delete(method, ...)
11
11
  case association.options[:dependent]
12
12
  when :nullify
13
13
  dependency.update_all(association.foreign_key => nil)
@@ -15,7 +15,7 @@ module SoftDeletion
15
15
  dependency.update_all(dependency.mark_as_soft_deleted_sql)
16
16
  true
17
17
  else
18
- dependencies.all? { |dep| dep.send(method, *args) }
18
+ dependencies.all? { |dep| dep.send(method, ...) }
19
19
  end
20
20
  end
21
21
 
@@ -1,3 +1,3 @@
1
1
  module SoftDeletion
2
- VERSION = '1.6.0'
2
+ VERSION = '1.9.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: soft_deletion
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Grosser
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-27 00:00:00.000000000 Z
11
+ date: 2023-11-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 4.2.0
19
+ version: 5.0.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: 6.2.0
22
+ version: '7.2'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 4.2.0
29
+ version: 5.0.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: 6.2.0
32
+ version: '7.2'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: rake
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -128,7 +128,7 @@ dependencies:
128
128
  - - ">="
129
129
  - !ruby/object:Gem::Version
130
130
  version: '0'
131
- description:
131
+ description:
132
132
  email: michael@grosser.it
133
133
  executables: []
134
134
  extensions: []
@@ -144,7 +144,7 @@ homepage: https://github.com/grosser/soft_deletion
144
144
  licenses:
145
145
  - MIT
146
146
  metadata: {}
147
- post_install_message:
147
+ post_install_message:
148
148
  rdoc_options: []
149
149
  require_paths:
150
150
  - lib
@@ -152,15 +152,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
152
152
  requirements:
153
153
  - - ">="
154
154
  - !ruby/object:Gem::Version
155
- version: 2.5.0
155
+ version: 2.7.0
156
156
  required_rubygems_version: !ruby/object:Gem::Requirement
157
157
  requirements:
158
158
  - - ">="
159
159
  - !ruby/object:Gem::Version
160
160
  version: '0'
161
161
  requirements: []
162
- rubygems_version: 3.1.3
163
- signing_key:
162
+ rubygems_version: 3.3.3
163
+ signing_key:
164
164
  specification_version: 4
165
165
  summary: Explicit soft deletion for ActiveRecord via deleted_at and default scope.
166
166
  test_files: []