subroutine 2.3.2 → 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/CODEOWNERS +1 -0
- data/.github/dependabot.yml +24 -0
- data/.github/workflows/build.yml +13 -4
- data/.ruby-version +1 -1
- data/Appraisals +9 -0
- data/CHANGELOG.MD +4 -0
- data/Gemfile +4 -1
- data/README.md +18 -0
- data/gemfiles/rails_6.1.gemfile +9 -0
- data/gemfiles/rails_6.1.gemfile.lock +102 -0
- data/gemfiles/rails_7.0.gemfile +9 -0
- data/gemfiles/rails_7.0.gemfile.lock +100 -0
- data/lib/subroutine/op.rb +5 -4
- data/lib/subroutine/type_caster.rb +13 -3
- data/lib/subroutine/version.rb +3 -3
- data/subroutine.gemspec +3 -3
- data/test/subroutine/type_caster_test.rb +27 -0
- metadata +23 -24
- data/gemfiles/am41.gemfile +0 -7
- data/gemfiles/am42.gemfile +0 -7
- data/gemfiles/am50.gemfile +0 -6
- data/gemfiles/am51.gemfile +0 -6
- data/gemfiles/am52.gemfile +0 -6
- data/gemfiles/am60.gemfile +0 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e6530220e9e104f3eb840fc5ad28514e4e9bb29f6831f1c8cefa96e3d511454b
|
|
4
|
+
data.tar.gz: 0bfaf68aae3bd5f5887c2da31b3cc1b8f8fe9c8e12b88f1365c03836bd4615cf
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2c7e809eac6e059bed7029907f4a153b388d564c0ac93b9dde0397a6ef15c5cb57fe816b2b31fdd4d2547dafbbc8d12d52493aebe61aa550afa6c430f2db820a
|
|
7
|
+
data.tar.gz: 74d0b0c8c647e3f97fa0899c18a33fbddf7aa7b88a878f22740cd0edacbaf873f7181a164347b88425c1a891662565433d3e6c5dfd5a35f602b785c9b4f7341c
|
data/.github/CODEOWNERS
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.github/workflows @guideline-tech/engineering
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
- package-ecosystem: "github-actions"
|
|
4
|
+
directory: "/"
|
|
5
|
+
open-pull-requests-limit: 20
|
|
6
|
+
schedule:
|
|
7
|
+
interval: "daily"
|
|
8
|
+
time: "09:00"
|
|
9
|
+
timezone: "America/New_York"
|
|
10
|
+
commit-message:
|
|
11
|
+
prefix: "[github-actions] "
|
|
12
|
+
- package-ecosystem: "bundler"
|
|
13
|
+
directory: "/"
|
|
14
|
+
schedule:
|
|
15
|
+
interval: "daily"
|
|
16
|
+
time: "08:30"
|
|
17
|
+
timezone: "America/New_York"
|
|
18
|
+
versioning-strategy: increase
|
|
19
|
+
open-pull-requests-limit: 20
|
|
20
|
+
insecure-external-code-execution: deny
|
|
21
|
+
allow:
|
|
22
|
+
- dependency-type: "all"
|
|
23
|
+
commit-message:
|
|
24
|
+
prefix: "[bundler] "
|
data/.github/workflows/build.yml
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
name: build
|
|
2
|
-
on:
|
|
2
|
+
on:
|
|
3
|
+
pull_request:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
3
7
|
jobs:
|
|
4
8
|
build:
|
|
5
9
|
runs-on: ubuntu-latest
|
|
@@ -7,17 +11,22 @@ jobs:
|
|
|
7
11
|
strategy:
|
|
8
12
|
fail-fast: false
|
|
9
13
|
matrix:
|
|
10
|
-
ruby-version: [2.7.
|
|
14
|
+
ruby-version: [2.7.8]
|
|
11
15
|
experimental: [false]
|
|
12
16
|
include:
|
|
13
17
|
- ruby-version: 3.0
|
|
14
18
|
experimental: true
|
|
15
19
|
- ruby-version: 3.1
|
|
16
20
|
experimental: true
|
|
21
|
+
- ruby-version: 3.2
|
|
22
|
+
experimental: true
|
|
17
23
|
steps:
|
|
18
|
-
- uses: actions/checkout@
|
|
24
|
+
- uses: actions/checkout@v4
|
|
25
|
+
with:
|
|
26
|
+
show-progress: 'false'
|
|
19
27
|
- uses: ruby/setup-ruby@v1
|
|
20
28
|
with:
|
|
21
29
|
ruby-version: ${{ matrix.ruby-version }}
|
|
22
30
|
bundler-cache: true # runs `bundle install` and caches installed gems automatically
|
|
23
|
-
- run: bundle exec
|
|
31
|
+
- run: bundle exec appraisal install
|
|
32
|
+
- run: bundle exec appraisal rake test
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
2.7.
|
|
1
|
+
2.7.8
|
data/Appraisals
ADDED
data/CHANGELOG.MD
CHANGED
data/Gemfile
CHANGED
|
@@ -5,4 +5,7 @@ source "https://rubygems.org"
|
|
|
5
5
|
# Specify your gem's dependencies in subroutine.gemspec
|
|
6
6
|
gemspec
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
# Locking to specific git sha to work around
|
|
9
|
+
# https://github.com/thoughtbot/appraisal/issues/211
|
|
10
|
+
# until appraisal v3 is released
|
|
11
|
+
gem "appraisal", github: "thoughtbot/appraisal", ref: "b200e636903"
|
data/README.md
CHANGED
|
@@ -62,3 +62,21 @@ end
|
|
|
62
62
|
- [Using an Op](https://github.com/guideline-tech/subroutine/wiki/Using-an-Op)
|
|
63
63
|
- [Errors](https://github.com/guideline-tech/subroutine/wiki/Errors)
|
|
64
64
|
- [Basic Usage in Rails](https://github.com/guideline-tech/subroutine/wiki/Rails-Usage)
|
|
65
|
+
|
|
66
|
+
## Development
|
|
67
|
+
|
|
68
|
+
Run the test suite against current Rails version:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
bundle exec rake test
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Run the test suite against all supported Rails versions using `appraisal`:
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
bundle exec appraisal rake test
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
For help updating the `Gemfile` or changing supported Rails versions, see the `appraisal` gem [README](https://github.com/thoughtbot/appraisal#usage).
|
|
81
|
+
|
|
82
|
+
Note that the gemfiles in `gemfiles/*` are auto-generated by `appraisal` and should not be modified directly.
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
GIT
|
|
2
|
+
remote: https://github.com/thoughtbot/appraisal.git
|
|
3
|
+
revision: b200e636903700098bef25f4f51dbc4c46e4c04c
|
|
4
|
+
ref: b200e636903
|
|
5
|
+
specs:
|
|
6
|
+
appraisal (2.4.1)
|
|
7
|
+
bundler
|
|
8
|
+
rake
|
|
9
|
+
thor (>= 0.14.0)
|
|
10
|
+
|
|
11
|
+
PATH
|
|
12
|
+
remote: ..
|
|
13
|
+
specs:
|
|
14
|
+
subroutine (3.0.0)
|
|
15
|
+
activemodel (>= 6.1)
|
|
16
|
+
activesupport (>= 6.1)
|
|
17
|
+
|
|
18
|
+
GEM
|
|
19
|
+
remote: https://rubygems.org/
|
|
20
|
+
specs:
|
|
21
|
+
actionpack (6.1.7.4)
|
|
22
|
+
actionview (= 6.1.7.4)
|
|
23
|
+
activesupport (= 6.1.7.4)
|
|
24
|
+
rack (~> 2.0, >= 2.0.9)
|
|
25
|
+
rack-test (>= 0.6.3)
|
|
26
|
+
rails-dom-testing (~> 2.0)
|
|
27
|
+
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
|
28
|
+
actionview (6.1.7.4)
|
|
29
|
+
activesupport (= 6.1.7.4)
|
|
30
|
+
builder (~> 3.1)
|
|
31
|
+
erubi (~> 1.4)
|
|
32
|
+
rails-dom-testing (~> 2.0)
|
|
33
|
+
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
|
34
|
+
activemodel (6.1.7.4)
|
|
35
|
+
activesupport (= 6.1.7.4)
|
|
36
|
+
activesupport (6.1.7.4)
|
|
37
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
38
|
+
i18n (>= 1.6, < 2)
|
|
39
|
+
minitest (>= 5.1)
|
|
40
|
+
tzinfo (~> 2.0)
|
|
41
|
+
zeitwerk (~> 2.3)
|
|
42
|
+
ansi (1.5.0)
|
|
43
|
+
builder (3.2.4)
|
|
44
|
+
byebug (11.1.3)
|
|
45
|
+
concurrent-ruby (1.2.2)
|
|
46
|
+
crass (1.0.6)
|
|
47
|
+
erubi (1.12.0)
|
|
48
|
+
i18n (1.14.1)
|
|
49
|
+
concurrent-ruby (~> 1.0)
|
|
50
|
+
loofah (2.21.3)
|
|
51
|
+
crass (~> 1.0.2)
|
|
52
|
+
nokogiri (>= 1.12.0)
|
|
53
|
+
m (1.6.1)
|
|
54
|
+
method_source (>= 0.6.7)
|
|
55
|
+
rake (>= 0.9.2.2)
|
|
56
|
+
method_source (1.0.0)
|
|
57
|
+
minitest (5.18.1)
|
|
58
|
+
minitest-reporters (1.6.0)
|
|
59
|
+
ansi
|
|
60
|
+
builder
|
|
61
|
+
minitest (>= 5.0)
|
|
62
|
+
ruby-progressbar
|
|
63
|
+
mocha (2.0.4)
|
|
64
|
+
ruby2_keywords (>= 0.0.5)
|
|
65
|
+
nokogiri (1.15.2-arm64-darwin)
|
|
66
|
+
racc (~> 1.4)
|
|
67
|
+
racc (1.7.1)
|
|
68
|
+
rack (2.2.7)
|
|
69
|
+
rack-test (2.1.0)
|
|
70
|
+
rack (>= 1.3)
|
|
71
|
+
rails-dom-testing (2.0.3)
|
|
72
|
+
activesupport (>= 4.2.0)
|
|
73
|
+
nokogiri (>= 1.6)
|
|
74
|
+
rails-html-sanitizer (1.6.0)
|
|
75
|
+
loofah (~> 2.21)
|
|
76
|
+
nokogiri (~> 1.14)
|
|
77
|
+
rake (13.0.6)
|
|
78
|
+
ruby-progressbar (1.13.0)
|
|
79
|
+
ruby2_keywords (0.0.5)
|
|
80
|
+
thor (1.2.2)
|
|
81
|
+
tzinfo (2.0.6)
|
|
82
|
+
concurrent-ruby (~> 1.0)
|
|
83
|
+
zeitwerk (2.6.8)
|
|
84
|
+
|
|
85
|
+
PLATFORMS
|
|
86
|
+
arm64-darwin-22
|
|
87
|
+
|
|
88
|
+
DEPENDENCIES
|
|
89
|
+
actionpack (~> 6.1.0)
|
|
90
|
+
activemodel (~> 6.1.0)
|
|
91
|
+
appraisal!
|
|
92
|
+
bundler
|
|
93
|
+
byebug
|
|
94
|
+
m
|
|
95
|
+
minitest
|
|
96
|
+
minitest-reporters
|
|
97
|
+
mocha
|
|
98
|
+
rake
|
|
99
|
+
subroutine!
|
|
100
|
+
|
|
101
|
+
BUNDLED WITH
|
|
102
|
+
2.4.7
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
GIT
|
|
2
|
+
remote: https://github.com/thoughtbot/appraisal.git
|
|
3
|
+
revision: b200e636903700098bef25f4f51dbc4c46e4c04c
|
|
4
|
+
ref: b200e636903
|
|
5
|
+
specs:
|
|
6
|
+
appraisal (2.4.1)
|
|
7
|
+
bundler
|
|
8
|
+
rake
|
|
9
|
+
thor (>= 0.14.0)
|
|
10
|
+
|
|
11
|
+
PATH
|
|
12
|
+
remote: ..
|
|
13
|
+
specs:
|
|
14
|
+
subroutine (3.0.0)
|
|
15
|
+
activemodel (>= 6.1)
|
|
16
|
+
activesupport (>= 6.1)
|
|
17
|
+
|
|
18
|
+
GEM
|
|
19
|
+
remote: https://rubygems.org/
|
|
20
|
+
specs:
|
|
21
|
+
actionpack (7.0.5.1)
|
|
22
|
+
actionview (= 7.0.5.1)
|
|
23
|
+
activesupport (= 7.0.5.1)
|
|
24
|
+
rack (~> 2.0, >= 2.2.4)
|
|
25
|
+
rack-test (>= 0.6.3)
|
|
26
|
+
rails-dom-testing (~> 2.0)
|
|
27
|
+
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
|
28
|
+
actionview (7.0.5.1)
|
|
29
|
+
activesupport (= 7.0.5.1)
|
|
30
|
+
builder (~> 3.1)
|
|
31
|
+
erubi (~> 1.4)
|
|
32
|
+
rails-dom-testing (~> 2.0)
|
|
33
|
+
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
|
34
|
+
activemodel (7.0.5.1)
|
|
35
|
+
activesupport (= 7.0.5.1)
|
|
36
|
+
activesupport (7.0.5.1)
|
|
37
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
38
|
+
i18n (>= 1.6, < 2)
|
|
39
|
+
minitest (>= 5.1)
|
|
40
|
+
tzinfo (~> 2.0)
|
|
41
|
+
ansi (1.5.0)
|
|
42
|
+
builder (3.2.4)
|
|
43
|
+
byebug (11.1.3)
|
|
44
|
+
concurrent-ruby (1.2.2)
|
|
45
|
+
crass (1.0.6)
|
|
46
|
+
erubi (1.12.0)
|
|
47
|
+
i18n (1.14.1)
|
|
48
|
+
concurrent-ruby (~> 1.0)
|
|
49
|
+
loofah (2.21.3)
|
|
50
|
+
crass (~> 1.0.2)
|
|
51
|
+
nokogiri (>= 1.12.0)
|
|
52
|
+
m (1.6.1)
|
|
53
|
+
method_source (>= 0.6.7)
|
|
54
|
+
rake (>= 0.9.2.2)
|
|
55
|
+
method_source (1.0.0)
|
|
56
|
+
minitest (5.18.1)
|
|
57
|
+
minitest-reporters (1.6.0)
|
|
58
|
+
ansi
|
|
59
|
+
builder
|
|
60
|
+
minitest (>= 5.0)
|
|
61
|
+
ruby-progressbar
|
|
62
|
+
mocha (2.0.4)
|
|
63
|
+
ruby2_keywords (>= 0.0.5)
|
|
64
|
+
nokogiri (1.15.2-arm64-darwin)
|
|
65
|
+
racc (~> 1.4)
|
|
66
|
+
racc (1.7.1)
|
|
67
|
+
rack (2.2.7)
|
|
68
|
+
rack-test (2.1.0)
|
|
69
|
+
rack (>= 1.3)
|
|
70
|
+
rails-dom-testing (2.0.3)
|
|
71
|
+
activesupport (>= 4.2.0)
|
|
72
|
+
nokogiri (>= 1.6)
|
|
73
|
+
rails-html-sanitizer (1.6.0)
|
|
74
|
+
loofah (~> 2.21)
|
|
75
|
+
nokogiri (~> 1.14)
|
|
76
|
+
rake (13.0.6)
|
|
77
|
+
ruby-progressbar (1.13.0)
|
|
78
|
+
ruby2_keywords (0.0.5)
|
|
79
|
+
thor (1.2.2)
|
|
80
|
+
tzinfo (2.0.6)
|
|
81
|
+
concurrent-ruby (~> 1.0)
|
|
82
|
+
|
|
83
|
+
PLATFORMS
|
|
84
|
+
arm64-darwin-22
|
|
85
|
+
|
|
86
|
+
DEPENDENCIES
|
|
87
|
+
actionpack (~> 7.0.0)
|
|
88
|
+
activemodel (~> 7.0.0)
|
|
89
|
+
appraisal!
|
|
90
|
+
bundler
|
|
91
|
+
byebug
|
|
92
|
+
m
|
|
93
|
+
minitest
|
|
94
|
+
minitest-reporters
|
|
95
|
+
mocha
|
|
96
|
+
rake
|
|
97
|
+
subroutine!
|
|
98
|
+
|
|
99
|
+
BUNDLED WITH
|
|
100
|
+
2.4.7
|
data/lib/subroutine/op.rb
CHANGED
|
@@ -112,9 +112,10 @@ module Subroutine
|
|
|
112
112
|
end
|
|
113
113
|
|
|
114
114
|
def inherit_errors(error_object, prefix: nil)
|
|
115
|
-
error_object = error_object.errors if error_object.respond_to?(:errors)
|
|
115
|
+
error_object = error_object.errors if error_object.respond_to?(:errors) && !error_object.is_a?(ActiveModel::Errors)
|
|
116
116
|
|
|
117
|
-
error_object.each do |
|
|
117
|
+
error_object.each do |error|
|
|
118
|
+
field_name = error.attribute
|
|
118
119
|
field_name = "#{prefix}#{field_name}" if prefix
|
|
119
120
|
field_name = field_name.to_sym
|
|
120
121
|
|
|
@@ -125,9 +126,9 @@ module Subroutine
|
|
|
125
126
|
end
|
|
126
127
|
|
|
127
128
|
if field_config
|
|
128
|
-
errors.add(field_config.field_name, error)
|
|
129
|
+
errors.add(field_config.field_name, error.message)
|
|
129
130
|
else
|
|
130
|
-
errors.add(:base, error_object.full_message(field_name, error))
|
|
131
|
+
errors.add(:base, error_object.full_message(field_name, error.message))
|
|
131
132
|
end
|
|
132
133
|
end
|
|
133
134
|
|
|
@@ -56,7 +56,17 @@ end
|
|
|
56
56
|
end
|
|
57
57
|
|
|
58
58
|
::Subroutine::TypeCaster.register :decimal, :big_decimal do |value, _options = {}|
|
|
59
|
-
|
|
59
|
+
next nil if value.blank?
|
|
60
|
+
|
|
61
|
+
if value.respond_to?(:to_d)
|
|
62
|
+
begin
|
|
63
|
+
next BigDecimal(value.to_s, 0)
|
|
64
|
+
rescue ArgumentError
|
|
65
|
+
next BigDecimal(0)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
::Subroutine::TypeCaster.cast(value, type: :number, methods: [:to_f])
|
|
60
70
|
end
|
|
61
71
|
|
|
62
72
|
::Subroutine::TypeCaster.register :string, :text do |value, _options = {}|
|
|
@@ -65,10 +75,10 @@ end
|
|
|
65
75
|
|
|
66
76
|
::Subroutine::TypeCaster.register :foreign_key do |value, options = {}|
|
|
67
77
|
next nil if value.blank?
|
|
68
|
-
|
|
78
|
+
|
|
69
79
|
calculated_type = options[:foreign_key_type].respond_to?(:call)
|
|
70
80
|
calculated_value = calculated_type ? options[:foreign_key_type].call : options[:foreign_key_type]
|
|
71
|
-
|
|
81
|
+
|
|
72
82
|
next ::Subroutine::TypeCaster.cast(value, type: calculated_value) if calculated_value
|
|
73
83
|
next ::Subroutine::TypeCaster.cast(value, type: :integer) if options[:name] && options[:name].to_s.end_with?("_id")
|
|
74
84
|
|
data/lib/subroutine/version.rb
CHANGED
data/subroutine.gemspec
CHANGED
|
@@ -19,10 +19,10 @@ Gem::Specification.new do |spec|
|
|
|
19
19
|
spec.test_files = spec.files.grep(%r{^(gemfiles|test)/})
|
|
20
20
|
spec.require_paths = ["lib"]
|
|
21
21
|
|
|
22
|
-
spec.add_dependency "activemodel", ">=
|
|
23
|
-
spec.add_dependency "activesupport", ">=
|
|
22
|
+
spec.add_dependency "activemodel", ">= 6.1"
|
|
23
|
+
spec.add_dependency "activesupport", ">= 6.1"
|
|
24
24
|
|
|
25
|
-
spec.add_development_dependency "actionpack", ">=
|
|
25
|
+
spec.add_development_dependency "actionpack", ">= 6.1"
|
|
26
26
|
spec.add_development_dependency "bundler"
|
|
27
27
|
spec.add_development_dependency "byebug"
|
|
28
28
|
spec.add_development_dependency "m"
|
|
@@ -42,6 +42,33 @@ module Subroutine
|
|
|
42
42
|
assert_equal 0.0, op.number_input
|
|
43
43
|
end
|
|
44
44
|
|
|
45
|
+
def test_decimal_inputs
|
|
46
|
+
op.decimal_input = nil
|
|
47
|
+
assert_nil op.decimal_input
|
|
48
|
+
|
|
49
|
+
op.decimal_input = 4
|
|
50
|
+
assert_equal 4.0, op.decimal_input
|
|
51
|
+
assert op.decimal_input.is_a?(BigDecimal)
|
|
52
|
+
|
|
53
|
+
op.decimal_input = 0.5
|
|
54
|
+
assert_equal 0.5, op.decimal_input
|
|
55
|
+
|
|
56
|
+
op.decimal_input = 'foo'
|
|
57
|
+
assert_equal 0.0, op.decimal_input
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def test_decimal_inputs_use_16_precision
|
|
61
|
+
op.decimal_input = 0.07
|
|
62
|
+
expected_bd_value = BigDecimal('0.07', 0)
|
|
63
|
+
assert_equal expected_bd_value, op.decimal_input
|
|
64
|
+
assert op.decimal_input.is_a?(BigDecimal)
|
|
65
|
+
|
|
66
|
+
# Ruby 3+
|
|
67
|
+
if op.decimal_input.respond_to?(:precision)
|
|
68
|
+
assert_equal expected_bd_value.precision, op.decimal_input.precision
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
45
72
|
def test_string_inputs
|
|
46
73
|
op.string_input = nil
|
|
47
74
|
assert_nil op.string_input
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: subroutine
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 3.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mike Nelson
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-
|
|
11
|
+
date: 2023-09-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activemodel
|
|
@@ -16,42 +16,42 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version:
|
|
19
|
+
version: '6.1'
|
|
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: '6.1'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: activesupport
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version:
|
|
33
|
+
version: '6.1'
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
38
|
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version:
|
|
40
|
+
version: '6.1'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: actionpack
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
45
|
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
47
|
+
version: '6.1'
|
|
48
48
|
type: :development
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
52
|
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
54
|
+
version: '6.1'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: bundler
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -157,21 +157,22 @@ executables: []
|
|
|
157
157
|
extensions: []
|
|
158
158
|
extra_rdoc_files: []
|
|
159
159
|
files:
|
|
160
|
+
- ".github/CODEOWNERS"
|
|
161
|
+
- ".github/dependabot.yml"
|
|
160
162
|
- ".github/workflows/build.yml"
|
|
161
163
|
- ".gitignore"
|
|
162
164
|
- ".ruby-gemset"
|
|
163
165
|
- ".ruby-version"
|
|
166
|
+
- Appraisals
|
|
164
167
|
- CHANGELOG.MD
|
|
165
168
|
- Gemfile
|
|
166
169
|
- LICENSE.txt
|
|
167
170
|
- README.md
|
|
168
171
|
- Rakefile
|
|
169
|
-
- gemfiles/
|
|
170
|
-
- gemfiles/
|
|
171
|
-
- gemfiles/
|
|
172
|
-
- gemfiles/
|
|
173
|
-
- gemfiles/am52.gemfile
|
|
174
|
-
- gemfiles/am60.gemfile
|
|
172
|
+
- gemfiles/rails_6.1.gemfile
|
|
173
|
+
- gemfiles/rails_6.1.gemfile.lock
|
|
174
|
+
- gemfiles/rails_7.0.gemfile
|
|
175
|
+
- gemfiles/rails_7.0.gemfile.lock
|
|
175
176
|
- lib/subroutine.rb
|
|
176
177
|
- lib/subroutine/association_fields.rb
|
|
177
178
|
- lib/subroutine/association_fields/association_type_mismatch_error.rb
|
|
@@ -205,7 +206,7 @@ homepage: https://github.com/mnelson/subroutine
|
|
|
205
206
|
licenses:
|
|
206
207
|
- MIT
|
|
207
208
|
metadata: {}
|
|
208
|
-
post_install_message:
|
|
209
|
+
post_install_message:
|
|
209
210
|
rdoc_options: []
|
|
210
211
|
require_paths:
|
|
211
212
|
- lib
|
|
@@ -220,17 +221,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
220
221
|
- !ruby/object:Gem::Version
|
|
221
222
|
version: '0'
|
|
222
223
|
requirements: []
|
|
223
|
-
rubygems_version: 3.
|
|
224
|
-
signing_key:
|
|
224
|
+
rubygems_version: 3.4.10
|
|
225
|
+
signing_key:
|
|
225
226
|
specification_version: 4
|
|
226
227
|
summary: Feature-driven operation objects.
|
|
227
228
|
test_files:
|
|
228
|
-
- gemfiles/
|
|
229
|
-
- gemfiles/
|
|
230
|
-
- gemfiles/
|
|
231
|
-
- gemfiles/
|
|
232
|
-
- gemfiles/am52.gemfile
|
|
233
|
-
- gemfiles/am60.gemfile
|
|
229
|
+
- gemfiles/rails_6.1.gemfile
|
|
230
|
+
- gemfiles/rails_6.1.gemfile.lock
|
|
231
|
+
- gemfiles/rails_7.0.gemfile
|
|
232
|
+
- gemfiles/rails_7.0.gemfile.lock
|
|
234
233
|
- test/subroutine/association_test.rb
|
|
235
234
|
- test/subroutine/auth_test.rb
|
|
236
235
|
- test/subroutine/base_test.rb
|
data/gemfiles/am41.gemfile
DELETED
data/gemfiles/am42.gemfile
DELETED
data/gemfiles/am50.gemfile
DELETED
data/gemfiles/am51.gemfile
DELETED
data/gemfiles/am52.gemfile
DELETED