rbs_activerecord 1.2.1 → 1.4.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.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/hooks/claude-code-web-session-start.sh +14 -0
  3. data/.claude/hooks/pre-commit-check.sh +73 -0
  4. data/.claude/hooks/protect-sig-files.sh +45 -0
  5. data/.claude/hooks/rbs-inline.sh +95 -0
  6. data/.claude/hooks/self-review.sh +93 -0
  7. data/.claude/settings.json +58 -0
  8. data/.rubocop.yml +61 -1
  9. data/.vscode/settings.json +16 -1
  10. data/README.md +7 -0
  11. data/Rakefile +32 -3
  12. data/lib/generators/rbs_activerecord/install_generator.rb +5 -2
  13. data/lib/rbs_activerecord/generator/active_storage/instance_methods.rb +3 -2
  14. data/lib/rbs_activerecord/generator/active_storage/scopes.rb +1 -1
  15. data/lib/rbs_activerecord/generator/associations.rb +4 -4
  16. data/lib/rbs_activerecord/generator/attributes.rb +30 -5
  17. data/lib/rbs_activerecord/generator/delegated_type/instance_methods.rb +5 -5
  18. data/lib/rbs_activerecord/generator/delegated_type/scopes.rb +3 -3
  19. data/lib/rbs_activerecord/generator/enum/base.rb +2 -2
  20. data/lib/rbs_activerecord/generator/enum/instance_methods.rb +3 -3
  21. data/lib/rbs_activerecord/generator/enum/mappings.rb +2 -2
  22. data/lib/rbs_activerecord/generator/enum/scopes.rb +2 -2
  23. data/lib/rbs_activerecord/generator/scopes.rb +2 -2
  24. data/lib/rbs_activerecord/generator/secure_password.rb +1 -1
  25. data/lib/rbs_activerecord/generator.rb +6 -3
  26. data/lib/rbs_activerecord/model.rb +2 -1
  27. data/lib/rbs_activerecord/parser/evaluator.rb +3 -12
  28. data/lib/rbs_activerecord/parser/include_expander/module.rb +7 -5
  29. data/lib/rbs_activerecord/parser/include_expander.rb +4 -4
  30. data/lib/rbs_activerecord/parser/visitor.rb +1 -1
  31. data/lib/rbs_activerecord/parser.rb +2 -1
  32. data/lib/rbs_activerecord/rake_task.rb +6 -3
  33. data/lib/rbs_activerecord/utils.rb +8 -8
  34. data/lib/rbs_activerecord/version.rb +1 -1
  35. data/rbs_collection.lock.yaml +136 -64
  36. data/rbs_collection.yaml +1 -0
  37. data/sig/generators/rbs_activerecord/install_generator.rbs +1 -1
  38. data/sig/rbs_activerecord/generator/active_storage/instance_methods.rbs +1 -0
  39. data/sig/rbs_activerecord/generator/attributes.rbs +14 -1
  40. data/sig/rbs_activerecord/generator.rbs +4 -1
  41. data/sig/rbs_activerecord/parser.rbs +2 -1
  42. data/sig/rbs_activerecord/rake_task.rbs +4 -2
  43. data/sig/rbs_activerecord/utils.rbs +2 -2
  44. metadata +11 -7
@@ -2,59 +2,59 @@
2
2
  path: ".gem_rbs_collection"
3
3
  gems:
4
4
  - name: actionpack
5
- version: '7.2'
5
+ version: '8.1'
6
6
  source:
7
7
  type: git
8
8
  name: ruby/gem_rbs_collection
9
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
9
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
10
10
  remote: https://github.com/ruby/gem_rbs_collection.git
11
11
  repo_dir: gems
12
12
  - name: actionview
13
- version: '6.0'
13
+ version: '8.1'
14
14
  source:
15
15
  type: git
16
16
  name: ruby/gem_rbs_collection
17
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
17
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
18
18
  remote: https://github.com/ruby/gem_rbs_collection.git
19
19
  repo_dir: gems
20
20
  - name: activejob
