activerecord-transactionable 3.0.0 → 3.0.1
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/.github/workflows/supported.yml +1 -0
- data/.rubocop_todo.yml +16 -5
- data/.simplecov +34 -2
- data/activerecord-transactionable.gemspec +8 -1
- data/lib/activerecord/transactionable/version.rb +1 -1
- data/lib/activerecord/transactionable.rb +2 -2
- metadata +17 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b7d5f0d70200bcd62ca45dd9639614241ad9922c69e26e5e60db1e8c19724ce6
|
4
|
+
data.tar.gz: de2e9d597d44673930c041d7765178e901dceb540461badcde91370b1576e22a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 29aca93fae0610d28954de9fd702d0df342445ff51b70849d4fdea3d18618e818a0cf16b87f800d67519b9719f746786492698595c1ae99fab6b9f61c3945281
|
7
|
+
data.tar.gz: efe950e407b33d34189abeac8aa1c17e527f29bb2c9c331843fac698f6a017792f8263ad65ac151e47bc718dd429de070a31dfe38115461d214d2db9a0d3151d
|
data/.rubocop_todo.yml
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on 2021-11-
|
3
|
+
# on 2021-11-10 07:27:25 UTC using RuboCop version 1.22.3.
|
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
|
@@ -81,6 +81,17 @@ RSpec/ContextWording:
|
|
81
81
|
Exclude:
|
82
82
|
- 'spec/activerecord/transactionable_spec.rb'
|
83
83
|
|
84
|
+
# Offense count: 1
|
85
|
+
# Configuration parameters: CountAsOne.
|
86
|
+
RSpec/ExampleLength:
|
87
|
+
Max: 10
|
88
|
+
|
89
|
+
# Offense count: 1
|
90
|
+
# Configuration parameters: AssignmentOnly.
|
91
|
+
RSpec/InstanceVariable:
|
92
|
+
Exclude:
|
93
|
+
- 'spec/activerecord/transactionable_spec.rb'
|
94
|
+
|
84
95
|
# Offense count: 5
|
85
96
|
RSpec/LeakyConstantDeclaration:
|
86
97
|
Exclude:
|
@@ -102,7 +113,7 @@ RSpec/NamedSubject:
|
|
102
113
|
Exclude:
|
103
114
|
- 'spec/activerecord/transactionable_spec.rb'
|
104
115
|
|
105
|
-
# Offense count:
|
116
|
+
# Offense count: 54
|
106
117
|
RSpec/NestedGroups:
|
107
118
|
Max: 8
|
108
119
|
|
@@ -124,15 +135,15 @@ Style/GuardClause:
|
|
124
135
|
- 'README.md'
|
125
136
|
- 'spec/activerecord/transactionable_spec.rb'
|
126
137
|
|
127
|
-
# Offense count:
|
138
|
+
# Offense count: 5
|
128
139
|
ThreadSafety/InstanceVariableInClassMethod:
|
129
140
|
Exclude:
|
130
141
|
- 'spec/activerecord/transactionable_spec.rb'
|
131
142
|
|
132
|
-
# Offense count:
|
143
|
+
# Offense count: 70
|
133
144
|
# Cop supports --auto-correct.
|
134
145
|
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
|
135
146
|
# URISchemes: http, https
|
136
147
|
# IgnoredPatterns: (?-mix:^\#)
|
137
148
|
Layout/LineLength:
|
138
|
-
Max:
|
149
|
+
Max: 278
|
data/.simplecov
CHANGED
@@ -1,5 +1,37 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
3
|
+
ruby_version = Gem::Version.new(RUBY_VERSION)
|
4
|
+
actual_version = lambda do |major, minor|
|
5
|
+
actual = Gem::Version.new(ruby_version)
|
6
|
+
major == actual.segments[0] && minor == actual.segments[1] && RUBY_ENGINE == "ruby"
|
7
|
+
end
|
8
|
+
coverage = actual_version.call(2, 6)
|
9
|
+
|
10
|
+
if coverage
|
11
|
+
require "simplecov-cobertura"
|
12
|
+
require "simplecov_json_formatter"
|
13
|
+
require "codecov"
|
14
|
+
|
15
|
+
SimpleCov.start do
|
16
|
+
add_filter "/spec/"
|
17
|
+
add_filter "/lib/activerecord/transactionable/version.rb"
|
18
|
+
|
19
|
+
if ENV["CI"]
|
20
|
+
# Disambiguate individual test runs
|
21
|
+
command_name "#{ENV["GITHUB_WORKFLOW"]} Job #{ENV["GITHUB_RUN_ID"]}:#{ENV["GITHUB_RUN_NUMBER"]}"
|
22
|
+
formatters = []
|
23
|
+
formatters << SimpleCov::Formatter::HTMLFormatter
|
24
|
+
formatters << SimpleCov::Formatter::CoberturaFormatter
|
25
|
+
formatters << SimpleCov::Formatter::JSONFormatter # For CodeClimate
|
26
|
+
formatters << SimpleCov::Formatter::Codecov # For CodeCov
|
27
|
+
formatter SimpleCov::Formatter::MultiFormatter.new(formatters)
|
28
|
+
else
|
29
|
+
# Use default
|
30
|
+
formatter SimpleCov::Formatter::HTMLFormatter
|
31
|
+
end
|
32
|
+
|
33
|
+
track_files "**/*.rb"
|
34
|
+
end
|
35
|
+
else
|
36
|
+
puts "Not running coverage on #{RUBY_ENGINE} #{RUBY_VERSION}"
|
5
37
|
end
|
@@ -23,8 +23,13 @@ Gem::Specification.new do |spec|
|
|
23
23
|
|
24
24
|
ruby_version = Gem::Version.new(RUBY_VERSION)
|
25
25
|
minimum_version = ->(version) { ruby_version >= Gem::Version.new(version) && RUBY_ENGINE == "ruby" }
|
26
|
+
actual_version = lambda do |major, minor|
|
27
|
+
actual = Gem::Version.new(ruby_version)
|
28
|
+
major == actual.segments[0] && minor == actual.segments[1] && RUBY_ENGINE == "ruby"
|
29
|
+
end
|
30
|
+
coverage = actual_version.call(2, 6)
|
26
31
|
linting = minimum_version.call("2.6")
|
27
|
-
|
32
|
+
stream = minimum_version.call("2.3")
|
28
33
|
|
29
34
|
spec.add_dependency "activemodel", ">= 4.0.0"
|
30
35
|
spec.add_dependency "activerecord", ">= 4.0.0"
|
@@ -36,6 +41,7 @@ Gem::Specification.new do |spec|
|
|
36
41
|
spec.add_development_dependency "rspec-benchmark", "~> 0.6"
|
37
42
|
spec.add_development_dependency "rspec-block_is_expected", "~> 1.0"
|
38
43
|
spec.add_development_dependency "rspec-pending_for", "~> 0.1"
|
44
|
+
spec.add_development_dependency "silent_stream", "~> 1.0" if stream
|
39
45
|
if linting
|
40
46
|
spec.add_development_dependency("rubocop", "~> 1.22")
|
41
47
|
spec.add_development_dependency("rubocop-md", "~> 1.0")
|
@@ -47,6 +53,7 @@ Gem::Specification.new do |spec|
|
|
47
53
|
spec.add_development_dependency("rubocop-thread_safety", "~> 0.4")
|
48
54
|
end
|
49
55
|
if coverage
|
56
|
+
spec.add_development_dependency("codecov", "~> 0.6")
|
50
57
|
spec.add_development_dependency("simplecov", "~> 0.21")
|
51
58
|
spec.add_development_dependency("simplecov-cobertura", "~> 1.4")
|
52
59
|
end
|
@@ -63,6 +63,7 @@ module Activerecord
|
|
63
63
|
lock = args.delete(:lock)
|
64
64
|
inside_args = extract_args(args, INSIDE_TRANSACTION_ERROR_HANDLERS)
|
65
65
|
outside_args = extract_args(args, OUTSIDE_TRANSACTION_ERROR_HANDLERS)
|
66
|
+
transaction_args = extract_args(args, TRANSACTION_METHOD_ARG_NAMES)
|
66
67
|
transaction_open = ActiveRecord::Base.connection.transaction_open?
|
67
68
|
unless args.keys.empty?
|
68
69
|
raise ArgumentError,
|
@@ -75,13 +76,12 @@ module Activerecord
|
|
75
76
|
"#{self} should not rescue #{ERRORS_TO_DISALLOW_INSIDE_TRANSACTION.inspect} inside a transaction: #{inside_args.keys.inspect}"
|
76
77
|
end
|
77
78
|
|
78
|
-
transaction_args = extract_args(args, TRANSACTION_METHOD_ARG_NAMES)
|
79
79
|
if transaction_open
|
80
80
|
if transaction_args[REQUIRES_NEW]
|
81
81
|
logger.debug("[#{self}.transaction_wrapper] Will start a nested transaction.")
|
82
82
|
else
|
83
83
|
transaction_args[REQUIRES_NEW] = true
|
84
|
-
logger.warn("[#{self}.transaction_wrapper] Opening a nested transaction. Setting
|
84
|
+
logger.warn("[#{self}.transaction_wrapper] Opening a nested transaction. Setting #{REQUIRES_NEW}: true")
|
85
85
|
end
|
86
86
|
end
|
87
87
|
error_handler_outside_transaction(object: object, transaction_open: transaction_open,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-transactionable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Boling
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-11-
|
11
|
+
date: 2021-11-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemodel
|
@@ -136,6 +136,20 @@ dependencies:
|
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0.1'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: silent_stream
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '1.0'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '1.0'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: rubocop
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -248,34 +262,6 @@ dependencies:
|
|
248
262
|
- - "~>"
|
249
263
|
- !ruby/object:Gem::Version
|
250
264
|
version: '0.4'
|
251
|
-
- !ruby/object:Gem::Dependency
|
252
|
-
name: simplecov
|
253
|
-
requirement: !ruby/object:Gem::Requirement
|
254
|
-
requirements:
|
255
|
-
- - "~>"
|
256
|
-
- !ruby/object:Gem::Version
|
257
|
-
version: '0.21'
|
258
|
-
type: :development
|
259
|
-
prerelease: false
|
260
|
-
version_requirements: !ruby/object:Gem::Requirement
|
261
|
-
requirements:
|
262
|
-
- - "~>"
|
263
|
-
- !ruby/object:Gem::Version
|
264
|
-
version: '0.21'
|
265
|
-
- !ruby/object:Gem::Dependency
|
266
|
-
name: simplecov-cobertura
|
267
|
-
requirement: !ruby/object:Gem::Requirement
|
268
|
-
requirements:
|
269
|
-
- - "~>"
|
270
|
-
- !ruby/object:Gem::Version
|
271
|
-
version: '1.4'
|
272
|
-
type: :development
|
273
|
-
prerelease: false
|
274
|
-
version_requirements: !ruby/object:Gem::Requirement
|
275
|
-
requirements:
|
276
|
-
- - "~>"
|
277
|
-
- !ruby/object:Gem::Version
|
278
|
-
version: '1.4'
|
279
265
|
- !ruby/object:Gem::Dependency
|
280
266
|
name: sqlite3
|
281
267
|
requirement: !ruby/object:Gem::Requirement
|
@@ -353,7 +339,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
353
339
|
- !ruby/object:Gem::Version
|
354
340
|
version: '0'
|
355
341
|
requirements: []
|
356
|
-
rubygems_version: 3.
|
342
|
+
rubygems_version: 3.2.22
|
357
343
|
signing_key:
|
358
344
|
specification_version: 4
|
359
345
|
summary: Do ActiveRecord transactions the right way.
|