shale-builder 0.9.2 → 0.10.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/.rubocop.yml +7 -1
- data/.ruby-version +1 -1
- data/CHANGELOG.md +7 -0
- data/Gemfile +8 -8
- data/Gemfile.lock +75 -60
- data/lib/shale/builder/version.rb +1 -1
- data/lib/shale/builder.rb +10 -4
- metadata +5 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8262789c3d478607825809ecdbe3e0431cd2095116d7d52c476a43b7cf481018
|
|
4
|
+
data.tar.gz: feeaa861229f49a2ac14c9b59f17a6eca14fade3e437a9b4b5ad391cc945dffb
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b44a027d9afafa13169c4907b3956f6019360837f50750cc22fb80046478d81fbb5e777138da6c5457d47beb8be4cca43bd6a5773ba0adf3e1a5efb389cbe913
|
|
7
|
+
data.tar.gz: c1f7520e1cac0e7ab2a833acfd86ada2a4386776d93bc111ab384aa838e4a65974ac30c0f8b18ca051a2e1dd35c25a20e770aa93c15c604b5acb3677533c2d7d
|
data/.rubocop.yml
CHANGED
|
@@ -2,7 +2,7 @@ inherit_gem:
|
|
|
2
2
|
rubocop-espago: sorbet.yml
|
|
3
3
|
|
|
4
4
|
AllCops:
|
|
5
|
-
TargetRubyVersion: 3.
|
|
5
|
+
TargetRubyVersion: 3.2
|
|
6
6
|
Exclude:
|
|
7
7
|
- lib/tapioca/**/*.rb
|
|
8
8
|
|
|
@@ -32,3 +32,9 @@ Sorbet/ForbidTHelpers:
|
|
|
32
32
|
|
|
33
33
|
Style/DocumentDynamicEvalDefinition:
|
|
34
34
|
Enabled: false
|
|
35
|
+
|
|
36
|
+
Style/HashLookupMethod:
|
|
37
|
+
Enabled: false
|
|
38
|
+
|
|
39
|
+
Style/OneClassPerFile:
|
|
40
|
+
Enabled: false
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
ruby-4.0.3
|
data/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.10.0] - 2026-04-28
|
|
9
|
+
|
|
10
|
+
[Diff](https://github.com/Verseth/ruby-shale-builder/compare/v0.9.3...v0.10.0)
|
|
11
|
+
|
|
12
|
+
### Changes
|
|
13
|
+
- Update ruby, sorbet and tapioca
|
|
14
|
+
|
|
8
15
|
## [0.9.2] - 2026-04-24
|
|
9
16
|
|
|
10
17
|
[Diff](https://github.com/Verseth/ruby-shale-builder/compare/v0.8.5...v0.9.2)
|
data/Gemfile
CHANGED
|
@@ -5,16 +5,16 @@ source 'https://rubygems.org'
|
|
|
5
5
|
# Specify your gem's dependencies in diggable.gemspec
|
|
6
6
|
gemspec
|
|
7
7
|
|
|
8
|
-
gem 'activemodel', '~> 8.
|
|
8
|
+
gem 'activemodel', '~> 8.1' # validations
|
|
9
9
|
gem 'base64', '~> 0.3' # Base64
|
|
10
|
-
gem 'byebug', '~>
|
|
11
|
-
gem 'minitest', '~>
|
|
10
|
+
gem 'byebug', '~> 13.0' # debugger
|
|
11
|
+
gem 'minitest', '~> 6.0' # test framework
|
|
12
12
|
gem 'mutex_m', '~> 0.3' # Mutexes
|
|
13
13
|
gem 'racc', '~> 1.8' # parser
|
|
14
|
-
gem 'rake', '~> 13.
|
|
15
|
-
gem 'rubocop', '~> 1.
|
|
14
|
+
gem 'rake', '~> 13.4' # automation tasks
|
|
15
|
+
gem 'rubocop', '~> 1.86' # ruby linter
|
|
16
16
|
gem 'rubocop-espago', '~> 1.2' # Espago rubocop config
|
|
17
|
-
gem 'rubocop-sorbet', '~> 0.
|
|
17
|
+
gem 'rubocop-sorbet', '~> 0.12' # sorbet rubocop config
|
|
18
18
|
gem 'shoulda-context', '~> 2.0' # more pleasant test syntax
|
|
19
|
-
gem 'sorbet', '>= 0.
|
|
20
|
-
gem 'tapioca', '> 0.
|
|
19
|
+
gem 'sorbet', '>= 0.6' # static typechecker
|
|
20
|
+
gem 'tapioca', '> 0.19' # RBI generator for sorbet
|
data/Gemfile.lock
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
shale-builder (0.
|
|
4
|
+
shale-builder (0.10.0)
|
|
5
5
|
booleans (>= 0.1)
|
|
6
6
|
shale (< 2.0)
|
|
7
|
-
sorbet-runtime (> 0.
|
|
7
|
+
sorbet-runtime (> 0.6)
|
|
8
8
|
|
|
9
9
|
GEM
|
|
10
10
|
remote: https://rubygems.org/
|
|
11
11
|
specs:
|
|
12
|
-
activemodel (8.
|
|
13
|
-
activesupport (= 8.
|
|
14
|
-
activesupport (8.
|
|
12
|
+
activemodel (8.1.3)
|
|
13
|
+
activesupport (= 8.1.3)
|
|
14
|
+
activesupport (8.1.3)
|
|
15
15
|
base64
|
|
16
|
-
benchmark (>= 0.3)
|
|
17
16
|
bigdecimal
|
|
18
17
|
concurrent-ruby (~> 1.0, >= 1.3.1)
|
|
19
18
|
connection_pool (>= 2.2.5)
|
|
20
19
|
drb
|
|
21
20
|
i18n (>= 1.6, < 2)
|
|
21
|
+
json
|
|
22
22
|
logger (>= 1.4.2)
|
|
23
23
|
minitest (>= 5.1)
|
|
24
24
|
securerandom (>= 0.3)
|
|
@@ -26,118 +26,133 @@ GEM
|
|
|
26
26
|
uri (>= 0.13.1)
|
|
27
27
|
ast (2.4.3)
|
|
28
28
|
base64 (0.3.0)
|
|
29
|
-
benchmark (0.
|
|
30
|
-
bigdecimal (
|
|
31
|
-
booleans (0.1.
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
29
|
+
benchmark (0.5.0)
|
|
30
|
+
bigdecimal (4.1.2)
|
|
31
|
+
booleans (0.1.3)
|
|
32
|
+
sorbet-runtime (>= 0.5)
|
|
33
|
+
byebug (13.0.0)
|
|
34
|
+
reline (>= 0.6.0)
|
|
35
|
+
concurrent-ruby (1.3.6)
|
|
36
|
+
connection_pool (3.0.2)
|
|
35
37
|
drb (2.2.3)
|
|
36
38
|
erubi (1.13.1)
|
|
37
|
-
i18n (1.14.
|
|
39
|
+
i18n (1.14.8)
|
|
38
40
|
concurrent-ruby (~> 1.0)
|
|
39
|
-
|
|
41
|
+
io-console (0.8.2)
|
|
42
|
+
json (2.19.4)
|
|
40
43
|
language_server-protocol (3.17.0.5)
|
|
41
44
|
lint_roller (1.1.0)
|
|
42
45
|
logger (1.7.0)
|
|
43
|
-
minitest (
|
|
46
|
+
minitest (6.0.5)
|
|
47
|
+
drb (~> 2.0)
|
|
48
|
+
prism (~> 1.5)
|
|
44
49
|
mutex_m (0.3.0)
|
|
45
50
|
netrc (0.11.0)
|
|
46
|
-
parallel (1.
|
|
47
|
-
parser (3.3.
|
|
51
|
+
parallel (2.1.0)
|
|
52
|
+
parser (3.3.11.1)
|
|
48
53
|
ast (~> 2.4.1)
|
|
49
54
|
racc
|
|
50
|
-
prism (1.
|
|
55
|
+
prism (1.9.0)
|
|
51
56
|
racc (1.8.1)
|
|
52
57
|
rainbow (3.1.1)
|
|
53
|
-
rake (13.
|
|
54
|
-
rbi (0.3.
|
|
58
|
+
rake (13.4.2)
|
|
59
|
+
rbi (0.3.10)
|
|
55
60
|
prism (~> 1.0)
|
|
56
|
-
rbs (>=
|
|
57
|
-
rbs (
|
|
61
|
+
rbs (>= 4.0.1)
|
|
62
|
+
rbs (4.0.2)
|
|
58
63
|
logger
|
|
59
|
-
|
|
60
|
-
|
|
64
|
+
prism (>= 1.6.0)
|
|
65
|
+
tsort
|
|
66
|
+
regexp_parser (2.12.0)
|
|
67
|
+
reline (0.6.3)
|
|
68
|
+
io-console (~> 0.5)
|
|
69
|
+
require-hooks (0.3.0)
|
|
70
|
+
rexml (3.4.4)
|
|
71
|
+
rubocop (1.86.1)
|
|
61
72
|
json (~> 2.3)
|
|
62
73
|
language_server-protocol (~> 3.17.0.2)
|
|
63
74
|
lint_roller (~> 1.1.0)
|
|
64
|
-
parallel (
|
|
75
|
+
parallel (>= 1.10)
|
|
65
76
|
parser (>= 3.3.0.2)
|
|
66
77
|
rainbow (>= 2.2.2, < 4.0)
|
|
67
78
|
regexp_parser (>= 2.9.3, < 3.0)
|
|
68
|
-
rubocop-ast (>= 1.
|
|
79
|
+
rubocop-ast (>= 1.49.0, < 2.0)
|
|
69
80
|
ruby-progressbar (~> 1.7)
|
|
70
81
|
unicode-display_width (>= 2.4.0, < 4.0)
|
|
71
|
-
rubocop-ast (1.
|
|
82
|
+
rubocop-ast (1.49.1)
|
|
72
83
|
parser (>= 3.3.7.2)
|
|
73
|
-
prism (~> 1.
|
|
84
|
+
prism (~> 1.7)
|
|
74
85
|
rubocop-espago (1.2.0)
|
|
75
86
|
rubocop
|
|
76
|
-
rubocop-sorbet (0.
|
|
87
|
+
rubocop-sorbet (0.12.0)
|
|
77
88
|
lint_roller
|
|
78
89
|
rubocop (>= 1.75.2)
|
|
79
90
|
ruby-progressbar (1.13.0)
|
|
91
|
+
rubydex (0.1.0.beta13-arm64-darwin)
|
|
92
|
+
rubydex (0.1.0.beta13-x86_64-linux)
|
|
80
93
|
securerandom (0.4.1)
|
|
81
94
|
shale (1.2.2)
|
|
82
95
|
bigdecimal
|
|
83
96
|
shoulda-context (2.0.0)
|
|
84
|
-
sorbet (0.6.
|
|
85
|
-
sorbet-static (= 0.6.
|
|
86
|
-
sorbet-runtime (0.6.
|
|
87
|
-
sorbet-static (0.6.
|
|
88
|
-
sorbet-static (0.6.
|
|
89
|
-
sorbet-static-and-runtime (0.6.
|
|
90
|
-
sorbet (= 0.6.
|
|
91
|
-
sorbet-runtime (= 0.6.
|
|
92
|
-
spoom (1.
|
|
97
|
+
sorbet (0.6.13169)
|
|
98
|
+
sorbet-static (= 0.6.13169)
|
|
99
|
+
sorbet-runtime (0.6.13169)
|
|
100
|
+
sorbet-static (0.6.13169-universal-darwin)
|
|
101
|
+
sorbet-static (0.6.13169-x86_64-linux)
|
|
102
|
+
sorbet-static-and-runtime (0.6.13169)
|
|
103
|
+
sorbet (= 0.6.13169)
|
|
104
|
+
sorbet-runtime (= 0.6.13169)
|
|
105
|
+
spoom (1.7.13)
|
|
93
106
|
erubi (>= 1.10.0)
|
|
94
107
|
prism (>= 0.28.0)
|
|
95
|
-
rbi (>= 0.
|
|
108
|
+
rbi (>= 0.3.3)
|
|
109
|
+
rbs (>= 4.0.0.dev.5)
|
|
110
|
+
rexml (>= 3.2.6)
|
|
96
111
|
sorbet-static-and-runtime (>= 0.5.10187)
|
|
97
112
|
thor (>= 0.19.2)
|
|
98
|
-
tapioca (0.
|
|
113
|
+
tapioca (0.19.1)
|
|
99
114
|
benchmark
|
|
100
115
|
bundler (>= 2.2.25)
|
|
101
116
|
netrc (>= 0.11.0)
|
|
102
117
|
parallel (>= 1.21.0)
|
|
103
|
-
rbi (
|
|
104
|
-
|
|
105
|
-
|
|
118
|
+
rbi (>= 0.3.7)
|
|
119
|
+
require-hooks (>= 0.2.2)
|
|
120
|
+
rubydex (>= 0.1.0.beta10)
|
|
121
|
+
sorbet-static-and-runtime (>= 0.6.12698)
|
|
122
|
+
spoom (>= 1.7.9)
|
|
106
123
|
thor (>= 1.2.0)
|
|
107
|
-
|
|
108
|
-
thor (1.
|
|
124
|
+
tsort
|
|
125
|
+
thor (1.5.0)
|
|
126
|
+
tsort (0.2.0)
|
|
109
127
|
tzinfo (2.0.6)
|
|
110
128
|
concurrent-ruby (~> 1.0)
|
|
111
129
|
unicode-display_width (3.2.0)
|
|
112
130
|
unicode-emoji (~> 4.1)
|
|
113
|
-
unicode-emoji (4.
|
|
114
|
-
uri (1.
|
|
115
|
-
yard (0.9.37)
|
|
116
|
-
yard-sorbet (0.9.0)
|
|
117
|
-
sorbet-runtime
|
|
118
|
-
yard
|
|
131
|
+
unicode-emoji (4.2.0)
|
|
132
|
+
uri (1.1.1)
|
|
119
133
|
|
|
120
134
|
PLATFORMS
|
|
121
135
|
arm64-darwin-20
|
|
122
136
|
arm64-darwin-22
|
|
123
137
|
arm64-darwin-24
|
|
138
|
+
arm64-darwin-25
|
|
124
139
|
x86_64-linux
|
|
125
140
|
|
|
126
141
|
DEPENDENCIES
|
|
127
|
-
activemodel (~> 8.
|
|
142
|
+
activemodel (~> 8.1)
|
|
128
143
|
base64 (~> 0.3)
|
|
129
|
-
byebug (~>
|
|
130
|
-
minitest (~>
|
|
144
|
+
byebug (~> 13.0)
|
|
145
|
+
minitest (~> 6.0)
|
|
131
146
|
mutex_m (~> 0.3)
|
|
132
147
|
racc (~> 1.8)
|
|
133
|
-
rake (~> 13.
|
|
134
|
-
rubocop (~> 1.
|
|
148
|
+
rake (~> 13.4)
|
|
149
|
+
rubocop (~> 1.86)
|
|
135
150
|
rubocop-espago (~> 1.2)
|
|
136
|
-
rubocop-sorbet (~> 0.
|
|
151
|
+
rubocop-sorbet (~> 0.12)
|
|
137
152
|
shale-builder!
|
|
138
153
|
shoulda-context (~> 2.0)
|
|
139
|
-
sorbet (>= 0.
|
|
140
|
-
tapioca (> 0.
|
|
154
|
+
sorbet (>= 0.6)
|
|
155
|
+
tapioca (> 0.19)
|
|
141
156
|
|
|
142
157
|
BUNDLED WITH
|
|
143
|
-
|
|
158
|
+
4.0.10
|
data/lib/shale/builder.rb
CHANGED
|
@@ -72,7 +72,7 @@ module Shale
|
|
|
72
72
|
extend T::Generic
|
|
73
73
|
|
|
74
74
|
abstract!
|
|
75
|
-
has_attached_class!
|
|
75
|
+
has_attached_class!(:out)
|
|
76
76
|
|
|
77
77
|
#: (Class subclass) -> void
|
|
78
78
|
def inherited(subclass)
|
|
@@ -144,10 +144,16 @@ module Shale
|
|
|
144
144
|
end
|
|
145
145
|
|
|
146
146
|
@builder_methods_module.class_eval <<~RUBY, __FILE__, __LINE__ + 1
|
|
147
|
-
def #{name}
|
|
148
|
-
return super
|
|
147
|
+
def #{name}
|
|
148
|
+
return super unless block_given?
|
|
149
149
|
|
|
150
|
-
object =
|
|
150
|
+
object = #{shale_mapper}.new
|
|
151
|
+
yield(object)
|
|
152
|
+
self.#{name} = object
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
def memo_#{name}
|
|
156
|
+
object = self.#{name} || #{shale_mapper}.new
|
|
151
157
|
yield(object)
|
|
152
158
|
self.#{name} = object
|
|
153
159
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: shale-builder
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.10.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mateusz Drewniak
|
|
@@ -43,14 +43,14 @@ dependencies:
|
|
|
43
43
|
requirements:
|
|
44
44
|
- - ">"
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '0.
|
|
46
|
+
version: '0.6'
|
|
47
47
|
type: :runtime
|
|
48
48
|
prerelease: false
|
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
51
|
- - ">"
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '0.
|
|
53
|
+
version: '0.6'
|
|
54
54
|
description: An addon to the shale Ruby gem which adds a simple yet powerful builder
|
|
55
55
|
DSL.
|
|
56
56
|
email:
|
|
@@ -90,14 +90,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
90
90
|
requirements:
|
|
91
91
|
- - ">="
|
|
92
92
|
- !ruby/object:Gem::Version
|
|
93
|
-
version: 3.
|
|
93
|
+
version: 3.2.0
|
|
94
94
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
95
95
|
requirements:
|
|
96
96
|
- - ">="
|
|
97
97
|
- !ruby/object:Gem::Version
|
|
98
98
|
version: '0'
|
|
99
99
|
requirements: []
|
|
100
|
-
rubygems_version:
|
|
100
|
+
rubygems_version: 4.0.6
|
|
101
101
|
specification_version: 4
|
|
102
102
|
summary: An addon to the shale Ruby gem which adds a simple yet powerful builder DSL.
|
|
103
103
|
test_files: []
|