permanent_records 4.1.7 → 4.2.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +6 -0
- data/Rakefile +5 -5
- data/VERSION +1 -1
- data/lib/permanent_records.rb +11 -10
- data/permanent_records.gemspec +3 -3
- metadata +8 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4bdca6f3d0ced279ab4cad8b9d83bd23cb2e2725
|
4
|
+
data.tar.gz: c9c53f6405d8a4146872ec0f52bee8f8b8741ea0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c672b6118fbc111d523d6f3e5a252610383a9a9c8ffb3e047920c4c9c3dcb0d68a418f87c27c4b5c6891f4107f77d95a8612e343f64df80bd31b4ee388a3f311
|
7
|
+
data.tar.gz: 61e651908d6acf7674661c5fd3e0b3b2140efd89686ee1e089a7664a5dcc4da1019a5d9beb3ebd9add1a13b0de392557e733a367e1df2e7e694c743109f4a4ec
|
data/.rubocop.yml
CHANGED
data/Rakefile
CHANGED
@@ -33,13 +33,13 @@ RSpec::Core::RakeTask.new(:rspec) do |t|
|
|
33
33
|
t.rspec_opts = '-f d -c'
|
34
34
|
end
|
35
35
|
|
36
|
-
task :
|
36
|
+
task publish: [:rubocop, :rspec] do
|
37
37
|
# Ensure the gem builds
|
38
38
|
system('gem build permanent_records.gemspec') &&
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
39
|
+
# And we didn't leave anything (aside from the gem) uncommitted
|
40
|
+
!system('git status -s | egrep -v .') &&
|
41
|
+
system('git push') &&
|
42
|
+
system("gem push permanent_records-#{version}.gem")
|
43
43
|
end
|
44
44
|
|
45
45
|
task default: [:rspec, :rubocop]
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
4.
|
1
|
+
4.2.7
|
data/lib/permanent_records.rb
CHANGED
@@ -151,24 +151,25 @@ module PermanentRecords
|
|
151
151
|
# namespace.
|
152
152
|
# rubocop:disable Metrics/AbcSize
|
153
153
|
def revive_destroyed_dependent_records(force = nil)
|
154
|
-
|
155
|
-
|
156
|
-
|
154
|
+
destroyed_dependent_relations.each do |relation|
|
155
|
+
relation.to_a.each { |destroyed_dependent_record| destroyed_dependent_record.try(:revive, force) }
|
156
|
+
end
|
157
|
+
reload
|
158
|
+
end
|
159
|
+
|
160
|
+
def destroyed_dependent_relations
|
161
|
+
PermanentRecords.dependent_permanent_reflections(self.class).map do |name, relation|
|
162
|
+
cardinality = relation.macro.to_s.gsub('has_', '').to_sym
|
157
163
|
case cardinality
|
158
164
|
when :many
|
159
165
|
if deleted_at
|
160
|
-
add_record_window(send(name), name,
|
166
|
+
add_record_window(send(name), name, relation)
|
161
167
|
else
|
162
|
-
send(name)
|
168
|
+
send(name).unscope(where: :deleted_at)
|
163
169
|
end
|
164
170
|
when :one, :belongs_to
|
165
171
|
self.class.unscoped { Array(send(name)) }
|
166
|
-
end.to_a.flatten.compact.each do |dependent|
|
167
|
-
dependent.revive(force)
|
168
172
|
end
|
169
|
-
|
170
|
-
# and update the reflection cache
|
171
|
-
send(name, :reload)
|
172
173
|
end
|
173
174
|
end
|
174
175
|
|
data/permanent_records.gemspec
CHANGED
@@ -6,7 +6,7 @@ Gem::Specification.new do |s|
|
|
6
6
|
|
7
7
|
s.authors = ['Jack Danger Canty', 'David Sulc', 'Joe Nelson',
|
8
8
|
'Trond Arve Nordheim', 'Josh Teneycke', 'Maximilian Herold',
|
9
|
-
'Hugh Evans', 'Sergey Gnuskov', 'aq']
|
9
|
+
'Hugh Evans', 'Sergey Gnuskov', 'aq', 'Joel AZEMAR']
|
10
10
|
s.summary = 'Soft-delete your ActiveRecord records'
|
11
11
|
s.description = <<-EOS
|
12
12
|
Never Lose Data. Rather than deleting rows this sets Record#deleted_at and
|
@@ -32,7 +32,7 @@ EOS
|
|
32
32
|
s.add_development_dependency('database_cleaner', '>= 1.5.1')
|
33
33
|
s.add_development_dependency('pry-byebug')
|
34
34
|
s.add_development_dependency('rake') # For Travis-ci
|
35
|
-
s.add_development_dependency('rspec', '~>
|
36
|
-
s.add_development_dependency('rubocop', '0.
|
35
|
+
s.add_development_dependency('rspec', '~> 3.5.0')
|
36
|
+
s.add_development_dependency('rubocop', '0.42.0')
|
37
37
|
s.add_development_dependency('sqlite3')
|
38
38
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: permanent_records
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.2.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jack Danger Canty
|
@@ -13,10 +13,11 @@ authors:
|
|
13
13
|
- Hugh Evans
|
14
14
|
- Sergey Gnuskov
|
15
15
|
- aq
|
16
|
+
- Joel AZEMAR
|
16
17
|
autorequire:
|
17
18
|
bindir: bin
|
18
19
|
cert_chain: []
|
19
|
-
date: 2016-
|
20
|
+
date: 2016-09-22 00:00:00.000000000 Z
|
20
21
|
dependencies:
|
21
22
|
- !ruby/object:Gem::Dependency
|
22
23
|
name: activerecord
|
@@ -94,28 +95,28 @@ dependencies:
|
|
94
95
|
requirements:
|
95
96
|
- - "~>"
|
96
97
|
- !ruby/object:Gem::Version
|
97
|
-
version:
|
98
|
+
version: 3.5.0
|
98
99
|
type: :development
|
99
100
|
prerelease: false
|
100
101
|
version_requirements: !ruby/object:Gem::Requirement
|
101
102
|
requirements:
|
102
103
|
- - "~>"
|
103
104
|
- !ruby/object:Gem::Version
|
104
|
-
version:
|
105
|
+
version: 3.5.0
|
105
106
|
- !ruby/object:Gem::Dependency
|
106
107
|
name: rubocop
|
107
108
|
requirement: !ruby/object:Gem::Requirement
|
108
109
|
requirements:
|
109
110
|
- - '='
|
110
111
|
- !ruby/object:Gem::Version
|
111
|
-
version: 0.
|
112
|
+
version: 0.42.0
|
112
113
|
type: :development
|
113
114
|
prerelease: false
|
114
115
|
version_requirements: !ruby/object:Gem::Requirement
|
115
116
|
requirements:
|
116
117
|
- - '='
|
117
118
|
- !ruby/object:Gem::Version
|
118
|
-
version: 0.
|
119
|
+
version: 0.42.0
|
119
120
|
- !ruby/object:Gem::Dependency
|
120
121
|
name: sqlite3
|
121
122
|
requirement: !ruby/object:Gem::Requirement
|
@@ -179,3 +180,4 @@ signing_key:
|
|
179
180
|
specification_version: 4
|
180
181
|
summary: Soft-delete your ActiveRecord records
|
181
182
|
test_files: []
|
183
|
+
has_rdoc:
|