21
- version: '6.0'
21
+ version: '8.1'
22
22
  source:
23
23
  type: git
24
24
  name: ruby/gem_rbs_collection
25
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
25
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
26
26
  remote: https://github.com/ruby/gem_rbs_collection.git
27
27
  repo_dir: gems
28
28
  - name: activemodel
29
- version: '7.1'
29
+ version: '8.1'
30
30
  source:
31
31
  type: git
32
32
  name: ruby/gem_rbs_collection
33
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
33
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
34
34
  remote: https://github.com/ruby/gem_rbs_collection.git
35
35
  repo_dir: gems
36
36
  - name: activerecord
37
- version: '7.2'
37
+ version: '8.1'
38
38
  source:
39
39
  type: git
40
40
  name: ruby/gem_rbs_collection
41
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
41
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
42
42
  remote: https://github.com/ruby/gem_rbs_collection.git
43
43
  repo_dir: gems
44
44
  - name: activestorage
45
- version: '7.0'
45
+ version: '8.1'
46
46
  source:
47
47
  type: git
48
48
  name: ruby/gem_rbs_collection
49
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
49
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
50
50
  remote: https://github.com/ruby/gem_rbs_collection.git
51
51
  repo_dir: gems
52
52
  - name: activesupport
53
- version: '7.0'
53
+ version: '8.1'
54
54
  source:
55
55
  type: git
56
56
  name: ruby/gem_rbs_collection
57
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
57
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
58
58
  remote: https://github.com/ruby/gem_rbs_collection.git
59
59
  repo_dir: gems
60
60
  - name: ast
@@ -62,47 +62,39 @@ gems:
62
62
  source:
63
63
  type: git
64
64
  name: ruby/gem_rbs_collection
65
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
65
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
66
66
  remote: https://github.com/ruby/gem_rbs_collection.git
67
67
  repo_dir: gems
68
68
  - name: base64
69
- version: '0.1'
69
+ version: 0.3.0
70
70
  source:
71
- type: git
72
- name: ruby/gem_rbs_collection
73
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
74
- remote: https://github.com/ruby/gem_rbs_collection.git
75
- repo_dir: gems
71
+ type: rubygems
76
72
  - name: bcrypt
77
73
  version: '3.1'
78
74
  source:
79
75
  type: git
80
76
  name: ruby/gem_rbs_collection
81
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
77
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
82
78
  remote: https://github.com/ruby/gem_rbs_collection.git
83
79
  repo_dir: gems
84
- - name: benchmark
85
- version: '0'
86
- source:
87
- type: stdlib
88
80
  - name: bigdecimal
89
- version: '3.1'
81
+ version: 4.1.3
82
+ source:
83
+ type: rubygems
84
+ - name: cgi
85
+ version: '0.5'
90
86
  source:
91
87
  type: git
92
88
  name: ruby/gem_rbs_collection
93
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
89
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
94
90
  remote: https://github.com/ruby/gem_rbs_collection.git
95
91
  repo_dir: gems
96
- - name: cgi
97
- version: '0'
98
- source:
99
- type: stdlib
100
92
  - name: concurrent-ruby
101
93
  version: '1.1'
102
94
  source:
103
95
  type: git
104
96
  name: ruby/gem_rbs_collection
105
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
97
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
106
98
  remote: https://github.com/ruby/gem_rbs_collection.git
107
99
  repo_dir: gems
108
100
  - name: connection_pool
@@ -110,7 +102,7 @@ gems:
110
102
  source:
111
103
  type: git
112
104
  name: ruby/gem_rbs_collection
113
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
105
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
114
106
  remote: https://github.com/ruby/gem_rbs_collection.git
115
107
  repo_dir: gems
116
108
  - name: date
@@ -121,6 +113,10 @@ gems:
121
113
  version: '0'
122
114
  source:
123
115
  type: stdlib
116
+ - name: did_you_mean
117
+ version: '0'
118
+ source:
119
+ type: stdlib
124
120
  - name: digest
125
121
  version: '0'
126
122
  source:
