acts_as_archival 1.4.0 → 2.0.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 +4 -4
- data/.gitignore +1 -1
- data/.rubocop.yml +18 -28
- data/.rubocop_todo.yml +92 -1
- data/.travis.yml +8 -20
- data/Appraisals +7 -14
- data/CHANGELOG.md +10 -0
- data/Gemfile.lock +70 -0
- data/README.md +0 -2
- data/acts_as_archival.gemspec +16 -14
- data/gemfiles/{rails_5.1.gemfile → rails_6.0.gemfile} +1 -2
- data/gemfiles/{rails_4.2.gemfile → rails_6.1.gemfile} +1 -2
- data/lib/acts_as_archival/version.rb +1 -1
- data/lib/expected_behavior/acts_as_archival.rb +2 -22
- data/lib/expected_behavior/acts_as_archival_active_record_methods.rb +0 -14
- data/test/responds_test.rb +0 -16
- metadata +15 -15
- data/gemfiles/rails_5.0.gemfile +0 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1f9de47af7c26b8d78744f6f150523da886cc3e72f3adfdf2c43489f92dd29d7
|
|
4
|
+
data.tar.gz: eb8710dc7dd90dfb876b83e61f9d08ac01003d734950f9554abd24d91e428875
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e16b3e95c07251f5f5c1dcd2b960e76ffc3f41241c7601b9cb7923e1f89bbc3c4aa21be46ad2b55ebce502933a3d6171ed1a57874857001a653db984822d8176
|
|
7
|
+
data.tar.gz: 9b818f82e6072dde8e0f7e1a621dd7593b918cb696738a0b1750b2357ab732250e18ae5d008813f3b8dc8204447df0f37e98561532343105c89682cd46a9a3c8
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
|
@@ -4,6 +4,24 @@ AllCops:
|
|
|
4
4
|
Exclude:
|
|
5
5
|
- vendor/**/*
|
|
6
6
|
- gemfiles/**/*
|
|
7
|
+
TargetRubyVersion: 2.4
|
|
8
|
+
NewCops: enable
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
################
|
|
12
|
+
# Layout Rules #
|
|
13
|
+
################
|
|
14
|
+
Layout/EmptyLinesAroundClassBody:
|
|
15
|
+
EnforcedStyle: empty_lines_except_namespace
|
|
16
|
+
|
|
17
|
+
Layout/EmptyLinesAroundModuleBody:
|
|
18
|
+
EnforcedStyle: empty_lines_except_namespace
|
|
19
|
+
|
|
20
|
+
Layout/LineLength:
|
|
21
|
+
Max: 140
|
|
22
|
+
|
|
23
|
+
Layout/SpaceInsideHashLiteralBraces:
|
|
24
|
+
EnforcedStyle: space
|
|
7
25
|
|
|
8
26
|
|
|
9
27
|
################
|
|
@@ -17,9 +35,6 @@ Metrics/BlockLength:
|
|
|
17
35
|
Metrics/AbcSize:
|
|
18
36
|
Max: 25
|
|
19
37
|
|
|
20
|
-
Metrics/LineLength:
|
|
21
|
-
Max: 140
|
|
22
|
-
|
|
23
38
|
Metrics/MethodLength:
|
|
24
39
|
Max: 10
|
|
25
40
|
CountComments: false
|
|
@@ -43,39 +58,14 @@ Style/Documentation:
|
|
|
43
58
|
Style/DoubleNegation:
|
|
44
59
|
Enabled: false
|
|
45
60
|
|
|
46
|
-
Style/EmptyLinesAroundClassBody:
|
|
47
|
-
EnforcedStyle: empty_lines_except_namespace
|
|
48
|
-
|
|
49
|
-
Style/EmptyLinesAroundModuleBody:
|
|
50
|
-
EnforcedStyle: empty_lines_except_namespace
|
|
51
|
-
|
|
52
61
|
Style/FrozenStringLiteralComment:
|
|
53
62
|
EnforcedStyle: never
|
|
54
63
|
|
|
55
64
|
Style/HashSyntax:
|
|
56
65
|
EnforcedStyle: ruby19
|
|
57
66
|
|
|
58
|
-
# TODO: replace the [] below with default once a new version of
|
|
59
|
-
# rubocop comes out, since there is a PR for it:
|
|
60
|
-
# https://github.com/bbatsov/rubocop/pull/4038
|
|
61
|
-
Style/PercentLiteralDelimiters:
|
|
62
|
-
PreferredDelimiters:
|
|
63
|
-
'%': '{}'
|
|
64
|
-
'%i': '[]'
|
|
65
|
-
'%I': '[]'
|
|
66
|
-
'%q': '{}'
|
|
67
|
-
'%Q': '{}'
|
|
68
|
-
'%r': '{}'
|
|
69
|
-
'%s': '[]'
|
|
70
|
-
'%w': '[]'
|
|
71
|
-
'%W': '[]'
|
|
72
|
-
'%x': '[]'
|
|
73
|
-
|
|
74
67
|
Style/RaiseArgs:
|
|
75
68
|
EnforcedStyle: compact
|
|
76
69
|
|
|
77
|
-
Style/SpaceInsideHashLiteralBraces:
|
|
78
|
-
EnforcedStyle: space
|
|
79
|
-
|
|
80
70
|
Style/StringLiterals:
|
|
81
71
|
EnforcedStyle: double_quotes
|
data/.rubocop_todo.yml
CHANGED
|
@@ -1,7 +1,98 @@
|
|
|
1
1
|
# This configuration was generated by
|
|
2
2
|
# `rubocop --auto-gen-config`
|
|
3
|
-
# on
|
|
3
|
+
# on 2020-04-28 17:17:25 +0200 using RuboCop version 0.82.0.
|
|
4
4
|
# The point is for the user to remove these configuration records
|
|
5
5
|
# one by one as the offenses are removed from the code base.
|
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
|
8
|
+
|
|
9
|
+
# Offense count: 2
|
|
10
|
+
# Cop supports --auto-correct.
|
|
11
|
+
Layout/EmptyLineAfterMagicComment:
|
|
12
|
+
Exclude:
|
|
13
|
+
- 'acts_as_archival.gemspec'
|
|
14
|
+
- 'test/scope_test.rb'
|
|
15
|
+
|
|
16
|
+
# Offense count: 1
|
|
17
|
+
# Cop supports --auto-correct.
|
|
18
|
+
# Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
|
|
19
|
+
# SupportedStylesForExponentOperator: space, no_space
|
|
20
|
+
Layout/SpaceAroundOperators:
|
|
21
|
+
Exclude:
|
|
22
|
+
- 'test/deep_nesting_test.rb'
|
|
23
|
+
|
|
24
|
+
# Offense count: 1
|
|
25
|
+
# Cop supports --auto-correct.
|
|
26
|
+
Lint/ScriptPermission:
|
|
27
|
+
Exclude:
|
|
28
|
+
- 'Rakefile'
|
|
29
|
+
|
|
30
|
+
# Offense count: 7
|
|
31
|
+
# Cop supports --auto-correct.
|
|
32
|
+
Lint/SendWithMixinArgument:
|
|
33
|
+
Exclude:
|
|
34
|
+
- 'init.rb'
|
|
35
|
+
- 'lib/acts_as_archival.rb'
|
|
36
|
+
|
|
37
|
+
# Offense count: 1
|
|
38
|
+
# Configuration parameters: EnforcedStyle.
|
|
39
|
+
# SupportedStyles: lowercase, uppercase
|
|
40
|
+
Naming/HeredocDelimiterCase:
|
|
41
|
+
Exclude:
|
|
42
|
+
- 'lib/expected_behavior/acts_as_archival.rb'
|
|
43
|
+
|
|
44
|
+
# Offense count: 3
|
|
45
|
+
# Configuration parameters: ForbiddenDelimiters.
|
|
46
|
+
# ForbiddenDelimiters: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
|
|
47
|
+
Naming/HeredocDelimiterNaming:
|
|
48
|
+
Exclude:
|
|
49
|
+
- 'acts_as_archival.gemspec'
|
|
50
|
+
- 'lib/expected_behavior/acts_as_archival.rb'
|
|
51
|
+
|
|
52
|
+
# Offense count: 12
|
|
53
|
+
# Configuration parameters: EnforcedStyle, AllowModifiersOnSymbols.
|
|
54
|
+
# SupportedStyles: inline, group
|
|
55
|
+
Style/AccessModifierDeclarations:
|
|
56
|
+
Exclude:
|
|
57
|
+
- 'lib/expected_behavior/acts_as_archival.rb'
|
|
58
|
+
- 'test/fixtures/callback_archival_4.rb'
|
|
59
|
+
- 'test/fixtures/callback_archival_5.rb'
|
|
60
|
+
|
|
61
|
+
# Offense count: 2
|
|
62
|
+
# Cop supports --auto-correct.
|
|
63
|
+
Style/Encoding:
|
|
64
|
+
Exclude:
|
|
65
|
+
- 'acts_as_archival.gemspec'
|
|
66
|
+
- 'test/scope_test.rb'
|
|
67
|
+
|
|
68
|
+
# Offense count: 1
|
|
69
|
+
Style/EvalWithLocation:
|
|
70
|
+
Exclude:
|
|
71
|
+
- 'lib/expected_behavior/acts_as_archival.rb'
|
|
72
|
+
|
|
73
|
+
# Offense count: 1
|
|
74
|
+
# Cop supports --auto-correct.
|
|
75
|
+
Style/ExpandPathArguments:
|
|
76
|
+
Exclude:
|
|
77
|
+
- 'acts_as_archival.gemspec'
|
|
78
|
+
|
|
79
|
+
# Offense count: 1
|
|
80
|
+
# Cop supports --auto-correct.
|
|
81
|
+
Style/IfUnlessModifier:
|
|
82
|
+
Exclude:
|
|
83
|
+
- 'test/test_helper.rb'
|
|
84
|
+
|
|
85
|
+
# Offense count: 1
|
|
86
|
+
# Cop supports --auto-correct.
|
|
87
|
+
# Configuration parameters: EnforcedStyle.
|
|
88
|
+
# SupportedStyles: implicit, explicit
|
|
89
|
+
Style/RescueStandardError:
|
|
90
|
+
Exclude:
|
|
91
|
+
- 'lib/expected_behavior/acts_as_archival.rb'
|
|
92
|
+
|
|
93
|
+
# Offense count: 3
|
|
94
|
+
# Cop supports --auto-correct.
|
|
95
|
+
# Configuration parameters: MinSize.
|
|
96
|
+
# SupportedStyles: percent, brackets
|
|
97
|
+
Style/SymbolArray:
|
|
98
|
+
EnforcedStyle: brackets
|
data/.travis.yml
CHANGED
|
@@ -1,35 +1,23 @@
|
|
|
1
1
|
language: ruby
|
|
2
|
-
sudo: false
|
|
3
|
-
dist: trusty
|
|
4
2
|
cache: bundler
|
|
5
|
-
script: "bundle exec rake"
|
|
6
3
|
|
|
7
4
|
rvm:
|
|
8
|
-
- 2.
|
|
9
|
-
- 2.
|
|
10
|
-
- 2.
|
|
11
|
-
- 2.
|
|
12
|
-
- 2.5.1
|
|
5
|
+
- 2.4
|
|
6
|
+
- 2.5
|
|
7
|
+
- 2.6
|
|
8
|
+
- 2.7
|
|
13
9
|
|
|
14
10
|
gemfile:
|
|
15
|
-
- gemfiles/rails_4.1.gemfile
|
|
16
|
-
- gemfiles/rails_4.2.gemfile
|
|
17
11
|
- gemfiles/rails_5.0.gemfile
|
|
18
12
|
- gemfiles/rails_5.1.gemfile
|
|
13
|
+
- gemfiles/rails_5.2.gemfile
|
|
14
|
+
- gemfiles/rails_6.0.gemfile
|
|
19
15
|
|
|
20
16
|
before_install:
|
|
21
17
|
- gem update --system
|
|
22
|
-
- gem update bundler
|
|
23
|
-
- gem cleanup bundler
|
|
24
18
|
|
|
25
19
|
matrix:
|
|
26
20
|
fast_finish: true
|
|
27
21
|
exclude:
|
|
28
|
-
-
|
|
29
|
-
|
|
30
|
-
- rvm: 2.1.10
|
|
31
|
-
gemfile: gemfiles/rails_5.1.gemfile
|
|
32
|
-
- rvm: 2.4.0
|
|
33
|
-
gemfile: gemfiles/rails_4.1.gemfile
|
|
34
|
-
- rvm: 2.5.1
|
|
35
|
-
gemfile: gemfiles/rails_4.1.gemfile
|
|
22
|
+
- gemfile: gemfiles/rails_6.0.gemfile
|
|
23
|
+
rvm: 2.4
|
data/Appraisals
CHANGED
|
@@ -1,19 +1,12 @@
|
|
|
1
|
-
appraise "rails-
|
|
2
|
-
gem "rails", "~>
|
|
3
|
-
gem "sqlite3", "~> 1.
|
|
1
|
+
appraise "rails-5.2" do
|
|
2
|
+
gem "rails", "~> 5.2.0"
|
|
3
|
+
gem "sqlite3", "~> 1.4.1"
|
|
4
4
|
end
|
|
5
5
|
|
|
6
|
-
appraise "rails-
|
|
7
|
-
gem "rails", "~>
|
|
8
|
-
gem "sqlite3", "~> 1.3.13"
|
|
6
|
+
appraise "rails-6.0" do
|
|
7
|
+
gem "rails", "~> 6.0.0"
|
|
9
8
|
end
|
|
10
9
|
|
|
11
|
-
appraise "rails-
|
|
12
|
-
gem "rails", "~>
|
|
13
|
-
gem "sqlite3", "~> 1.4.1"
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
appraise "rails-5.2" do
|
|
17
|
-
gem "rails", "~> 5.2.0"
|
|
18
|
-
gem "sqlite3", "~> 1.4.1"
|
|
10
|
+
appraise "rails-6.1" do
|
|
11
|
+
gem "rails", "~> 6.1"
|
|
19
12
|
end
|
data/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
+
## 2.0.0 – (UNRELEASED)
|
|
4
|
+
|
|
5
|
+
* **BREAKING CHANGE** Drop support for Rails 4.2
|
|
6
|
+
* **BREAKING CHANGE** Drop support for Rails 5.0
|
|
7
|
+
* **BREAKING CHANGE** Drop support for Rails 5.1
|
|
8
|
+
* **BREAKING CHANGE** Removed deprecated methods
|
|
9
|
+
* Fix Rails 6 deprecation warnings
|
|
10
|
+
* Add offical support for Rails 6.1
|
|
11
|
+
|
|
3
12
|
## 1.4.0 - July 10, 2019
|
|
4
13
|
* **BREAKING CHANGE** drop support for rails 4.1
|
|
14
|
+
* **BREAKING CHANGE** drop support for Ruby <2.4
|
|
5
15
|
* **BUGFIX** polymorphic associations that are archived/unarchived can be acted on safely if they share the same ID.
|
|
6
16
|
* add support officially for rails 5.2
|
|
7
17
|
* sqlite upgrades for various rails
|
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
acts_as_archival (2.0.0)
|
|
5
|
+
activerecord (>= 5.0)
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
activemodel (6.1.4.1)
|
|
11
|
+
activesupport (= 6.1.4.1)
|
|
12
|
+
activerecord (6.1.4.1)
|
|
13
|
+
activemodel (= 6.1.4.1)
|
|
14
|
+
activesupport (= 6.1.4.1)
|
|
15
|
+
activesupport (6.1.4.1)
|
|
16
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
17
|
+
i18n (>= 1.6, < 2)
|
|
18
|
+
minitest (>= 5.1)
|
|
19
|
+
tzinfo (~> 2.0)
|
|
20
|
+
zeitwerk (~> 2.3)
|
|
21
|
+
appraisal (2.2.0)
|
|
22
|
+
bundler
|
|
23
|
+
rake
|
|
24
|
+
thor (>= 0.14.0)
|
|
25
|
+
assertions-eb (1.7.3)
|
|
26
|
+
ast (2.4.0)
|
|
27
|
+
concurrent-ruby (1.1.9)
|
|
28
|
+
database_cleaner (1.8.4)
|
|
29
|
+
i18n (1.8.10)
|
|
30
|
+
concurrent-ruby (~> 1.0)
|
|
31
|
+
jaro_winkler (1.5.4)
|
|
32
|
+
minitest (5.14.4)
|
|
33
|
+
parallel (1.19.1)
|
|
34
|
+
parser (2.7.1.1)
|
|
35
|
+
ast (~> 2.4.0)
|
|
36
|
+
rainbow (3.0.0)
|
|
37
|
+
rake (13.0.1)
|
|
38
|
+
rexml (3.2.4)
|
|
39
|
+
rr (1.2.1)
|
|
40
|
+
rubocop (0.82.0)
|
|
41
|
+
jaro_winkler (~> 1.5.1)
|
|
42
|
+
parallel (~> 1.10)
|
|
43
|
+
parser (>= 2.7.0.1)
|
|
44
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
45
|
+
rexml
|
|
46
|
+
ruby-progressbar (~> 1.7)
|
|
47
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
|
48
|
+
ruby-progressbar (1.10.1)
|
|
49
|
+
sqlite3 (1.4.2)
|
|
50
|
+
thor (1.0.1)
|
|
51
|
+
tzinfo (2.0.4)
|
|
52
|
+
concurrent-ruby (~> 1.0)
|
|
53
|
+
unicode-display_width (1.7.0)
|
|
54
|
+
zeitwerk (2.4.2)
|
|
55
|
+
|
|
56
|
+
PLATFORMS
|
|
57
|
+
ruby
|
|
58
|
+
|
|
59
|
+
DEPENDENCIES
|
|
60
|
+
acts_as_archival!
|
|
61
|
+
appraisal
|
|
62
|
+
assertions-eb
|
|
63
|
+
database_cleaner
|
|
64
|
+
rake
|
|
65
|
+
rr
|
|
66
|
+
rubocop (~> 0.82.0)
|
|
67
|
+
sqlite3
|
|
68
|
+
|
|
69
|
+
BUNDLED WITH
|
|
70
|
+
2.1.4
|
data/README.md
CHANGED
data/acts_as_archival.gemspec
CHANGED
|
@@ -29,30 +29,32 @@ Gem::Specification.new do |gem|
|
|
|
29
29
|
gem.files = `git ls-files`.split("\n")
|
|
30
30
|
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
31
31
|
gem.require_paths = ["lib"]
|
|
32
|
+
gem.required_ruby_version = ">= 2.4"
|
|
32
33
|
|
|
33
|
-
gem.add_dependency "activerecord", ">=
|
|
34
|
+
gem.add_dependency "activerecord", ">= 5.0"
|
|
34
35
|
|
|
35
36
|
gem.add_development_dependency "appraisal"
|
|
36
37
|
gem.add_development_dependency "assertions-eb"
|
|
37
38
|
gem.add_development_dependency "database_cleaner"
|
|
38
39
|
gem.add_development_dependency "rake"
|
|
39
40
|
gem.add_development_dependency "rr"
|
|
40
|
-
gem.add_development_dependency "rubocop", "~> 0.
|
|
41
|
+
gem.add_development_dependency "rubocop", "~> 0.82.0"
|
|
41
42
|
gem.add_development_dependency "sqlite3"
|
|
42
43
|
|
|
43
|
-
gem.description =
|
|
44
|
-
|
|
44
|
+
gem.description =
|
|
45
|
+
<<~END
|
|
46
|
+
*Atomic archiving/unarchiving for ActiveRecord-based apps*
|
|
45
47
|
|
|
46
|
-
We had the problem that acts_as_paranoid and similar plugins/gems always work on
|
|
47
|
-
a record by record basis and made it very difficult to restore records
|
|
48
|
-
atomically (or archive them, for that matter).
|
|
48
|
+
We had the problem that acts_as_paranoid and similar plugins/gems always work on
|
|
49
|
+
a record by record basis and made it very difficult to restore records
|
|
50
|
+
atomically (or archive them, for that matter).
|
|
49
51
|
|
|
50
|
-
Because the archive and unarchive methods are in transactions, and every
|
|
51
|
-
archival record involved gets the same archive number upon archiving, you can
|
|
52
|
-
easily restore or remove an entire set of records without having to worry about
|
|
53
|
-
partial deletion or restoration.
|
|
52
|
+
Because the archive and unarchive methods are in transactions, and every
|
|
53
|
+
archival record involved gets the same archive number upon archiving, you can
|
|
54
|
+
easily restore or remove an entire set of records without having to worry about
|
|
55
|
+
partial deletion or restoration.
|
|
54
56
|
|
|
55
|
-
Additionally, other plugins generally screw with how destroy/delete work.
|
|
56
|
-
don't because we actually want to be able to destroy records.
|
|
57
|
-
END
|
|
57
|
+
Additionally, other plugins generally screw with how destroy/delete work. We
|
|
58
|
+
don't because we actually want to be able to destroy records.
|
|
59
|
+
END
|
|
58
60
|
end
|
|
@@ -37,7 +37,7 @@ module ExpectedBehavior
|
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
private def setup_scopes
|
|
40
|
-
scope :archived, -> { where.not(archived_at: nil
|
|
40
|
+
scope :archived, -> { where.not(archived_at: nil).where.not(archive_number: nil) }
|
|
41
41
|
scope :unarchived, -> { where(archived_at: nil, archive_number: nil) }
|
|
42
42
|
scope :archived_from_archive_number, (lambda do |head_archive_number|
|
|
43
43
|
where(["archived_at IS NOT NULL AND archive_number = ?", head_archive_number])
|
|
@@ -53,11 +53,7 @@ module ExpectedBehavior
|
|
|
53
53
|
end
|
|
54
54
|
|
|
55
55
|
private def setup_activerecord_callbacks(callbackable_actions)
|
|
56
|
-
|
|
57
|
-
define_callbacks(*[callbackable_actions].flatten)
|
|
58
|
-
elsif ActiveSupport::VERSION::MAJOR >= 4
|
|
59
|
-
define_callbacks(*[callbackable_actions, { terminator: ->(_, result) { result == false } }].flatten)
|
|
60
|
-
end
|
|
56
|
+
define_callbacks(*[callbackable_actions].flatten)
|
|
61
57
|
end
|
|
62
58
|
|
|
63
59
|
private def define_callback_dsl_methods(callbackable_actions)
|
|
@@ -104,14 +100,6 @@ module ExpectedBehavior
|
|
|
104
100
|
!!(archived_at? && archive_number)
|
|
105
101
|
end
|
|
106
102
|
|
|
107
|
-
def archive(head_archive_number = nil)
|
|
108
|
-
ActiveSupport::Deprecation.warn <<-EOS.strip_heredoc.gsub(/\s+/, " ")
|
|
109
|
-
'.archive' is deprecated and will be removed in future versions of acts_as_archival.
|
|
110
|
-
Please use '.archive!' instead.
|
|
111
|
-
EOS
|
|
112
|
-
archive!(head_archive_number)
|
|
113
|
-
end
|
|
114
|
-
|
|
115
103
|
def archive!(head_archive_number = nil)
|
|
116
104
|
execute_archival_action(:archive) do
|
|
117
105
|
unless archived?
|
|
@@ -124,14 +112,6 @@ module ExpectedBehavior
|
|
|
124
112
|
end
|
|
125
113
|
end
|
|
126
114
|
|
|
127
|
-
def unarchive(head_archive_number = nil)
|
|
128
|
-
ActiveSupport::Deprecation.warn <<-EOS.strip_heredoc.gsub(/\s+/, " ")
|
|
129
|
-
'.unarchive' is deprecated and will be removed in future versions of acts_as_archival.
|
|
130
|
-
Please use '.unarchive!' instead.
|
|
131
|
-
EOS
|
|
132
|
-
unarchive!(head_archive_number)
|
|
133
|
-
end
|
|
134
|
-
|
|
135
115
|
def unarchive!(head_archive_number = nil)
|
|
136
116
|
execute_archival_action(:unarchive) do
|
|
137
117
|
if archived?
|
|
@@ -12,13 +12,6 @@ module ExpectedBehavior
|
|
|
12
12
|
included_modules.include?(ExpectedBehavior::ActsAsArchival::InstanceMethods)
|
|
13
13
|
end
|
|
14
14
|
|
|
15
|
-
# rubocop:disable Style/PredicateName
|
|
16
|
-
def is_archival?
|
|
17
|
-
ActiveSupport::Deprecation.warn(".is_archival? is deprecated in favor of .archival?")
|
|
18
|
-
archival?
|
|
19
|
-
end
|
|
20
|
-
# rubocop:enable Style/PredicateName
|
|
21
|
-
|
|
22
15
|
end
|
|
23
16
|
|
|
24
17
|
module ARInstanceMethods
|
|
@@ -27,13 +20,6 @@ module ExpectedBehavior
|
|
|
27
20
|
self.class.archival?
|
|
28
21
|
end
|
|
29
22
|
|
|
30
|
-
# rubocop:disable Style/PredicateName
|
|
31
|
-
def is_archival?
|
|
32
|
-
ActiveSupport::Deprecation.warn("#is_archival? is deprecated in favor of #archival?")
|
|
33
|
-
archival?
|
|
34
|
-
end
|
|
35
|
-
# rubocop:enable Style/PredicateName
|
|
36
|
-
|
|
37
23
|
end
|
|
38
24
|
|
|
39
25
|
module ARRelationMethods
|
data/test/responds_test.rb
CHANGED
|
@@ -12,20 +12,4 @@ class RespondsTest < ActiveSupport::TestCase
|
|
|
12
12
|
assert_not Plain.new.archival?
|
|
13
13
|
end
|
|
14
14
|
|
|
15
|
-
### Deprecation Zone ###
|
|
16
|
-
|
|
17
|
-
test "archival class responds correctly to 'is_archival?'" do
|
|
18
|
-
ActiveSupport::Deprecation.silence do
|
|
19
|
-
assert Archival.is_archival?
|
|
20
|
-
assert_not Plain.is_archival?
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
test "archival object responds correctly to 'is_archival?'" do
|
|
25
|
-
ActiveSupport::Deprecation.silence do
|
|
26
|
-
assert Archival.new.is_archival?
|
|
27
|
-
assert_not Plain.new.is_archival?
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
|
|
31
15
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: acts_as_archival
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 2.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Joel Meador
|
|
@@ -18,10 +18,10 @@ authors:
|
|
|
18
18
|
- Anton Rieder
|
|
19
19
|
- Josh Menden
|
|
20
20
|
- Sergey Gnuskov
|
|
21
|
-
autorequire:
|
|
21
|
+
autorequire:
|
|
22
22
|
bindir: bin
|
|
23
23
|
cert_chain: []
|
|
24
|
-
date:
|
|
24
|
+
date: 2021-10-19 00:00:00.000000000 Z
|
|
25
25
|
dependencies:
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: activerecord
|
|
@@ -29,14 +29,14 @@ dependencies:
|
|
|
29
29
|
requirements:
|
|
30
30
|
- - ">="
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '
|
|
32
|
+
version: '5.0'
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
36
36
|
requirements:
|
|
37
37
|
- - ">="
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '
|
|
39
|
+
version: '5.0'
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
41
|
name: appraisal
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -113,14 +113,14 @@ dependencies:
|
|
|
113
113
|
requirements:
|
|
114
114
|
- - "~>"
|
|
115
115
|
- !ruby/object:Gem::Version
|
|
116
|
-
version: 0.
|
|
116
|
+
version: 0.82.0
|
|
117
117
|
type: :development
|
|
118
118
|
prerelease: false
|
|
119
119
|
version_requirements: !ruby/object:Gem::Requirement
|
|
120
120
|
requirements:
|
|
121
121
|
- - "~>"
|
|
122
122
|
- !ruby/object:Gem::Version
|
|
123
|
-
version: 0.
|
|
123
|
+
version: 0.82.0
|
|
124
124
|
- !ruby/object:Gem::Dependency
|
|
125
125
|
name: sqlite3
|
|
126
126
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -147,7 +147,7 @@ description: |
|
|
|
147
147
|
easily restore or remove an entire set of records without having to worry about
|
|
148
148
|
partial deletion or restoration.
|
|
149
149
|
|
|
150
|
-
Additionally, other plugins generally screw with how destroy/delete work.
|
|
150
|
+
Additionally, other plugins generally screw with how destroy/delete work. We
|
|
151
151
|
don't because we actually want to be able to destroy records.
|
|
152
152
|
email:
|
|
153
153
|
- joel@expectedbehavior.com
|
|
@@ -165,14 +165,14 @@ files:
|
|
|
165
165
|
- Appraisals
|
|
166
166
|
- CHANGELOG.md
|
|
167
167
|
- Gemfile
|
|
168
|
+
- Gemfile.lock
|
|
168
169
|
- LICENSE
|
|
169
170
|
- README.md
|
|
170
171
|
- Rakefile
|
|
171
172
|
- acts_as_archival.gemspec
|
|
172
|
-
- gemfiles/rails_4.2.gemfile
|
|
173
|
-
- gemfiles/rails_5.0.gemfile
|
|
174
|
-
- gemfiles/rails_5.1.gemfile
|
|
175
173
|
- gemfiles/rails_5.2.gemfile
|
|
174
|
+
- gemfiles/rails_6.0.gemfile
|
|
175
|
+
- gemfiles/rails_6.1.gemfile
|
|
176
176
|
- init.rb
|
|
177
177
|
- lib/acts_as_archival.rb
|
|
178
178
|
- lib/acts_as_archival/version.rb
|
|
@@ -217,7 +217,7 @@ files:
|
|
|
217
217
|
homepage: http://github.com/expectedbehavior/acts_as_archival
|
|
218
218
|
licenses: []
|
|
219
219
|
metadata: {}
|
|
220
|
-
post_install_message:
|
|
220
|
+
post_install_message:
|
|
221
221
|
rdoc_options: []
|
|
222
222
|
require_paths:
|
|
223
223
|
- lib
|
|
@@ -225,15 +225,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
225
225
|
requirements:
|
|
226
226
|
- - ">="
|
|
227
227
|
- !ruby/object:Gem::Version
|
|
228
|
-
version: '
|
|
228
|
+
version: '2.4'
|
|
229
229
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
230
230
|
requirements:
|
|
231
231
|
- - ">="
|
|
232
232
|
- !ruby/object:Gem::Version
|
|
233
233
|
version: '0'
|
|
234
234
|
requirements: []
|
|
235
|
-
rubygems_version: 3.
|
|
236
|
-
signing_key:
|
|
235
|
+
rubygems_version: 3.1.2
|
|
236
|
+
signing_key:
|
|
237
237
|
specification_version: 4
|
|
238
238
|
summary: Atomic archiving/unarchiving for ActiveRecord-based apps
|
|
239
239
|
test_files:
|