packwerk 2.2.0 → 2.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (188) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +29 -20
  3. data/.github/workflows/cla.yml +22 -0
  4. data/.rubocop.yml +48 -19
  5. data/Gemfile +7 -2
  6. data/Gemfile.lock +202 -175
  7. data/README.md +1 -1
  8. data/RESOLVING_VIOLATIONS.md +81 -0
  9. data/Rakefile +1 -1
  10. data/USAGE.md +14 -5
  11. data/bin/m +1 -1
  12. data/bin/rake +1 -1
  13. data/bin/rubocop +1 -1
  14. data/bin/srb +1 -1
  15. data/bin/tapioca +1 -1
  16. data/gemfiles/Gemfile-rails-6-0 +1 -1
  17. data/gemfiles/Gemfile-rails-6-1 +22 -0
  18. data/lib/packwerk/application_load_paths.rb +1 -1
  19. data/lib/packwerk/application_validator.rb +7 -6
  20. data/lib/packwerk/association_inspector.rb +17 -15
  21. data/lib/packwerk/cache.rb +36 -29
  22. data/lib/packwerk/cli.rb +24 -20
  23. data/lib/packwerk/const_node_inspector.rb +8 -7
  24. data/lib/packwerk/constant_name_inspector.rb +2 -2
  25. data/lib/packwerk/deprecated_references.rb +40 -20
  26. data/lib/packwerk/file_processor.rb +14 -14
  27. data/lib/packwerk/files_for_processing.rb +27 -31
  28. data/lib/packwerk/formatters/offenses_formatter.rb +3 -3
  29. data/lib/packwerk/formatters/progress_formatter.rb +2 -2
  30. data/lib/packwerk/node.rb +1 -294
  31. data/lib/packwerk/node_helpers.rb +335 -0
  32. data/lib/packwerk/node_processor.rb +6 -5
  33. data/lib/packwerk/node_processor_factory.rb +3 -3
  34. data/lib/packwerk/node_visitor.rb +1 -1
  35. data/lib/packwerk/offense_collection.rb +27 -8
  36. data/lib/packwerk/offenses_formatter.rb +2 -2
  37. data/lib/packwerk/package.rb +3 -0
  38. data/lib/packwerk/package_set.rb +2 -0
  39. data/lib/packwerk/parse_run.rb +29 -20
  40. data/lib/packwerk/parsed_constant_definitions.rb +23 -20
  41. data/lib/packwerk/parsers/erb.rb +3 -3
  42. data/lib/packwerk/reference_checking/checkers/checker.rb +16 -3
  43. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +16 -0
  44. data/lib/packwerk/reference_checking/checkers/privacy_checker.rb +18 -0
  45. data/lib/packwerk/reference_checking/reference_checker.rb +3 -1
  46. data/lib/packwerk/reference_extractor.rb +51 -48
  47. data/lib/packwerk/reference_offense.rb +3 -27
  48. data/lib/packwerk/run_context.rb +9 -8
  49. data/lib/packwerk/spring_command.rb +1 -1
  50. data/lib/packwerk/version.rb +1 -1
  51. data/lib/packwerk.rb +1 -0
  52. data/packwerk.gemspec +5 -12
  53. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +2754 -0
  54. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +1496 -0
  55. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +2362 -0
  56. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +19397 -0
  57. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +1569 -0
  58. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +14907 -0
  59. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +2553 -0
  60. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +5999 -0
  61. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +37832 -0
  62. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +2321 -0
  63. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +18818 -0
  64. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +11722 -0
  65. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +90 -0
  66. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
  67. data/sorbet/rbi/gems/digest@3.1.0.rbi +189 -0
  68. data/sorbet/rbi/gems/erubi@1.11.0.rbi +140 -0
  69. data/sorbet/rbi/gems/globalid@1.0.0.rbi +572 -0
  70. data/sorbet/rbi/gems/i18n@1.12.0.rbi +2296 -0
  71. data/sorbet/rbi/gems/json@2.6.2.rbi +1548 -0
  72. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +8 -0
  73. data/sorbet/rbi/gems/loofah@2.18.0.rbi +877 -0
  74. data/sorbet/rbi/gems/m@1.6.0.rbi +257 -0
  75. data/sorbet/rbi/gems/marcel@1.0.2.rbi +220 -0
  76. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +170 -0
  77. data/sorbet/rbi/gems/mini_portile2@2.8.0.rbi +8 -0
  78. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +104 -0
  79. data/sorbet/rbi/gems/minitest@5.16.2.rbi +2136 -0
  80. data/sorbet/rbi/gems/mocha@1.14.0.rbi +4177 -0
  81. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +2147 -0
  82. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +926 -0
  83. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +11 -0
  84. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +1108 -0
  85. data/sorbet/rbi/gems/netrc@0.11.0.rbi +153 -0
  86. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +292 -0
  87. data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +6478 -0
  88. data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
  89. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +9029 -0
  90. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +8 -0
  91. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  92. data/sorbet/rbi/gems/racc@1.6.0.rbi +152 -0
  93. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +953 -0
  94. data/sorbet/rbi/gems/rack@2.2.4.rbi +5636 -0
  95. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +688 -0
  96. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +8 -0
  97. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +3507 -0
  98. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +392 -0
  99. data/sorbet/rbi/gems/rake@13.0.6.rbi +2924 -0
  100. data/sorbet/rbi/gems/rbi@0.0.15.rbi +3007 -0
  101. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +3383 -0
  102. data/sorbet/rbi/gems/rexml@3.2.5.rbi +4714 -0
  103. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +6961 -0
  104. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +2986 -0
  105. data/sorbet/rbi/gems/{rubocop-shopify@2.0.1.rbi → rubocop-shopify@2.9.0.rbi} +4 -4
  106. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +992 -0
  107. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +51820 -0
  108. data/sorbet/rbi/gems/ruby-lsp@0.2.1.rbi +11 -0
  109. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +474 -0
  110. data/sorbet/rbi/gems/spoom@1.1.11.rbi +2181 -0
  111. data/sorbet/rbi/gems/spring@4.0.0.rbi +411 -0
  112. data/sorbet/rbi/gems/strscan@3.0.4.rbi +8 -0
  113. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +8 -0
  114. data/sorbet/rbi/gems/tapioca@0.9.2.rbi +3181 -0
  115. data/sorbet/rbi/gems/thor@1.2.1.rbi +3956 -0
  116. data/sorbet/rbi/gems/timeout@0.3.0.rbi +142 -0
  117. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +5896 -0
  118. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +48 -0
  119. data/sorbet/rbi/gems/unparser@0.6.5.rbi +4529 -0
  120. data/sorbet/rbi/gems/webrick@1.7.0.rbi +2582 -0
  121. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +993 -0
  122. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +388 -0
  123. data/sorbet/rbi/gems/yard@0.9.28.rbi +18242 -0
  124. data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +867 -0
  125. data/sorbet/rbi/shims/psych.rbi +5 -0
  126. data/sorbet/tapioca/require.rb +2 -3
  127. metadata +91 -146
  128. data/.github/probots.yml +0 -2
  129. data/library.yml +0 -6
  130. data/service.yml +0 -1
  131. data/sorbet/rbi/gems/actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -860
  132. data/sorbet/rbi/gems/actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -568
  133. data/sorbet/rbi/gems/actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -587
  134. data/sorbet/rbi/gems/actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -5314
  135. data/sorbet/rbi/gems/actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -699
  136. data/sorbet/rbi/gems/actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -2515
  137. data/sorbet/rbi/gems/activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -624
  138. data/sorbet/rbi/gems/activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -1248
  139. data/sorbet/rbi/gems/activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8363
  140. data/sorbet/rbi/gems/activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -876
  141. data/sorbet/rbi/gems/activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -3987
  142. data/sorbet/rbi/gems/colorize@0.8.1.rbi +0 -40
  143. data/sorbet/rbi/gems/commander@4.5.2.rbi +0 -8
  144. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +0 -1969
  145. data/sorbet/rbi/gems/constant_resolver@0.1.5.rbi +0 -26
  146. data/sorbet/rbi/gems/erubi@1.10.0.rbi +0 -41
  147. data/sorbet/rbi/gems/globalid@0.4.2.rbi +0 -178
  148. data/sorbet/rbi/gems/highline@2.0.3.rbi +0 -8
  149. data/sorbet/rbi/gems/i18n@1.8.10.rbi +0 -600
  150. data/sorbet/rbi/gems/loofah@2.9.0.rbi +0 -274
  151. data/sorbet/rbi/gems/m@1.5.1.rbi +0 -108
  152. data/sorbet/rbi/gems/marcel@1.0.0.rbi +0 -70
  153. data/sorbet/rbi/gems/mini_mime@1.0.3.rbi +0 -71
  154. data/sorbet/rbi/gems/minitest-focus@1.2.1.rbi +0 -8
  155. data/sorbet/rbi/gems/minitest@5.14.4.rbi +0 -544
  156. data/sorbet/rbi/gems/mocha@1.12.0.rbi +0 -953
  157. data/sorbet/rbi/gems/nio4r@2.5.7.rbi +0 -90
  158. data/sorbet/rbi/gems/nokogiri@1.11.2.rbi +0 -1647
  159. data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -117
  160. data/sorbet/rbi/gems/parlour@6.0.0.rbi +0 -1272
  161. data/sorbet/rbi/gems/parser@3.0.0.0.rbi +0 -1745
  162. data/sorbet/rbi/gems/pry@0.14.0.rbi +0 -8
  163. data/sorbet/rbi/gems/psych@3.3.2.rbi +0 -24
  164. data/sorbet/rbi/gems/racc@1.5.2.rbi +0 -57
  165. data/sorbet/rbi/gems/rack-test@1.1.0.rbi +0 -335
  166. data/sorbet/rbi/gems/rack@2.2.3.rbi +0 -1718
  167. data/sorbet/rbi/gems/rails-html-sanitizer@1.3.0.rbi +0 -213
  168. data/sorbet/rbi/gems/rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8
  169. data/sorbet/rbi/gems/railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -880
  170. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -155
  171. data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -837
  172. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -8
  173. data/sorbet/rbi/gems/rexml@3.2.4.rbi +0 -8
  174. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -8
  175. data/sorbet/rbi/gems/rubocop-performance@1.10.2.rbi +0 -8
  176. data/sorbet/rbi/gems/rubocop-sorbet@0.6.1.rbi +0 -8
  177. data/sorbet/rbi/gems/rubocop@1.12.0.rbi +0 -8
  178. data/sorbet/rbi/gems/smart_properties@1.15.0.rbi +0 -168
  179. data/sorbet/rbi/gems/spoom@1.1.0.rbi +0 -1061
  180. data/sorbet/rbi/gems/spring@2.1.1.rbi +0 -160
  181. data/sorbet/rbi/gems/sprockets-rails@3.2.2.rbi +0 -451
  182. data/sorbet/rbi/gems/sprockets@4.0.2.rbi +0 -1133
  183. data/sorbet/rbi/gems/tapioca@0.4.19.rbi +0 -603
  184. data/sorbet/rbi/gems/thor@1.1.0.rbi +0 -893
  185. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +0 -566
  186. data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +0 -8
  187. data/sorbet/rbi/gems/websocket-driver@0.7.3.rbi +0 -438
  188. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +0 -177