@@ -142,7 +138,7 @@ gems:
142
138
  source:
143
139
  type: git
144
140
  name: ruby/gem_rbs_collection
145
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
141
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
146
142
  remote: https://github.com/ruby/gem_rbs_collection.git
147
143
  repo_dir: gems
148
144
  - name: i18n
@@ -150,7 +146,7 @@ gems:
150
146
  source:
151
147
  type: git
152
148
  name: ruby/gem_rbs_collection
153
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
149
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
154
150
  remote: https://github.com/ruby/gem_rbs_collection.git
155
151
  repo_dir: gems
156
152
  - name: io-console
@@ -161,36 +157,52 @@ gems:
161
157
  version: '0'
162
158
  source:
163
159
  type: stdlib
160
+ - name: language_server-protocol
161
+ version: 3.17.0.6
162
+ source:
163
+ type: rubygems
164
+ - name: lint_roller
165
+ version: '1.1'
166
+ source:
167
+ type: git
168
+ name: ruby/gem_rbs_collection
169
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
170
+ remote: https://github.com/ruby/gem_rbs_collection.git
171
+ repo_dir: gems
164
172
  - name: logger
165
- version: '0'
173
+ version: '1.7'
166
174
  source:
167
- type: stdlib
175
+ type: git
176
+ name: ruby/gem_rbs_collection
177
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
178
+ remote: https://github.com/ruby/gem_rbs_collection.git
179
+ repo_dir: gems
168
180
  - name: marcel
169
181
  version: '1.0'
170
182
  source:
171
183
  type: git
172
184
  name: ruby/gem_rbs_collection
173
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
185
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
174
186
  remote: https://github.com/ruby/gem_rbs_collection.git
175
187
  repo_dir: gems
176
188
  - name: minitest
177
- version: '0'
189
+ version: '5.25'
178
190
  source:
179
- type: stdlib
191
+ type: git
192
+ name: ruby/gem_rbs_collection
193
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
194
+ remote: https://github.com/ruby/gem_rbs_collection.git
195
+ repo_dir: gems
180
196
  - name: monitor
181
197
  version: '0'
182
198
  source:
183
199
  type: stdlib
184
- - name: mutex_m
185
- version: '0'
186
- source:
187
- type: stdlib
188
200
  - name: nokogiri
189
201
  version: '1.11'
190
202
  source:
191
203
  type: git
192
204
  name: ruby/gem_rbs_collection
193
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
205
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
194
206
  remote: https://github.com/ruby/gem_rbs_collection.git
195
207
  repo_dir: gems
196
208
  - name: openssl
@@ -206,7 +218,7 @@ gems:
206
218
  source:
207
219
  type: git
208
220
  name: ruby/gem_rbs_collection
209
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
221
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
210
222
  remote: https://github.com/ruby/gem_rbs_collection.git
211
223
  repo_dir: gems
212
224
  - name: parser
@@ -214,23 +226,39 @@ gems:
214
226
  source:
215
227
  type: git
216
228
  name: ruby/gem_rbs_collection
217
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
229
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
218
230
  remote: https://github.com/ruby/gem_rbs_collection.git
219
231
  repo_dir: gems
220
232
  - name: pathname
221
233
  version: '0'
222
234
  source:
223
235
  type: stdlib
236
+ - name: pp
237
+ version: '0'
238
+ source:
239
+ type: stdlib
240
+ - name: prettyprint
241
+ version: '0'
242
+ source:
243
+ type: stdlib
224
244
  - name: prism
225
- version: 1.2.0
245
+ version: 1.9.0
226
246
  source:
227
247
  type: rubygems
248
+ - name: racc
249
+ version: '1.8'
250
+ source:
251
+ type: git
252
+ name: ruby/gem_rbs_collection
253
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
254
+ remote: https://github.com/ruby/gem_rbs_collection.git
255
+ repo_dir: gems
228
256
  - name: rack
229
257
  version: '2.2'
230
258
  source:
231
259
  type: git
232
260
  name: ruby/gem_rbs_collection
