after_transaction_commit 1.1.2 → 2.2.2
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 +5 -5
- data/.gitignore +2 -0
- data/.travis.yml +5 -15
- data/Gemfile +0 -4
- data/README.md +2 -2
- data/after_transaction_commit.gemspec +4 -4
- data/lib/after_transaction_commit.rb +2 -11
- data/lib/after_transaction_commit/database_statements.rb +5 -43
- data/lib/after_transaction_commit/transaction.rb +14 -11
- data/lib/after_transaction_commit/version.rb +1 -1
- data/spec/after_transaction_commit_spec.rb +26 -3
- data/spec/gemfiles/52.gemfile +5 -0
- data/spec/gemfiles/60.gemfile +5 -0
- data/spec/gemfiles/61.gemfile +5 -0
- data/spec/spec_helper.rb +2 -23
- metadata +28 -33
- data/spec/gemfiles/40.gemfile +0 -9
- data/spec/gemfiles/40.gemfile.lock +0 -74
- data/spec/gemfiles/41.gemfile +0 -9
- data/spec/gemfiles/41.gemfile.lock +0 -73
- data/spec/gemfiles/42.gemfile +0 -9
- data/spec/gemfiles/42.gemfile.lock +0 -73
- data/spec/gemfiles/50.gemfile +0 -9
- data/spec/gemfiles/50.gemfile.lock +0 -70
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: '04185ece40a9ad439cf8a540b8728f7e9819b4512b1260f2e6b9dd7947570986'
|
4
|
+
data.tar.gz: b0394200049e17c6818818ae0b2cd8c53e842c2298b825b8b6a23a4e7489a666
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d36862aa6c26a4d2d5e01eeaa763915ad852e1d5d5514e0a2d11d44ef5607ec7164f974192d68d7cb2ddc4c58f942e68011ed4fc12f1e5484c884845e4207f59
|
7
|
+
data.tar.gz: 8ad0470cca519558e6c825e586898f596908647f9168daf2b499140e1f75c3dbbe592f0a9a8f1ee354a7b11f4a419feca3dfa96aab4ba1f2e97ff314ba313e21
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -2,21 +2,11 @@ bundler_args: ""
|
|
2
2
|
language: ruby
|
3
3
|
|
4
4
|
gemfile:
|
5
|
-
- spec/gemfiles/
|
6
|
-
- spec/gemfiles/
|
7
|
-
- spec/gemfiles/
|
8
|
-
- spec/gemfiles/50.gemfile
|
5
|
+
- spec/gemfiles/52.gemfile
|
6
|
+
- spec/gemfiles/60.gemfile
|
7
|
+
- spec/gemfiles/61.gemfile
|
9
8
|
rvm:
|
10
|
-
- 2.
|
11
|
-
- 2.
|
12
|
-
- 2.3.1
|
13
|
-
env:
|
14
|
-
- REAL=1
|
15
|
-
- TEST=1
|
16
|
-
|
17
|
-
matrix:
|
18
|
-
exclude:
|
19
|
-
- gemfile: spec/gemfiles/50.gemfile
|
20
|
-
rvm: 2.1.10
|
9
|
+
- 2.6.5
|
10
|
+
- 2.7.1
|
21
11
|
|
22
12
|
script: bundle exec rake spec
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -35,13 +35,13 @@ Or install it yourself as:
|
|
35
35
|
|
36
36
|
```ruby
|
37
37
|
ActiveRecord::Base.transaction do
|
38
|
-
ActiveRecord::Base.after_transaction_commit { run_some_background_job }
|
38
|
+
ActiveRecord::Base.connection.after_transaction_commit { run_some_background_job }
|
39
39
|
# run_some_background_job has not run yet
|
40
40
|
end
|
41
41
|
# now, it has run
|
42
42
|
|
43
43
|
# this one runs immediately, since we are outside a transaction
|
44
|
-
ActiveRecord::Base.after_transaction_commit { some_other_task }
|
44
|
+
ActiveRecord::Base.connection.after_transaction_commit { some_other_task }
|
45
45
|
```
|
46
46
|
|
47
47
|
### Usage in Tests
|
@@ -17,14 +17,14 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
18
18
|
spec.require_paths = ["lib"]
|
19
19
|
|
20
|
-
spec.required_ruby_version = ">= 2.
|
20
|
+
spec.required_ruby_version = ">= 2.6"
|
21
21
|
|
22
|
-
spec.add_dependency "activerecord", ">=
|
22
|
+
spec.add_dependency "activerecord", ">= 5.2"
|
23
23
|
|
24
24
|
spec.add_development_dependency "bump"
|
25
|
-
spec.add_development_dependency "bundler", "
|
25
|
+
spec.add_development_dependency "bundler", ">= 1.17", "< 3.0"
|
26
26
|
spec.add_development_dependency "byebug"
|
27
|
-
spec.add_development_dependency "rake", "~>
|
27
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
28
28
|
spec.add_development_dependency "rspec"
|
29
29
|
spec.add_development_dependency "sqlite3"
|
30
30
|
spec.add_development_dependency "wwtd"
|
@@ -1,19 +1,10 @@
|
|
1
1
|
module AfterTransactionCommit
|
2
2
|
end
|
3
3
|
|
4
|
-
unless ActiveRecord::VERSION::MAJOR.between? 4, 5
|
5
|
-
raise "Unsupported Rails version"
|
6
|
-
end
|
7
|
-
|
8
4
|
require "after_transaction_commit/version"
|
9
5
|
require "after_transaction_commit/database_statements"
|
10
6
|
require "after_transaction_commit/transaction"
|
11
7
|
|
12
8
|
# force autoloading if necessary
|
13
|
-
|
14
|
-
|
15
|
-
klass = defined?(ActiveRecord::ConnectionAdapters::OpenTransaction) ?
|
16
|
-
ActiveRecord::ConnectionAdapters::OpenTransaction : # rails < 4.2
|
17
|
-
ActiveRecord::ConnectionAdapters::Transaction # rails >= 4.2
|
18
|
-
|
19
|
-
klass.prepend AfterTransactionCommit::Transaction
|
9
|
+
ActiveRecord::ConnectionAdapters::RealTransaction
|
10
|
+
ActiveRecord::ConnectionAdapters::Transaction.prepend(AfterTransactionCommit::Transaction)
|
@@ -1,47 +1,9 @@
|
|
1
|
+
# this is still a class eval because it has already been included into other
|
2
|
+
# classes, so if we include into it, the other classes won't get this method
|
1
3
|
ActiveRecord::ConnectionAdapters::DatabaseStatements.class_eval do
|
2
4
|
def after_transaction_commit(&block)
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
@after_transaction_commit ||= []
|
7
|
-
@after_transaction_commit << block
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
private
|
12
|
-
|
13
|
-
def _run_after_transaction_commit_callbacks
|
14
|
-
if @after_transaction_commit.present?
|
15
|
-
# the callback could trigger a new transaction on this connection,
|
16
|
-
# and leaving the callbacks in @after_transaction_commit could put us in an
|
17
|
-
# infinite loop.
|
18
|
-
# so we store off the callbacks to a local var here.
|
19
|
-
callbacks = @after_transaction_commit
|
20
|
-
@after_transaction_commit = []
|
21
|
-
callbacks.each { |cb| cb.call() }
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
def _remove_after_transaction_commit_callbacks
|
26
|
-
@after_transaction_commit = [] if @after_transaction_commit
|
27
|
-
end
|
28
|
-
|
29
|
-
if ActiveRecord.version < Gem::Version.new('5')
|
30
|
-
def _transaction_test_mode?
|
31
|
-
defined?(TestAfterCommit)
|
32
|
-
end
|
33
|
-
|
34
|
-
def _in_transaction_for_callbacks?
|
35
|
-
txn = _transaction_test_mode? ? _test_open_transactions : open_transactions
|
36
|
-
txn > 0
|
37
|
-
end
|
38
|
-
|
39
|
-
def _test_open_transactions
|
40
|
-
@test_open_transactions || 0
|
41
|
-
end
|
42
|
-
else
|
43
|
-
def _in_transaction_for_callbacks?
|
44
|
-
current_transaction.joinable?
|
45
|
-
end
|
5
|
+
transaction = transaction_manager.current_transaction
|
6
|
+
return block.call unless transaction.joinable?
|
7
|
+
transaction.add_after_commit(block)
|
46
8
|
end
|
47
9
|
end
|
@@ -1,25 +1,28 @@
|
|
1
1
|
module AfterTransactionCommit
|
2
2
|
module Transaction
|
3
|
-
if ActiveRecord.version
|
4
|
-
def
|
3
|
+
if ::ActiveRecord.version >= Gem::Version.new("6.1")
|
4
|
+
def initialize(connection, **options)
|
5
5
|
super
|
6
|
-
|
7
|
-
(connection.send(:_transaction_test_mode?) && connection.send(:_test_open_transactions) == 0)
|
8
|
-
connection.send(:_remove_after_transaction_commit_callbacks)
|
9
|
-
end
|
6
|
+
@after_commit_blocks = []
|
10
7
|
end
|
11
8
|
else
|
12
|
-
def
|
9
|
+
def initialize(connection, options, run_commit_callbacks: false)
|
13
10
|
super
|
14
|
-
|
15
|
-
connection.send(:_remove_after_transaction_commit_callbacks)
|
16
|
-
end
|
11
|
+
@after_commit_blocks = []
|
17
12
|
end
|
18
13
|
end
|
19
14
|
|
15
|
+
def add_after_commit(block)
|
16
|
+
@after_commit_blocks << block
|
17
|
+
end
|
18
|
+
|
20
19
|
def commit_records
|
21
20
|
super
|
22
|
-
|
21
|
+
if @run_commit_callbacks
|
22
|
+
@after_commit_blocks.each(&:call)
|
23
|
+
else
|
24
|
+
connection.current_transaction.instance_variable_get(:@after_commit_blocks).concat(@after_commit_blocks)
|
25
|
+
end
|
23
26
|
end
|
24
27
|
end
|
25
28
|
end
|
@@ -21,7 +21,6 @@ describe AfterTransactionCommit do
|
|
21
21
|
end
|
22
22
|
|
23
23
|
it "immediately executes the callback when in a non-joinable transaction" do
|
24
|
-
skip "Rails 5 only" if ActiveRecord.version < Gem::Version.new('5')
|
25
24
|
a = 0
|
26
25
|
User.connection.transaction(joinable: false) do
|
27
26
|
User.connection.after_transaction_commit { a += 1 }
|
@@ -31,7 +30,6 @@ describe AfterTransactionCommit do
|
|
31
30
|
end
|
32
31
|
|
33
32
|
it "executes the callback when a nested transaction commits within a non-joinable transaction" do
|
34
|
-
skip "Rails 5 only" if ActiveRecord.version < Gem::Version.new('5')
|
35
33
|
a = 0
|
36
34
|
User.connection.transaction(joinable: false) do
|
37
35
|
User.connection.transaction do
|
@@ -67,7 +65,6 @@ describe AfterTransactionCommit do
|
|
67
65
|
end
|
68
66
|
|
69
67
|
it "should execute the callback immediately if created during commit callback" do
|
70
|
-
skip "Pre-Rails 5 only" if !ENV['REAL'] && ActiveRecord.version >= Gem::Version.new('5')
|
71
68
|
a = 0
|
72
69
|
User.connection.transaction do
|
73
70
|
User.connection.after_transaction_commit { User.connection.after_transaction_commit { a += 1 } }
|
@@ -85,6 +82,19 @@ describe AfterTransactionCommit do
|
|
85
82
|
expect(a).to eql 1
|
86
83
|
end
|
87
84
|
|
85
|
+
it "doesn't execute the callback if an intermediate transaction rolls back" do
|
86
|
+
a = 0
|
87
|
+
User.connection.transaction do
|
88
|
+
User.connection.transaction(requires_new: true) do
|
89
|
+
User.connection.transaction(requires_new: true) do
|
90
|
+
User.connection.after_transaction_commit { a += 1 }
|
91
|
+
end
|
92
|
+
raise ActiveRecord::Rollback
|
93
|
+
end
|
94
|
+
end
|
95
|
+
expect(a).to eql 0
|
96
|
+
end
|
97
|
+
|
88
98
|
it "doesn't lose a callback inside a callback inside a nested non-joinable transaction" do
|
89
99
|
a = 0
|
90
100
|
User.connection.transaction do
|
@@ -96,4 +106,17 @@ describe AfterTransactionCommit do
|
|
96
106
|
end
|
97
107
|
expect(a).to eql 1
|
98
108
|
end
|
109
|
+
|
110
|
+
it "doesn't call callbacks after a requires_new transaction" do
|
111
|
+
a = 0
|
112
|
+
User.connection.transaction do
|
113
|
+
User.connection.transaction(:requires_new => true) do
|
114
|
+
User.connection.after_transaction_commit do
|
115
|
+
a += 1
|
116
|
+
end
|
117
|
+
end
|
118
|
+
expect(a).to eq 0
|
119
|
+
end
|
120
|
+
expect(a).to eql 1
|
121
|
+
end
|
99
122
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,26 +1,5 @@
|
|
1
1
|
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
|
2
|
-
|
2
|
+
require_relative "database"
|
3
3
|
|
4
4
|
require 'after_transaction_commit'
|
5
|
-
|
6
|
-
if ENV['REAL']
|
7
|
-
puts 'using real transactions'
|
8
|
-
else
|
9
|
-
puts 'using test-style transactions (use_transactional_fixtures)'
|
10
|
-
require 'test_after_commit'
|
11
|
-
end
|
12
|
-
|
13
|
-
RSpec.configure do |config|
|
14
|
-
unless ENV['REAL']
|
15
|
-
config.around do |example|
|
16
|
-
# open a transaction without using .transaction as activerecord use_transactional_fixtures does
|
17
|
-
# code taken from https://github.com/grosser/test_after_commit/blob/master/spec/spec_helper.rb
|
18
|
-
connection = ActiveRecord::Base.connection_handler.connection_pool_list.map(&:connection).first
|
19
|
-
connection.begin_transaction :joinable => false
|
20
|
-
|
21
|
-
example.call
|
22
|
-
|
23
|
-
connection.rollback_db_transaction
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
5
|
+
require 'byebug'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: after_transaction_commit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brian Palmer
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '5.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '5.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bump
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -42,16 +42,22 @@ dependencies:
|
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.17'
|
48
|
+
- - "<"
|
46
49
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
50
|
+
version: '3.0'
|
48
51
|
type: :development
|
49
52
|
prerelease: false
|
50
53
|
version_requirements: !ruby/object:Gem::Requirement
|
51
54
|
requirements:
|
52
|
-
- - "
|
55
|
+
- - ">="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: '1.17'
|
58
|
+
- - "<"
|
53
59
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
60
|
+
version: '3.0'
|
55
61
|
- !ruby/object:Gem::Dependency
|
56
62
|
name: byebug
|
57
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,14 +78,14 @@ dependencies:
|
|
72
78
|
requirements:
|
73
79
|
- - "~>"
|
74
80
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
81
|
+
version: '13.0'
|
76
82
|
type: :development
|
77
83
|
prerelease: false
|
78
84
|
version_requirements: !ruby/object:Gem::Requirement
|
79
85
|
requirements:
|
80
86
|
- - "~>"
|
81
87
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
88
|
+
version: '13.0'
|
83
89
|
- !ruby/object:Gem::Dependency
|
84
90
|
name: rspec
|
85
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -122,7 +128,7 @@ dependencies:
|
|
122
128
|
- - ">="
|
123
129
|
- !ruby/object:Gem::Version
|
124
130
|
version: '0'
|
125
|
-
description:
|
131
|
+
description:
|
126
132
|
email:
|
127
133
|
- brianp@instructure.com
|
128
134
|
executables: []
|
@@ -144,20 +150,15 @@ files:
|
|
144
150
|
- lib/after_transaction_commit/version.rb
|
145
151
|
- spec/after_transaction_commit_spec.rb
|
146
152
|
- spec/database.rb
|
147
|
-
- spec/gemfiles/
|
148
|
-
- spec/gemfiles/
|
149
|
-
- spec/gemfiles/
|
150
|
-
- spec/gemfiles/41.gemfile.lock
|
151
|
-
- spec/gemfiles/42.gemfile
|
152
|
-
- spec/gemfiles/42.gemfile.lock
|
153
|
-
- spec/gemfiles/50.gemfile
|
154
|
-
- spec/gemfiles/50.gemfile.lock
|
153
|
+
- spec/gemfiles/52.gemfile
|
154
|
+
- spec/gemfiles/60.gemfile
|
155
|
+
- spec/gemfiles/61.gemfile
|
155
156
|
- spec/spec_helper.rb
|
156
157
|
homepage: https://github.com/instructure/after_transaction_commit
|
157
158
|
licenses:
|
158
159
|
- MIT
|
159
160
|
metadata: {}
|
160
|
-
post_install_message:
|
161
|
+
post_install_message:
|
161
162
|
rdoc_options: []
|
162
163
|
require_paths:
|
163
164
|
- lib
|
@@ -165,27 +166,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
165
166
|
requirements:
|
166
167
|
- - ">="
|
167
168
|
- !ruby/object:Gem::Version
|
168
|
-
version: '2.
|
169
|
+
version: '2.6'
|
169
170
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
170
171
|
requirements:
|
171
172
|
- - ">="
|
172
173
|
- !ruby/object:Gem::Version
|
173
174
|
version: '0'
|
174
175
|
requirements: []
|
175
|
-
|
176
|
-
|
177
|
-
signing_key:
|
176
|
+
rubygems_version: 3.1.4
|
177
|
+
signing_key:
|
178
178
|
specification_version: 4
|
179
179
|
summary: ActiveRecord::Base.connection.after_transaction_commit { ... }
|
180
180
|
test_files:
|
181
181
|
- spec/after_transaction_commit_spec.rb
|
182
182
|
- spec/database.rb
|
183
|
-
- spec/gemfiles/
|
184
|
-
- spec/gemfiles/
|
185
|
-
- spec/gemfiles/
|
186
|
-
- spec/gemfiles/41.gemfile.lock
|
187
|
-
- spec/gemfiles/42.gemfile
|
188
|
-
- spec/gemfiles/42.gemfile.lock
|
189
|
-
- spec/gemfiles/50.gemfile
|
190
|
-
- spec/gemfiles/50.gemfile.lock
|
183
|
+
- spec/gemfiles/52.gemfile
|
184
|
+
- spec/gemfiles/60.gemfile
|
185
|
+
- spec/gemfiles/61.gemfile
|
191
186
|
- spec/spec_helper.rb
|
data/spec/gemfiles/40.gemfile
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
GIT
|
2
|
-
remote: https://github.com/codekitchen/test_after_commit.git
|
3
|
-
revision: 899ec8b6c699330d7804f91253e37beb610d097e
|
4
|
-
branch: nested-commit-callbacks
|
5
|
-
specs:
|
6
|
-
test_after_commit (0.3.0)
|
7
|
-
activerecord (>= 3.2)
|
8
|
-
|
9
|
-
PATH
|
10
|
-
remote: ../..
|
11
|
-
specs:
|
12
|
-
after_transaction_commit (1.1.0)
|
13
|
-
activerecord (>= 4.0)
|
14
|
-
|
15
|
-
GEM
|
16
|
-
remote: https://rubygems.org/
|
17
|
-
specs:
|
18
|
-
activemodel (4.0.13)
|
19
|
-
activesupport (= 4.0.13)
|
20
|
-
builder (~> 3.1.0)
|
21
|
-
activerecord (4.0.13)
|
22
|
-
activemodel (= 4.0.13)
|
23
|
-
activerecord-deprecated_finders (~> 1.0.2)
|
24
|
-
activesupport (= 4.0.13)
|
25
|
-
arel (~> 4.0.0)
|
26
|
-
activerecord-deprecated_finders (1.0.4)
|
27
|
-
activesupport (4.0.13)
|
28
|
-
i18n (~> 0.6, >= 0.6.9)
|
29
|
-
minitest (~> 4.2)
|
30
|
-
multi_json (~> 1.3)
|
31
|
-
thread_safe (~> 0.1)
|
32
|
-
tzinfo (~> 0.3.37)
|
33
|
-
arel (4.0.2)
|
34
|
-
builder (3.1.4)
|
35
|
-
bump (0.5.3)
|
36
|
-
diff-lcs (1.2.5)
|
37
|
-
i18n (0.7.0)
|
38
|
-
minitest (4.7.5)
|
39
|
-
multi_json (1.12.1)
|
40
|
-
rake (11.3.0)
|
41
|
-
rspec (3.5.0)
|
42
|
-
rspec-core (~> 3.5.0)
|
43
|
-
rspec-expectations (~> 3.5.0)
|
44
|
-
rspec-mocks (~> 3.5.0)
|
45
|
-
rspec-core (3.5.4)
|
46
|
-
rspec-support (~> 3.5.0)
|
47
|
-
rspec-expectations (3.5.0)
|
48
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
49
|
-
rspec-support (~> 3.5.0)
|
50
|
-
rspec-mocks (3.5.0)
|
51
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
52
|
-
rspec-support (~> 3.5.0)
|
53
|
-
rspec-support (3.5.0)
|
54
|
-
sqlite3 (1.3.11)
|
55
|
-
thread_safe (0.3.5)
|
56
|
-
tzinfo (0.3.51)
|
57
|
-
wwtd (1.3.0)
|
58
|
-
|
59
|
-
PLATFORMS
|
60
|
-
ruby
|
61
|
-
|
62
|
-
DEPENDENCIES
|
63
|
-
activerecord (~> 4.0.0)
|
64
|
-
after_transaction_commit!
|
65
|
-
bump
|
66
|
-
bundler (~> 1.11)
|
67
|
-
rake (~> 11.0)
|
68
|
-
rspec
|
69
|
-
sqlite3
|
70
|
-
test_after_commit!
|
71
|
-
wwtd
|
72
|
-
|
73
|
-
BUNDLED WITH
|
74
|
-
1.14.3
|
data/spec/gemfiles/41.gemfile
DELETED
@@ -1,73 +0,0 @@
|
|
1
|
-
GIT
|
2
|
-
remote: https://github.com/codekitchen/test_after_commit.git
|
3
|
-
revision: 899ec8b6c699330d7804f91253e37beb610d097e
|
4
|
-
branch: nested-commit-callbacks
|
5
|
-
specs:
|
6
|
-
test_after_commit (0.3.0)
|
7
|
-
activerecord (>= 3.2)
|
8
|
-
|
9
|
-
PATH
|
10
|
-
remote: ../..
|
11
|
-
specs:
|
12
|
-
after_transaction_commit (1.1.0)
|
13
|
-
activerecord (>= 4.0)
|
14
|
-
|
15
|
-
GEM
|
16
|
-
remote: https://rubygems.org/
|
17
|
-
specs:
|
18
|
-
activemodel (4.1.16)
|
19
|
-
activesupport (= 4.1.16)
|
20
|
-
builder (~> 3.1)
|
21
|
-
activerecord (4.1.16)
|
22
|
-
activemodel (= 4.1.16)
|
23
|
-
activesupport (= 4.1.16)
|
24
|
-
arel (~> 5.0.0)
|
25
|
-
activesupport (4.1.16)
|
26
|
-
i18n (~> 0.6, >= 0.6.9)
|
27
|
-
json (~> 1.7, >= 1.7.7)
|
28
|
-
minitest (~> 5.1)
|
29
|
-
thread_safe (~> 0.1)
|
30
|
-
tzinfo (~> 1.1)
|
31
|
-
arel (5.0.1.20140414130214)
|
32
|
-
builder (3.2.2)
|
33
|
-
bump (0.5.3)
|
34
|
-
diff-lcs (1.2.5)
|
35
|
-
i18n (0.7.0)
|
36
|
-
json (1.8.3)
|
37
|
-
minitest (5.9.1)
|
38
|
-
rake (11.3.0)
|
39
|
-
rspec (3.5.0)
|
40
|
-
rspec-core (~> 3.5.0)
|
41
|
-
rspec-expectations (~> 3.5.0)
|
42
|
-
rspec-mocks (~> 3.5.0)
|
43
|
-
rspec-core (3.5.4)
|
44
|
-
rspec-support (~> 3.5.0)
|
45
|
-
rspec-expectations (3.5.0)
|
46
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
47
|
-
rspec-support (~> 3.5.0)
|
48
|
-
rspec-mocks (3.5.0)
|
49
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
50
|
-
rspec-support (~> 3.5.0)
|
51
|
-
rspec-support (3.5.0)
|
52
|
-
sqlite3 (1.3.11)
|
53
|
-
thread_safe (0.3.5)
|
54
|
-
tzinfo (1.2.2)
|
55
|
-
thread_safe (~> 0.1)
|
56
|
-
wwtd (1.3.0)
|
57
|
-
|
58
|
-
PLATFORMS
|
59
|
-
ruby
|
60
|
-
|
61
|
-
DEPENDENCIES
|
62
|
-
activerecord (~> 4.1.0)
|
63
|
-
after_transaction_commit!
|
64
|
-
bump
|
65
|
-
bundler (~> 1.11)
|
66
|
-
rake (~> 11.0)
|
67
|
-
rspec
|
68
|
-
sqlite3
|
69
|
-
test_after_commit!
|
70
|
-
wwtd
|
71
|
-
|
72
|
-
BUNDLED WITH
|
73
|
-
1.14.3
|
data/spec/gemfiles/42.gemfile
DELETED
@@ -1,73 +0,0 @@
|
|
1
|
-
GIT
|
2
|
-
remote: https://github.com/codekitchen/test_after_commit.git
|
3
|
-
revision: 899ec8b6c699330d7804f91253e37beb610d097e
|
4
|
-
branch: nested-commit-callbacks
|
5
|
-
specs:
|
6
|
-
test_after_commit (0.3.0)
|
7
|
-
activerecord (>= 3.2)
|
8
|
-
|
9
|
-
PATH
|
10
|
-
remote: ../..
|
11
|
-
specs:
|
12
|
-
after_transaction_commit (1.1.1)
|
13
|
-
activerecord (>= 4.0)
|
14
|
-
|
15
|
-
GEM
|
16
|
-
remote: https://rubygems.org/
|
17
|
-
specs:
|
18
|
-
activemodel (4.2.8)
|
19
|
-
activesupport (= 4.2.8)
|
20
|
-
builder (~> 3.1)
|
21
|
-
activerecord (4.2.8)
|
22
|
-
activemodel (= 4.2.8)
|
23
|
-
activesupport (= 4.2.8)
|
24
|
-
arel (~> 6.0)
|
25
|
-
activesupport (4.2.8)
|
26
|
-
i18n (~> 0.7)
|
27
|
-
minitest (~> 5.1)
|
28
|
-
thread_safe (~> 0.3, >= 0.3.4)
|
29
|
-
tzinfo (~> 1.1)
|
30
|
-
arel (6.0.4)
|
31
|
-
builder (3.2.3)
|
32
|
-
bump (0.5.3)
|
33
|
-
byebug (9.0.6)
|
34
|
-
diff-lcs (1.3)
|
35
|
-
i18n (0.8.1)
|
36
|
-
minitest (5.10.2)
|
37
|
-
rake (11.3.0)
|
38
|
-
rspec (3.6.0)
|
39
|
-
rspec-core (~> 3.6.0)
|
40
|
-
rspec-expectations (~> 3.6.0)
|
41
|
-
rspec-mocks (~> 3.6.0)
|
42
|
-
rspec-core (3.6.0)
|
43
|
-
rspec-support (~> 3.6.0)
|
44
|
-
rspec-expectations (3.6.0)
|
45
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
46
|
-
rspec-support (~> 3.6.0)
|
47
|
-
rspec-mocks (3.6.0)
|
48
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
49
|
-
rspec-support (~> 3.6.0)
|
50
|
-
rspec-support (3.6.0)
|
51
|
-
sqlite3 (1.3.13)
|
52
|
-
thread_safe (0.3.6)
|
53
|
-
tzinfo (1.2.3)
|
54
|
-
thread_safe (~> 0.1)
|
55
|
-
wwtd (1.3.0)
|
56
|
-
|
57
|
-
PLATFORMS
|
58
|
-
ruby
|
59
|
-
|
60
|
-
DEPENDENCIES
|
61
|
-
activerecord (~> 4.2.0.beta2)
|
62
|
-
after_transaction_commit!
|
63
|
-
bump
|
64
|
-
bundler (~> 1.11)
|
65
|
-
byebug
|
66
|
-
rake (~> 11.0)
|
67
|
-
rspec
|
68
|
-
sqlite3
|
69
|
-
test_after_commit!
|
70
|
-
wwtd
|
71
|
-
|
72
|
-
BUNDLED WITH
|
73
|
-
1.14.6
|
data/spec/gemfiles/50.gemfile
DELETED
@@ -1,70 +0,0 @@
|
|
1
|
-
GIT
|
2
|
-
remote: https://github.com/codekitchen/test_after_commit.git
|
3
|
-
revision: 899ec8b6c699330d7804f91253e37beb610d097e
|
4
|
-
branch: nested-commit-callbacks
|
5
|
-
specs:
|
6
|
-
test_after_commit (0.3.0)
|
7
|
-
activerecord (>= 3.2)
|
8
|
-
|
9
|
-
PATH
|
10
|
-
remote: ../..
|
11
|
-
specs:
|
12
|
-
after_transaction_commit (1.1.0)
|
13
|
-
activerecord (>= 4.0)
|
14
|
-
|
15
|
-
GEM
|
16
|
-
remote: https://rubygems.org/
|
17
|
-
specs:
|
18
|
-
activemodel (5.0.0.1)
|
19
|
-
activesupport (= 5.0.0.1)
|
20
|
-
activerecord (5.0.0.1)
|
21
|
-
activemodel (= 5.0.0.1)
|
22
|
-
activesupport (= 5.0.0.1)
|
23
|
-
arel (~> 7.0)
|
24
|
-
activesupport (5.0.0.1)
|
25
|
-
concurrent-ruby (~> 1.0, >= 1.0.2)
|
26
|
-
i18n (~> 0.7)
|
27
|
-
minitest (~> 5.1)
|
28
|
-
tzinfo (~> 1.1)
|
29
|
-
arel (7.1.3)
|
30
|
-
bump (0.5.3)
|
31
|
-
concurrent-ruby (1.0.2)
|
32
|
-
diff-lcs (1.2.5)
|
33
|
-
i18n (0.7.0)
|
34
|
-
minitest (5.9.1)
|
35
|
-
rake (11.3.0)
|
36
|
-
rspec (3.5.0)
|
37
|
-
rspec-core (~> 3.5.0)
|
38
|
-
rspec-expectations (~> 3.5.0)
|
39
|
-
rspec-mocks (~> 3.5.0)
|
40
|
-
rspec-core (3.5.4)
|
41
|
-
rspec-support (~> 3.5.0)
|
42
|
-
rspec-expectations (3.5.0)
|
43
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
44
|
-
rspec-support (~> 3.5.0)
|
45
|
-
rspec-mocks (3.5.0)
|
46
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
47
|
-
rspec-support (~> 3.5.0)
|
48
|
-
rspec-support (3.5.0)
|
49
|
-
sqlite3 (1.3.11)
|
50
|
-
thread_safe (0.3.5)
|
51
|
-
tzinfo (1.2.2)
|
52
|
-
thread_safe (~> 0.1)
|
53
|
-
wwtd (1.3.0)
|
54
|
-
|
55
|
-
PLATFORMS
|
56
|
-
ruby
|
57
|
-
|
58
|
-
DEPENDENCIES
|
59
|
-
activerecord (~> 5.0.0)
|
60
|
-
after_transaction_commit!
|
61
|
-
bump
|
62
|
-
bundler (~> 1.11)
|
63
|
-
rake (~> 11.0)
|
64
|
-
rspec
|
65
|
-
sqlite3
|
66
|
-
test_after_commit!
|
67
|
-
wwtd
|
68
|
-
|
69
|
-
BUNDLED WITH
|
70
|
-
1.14.3
|