@@ -1,876 +0,0 @@
1
- # DO NOT EDIT MANUALLY
2
- # This is an autogenerated file for types exported from the `activestorage` gem.
3
- # Please instead update this file by running `bin/tapioca sync`.
4
-
5
- # typed: true
6
-
7
- module ActiveStorage
8
- extend(::ActiveSupport::Autoload)
9
-
10
- def analyzers; end
11
- def analyzers=(val); end
12
- def binary_content_type; end
13
- def binary_content_type=(val); end
14
- def content_types_allowed_inline; end
15
- def content_types_allowed_inline=(val); end
16
- def content_types_to_serve_as_binary; end
17
- def content_types_to_serve_as_binary=(val); end
18
- def draw_routes; end
19
- def draw_routes=(val); end
20
- def logger; end
21
- def logger=(val); end
22
- def paths; end
23
- def paths=(val); end
24
- def previewers; end
25
- def previewers=(val); end
26
- def queues; end
27
- def queues=(val); end
28
- def replace_on_assign_to_many; end
29
- def replace_on_assign_to_many=(val); end
30
- def resolve_model_to_route; end
31
- def resolve_model_to_route=(val); end
32
- def routes_prefix; end
33
- def routes_prefix=(val); end
34
- def service_urls_expire_in; end
35
- def service_urls_expire_in=(val); end
36
- def track_variants; end
37
- def track_variants=(val); end
38
- def variable_content_types; end
39
- def variable_content_types=(val); end
40
- def variant_processor; end
41
- def variant_processor=(val); end
42
- def verifier; end
43
- def verifier=(val); end
44
- def web_image_content_types; end
45
- def web_image_content_types=(val); end
46
-
47
- class << self
48
- def analyzers; end
49
- def analyzers=(val); end
50
- def binary_content_type; end
51
- def binary_content_type=(val); end
52
- def content_types_allowed_inline; end
53
- def content_types_allowed_inline=(val); end
54
- def content_types_to_serve_as_binary; end
55
- def content_types_to_serve_as_binary=(val); end
56
- def draw_routes; end
57
- def draw_routes=(val); end
58
- def gem_version; end
59
- def logger; end
60
- def logger=(val); end
61
- def paths; end
62
- def paths=(val); end
63
- def previewers; end
64
- def previewers=(val); end
65
- def queues; end
66
- def queues=(val); end
67
- def railtie_helpers_paths; end
68
- def railtie_namespace; end
69
- def railtie_routes_url_helpers(include_path_helpers = T.unsafe(nil)); end
70
- def replace_on_assign_to_many; end
71
- def replace_on_assign_to_many=(val); end
72
- def resolve_model_to_route; end
73
- def resolve_model_to_route=(val); end
74
- def routes_prefix; end
75
- def routes_prefix=(val); end
76
- def service_urls_expire_in; end
77
- def service_urls_expire_in=(val); end
78
- def table_name_prefix; end
79
- def track_variants; end
80
- def track_variants=(val); end
81
- def use_relative_model_naming?; end
82
- def variable_content_types; end
83
- def variable_content_types=(val); end
84
- def variant_processor; end
85
- def variant_processor=(val); end
86
- def verifier; end
87
- def verifier=(val); end
88
- def version; end
89
- def web_image_content_types; end
90
- def web_image_content_types=(val); end
91
- end
92
- end
93
-
94
- class ActiveStorage::AnalyzeJob < ::ActiveStorage::BaseJob
95
- def perform(blob); end
96
-
97
- class << self
98
- def queue_name; end
99
- def rescue_handlers; end
100
- end
101
- end
102
-
103
- class ActiveStorage::Analyzer
104
- def initialize(blob); end
105
-
106
- def blob; end
107
- def metadata; end
108
-
109
- private
110
-
111
- def download_blob_to_tempfile(&block); end
112
- def logger; end
113
- def tmpdir; end
114
-
115
- class << self
116
- def accept?(blob); end
117
- def analyze_later?; end
118
- end
119
- end
120
-
121
- class ActiveStorage::Analyzer::ImageAnalyzer < ::ActiveStorage::Analyzer
122
- def metadata; end
123
-
124
- private
125
-
126
- def read_image; end
127
- def rotated_image?(image); end
128
-
129
- class << self
130
- def accept?(blob); end
131
- end
132
- end
133
-
134
- class ActiveStorage::Analyzer::NullAnalyzer < ::ActiveStorage::Analyzer
135
- def metadata; end
136
-
137
- class << self
138
- def accept?(blob); end
139
- def analyze_later?; end
140
- end
141
- end
142
-
143
- class ActiveStorage::Analyzer::VideoAnalyzer < ::ActiveStorage::Analyzer
144
- def metadata; end
145
-
146
- private
147
-
148
- def angle; end
149
- def computed_height; end
150
- def container; end
151
- def display_aspect_ratio; end
152
- def display_height_scale; end
153
- def duration; end
154
- def encoded_height; end
155
- def encoded_width; end
156
- def ffprobe_path; end
157
- def height; end
158
- def probe; end
159
- def probe_from(file); end
160
- def rotated?; end
161
- def streams; end
162
- def tags; end
163
- def video_stream; end
164
- def width; end
165
-
166
- class << self
167
- def accept?(blob); end
168
- end
169
- end
170
-
171
- class ActiveStorage::Attached
172
- def initialize(name, record); end
173
-
174
- def name; end
175
- def record; end
176
-
177
- private
178
-
179
- def change; end
180
- end
181
-
182
- module ActiveStorage::Attached::Changes
183
- extend(::ActiveSupport::Autoload)
184
- end
185
-
186
- class ActiveStorage::Attached::Changes::CreateMany
187
- def initialize(name, record, attachables); end
188
-
189
- def attachables; end
190
- def attachments; end
191
- def blobs; end
192
- def name; end
193
- def record; end
194
- def save; end
195
- def upload; end
196
-
197
- private
198
-
199
- def assign_associated_attachments; end
200
- def build_subchange_from(attachable); end
201
- def reset_associated_blobs; end
202
- def subchanges; end
203
- end
204
-
205
- class ActiveStorage::Attached::Changes::CreateOne
206
- def initialize(name, record, attachable); end
207
-
208
- def attachable; end
209
- def attachment; end
210
- def blob; end
211
- def name; end
212
- def record; end
213
- def save; end
214
- def upload; end
215
-
216
- private
217
-
218
- def attachment_service_name; end
219
- def build_attachment; end
220
- def find_attachment; end
221
- def find_or_build_attachment; end
222
- def find_or_build_blob; end
223
- end
224
-
225
- class ActiveStorage::Attached::Changes::CreateOneOfMany < ::ActiveStorage::Attached::Changes::CreateOne
226
-
227
- private
228
-
229
- def find_attachment; end
230
- end
231
-
232
- class ActiveStorage::Attached::Changes::DeleteMany
233
- def initialize(name, record); end
234
-
235
- def attachables; end
236
- def attachments; end
237
- def blobs; end
238
- def name; end
239
- def record; end
240
- def save; end
241
- end
242
-
243
- class ActiveStorage::Attached::Changes::DeleteOne
244
- def initialize(name, record); end
245
-
246
- def attachment; end
247
- def name; end
248
- def record; end
249
- def save; end
250
- end
251
-
252
- class ActiveStorage::Attached::Many < ::ActiveStorage::Attached
253
- def attach(*attachables); end
254
- def attached?; end
255
- def attachments; end
256
- def blobs; end
257
- def detach; end
258
- def method_missing(method, *args, &block); end
259
-
260
- private
261
-
262
- def respond_to_missing?(name, include_private = T.unsafe(nil)); end
263
- end
264
-
265
- module ActiveStorage::Attached::Model
266
- extend(::ActiveSupport::Concern)
267
-
268
- mixes_in_class_methods(::ActiveStorage::Attached::Model::ClassMethods)
269
-
270
- def attachment_changes; end
271
- def changed_for_autosave?; end
272
- def reload(*_arg0); end
273
-
274
- private
275
-
276
- def initialize_dup(*_arg0); end
277
- end
278
-
279
- module ActiveStorage::Attached::Model::ClassMethods
280
- def has_many_attached(name, dependent: T.unsafe(nil), service: T.unsafe(nil), strict_loading: T.unsafe(nil)); end
281
- def has_one_attached(name, dependent: T.unsafe(nil), service: T.unsafe(nil), strict_loading: T.unsafe(nil)); end
282
-
283
- private
284
-
285
- def validate_service_configuration(association_name, service); end
286
- end
287
-
288
- class ActiveStorage::Attached::One < ::ActiveStorage::Attached
289
- def attach(attachable); end
290
- def attached?; end
291
- def attachment; end
292
- def blank?; end
293
- def detach; end
294
- def method_missing(method, *args, &block); end
295
- def purge; end
296
- def purge_later; end
297
-
298
- private
299
-
300
- def respond_to_missing?(name, include_private = T.unsafe(nil)); end
301
- def write_attachment(attachment); end
302
- end
303
-
304
- class ActiveStorage::Attachment < ::ActiveStorage::Record
305
- def autosave_associated_records_for_blob(*args); end
306
- def autosave_associated_records_for_record(*args); end
307
- def method_missing(method, *args, &block); end
308
- def purge; end
309
- def purge_later; end
310
- def signed_id(*_arg0, &_arg1); end
311
- def validate_associated_records_for_blob(*args); end
312
- def variant(transformations); end
313
-
314
- private
315
-
316
- def analyze_blob_later; end
317
- def dependent; end
318
- def mirror_blob_later; end
319
- def purge_dependent_blob_later; end
320
- def respond_to_missing?(name, include_private = T.unsafe(nil)); end
321
- def variants; end
322
-
323
- class << self
324
- def __callbacks; end
325
- def _reflections; end
326
- def _validators; end
327
- def defined_enums; end
328
- end
329
- end
330
-
331
- class ActiveStorage::BaseController < ::ActionController::Base
332
- include(::ActionController::Live)
333
- include(::ActiveStorage::Streaming)
334
- include(::ActiveStorage::SetCurrent)
335
-
336
-
337
- private
338
-
339
- def _layout(lookup_context, formats); end
340
-
341
- class << self
342
- def __callbacks; end
343
- def etag_with_template_digest; end
344
- def middleware_stack; end
345
- end
346
- end
347
-
348
- class ActiveStorage::BaseJob < ::ActiveJob::Base
349
- end
350
-
351
- class ActiveStorage::Blob < ::ActiveStorage::Record
352
- class << self
353
- def _validators; end
354
- def defined_enums; end
355
- end
356
- end
357
-
358
- module ActiveStorage::Blob::Analyzable
359
- def analyze; end
360
- def analyze_later; end
361
- def analyzed?; end
362
-
363
- private
364
-
365
- def analyzer; end
366
- def analyzer_class; end
367
- def extract_metadata_via_analyzer; end
368
- end
369
-
370
- module ActiveStorage::Blob::Identifiable
371
- def identified?; end
372
- def identify; end
373
- def identify_without_saving; end
374
-
375
- private
376
-
377
- def download_identifiable_chunk; end
378
- def identify_content_type; end
379
- end
380
-
381
- module ActiveStorage::Blob::Representable
382
- extend(::ActiveSupport::Concern)
383
-
384
- def preview(transformations); end
385
- def previewable?; end
386
- def representable?; end
387
- def representation(transformations); end
388
- def variable?; end
389
- def variant(transformations); end
390
-
391
- private
392
-
393
- def default_variant_format; end
394
- def default_variant_transformations; end
395
- def format; end
396
- def variant_class; end
397
- end
398
-
399
- class ActiveStorage::Current < ::ActiveSupport::CurrentAttributes
400
- class << self
401
- def host; end
402
- def host=(attribute); end
403
- end
404
- end
405
-
406
- class ActiveStorage::DirectUploadsController < ::ActiveStorage::BaseController
407
- def create; end
408
-
409
- private
410
-
411
- def _layout(lookup_context, formats); end
412
- def blob_args; end
413
- def direct_upload_json(blob); end
414
-
415
- class << self
416
- def __callbacks; end
417
- def middleware_stack; end
418
- end
419
- end
420
-
421
- class ActiveStorage::DiskController < ::ActiveStorage::BaseController
422
- include(::ActiveStorage::FileServer)
423
-
424
- def show; end
425
- def update; end
426
-
427
- private
428
-
429
- def _layout(lookup_context, formats); end
430
- def acceptable_content?(token); end
431
- def decode_verified_key; end
432
- def decode_verified_token; end
433
- def named_disk_service(name); end
434
-
435
- class << self
436
- def __callbacks; end
437
- def middleware_stack; end
438
- end
439
- end
440
-
441
- class ActiveStorage::Downloader
442
- def initialize(service); end
443
-
444
- def open(key, checksum:, name: T.unsafe(nil), tmpdir: T.unsafe(nil)); end
445
- def service; end
446
-
447
- private
448
-
449
- def download(key, file); end
450
- def open_tempfile(name, tmpdir = T.unsafe(nil)); end
451
- def verify_integrity_of(file, checksum:); end
452
- end
453
-
454
- class ActiveStorage::Engine < ::Rails::Engine
455
- end
456
-
457
- class ActiveStorage::Error < ::StandardError
458
- end
459
-
460
- class ActiveStorage::FileNotFoundError < ::ActiveStorage::Error
461
- end
462
-
463
- module ActiveStorage::FileServer
464
-
465
- private
466
-
467
- def serve_file(path, content_type:, disposition:); end
468
- end
469
-
470
- class ActiveStorage::Filename
471
- include(::Comparable)
472
-
473
- def initialize(filename); end
474
-
475
- def <=>(other); end
476
- def as_json(*_arg0); end
477
- def base; end
478
- def extension; end
479
- def extension_with_delimiter; end
480
- def extension_without_delimiter; end
481
- def sanitized; end
482
- def to_json; end
483
- def to_s; end
484
-
485
- class << self
486
- def wrap(filename); end
487
- end
488
- end
489
-
490
- class ActiveStorage::FixtureSet
491
- include(::ActiveSupport::Testing::FileFixtures)
492
- include(::ActiveRecord::SecureToken)
493
- extend(::ActiveRecord::SecureToken::ClassMethods)
494
-
495
- def file_fixture_path; end
496
- def file_fixture_path?; end
497
- def prepare(instance, **attributes); end
498
-
499
- class << self
500
- def blob(filename:, **attributes); end
501
- def file_fixture_path; end
502
- def file_fixture_path=(value); end
503
- def file_fixture_path?; end
504
- end
505
- end
506
-
507
- class ActiveStorage::IntegrityError < ::ActiveStorage::Error
508
- end
509
-
510
- class ActiveStorage::InvariableError < ::ActiveStorage::Error
511
- end
512
-
513
- class ActiveStorage::LogSubscriber < ::ActiveSupport::LogSubscriber
514
- def logger; end
515
- def service_delete(event); end
516
- def service_delete_prefixed(event); end
517
- def service_download(event); end
518
- def service_exist(event); end
519
- def service_mirror(event); end
520
- def service_streaming_download(event); end
521
- def service_upload(event); end
522
- def service_url(event); end
523
-
524
- private
525
-
526
- def debug(event, colored_message); end
527
- def info(event, colored_message); end
528
- def key_in(event); end
529
- def log_prefix_for_service(event); end
530
- end
531
-
532
- class ActiveStorage::MirrorJob < ::ActiveStorage::BaseJob
533
- def perform(key, checksum:); end
534
-
535
- class << self
536
- def queue_name; end
537
- def rescue_handlers; end
538
- end
539
- end
540
-
541
- class ActiveStorage::Preview
542
- def initialize(blob, variation_or_variation_key); end
543
-
544
- def blob; end
545
- def download(&block); end
546
- def image; end
547
- def key; end
548
- def processed; end
549
- def service_url(*args, &block); end
550
- def url(**options); end
551
- def variation; end
552
-
553
- private
554
-
555
- def previewer; end
556
- def previewer_class; end
557
- def process; end
558
- def processed?; end
559
- def variant; end
560
- end
561
-
562
- class ActiveStorage::Preview::UnprocessedError < ::StandardError
563
- end
564
-
565
- class ActiveStorage::PreviewError < ::ActiveStorage::Error
566
- end
567
-
568
- class ActiveStorage::Previewer
569
- def initialize(blob); end
570
-
571
- def blob; end
572
- def preview(**options); end
573
-
574
- private
575
-
576
- def capture(*argv, to:); end
577
- def download_blob_to_tempfile(&block); end
578
- def draw(*argv); end
579
- def instrument(operation, payload = T.unsafe(nil), &block); end
580
- def logger; end
581
- def open_tempfile; end
582
- def tmpdir; end
583
-
584
- class << self
585
- def accept?(blob); end
586
- end
587
- end
588
-
589
- class ActiveStorage::Previewer::MuPDFPreviewer < ::ActiveStorage::Previewer
590
- def preview(**options); end
591
-
592
- private
593
-
594
- def draw_first_page_from(file, &block); end
595
-
596
- class << self
597
- def accept?(blob); end
598
- def mutool_exists?; end
599
- def mutool_path; end
600
- end
601
- end
602
-
603
- class ActiveStorage::Previewer::PopplerPDFPreviewer < ::ActiveStorage::Previewer
604
- def preview(**options); end
605
-
606
- private
607
-
608
- def draw_first_page_from(file, &block); end
609
-
610
- class << self
611
- def accept?(blob); end
612
- def pdftoppm_exists?; end
613
- def pdftoppm_path; end
614
- end
615
- end
616
-
617
- class ActiveStorage::Previewer::VideoPreviewer < ::ActiveStorage::Previewer
618
- def preview(**options); end
619
-
620
- private
621
-
622
- def draw_relevant_frame_from(file, &block); end
623
-
624
- class << self
625
- def accept?(blob); end
626
- def ffmpeg_exists?; end
627
- def ffmpeg_path; end
628
- end
629
- end
630
-
631
- class ActiveStorage::PurgeJob < ::ActiveStorage::BaseJob
632
- def perform(blob); end
633
-
634
- class << self
635
- def queue_name; end
636
- def rescue_handlers; end
637
- end
638
- end
639
-
640
- class ActiveStorage::Record < ::ActiveRecord::Base
641
- class << self
642
- def _validators; end
643
- def defined_enums; end
644
- end
645
- end
646
-
647
- module ActiveStorage::Reflection
648
- end
649
-
650
- module ActiveStorage::Reflection::ActiveRecordExtensions
651
- extend(::ActiveSupport::Concern)
652
-
653
- mixes_in_class_methods(::ActiveStorage::Reflection::ActiveRecordExtensions::ClassMethods)
654
- end
655
-
656
- module ActiveStorage::Reflection::ActiveRecordExtensions::ClassMethods
657
- def reflect_on_all_attachments; end
658
- def reflect_on_attachment(attachment); end
659
- end
660
-
661
- class ActiveStorage::Reflection::HasAttachedReflection < ::ActiveRecord::Reflection::MacroReflection
662
- def variant(name, transformations); end
663
- def variants; end
664
- end
665
-
666
- class ActiveStorage::Reflection::HasManyAttachedReflection < ::ActiveStorage::Reflection::HasAttachedReflection
667
- def macro; end
668
- end
669
-
670
- class ActiveStorage::Reflection::HasOneAttachedReflection < ::ActiveStorage::Reflection::HasAttachedReflection
671
- def macro; end
672
- end
673
-
674
- module ActiveStorage::Reflection::ReflectionExtension
675
- def add_attachment_reflection(model, name, reflection); end
676
-
677
- private
678
-
679
- def reflection_class_for(macro); end
680
- end
681
-
682
- class ActiveStorage::Service
683
- extend(::ActiveSupport::Autoload)
684
-
685
- def delete(key); end
686
- def delete_prefixed(prefix); end
687
- def download(key); end
688
- def download_chunk(key, range); end
689
- def exist?(key); end
690
- def headers_for_direct_upload(key, filename:, content_type:, content_length:, checksum:); end
691
- def name; end
692
- def name=(_arg0); end
693
- def open(*args, **options, &block); end
694
- def public?; end
695
- def update_metadata(key, **metadata); end
696
- def upload(key, io, checksum: T.unsafe(nil), **options); end
697
- def url(key, **options); end
698
- def url_for_direct_upload(key, expires_in:, content_type:, content_length:, checksum:); end
699
-
700
- private
701
-
702
- def content_disposition_with(filename:, type: T.unsafe(nil)); end
703
- def instrument(operation, payload = T.unsafe(nil), &block); end
704
- def private_url(key, expires_in:, filename:, disposition:, content_type:, **_arg5); end
705
- def public_url(key, **_arg1); end
706
- def service_name; end
707
-
708
- class << self
709
- def build(configurator:, name:, service: T.unsafe(nil), **service_config); end
710
- def configure(service_name, configurations); end
711
- end
712
- end
713
-
714
- class ActiveStorage::Service::Configurator
715
- def initialize(configurations); end
716
-
717
- def build(service_name); end
718
- def configurations; end
719
-
720
- private
721
-
722
- def config_for(name); end
723
- def resolve(class_name); end
724
-
725
- class << self
726
- def build(service_name, configurations); end
727
- end
728
- end
729
-
730
- class ActiveStorage::Service::Registry
731
- def initialize(configurations); end
732
-
733
- def fetch(name); end
734
-
735
- private
736
-
737
- def configurations; end
738
- def configurator; end
739
- def services; end
740
- end
741
-
742
- module ActiveStorage::SetBlob
743
- extend(::ActiveSupport::Concern)
744
-
745
-
746
- private
747
-
748
- def set_blob; end
749
- end
750
-
751
- module ActiveStorage::SetCurrent
752
- extend(::ActiveSupport::Concern)
753
- end
754
-
755
- module ActiveStorage::Streaming
756
- include(::ActionController::Live)
757
- extend(::ActionController::Live::ClassMethods)
758
-
759
-
760
- private
761
-
762
- def send_blob_stream(blob, disposition: T.unsafe(nil)); end
763
- end
764
-
765
- ActiveStorage::Streaming::DEFAULT_BLOB_STREAMING_DISPOSITION = T.let(T.unsafe(nil), String)
766
-
767
- module ActiveStorage::Transformers
768
- extend(::ActiveSupport::Autoload)
769
- end
770
-
771
- class ActiveStorage::Transformers::Transformer
772
- def initialize(transformations); end
773
-
774
- def transform(file, format:); end
775
- def transformations; end
776
-
777
- private
778
-
779
- def process(file, format:); end
780
- end
781
-
782
- class ActiveStorage::UnpreviewableError < ::ActiveStorage::Error
783
- end
784
-
785
- class ActiveStorage::UnrepresentableError < ::ActiveStorage::Error
786
- end
787
-
788
- module ActiveStorage::VERSION
789
- end
790
-
791
- ActiveStorage::VERSION::MAJOR = T.let(T.unsafe(nil), Integer)
792
-
793
- ActiveStorage::VERSION::MINOR = T.let(T.unsafe(nil), Integer)
794
-
795
- ActiveStorage::VERSION::PRE = T.let(T.unsafe(nil), String)
796
-
797
- ActiveStorage::VERSION::STRING = T.let(T.unsafe(nil), String)
798
-
799
- ActiveStorage::VERSION::TINY = T.let(T.unsafe(nil), Integer)
800
-
801
- class ActiveStorage::Variant
802
- def initialize(blob, variation_or_variation_key); end
803
-
804
- def blob; end
805
- def content_type(*_arg0, &_arg1); end
806
- def content_type_for_serving(*_arg0, &_arg1); end
807
- def download(&block); end
808
- def filename; end
809
- def forced_disposition_for_serving; end
810
- def image; end
811
- def key; end
812
- def processed; end
813
- def service(*_arg0, &_arg1); end
814
- def service_url(*args, &block); end
815
- def url(expires_in: T.unsafe(nil), disposition: T.unsafe(nil)); end
816
- def variation; end
817
-
818
- private
819
-
820
- def process; end
821
- def processed?; end
822
- end
823
-
824
- class ActiveStorage::VariantRecord < ::ActiveStorage::Record
825
- def autosave_associated_records_for_blob(*args); end
826
-
827
- class << self
828
- def __callbacks; end
829
- def _reflections; end
830
- def _validators; end
831
- def defined_enums; end
832
- end
833
- end
834
-
835
- class ActiveStorage::VariantWithRecord
836
- def initialize(blob, variation); end
837
-
838
- def blob; end
839
- def download(*_arg0, &_arg1); end
840
- def image; end
841
- def key(*_arg0, &_arg1); end
842
- def process; end
843
- def processed; end
844
- def processed?; end
845
- def service_url(*args, &block); end
846
- def url(*_arg0, &_arg1); end
847
- def variation; end
848
-
849
- private
850
-
851
- def create_or_find_record(image:); end
852
- def record; end
853
- def transform_blob; end
854
- end
855
-
856
- class ActiveStorage::Variation
857
- def initialize(transformations); end
858
-
859
- def content_type; end
860
- def default_to(defaults); end
861
- def digest; end
862
- def format; end
863
- def key; end
864
- def transform(file, &block); end
865
- def transformations; end
866
-
867
- private
868
-
869
- def transformer; end
870
-
871
- class << self
872
- def decode(key); end
873
- def encode(transformations); end
874
- def wrap(variator); end
875
- end
876
- end