233
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
261
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
234
262
  remote: https://github.com/ruby/gem_rbs_collection.git
235
263
  repo_dir: gems
236
264
  - name: rails-dom-testing
@@ -238,7 +266,7 @@ gems:
238
266
  source:
239
267
  type: git
240
268
  name: ruby/gem_rbs_collection
241
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
269
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
242
270
  remote: https://github.com/ruby/gem_rbs_collection.git
243
271
  repo_dir: gems
244
272
  - name: rails-html-sanitizer
@@ -246,15 +274,15 @@ gems:
246
274
  source:
247
275
  type: git
248
276
  name: ruby/gem_rbs_collection
249
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
277
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
250
278
  remote: https://github.com/ruby/gem_rbs_collection.git
251
279
  repo_dir: gems
252
280
  - name: railties
253
- version: '6.0'
281
+ version: '8.1'
254
282
  source:
255
283
  type: git
256
284
  name: ruby/gem_rbs_collection
257
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
285
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
258
286
  remote: https://github.com/ruby/gem_rbs_collection.git
259
287
  repo_dir: gems
260
288
  - name: rainbow
@@ -262,7 +290,7 @@ gems:
262
290
  source:
263
291
  type: git
264
292
  name: ruby/gem_rbs_collection
265
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
293
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
266
294
  remote: https://github.com/ruby/gem_rbs_collection.git
267
295
  repo_dir: gems
268
296
  - name: rake
@@ -270,11 +298,19 @@ gems:
270
298
  source:
271
299
  type: git
272
300
  name: ruby/gem_rbs_collection
273
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
301
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
274
302
  remote: https://github.com/ruby/gem_rbs_collection.git
275
303
  repo_dir: gems
304
+ - name: random-formatter
305
+ version: '0'
306
+ source:
307
+ type: stdlib
276
308
  - name: rbs
277
- version: 3.8.1
309
+ version: 4.2.0
310
+ source:
311
+ type: rubygems
312
+ - name: rbs-inline
313
+ version: 0.14.0
278
314
  source:
279
315
  type: rubygems
280
316
  - name: rdoc
@@ -286,25 +322,45 @@ gems:
286
322
  source:
287
323
  type: git
288
324
  name: ruby/gem_rbs_collection
289
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
325
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
290
326
  remote: https://github.com/ruby/gem_rbs_collection.git
291
327
  repo_dir: gems
328
+ - name: ripper
329
+ version: '0'
330
+ source:
331
+ type: stdlib
292
332
  - name: rubocop
293
333
  version: '1.57'
294
334
  source:
295
335
  type: git
296
336
  name: ruby/gem_rbs_collection
297
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
337
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
298
338
  remote: https://github.com/ruby/gem_rbs_collection.git
299
339
  repo_dir: gems
300
340
  - name: rubocop-ast
301
- version: '1.30'
341
+ version: '1.46'
302
342
  source:
303
343
  type: git
304
344
  name: ruby/gem_rbs_collection
305
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
345
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
306
346
  remote: https://github.com/ruby/gem_rbs_collection.git
307
347
  repo_dir: gems
348
+ - name: rubocop-instance_variable_access
349
+ version: 1.0.0
350
+ source:
351
+ type: rubygems
352
+ - name: rubocop-numbered-params
353
+ version: 1.0.1
354
+ source:
355
+ type: rubygems
356
+ - name: rubocop-rbs_inline
357
+ version: 2.0.0
358
+ source:
359
+ type: rubygems
360
+ - name: rubocop-rspec-unused-let
361
+ version: 1.3.0
362
+ source:
363
+ type: rubygems
308
364
  - name: securerandom
309
365
  version: '0'
310
366
  source:
@@ -322,13 +378,17 @@ gems:
322
378
  source:
323
379
  type: git
324
380
  name: ruby/gem_rbs_collection
325
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
381
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
326
382
  remote: https://github.com/ruby/gem_rbs_collection.git
327
383
  repo_dir: gems
328
384
  - name: stringio
329
385
  version: '0'
330
386
  source:
331
387
  type: stdlib
388
+ - name: strscan
389
+ version: '0'
390
+ source:
391
+ type: stdlib
332
392
  - name: tempfile
333
393
  version: '0'
334
394
  source:
@@ -338,7 +398,7 @@ gems:
338
398
  source:
339
399
  type: git
340
400
  name: ruby/gem_rbs_collection
341
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
401
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
342
402
  remote: https://github.com/ruby/gem_rbs_collection.git
343
403
  repo_dir: gems
344
404
  - name: time
@@ -349,6 +409,10 @@ gems:
349
409
  version: '0'
350
410
  source:
351
411
  type: stdlib
412
+ - name: tmpdir
413
+ version: '0'
414
+ source:
415
+ type: stdlib
352
416
  - name: tsort
353
417
  version: '0'
354
418
  source:
@@ -358,11 +422,19 @@ gems:
358
422
  source:
359
423
  type: git
360
424
  name: ruby/gem_rbs_collection
361
- revision: f720796536d6ecc9450fb43cdfc5b894a5e80ffd
425
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
362
426
  remote: https://github.com/ruby/gem_rbs_collection.git
363
427
  repo_dir: gems
364
428
  - name: uri
365
429
  version: '0'
366
430
  source:
367
431
  type: stdlib
432
+ - name: zeitwerk
433
+ version: '2.8'
434
+ source:
435
+ type: git
436
+ name: ruby/gem_rbs_collection
437
+ revision: 957ba06520fbe2f6d6633ceaedcced6324fa9d39
438
+ remote: https://github.com/ruby/gem_rbs_collection.git
439
+ repo_dir: gems
368
440
  gemfile_lock_path: Gemfile.lock
data/rbs_collection.yaml CHANGED
@@ -16,3 +16,4 @@ path: .gem_rbs_collection
16
16
  gems:
17
17
  - name: forwardable
18
18
  - name: rbs
19
+ - name: strscan
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RbsActiverecord
4
4
  class InstallGenerator < Rails::Generators::Base
5
- def create_raketask: () -> untyped
5
+ def create_raketask: () -> void
6
6
  end
7
7
  end
@@ -16,6 +16,7 @@ module RbsActiverecord
16
16
  def attachments: () -> Hash[String, untyped]
17
17
 
18
18
  # @rbs name: String
19
+ # @rbs reflection: untyped
19
20
  def attachment: (String name, untyped reflection) -> String
20
21
  end
21
22
  end
@@ -7,13 +7,17 @@ module RbsActiverecord
7
7
 
8
8
  attr_reader model: RbsActiverecord::Model
9
9
 
10
+ attr_reader pure_accessors: bool
11
+
10
12
  # @rbs model: RbsActiverecord::Model
11
- def initialize: (RbsActiverecord::Model model) -> void
13
+ # @rbs pure_accessors: bool
14
+ def initialize: (RbsActiverecord::Model model, pure_accessors: bool) -> void
12
15
 
13
16
  def generate: () -> String
14
17
 
15
18
  private
16
19
 
20
+ # @rbs col: untyped
17
21
  def column: (untyped col) -> String
18
22
 
19
23
  def attributes: () -> Hash[String, untyped]
@@ -22,6 +26,15 @@ module RbsActiverecord
22
26
  # @rbs type: untyped
23
27
  def attribute: (String name, untyped type) -> String
24
28
 
29
+ # The type accepted by the attribute writer.
30
+ # It is wider than the reader type for the types ActiveRecord casts on assignment.
31
+ #
32
+ # @rbs type: Symbol
33
+ # @rbs nullable: bool
34
+ def writer_type_for: (Symbol type, nullable: bool) -> String
35
+
36
+ # @rbs from: untyped
37
+ # @rbs to: untyped
25
38
  def alias_method: (untyped from, untyped to) -> String
26
39
  end
27
40
  end
@@ -10,8 +10,11 @@ module RbsActiverecord
10
10
 
11
11
  attr_reader model: RbsActiverecord::Model
12
12
 
13
+ attr_reader pure_accessors: bool
14
+
13
15
  # @rbs klass: singleton(ActiveRecord::Base)
14
- def initialize: (singleton(ActiveRecord::Base) klass) -> void
16
+ # @rbs pure_accessors: bool
17
+ def initialize: (singleton(ActiveRecord::Base) klass, ?pure_accessors: bool) -> void
15
18
 
16
19
  def generate: () -> String
17
20
 
@@ -5,7 +5,8 @@ module RbsActiverecord
5
5
  # @rbs code: String
6
6
  def self?.parse: (String code) -> Hash[String, Array[Prism::CallNode]]
7
7
 
8
- def self?.parse_file: (untyped filename) -> Hash[String, Array[Prism::CallNode]]
8
+ # @rbs filename: String
9
+ def self?.parse_file: (String filename) -> Hash[String, Array[Prism::CallNode]]
9
10
 
10
11
  # @rbs node: Prism::Node
11
12
  def self?.eval_node: (Prism::Node node) -> untyped
@@ -2,9 +2,11 @@
2
2
 
3
3
  module RbsActiverecord
4
4
  class RakeTask < Rake::TaskLib
5
- attr_accessor name: untyped
5
+ attr_accessor name: Symbol
6
6
 
7
- attr_accessor signature_root_dir: untyped
7
+ attr_accessor pure_accessors: bool
8
+
9
+ attr_accessor signature_root_dir: Pathname
8
10
 
9
11
  # @rbs name: Symbol
10
12
  # @rbs &block: (RakeTask) -> void
@@ -5,8 +5,8 @@ module RbsActiverecord
5
5
  # @rbs str: String
6
6
  def format: (String str) -> String
7
7
 
8
- # @rbs klass_name: singleton(Object)
9
- def klass_to_names: (untyped klass) -> Array[RBS::TypeName]
8
+ # @rbs klass: singleton(Object)
9
+ def klass_to_names: (singleton(Object) klass) -> Array[RBS::TypeName]
10
10
 
11
11
  # @rbs klass: singleton(ActiveRecord::Base)
12
12
  def primary_key_type_for: (singleton(ActiveRecord::Base) klass) -> String
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbs_activerecord
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takeshi KOMIYA
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-03-22 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activerecord
@@ -59,6 +58,12 @@ executables: []
59
58
  extensions: []
60
59
  extra_rdoc_files: []
61
60
  files:
61
+ - ".claude/hooks/claude-code-web-session-start.sh"
62
+ - ".claude/hooks/pre-commit-check.sh"
63
+ - ".claude/hooks/protect-sig-files.sh"
64
+ - ".claude/hooks/rbs-inline.sh"
65
+ - ".claude/hooks/self-review.sh"
66
+ - ".claude/settings.json"
62
67
  - ".rubocop.yml"
63
68
  - ".vscode/extensions.json"
64
69
  - ".vscode/settings.json"
@@ -126,7 +131,7 @@ metadata:
126
131
  homepage_uri: https://github.com/tk0miya/rbs_activerecord
127
132
  source_code_uri: https://github.com/tk0miya/rbs_activerecord
128
133
  changelog_uri: https://github.com/tk0miya/rbs_activerecord
129
- post_install_message:
134
+ rubygems_mfa_required: 'true'
130
135
  rdoc_options: []
131
136
  require_paths:
132
137
  - lib
@@ -134,15 +139,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
139
  requirements:
135
140
  - - ">="
136
141
  - !ruby/object:Gem::Version
137
- version: 3.1.0
142
+ version: 3.3.0
138
143
  required_rubygems_version: !ruby/object:Gem::Requirement
139
144
  requirements:
140
145
  - - ">="
141
146
  - !ruby/object:Gem::Version
142
147
  version: '0'
143
148
  requirements: []
144
- rubygems_version: 3.5.22
145
- signing_key:
149
+ rubygems_version: 4.0.20
146
150
  specification_version: 4
147
151
  summary: A RBS files generator for activerecord gem
148
152
  test_files: []