packwerk 2.2.0 → 2.2.2

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 (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,1718 +0,0 @@
1
- # DO NOT EDIT MANUALLY
2
- # This is an autogenerated file for types exported from the `rack` gem.
3
- # Please instead update this file by running `bin/tapioca sync`.
4
-
5
- # typed: true
6
-
7
- module Rack
8
- class << self
9
- def release; end
10
- def version; end
11
- end
12
- end
13
-
14
- module Rack::Auth
15
- end
16
-
17
- class Rack::Auth::AbstractHandler
18
- def initialize(app, realm = T.unsafe(nil), &authenticator); end
19
-
20
- def realm; end
21
- def realm=(_arg0); end
22
-
23
- private
24
-
25
- def bad_request; end
26
- def unauthorized(www_authenticate = T.unsafe(nil)); end
27
- end
28
-
29
- class Rack::Auth::AbstractRequest
30
- def initialize(env); end
31
-
32
- def params; end
33
- def parts; end
34
- def provided?; end
35
- def request; end
36
- def scheme; end
37
- def valid?; end
38
-
39
- private
40
-
41
- def authorization_key; end
42
- end
43
-
44
- Rack::Auth::AbstractRequest::AUTHORIZATION_KEYS = T.let(T.unsafe(nil), Array)
45
-
46
- class Rack::Auth::Basic < ::Rack::Auth::AbstractHandler
47
- def call(env); end
48
-
49
- private
50
-
51
- def challenge; end
52
- def valid?(auth); end
53
- end
54
-
55
- class Rack::Auth::Basic::Request < ::Rack::Auth::AbstractRequest
56
- def basic?; end
57
- def credentials; end
58
- def username; end
59
- end
60
-
61
- module Rack::Auth::Digest
62
- end
63
-
64
- class Rack::Auth::Digest::MD5 < ::Rack::Auth::AbstractHandler
65
- def initialize(app, realm = T.unsafe(nil), opaque = T.unsafe(nil), &authenticator); end
66
-
67
- def call(env); end
68
- def opaque; end
69
- def opaque=(_arg0); end
70
- def passwords_hashed=(_arg0); end
71
- def passwords_hashed?; end
72
-
73
- private
74
-
75
- def A1(auth, password); end
76
- def A2(auth); end
77
- def H(data); end
78
- def KD(secret, data); end
79
- def challenge(hash = T.unsafe(nil)); end
80
- def digest(auth, password); end
81
- def md5(data); end
82
- def params(hash = T.unsafe(nil)); end
83
- def valid?(auth); end
84
- def valid_digest?(auth); end
85
- def valid_nonce?(auth); end
86
- def valid_opaque?(auth); end
87
- def valid_qop?(auth); end
88
- end
89
-
90
- Rack::Auth::Digest::MD5::QOP = T.let(T.unsafe(nil), String)
91
-
92
- class Rack::Auth::Digest::Nonce
93
- def initialize(timestamp = T.unsafe(nil), given_digest = T.unsafe(nil)); end
94
-
95
- def digest; end
96
- def fresh?; end
97
- def stale?; end
98
- def to_s; end
99
- def valid?; end
100
-
101
- class << self
102
- def parse(string); end
103
- def private_key; end
104
- def private_key=(_arg0); end
105
- def time_limit; end
106
- def time_limit=(_arg0); end
107
- end
108
- end
109
-
110
- class Rack::Auth::Digest::Params < ::Hash
111
- def initialize; end
112
-
113
- def [](k); end
114
- def []=(k, v); end
115
- def quote(str); end
116
- def to_s; end
117
-
118
- class << self
119
- def dequote(str); end
120
- def parse(str); end
121
- def split_header_value(str); end
122
- end
123
- end
124
-
125
- Rack::Auth::Digest::Params::UNQUOTED = T.let(T.unsafe(nil), Array)
126
-
127
- class Rack::Auth::Digest::Request < ::Rack::Auth::AbstractRequest
128
- def correct_uri?; end
129
- def digest?; end
130
- def method; end
131
- def method_missing(sym, *args); end
132
- def nonce; end
133
- def params; end
134
- def respond_to?(sym, *_arg1); end
135
- end
136
-
137
- class Rack::BodyProxy
138
- def initialize(body, &block); end
139
-
140
- def close; end
141
- def closed?; end
142
- def method_missing(method_name, *args, &block); end
143
-
144
- private
145
-
146
- def respond_to_missing?(method_name, include_all = T.unsafe(nil)); end
147
- end
148
-
149
- class Rack::Builder
150
- def initialize(default_app = T.unsafe(nil), &block); end
151
-
152
- def call(env); end
153
- def freeze_app; end
154
- def map(path, &block); end
155
- def run(app); end
156
- def to_app; end
157
- def use(middleware, *args, &block); end
158
- def warmup(prc = T.unsafe(nil), &block); end
159
-
160
- private
161
-
162
- def generate_map(default_app, mapping); end
163
-
164
- class << self
165
- def app(default_app = T.unsafe(nil), &block); end
166
- def load_file(path, opts = T.unsafe(nil)); end
167
- def new_from_string(builder_script, file = T.unsafe(nil)); end
168
- def parse_file(config, opts = T.unsafe(nil)); end
169
- end
170
- end
171
-
172
- Rack::Builder::UTF_8_BOM = T.let(T.unsafe(nil), String)
173
-
174
- Rack::CACHE_CONTROL = T.let(T.unsafe(nil), String)
175
-
176
- Rack::CONTENT_LENGTH = T.let(T.unsafe(nil), String)
177
-
178
- Rack::CONTENT_TYPE = T.let(T.unsafe(nil), String)
179
-
180
- class Rack::Cascade
181
- def initialize(apps, cascade_for = T.unsafe(nil)); end
182
-
183
- def <<(app); end
184
- def add(app); end
185
- def apps; end
186
- def call(env); end
187
- def include?(app); end
188
- end
189
-
190
- Rack::Cascade::NotFound = T.let(T.unsafe(nil), Array)
191
-
192
- class Rack::Chunked
193
- include(::Rack::Utils)
194
-
195
- def initialize(app); end
196
-
197
- def call(env); end
198
- def chunkable_version?(ver); end
199
- end
200
-
201
- class Rack::Chunked::Body
202
- def initialize(body); end
203
-
204
- def close; end
205
- def each(&block); end
206
-
207
- private
208
-
209
- def yield_trailers; end
210
- end
211
-
212
- Rack::Chunked::Body::TAIL = T.let(T.unsafe(nil), String)
213
-
214
- Rack::Chunked::Body::TERM = T.let(T.unsafe(nil), String)
215
-
216
- class Rack::Chunked::TrailerBody < ::Rack::Chunked::Body
217
-
218
- private
219
-
220
- def yield_trailers; end
221
- end
222
-
223
- class Rack::CommonLogger
224
- def initialize(app, logger = T.unsafe(nil)); end
225
-
226
- def call(env); end
227
-
228
- private
229
-
230
- def extract_content_length(headers); end
231
- def log(env, status, header, began_at); end
232
- end
233
-
234
- Rack::CommonLogger::FORMAT = T.let(T.unsafe(nil), String)
235
-
236
- class Rack::ConditionalGet
237
- def initialize(app); end
238
-
239
- def call(env); end
240
-
241
- private
242
-
243
- def etag_matches?(none_match, headers); end
244
- def fresh?(env, headers); end
245
- def modified_since?(modified_since, headers); end
246
- def to_rfc2822(since); end
247
- end
248
-
249
- class Rack::Config
250
- def initialize(app, &block); end
251
-
252
- def call(env); end
253
- end
254
-
255
- class Rack::ContentLength
256
- include(::Rack::Utils)
257
-
258
- def initialize(app); end
259
-
260
- def call(env); end
261
- end
262
-
263
- class Rack::ContentType
264
- include(::Rack::Utils)
265
-
266
- def initialize(app, content_type = T.unsafe(nil)); end
267
-
268
- def call(env); end
269
- end
270
-
271
- Rack::DELETE = T.let(T.unsafe(nil), String)
272
-
273
- class Rack::Deflater
274
- def initialize(app, options = T.unsafe(nil)); end
275
-
276
- def call(env); end
277
-
278
- private
279
-
280
- def should_deflate?(env, status, headers, body); end
281
- end
282
-
283
- class Rack::Deflater::GzipStream
284
- def initialize(body, mtime, sync); end
285
-
286
- def close; end
287
- def each(&block); end
288
- def write(data); end
289
- end
290
-
291
- class Rack::Directory
292
- def initialize(root, app = T.unsafe(nil)); end
293
-
294
- def call(env); end
295
- def check_bad_request(path_info); end
296
- def check_forbidden(path_info); end
297
- def entity_not_found(path_info); end
298
- def filesize_format(int); end
299
- def get(env); end
300
- def list_directory(path_info, path, script_name); end
301
- def list_path(env, path, path_info, script_name); end
302
- def root; end
303
- def stat(path); end
304
- end
305
-
306
- Rack::Directory::DIR_FILE = T.let(T.unsafe(nil), String)
307
-
308
- Rack::Directory::DIR_PAGE_FOOTER = T.let(T.unsafe(nil), String)
309
-
310
- Rack::Directory::DIR_PAGE_HEADER = T.let(T.unsafe(nil), String)
311
-
312
- class Rack::Directory::DirectoryBody < ::Struct
313
- def each; end
314
-
315
- private
316
-
317
- def DIR_FILE_escape(htmls); end
318
- end
319
-
320
- Rack::Directory::FILESIZE_FORMAT = T.let(T.unsafe(nil), Array)
321
-
322
- Rack::ETAG = T.let(T.unsafe(nil), String)
323
-
324
- class Rack::ETag
325
- def initialize(app, no_cache_control = T.unsafe(nil), cache_control = T.unsafe(nil)); end
326
-
327
- def call(env); end
328
-
329
- private
330
-
331
- def digest_body(body); end
332
- def etag_body?(body); end
333
- def etag_status?(status); end
334
- def skip_caching?(headers); end
335
- end
336
-
337
- Rack::ETag::DEFAULT_CACHE_CONTROL = T.let(T.unsafe(nil), String)
338
-
339
- Rack::ETag::ETAG_STRING = T.let(T.unsafe(nil), String)
340
-
341
- Rack::EXPIRES = T.let(T.unsafe(nil), String)
342
-
343
- class Rack::Events
344
- def initialize(app, handlers); end
345
-
346
- def call(env); end
347
-
348
- private
349
-
350
- def make_request(env); end
351
- def make_response(status, headers, body); end
352
- def on_commit(request, response); end
353
- def on_error(request, response, e); end
354
- def on_finish(request, response); end
355
- def on_start(request, response); end
356
- end
357
-
358
- module Rack::Events::Abstract
359
- def on_commit(req, res); end
360
- def on_error(req, res, e); end
361
- def on_finish(req, res); end
362
- def on_send(req, res); end
363
- def on_start(req, res); end
364
- end
365
-
366
- class Rack::Events::BufferedResponse < ::Rack::Response::Raw
367
- def initialize(status, headers, body); end
368
-
369
- def body; end
370
- def to_a; end
371
- end
372
-
373
- class Rack::Events::EventedBodyProxy < ::Rack::BodyProxy
374
- def initialize(body, request, response, handlers, &block); end
375
-
376
- def each; end
377
- def request; end
378
- def response; end
379
- end
380
-
381
- Rack::File = Rack::Files
382
-
383
- class Rack::Files
384
- def initialize(root, headers = T.unsafe(nil), default_mime = T.unsafe(nil)); end
385
-
386
- def call(env); end
387
- def get(env); end
388
- def root; end
389
- def serving(request, path); end
390
-
391
- private
392
-
393
- def fail(status, body, headers = T.unsafe(nil)); end
394
- def filesize(path); end
395
- def mime_type(path, default_mime); end
396
-
397
- class << self
398
- def method_added(name); end
399
- end
400
- end
401
-
402
- Rack::Files::ALLOWED_VERBS = T.let(T.unsafe(nil), Array)
403
-
404
- Rack::Files::ALLOW_HEADER = T.let(T.unsafe(nil), String)
405
-
406
- class Rack::Files::BaseIterator
407
- def initialize(path, ranges, options); end
408
-
409
- def bytesize; end
410
- def close; end
411
- def each; end
412
- def options; end
413
- def path; end
414
- def ranges; end
415
-
416
- private
417
-
418
- def each_range_part(file, range); end
419
- def multipart?; end
420
- def multipart_heading(range); end
421
- end
422
-
423
- class Rack::Files::Iterator < ::Rack::Files::BaseIterator
424
- def to_path; end
425
- end
426
-
427
- Rack::Files::MULTIPART_BOUNDARY = T.let(T.unsafe(nil), String)
428
-
429
- class Rack::ForwardRequest < ::Exception
430
- def initialize(url, env = T.unsafe(nil)); end
431
-
432
- def env; end
433
- def url; end
434
- end
435
-
436
- Rack::GET = T.let(T.unsafe(nil), String)
437
-
438
- Rack::HEAD = T.let(T.unsafe(nil), String)
439
-
440
- Rack::HTTPS = T.let(T.unsafe(nil), String)
441
-
442
- Rack::HTTP_COOKIE = T.let(T.unsafe(nil), String)
443
-
444
- Rack::HTTP_HOST = T.let(T.unsafe(nil), String)
445
-
446
- Rack::HTTP_PORT = T.let(T.unsafe(nil), String)
447
-
448
- Rack::HTTP_VERSION = T.let(T.unsafe(nil), String)
449
-
450
- module Rack::Handler
451
- class << self
452
- def default; end
453
- def get(server); end
454
- def pick(server_names); end
455
- def register(server, klass); end
456
- def try_require(prefix, const_name); end
457
- end
458
- end
459
-
460
- class Rack::Handler::CGI
461
- class << self
462
- def run(app, **options); end
463
- def send_body(body); end
464
- def send_headers(status, headers); end
465
- def serve(app); end
466
- end
467
- end
468
-
469
- class Rack::Head
470
- def initialize(app); end
471
-
472
- def call(env); end
473
- end
474
-
475
- Rack::LINK = T.let(T.unsafe(nil), String)
476
-
477
- class Rack::Lint
478
- include(::Rack::Lint::Assertion)
479
-
480
- def initialize(app); end
481
-
482
- def _call(env); end
483
- def call(env = T.unsafe(nil)); end
484
- def check_content_length(status, headers); end
485
- def check_content_type(status, headers); end
486
- def check_env(env); end
487
- def check_error(error); end
488
- def check_headers(header); end
489
- def check_hijack(env); end
490
- def check_hijack_response(headers, env); end
491
- def check_input(input); end
492
- def check_status(status); end
493
- def close; end
494
- def each; end
495
- def verify_content_length(bytes); end
496
- end
497
-
498
- module Rack::Lint::Assertion
499
- def assert(message); end
500
- end
501
-
502
- class Rack::Lint::ErrorWrapper
503
- include(::Rack::Lint::Assertion)
504
-
505
- def initialize(error); end
506
-
507
- def close(*args); end
508
- def flush; end
509
- def puts(str); end
510
- def write(str); end
511
- end
512
-
513
- class Rack::Lint::HijackWrapper
514
- include(::Rack::Lint::Assertion)
515
- extend(::Forwardable)
516
-
517
- def initialize(io); end
518
-
519
- def close(*args, &block); end
520
- def close_read(*args, &block); end
521
- def close_write(*args, &block); end
522
- def closed?(*args, &block); end
523
- def flush(*args, &block); end
524
- def read(*args, &block); end
525
- def read_nonblock(*args, &block); end
526
- def write(*args, &block); end
527
- def write_nonblock(*args, &block); end
528
- end
529
-
530
- Rack::Lint::HijackWrapper::REQUIRED_METHODS = T.let(T.unsafe(nil), Array)
531
-
532
- class Rack::Lint::InputWrapper
533
- include(::Rack::Lint::Assertion)
534
-
535
- def initialize(input); end
536
-
537
- def close(*args); end
538
- def each(*args); end
539
- def gets(*args); end
540
- def read(*args); end
541
- def rewind(*args); end
542
- end
543
-
544
- class Rack::Lint::LintError < ::RuntimeError
545
- end
546
-
547
- class Rack::Lock
548
- def initialize(app, mutex = T.unsafe(nil)); end
549
-
550
- def call(env); end
551
-
552
- private
553
-
554
- def unlock; end
555
- end
556
-
557
- class Rack::Logger
558
- def initialize(app, level = T.unsafe(nil)); end
559
-
560
- def call(env); end
561
- end
562
-
563
- class Rack::MediaType
564
- class << self
565
- def params(content_type); end
566
- def type(content_type); end
567
-
568
- private
569
-
570
- def strip_doublequotes(str); end
571
- end
572
- end
573
-
574
- Rack::MediaType::SPLIT_PATTERN = T.let(T.unsafe(nil), Regexp)
575
-
576
- class Rack::MethodOverride
577
- def initialize(app); end
578
-
579
- def call(env); end
580
- def method_override(env); end
581
-
582
- private
583
-
584
- def allowed_methods; end
585
- def method_override_param(req); end
586
- end
587
-
588
- Rack::MethodOverride::ALLOWED_METHODS = T.let(T.unsafe(nil), Array)
589
-
590
- Rack::MethodOverride::HTTP_METHODS = T.let(T.unsafe(nil), Array)
591
-
592
- Rack::MethodOverride::HTTP_METHOD_OVERRIDE_HEADER = T.let(T.unsafe(nil), String)
593
-
594
- Rack::MethodOverride::METHOD_OVERRIDE_PARAM_KEY = T.let(T.unsafe(nil), String)
595
-
596
- module Rack::Mime
597
-
598
- private
599
-
600
- def match?(value, matcher); end
601
- def mime_type(ext, fallback = T.unsafe(nil)); end
602
-
603
- class << self
604
- def match?(value, matcher); end
605
- def mime_type(ext, fallback = T.unsafe(nil)); end
606
- end
607
- end
608
-
609
- Rack::Mime::MIME_TYPES = T.let(T.unsafe(nil), Hash)
610
-
611
- class Rack::MockRequest
612
- def initialize(app); end
613
-
614
- def delete(uri, opts = T.unsafe(nil)); end
615
- def get(uri, opts = T.unsafe(nil)); end
616
- def head(uri, opts = T.unsafe(nil)); end
617
- def options(uri, opts = T.unsafe(nil)); end
618
- def patch(uri, opts = T.unsafe(nil)); end
619
- def post(uri, opts = T.unsafe(nil)); end
620
- def put(uri, opts = T.unsafe(nil)); end
621
- def request(method = T.unsafe(nil), uri = T.unsafe(nil), opts = T.unsafe(nil)); end
622
-
623
- class << self
624
- def env_for(uri = T.unsafe(nil), opts = T.unsafe(nil)); end
625
- def parse_uri_rfc2396(uri); end
626
- end
627
- end
628
-
629
- Rack::MockRequest::DEFAULT_ENV = T.let(T.unsafe(nil), Hash)
630
-
631
- class Rack::MockRequest::FatalWarner
632
- def flush; end
633
- def puts(warning); end
634
- def string; end
635
- def write(warning); end
636
- end
637
-
638
- class Rack::MockRequest::FatalWarning < ::RuntimeError
639
- end
640
-
641
- class Rack::MockResponse < ::Rack::Response
642
- def initialize(status, headers, body, errors = T.unsafe(nil)); end
643
-
644
- def =~(other); end
645
- def body; end
646
- def cookie(name); end
647
- def cookies; end
648
- def empty?; end
649
- def errors; end
650
- def errors=(_arg0); end
651
- def match(other); end
652
- def original_headers; end
653
-
654
- private
655
-
656
- def identify_cookie_attributes(cookie_filling); end
657
- def parse_cookies_from_header; end
658
-
659
- class << self
660
- def [](*_arg0); end
661
- end
662
- end
663
-
664
- module Rack::Multipart
665
- class << self
666
- def build_multipart(params, first = T.unsafe(nil)); end
667
- def extract_multipart(req, params = T.unsafe(nil)); end
668
- def parse_multipart(env, params = T.unsafe(nil)); end
669
- end
670
- end
671
-
672
- Rack::Multipart::ATTRIBUTE = T.let(T.unsafe(nil), Regexp)
673
-
674
- Rack::Multipart::ATTRIBUTE_CHAR = T.let(T.unsafe(nil), Regexp)
675
-
676
- Rack::Multipart::BROKEN_QUOTED = T.let(T.unsafe(nil), Regexp)
677
-
678
- Rack::Multipart::BROKEN_UNQUOTED = T.let(T.unsafe(nil), Regexp)
679
-
680
- Rack::Multipart::CONDISP = T.let(T.unsafe(nil), Regexp)
681
-
682
- Rack::Multipart::DISPPARM = T.let(T.unsafe(nil), Regexp)
683
-
684
- Rack::Multipart::EOL = T.let(T.unsafe(nil), String)
685
-
686
- Rack::Multipart::EXTENDED_INITIAL_NAME = T.let(T.unsafe(nil), Regexp)
687
-
688
- Rack::Multipart::EXTENDED_INITIAL_PARAMETER = T.let(T.unsafe(nil), Regexp)
689
-
690
- Rack::Multipart::EXTENDED_INITIAL_VALUE = T.let(T.unsafe(nil), Regexp)
691
-
692
- Rack::Multipart::EXTENDED_OTHER_NAME = T.let(T.unsafe(nil), Regexp)
693
-
694
- Rack::Multipart::EXTENDED_OTHER_PARAMETER = T.let(T.unsafe(nil), Regexp)
695
-
696
- Rack::Multipart::EXTENDED_OTHER_VALUE = T.let(T.unsafe(nil), Regexp)
697
-
698
- Rack::Multipart::EXTENDED_PARAMETER = T.let(T.unsafe(nil), Regexp)
699
-
700
- class Rack::Multipart::Generator
701
- def initialize(params, first = T.unsafe(nil)); end
702
-
703
- def dump; end
704
-
705
- private
706
-
707
- def content_for_other(file, name); end
708
- def content_for_tempfile(io, file, name); end
709
- def flattened_params; end
710
- def multipart?; end
711
- end
712
-
713
- Rack::Multipart::MULTIPART = T.let(T.unsafe(nil), Regexp)
714
-
715
- Rack::Multipart::MULTIPART_BOUNDARY = T.let(T.unsafe(nil), String)
716
-
717
- Rack::Multipart::MULTIPART_CONTENT_DISPOSITION = T.let(T.unsafe(nil), Regexp)
718
-
719
- Rack::Multipart::MULTIPART_CONTENT_ID = T.let(T.unsafe(nil), Regexp)
720
-
721
- Rack::Multipart::MULTIPART_CONTENT_TYPE = T.let(T.unsafe(nil), Regexp)
722
-
723
- class Rack::Multipart::MultipartPartLimitError < ::Errno::EMFILE
724
- end
725
-
726
- class Rack::Multipart::Parser
727
- def initialize(boundary, tempfile, bufsize, query_parser); end
728
-
729
- def on_read(content); end
730
- def result; end
731
- def state; end
732
-
733
- private
734
-
735
- def consume_boundary; end
736
- def full_boundary; end
737
- def get_filename(head); end
738
- def handle_consume_token; end
739
- def handle_empty_content!(content); end
740
- def handle_fast_forward; end
741
- def handle_mime_body; end
742
- def handle_mime_head; end
743
- def run_parser; end
744
- def tag_multipart_encoding(filename, content_type, name, body); end
745
-
746
- class << self
747
- def parse(io, content_length, content_type, tmpfile, bufsize, qp); end
748
- def parse_boundary(content_type); end
749
- end
750
- end
751
-
752
- Rack::Multipart::Parser::BOUNDARY_REGEX = T.let(T.unsafe(nil), Regexp)
753
-
754
- Rack::Multipart::Parser::BUFSIZE = T.let(T.unsafe(nil), Integer)
755
-
756
- class Rack::Multipart::Parser::BoundedIO
757
- def initialize(io, content_length); end
758
-
759
- def read(size, outbuf = T.unsafe(nil)); end
760
- def rewind; end
761
- end
762
-
763
- Rack::Multipart::Parser::CHARSET = T.let(T.unsafe(nil), String)
764
-
765
- class Rack::Multipart::Parser::Collector
766
- include(::Enumerable)
767
-
768
- def initialize(tempfile); end
769
-
770
- def each; end
771
- def on_mime_body(mime_index, content); end
772
- def on_mime_finish(mime_index); end
773
- def on_mime_head(mime_index, head, filename, content_type, name); end
774
-
775
- private
776
-
777
- def check_open_files; end
778
- end
779
-
780
- class Rack::Multipart::Parser::Collector::BufferPart < ::Rack::Multipart::Parser::Collector::MimePart
781
- def close; end
782
- def file?; end
783
- end
784
-
785
- class Rack::Multipart::Parser::Collector::MimePart < ::Struct
786
- def get_data; end
787
- end
788
-
789
- class Rack::Multipart::Parser::Collector::TempfilePart < ::Rack::Multipart::Parser::Collector::MimePart
790
- def close; end
791
- def file?; end
792
- end
793
-
794
- Rack::Multipart::Parser::EMPTY = T.let(T.unsafe(nil), Rack::Multipart::Parser::MultipartInfo)
795
-
796
- class Rack::Multipart::Parser::MultipartInfo < ::Struct
797
- def params; end
798
- def params=(_); end
799
- def tmp_files; end
800
- def tmp_files=(_); end
801
-
802
- class << self
803
- def [](*_arg0); end
804
- def inspect; end
805
- def members; end
806
- def new(*_arg0); end
807
- end
808
- end
809
-
810
- Rack::Multipart::Parser::TEMPFILE_FACTORY = T.let(T.unsafe(nil), Proc)
811
-
812
- Rack::Multipart::Parser::TEXT_PLAIN = T.let(T.unsafe(nil), String)
813
-
814
- Rack::Multipart::REGULAR_PARAMETER = T.let(T.unsafe(nil), Regexp)
815
-
816
- Rack::Multipart::REGULAR_PARAMETER_NAME = T.let(T.unsafe(nil), Regexp)
817
-
818
- Rack::Multipart::RFC2183 = T.let(T.unsafe(nil), Regexp)
819
-
820
- Rack::Multipart::SECTION = T.let(T.unsafe(nil), Regexp)
821
-
822
- Rack::Multipart::TOKEN = T.let(T.unsafe(nil), Regexp)
823
-
824
- class Rack::Multipart::UploadedFile
825
- def initialize(filepath = T.unsafe(nil), ct = T.unsafe(nil), bin = T.unsafe(nil), path: T.unsafe(nil), content_type: T.unsafe(nil), binary: T.unsafe(nil), filename: T.unsafe(nil), io: T.unsafe(nil)); end
826
-
827
- def content_type; end
828
- def content_type=(_arg0); end
829
- def local_path; end
830
- def method_missing(method_name, *args, &block); end
831
- def original_filename; end
832
- def path; end
833
- def respond_to?(*args); end
834
- end
835
-
836
- Rack::Multipart::VALUE = T.let(T.unsafe(nil), Regexp)
837
-
838
- class Rack::NullLogger
839
- def initialize(app); end
840
-
841
- def <<(msg); end
842
- def add(severity, message = T.unsafe(nil), progname = T.unsafe(nil), &block); end
843
- def call(env); end
844
- def close; end
845
- def datetime_format; end
846
- def datetime_format=(datetime_format); end
847
- def debug(progname = T.unsafe(nil), &block); end
848
- def debug?; end
849
- def error(progname = T.unsafe(nil), &block); end
850
- def error?; end
851
- def fatal(progname = T.unsafe(nil), &block); end
852
- def fatal?; end
853
- def formatter; end
854
- def formatter=(formatter); end
855
- def info(progname = T.unsafe(nil), &block); end
856
- def info?; end
857
- def level; end
858
- def level=(level); end
859
- def progname; end
860
- def progname=(progname); end
861
- def sev_threshold; end
862
- def sev_threshold=(sev_threshold); end
863
- def unknown(progname = T.unsafe(nil), &block); end
864
- def warn(progname = T.unsafe(nil), &block); end
865
- def warn?; end
866
- end
867
-
868
- Rack::OPTIONS = T.let(T.unsafe(nil), String)
869
-
870
- Rack::PATCH = T.let(T.unsafe(nil), String)
871
-
872
- Rack::PATH_INFO = T.let(T.unsafe(nil), String)
873
-
874
- Rack::POST = T.let(T.unsafe(nil), String)
875
-
876
- Rack::PUT = T.let(T.unsafe(nil), String)
877
-
878
- Rack::QUERY_STRING = T.let(T.unsafe(nil), String)
879
-
880
- class Rack::QueryParser
881
- def initialize(params_class, key_space_limit, param_depth_limit); end
882
-
883
- def key_space_limit; end
884
- def make_params; end
885
- def new_depth_limit(param_depth_limit); end
886
- def new_space_limit(key_space_limit); end
887
- def normalize_params(params, name, v, depth); end
888
- def param_depth_limit; end
889
- def parse_nested_query(qs, d = T.unsafe(nil)); end
890
- def parse_query(qs, d = T.unsafe(nil), &unescaper); end
891
-
892
- private
893
-
894
- def params_hash_has_key?(hash, key); end
895
- def params_hash_type?(obj); end
896
- def unescape(s); end
897
-
898
- class << self
899
- def make_default(key_space_limit, param_depth_limit); end
900
- end
901
- end
902
-
903
- Rack::QueryParser::COMMON_SEP = T.let(T.unsafe(nil), Hash)
904
-
905
- Rack::QueryParser::DEFAULT_SEP = T.let(T.unsafe(nil), Regexp)
906
-
907
- class Rack::QueryParser::InvalidParameterError < ::ArgumentError
908
- end
909
-
910
- class Rack::QueryParser::ParameterTypeError < ::TypeError
911
- end
912
-
913
- class Rack::QueryParser::Params
914
- def initialize(limit); end
915
-
916
- def [](key); end
917
- def []=(key, value); end
918
- def key?(key); end
919
- def to_h; end
920
- def to_params_hash; end
921
- end
922
-
923
- Rack::RACK_ERRORS = T.let(T.unsafe(nil), String)
924
-
925
- Rack::RACK_HIJACK = T.let(T.unsafe(nil), String)
926
-
927
- Rack::RACK_HIJACK_IO = T.let(T.unsafe(nil), String)
928
-
929
- Rack::RACK_INPUT = T.let(T.unsafe(nil), String)
930
-
931
- Rack::RACK_IS_HIJACK = T.let(T.unsafe(nil), String)
932
-
933
- Rack::RACK_LOGGER = T.let(T.unsafe(nil), String)
934
-
935
- Rack::RACK_METHODOVERRIDE_ORIGINAL_METHOD = T.let(T.unsafe(nil), String)
936
-
937
- Rack::RACK_MULTIPART_BUFFER_SIZE = T.let(T.unsafe(nil), String)
938
-
939
- Rack::RACK_MULTIPART_TEMPFILE_FACTORY = T.let(T.unsafe(nil), String)
940
-
941
- Rack::RACK_MULTIPROCESS = T.let(T.unsafe(nil), String)
942
-
943
- Rack::RACK_MULTITHREAD = T.let(T.unsafe(nil), String)
944
-
945
- Rack::RACK_RECURSIVE_INCLUDE = T.let(T.unsafe(nil), String)
946
-
947
- Rack::RACK_REQUEST_COOKIE_HASH = T.let(T.unsafe(nil), String)
948
-
949
- Rack::RACK_REQUEST_COOKIE_STRING = T.let(T.unsafe(nil), String)
950
-
951
- Rack::RACK_REQUEST_FORM_HASH = T.let(T.unsafe(nil), String)
952
-
953
- Rack::RACK_REQUEST_FORM_INPUT = T.let(T.unsafe(nil), String)
954
-
955
- Rack::RACK_REQUEST_FORM_VARS = T.let(T.unsafe(nil), String)
956
-
957
- Rack::RACK_REQUEST_QUERY_HASH = T.let(T.unsafe(nil), String)
958
-
959
- Rack::RACK_REQUEST_QUERY_STRING = T.let(T.unsafe(nil), String)
960
-
961
- Rack::RACK_RUNONCE = T.let(T.unsafe(nil), String)
962
-
963
- Rack::RACK_SESSION = T.let(T.unsafe(nil), String)
964
-
965
- Rack::RACK_SESSION_OPTIONS = T.let(T.unsafe(nil), String)
966
-
967
- Rack::RACK_SESSION_UNPACKED_COOKIE_DATA = T.let(T.unsafe(nil), String)
968
-
969
- Rack::RACK_SHOWSTATUS_DETAIL = T.let(T.unsafe(nil), String)
970
-
971
- Rack::RACK_TEMPFILES = T.let(T.unsafe(nil), String)
972
-
973
- Rack::RACK_URL_SCHEME = T.let(T.unsafe(nil), String)
974
-
975
- Rack::RACK_VERSION = T.let(T.unsafe(nil), String)
976
-
977
- Rack::RELEASE = T.let(T.unsafe(nil), String)
978
-
979
- Rack::REQUEST_METHOD = T.let(T.unsafe(nil), String)
980
-
981
- Rack::REQUEST_PATH = T.let(T.unsafe(nil), String)
982
-
983
- class Rack::Recursive
984
- def initialize(app); end
985
-
986
- def _call(env); end
987
- def call(env); end
988
- def include(env, path); end
989
- end
990
-
991
- class Rack::Reloader
992
- def initialize(app, cooldown = T.unsafe(nil), backend = T.unsafe(nil)); end
993
-
994
- def call(env); end
995
- def reload!(stderr = T.unsafe(nil)); end
996
- def safe_load(file, mtime, stderr = T.unsafe(nil)); end
997
- end
998
-
999
- module Rack::Reloader::Stat
1000
- def figure_path(file, paths); end
1001
- def rotation; end
1002
- def safe_stat(file); end
1003
- end
1004
-
1005
- class Rack::Request
1006
- include(::Rack::Request::Env)
1007
- include(::Rack::Request::Helpers)
1008
-
1009
- def initialize(env); end
1010
-
1011
- def delete_param(k); end
1012
- def params; end
1013
- def update_param(k, v); end
1014
-
1015
- class << self
1016
- def ip_filter; end
1017
- def ip_filter=(_arg0); end
1018
- end
1019
- end
1020
-
1021
- Rack::Request::ALLOWED_SCHEMES = T.let(T.unsafe(nil), Array)
1022
-
1023
- module Rack::Request::Env
1024
- def initialize(env); end
1025
-
1026
- def add_header(key, v); end
1027
- def delete_header(name); end
1028
- def each_header(&block); end
1029
- def env; end
1030
- def fetch_header(name, &block); end
1031
- def get_header(name); end
1032
- def has_header?(name); end
1033
- def set_header(name, v); end
1034
-
1035
- private
1036
-
1037
- def initialize_copy(other); end
1038
- end
1039
-
1040
- module Rack::Request::Helpers
1041
- def GET; end
1042
- def POST; end
1043
- def [](key); end
1044
- def []=(key, value); end
1045
- def accept_encoding; end
1046
- def accept_language; end
1047
- def authority; end
1048
- def base_url; end
1049
- def body; end
1050
- def content_charset; end
1051
- def content_length; end
1052
- def content_type; end
1053
- def cookies; end
1054
- def delete?; end
1055
- def delete_param(k); end
1056
- def form_data?; end
1057
- def forwarded_authority; end
1058
- def forwarded_for; end
1059
- def forwarded_port; end
1060
- def fullpath; end
1061
- def get?; end
1062
- def head?; end
1063
- def host; end
1064
- def host_authority; end
1065
- def host_with_port(authority = T.unsafe(nil)); end
1066
- def hostname; end
1067
- def ip; end
1068
- def link?; end
1069
- def logger; end
1070
- def media_type; end
1071
- def media_type_params; end
1072
- def multithread?; end
1073
- def options?; end
1074
- def params; end
1075
- def parseable_data?; end
1076
- def patch?; end
1077
- def path; end
1078
- def path_info; end
1079
- def path_info=(s); end
1080
- def port; end
1081
- def post?; end
1082
- def put?; end
1083
- def query_string; end
1084
- def referer; end
1085
- def referrer; end
1086
- def request_method; end
1087
- def scheme; end
1088
- def script_name; end
1089
- def script_name=(s); end
1090
- def server_authority; end
1091
- def server_name; end
1092
- def server_port; end
1093
- def session; end
1094
- def session_options; end
1095
- def ssl?; end
1096
- def trace?; end
1097
- def trusted_proxy?(ip); end
1098
- def unlink?; end
1099
- def update_param(k, v); end
1100
- def url; end
1101
- def user_agent; end
1102
- def values_at(*keys); end
1103
- def xhr?; end
1104
-
1105
- private
1106
-
1107
- def allowed_scheme(header); end
1108
- def default_session; end
1109
- def extract_proto_header(header); end
1110
- def forwarded_scheme; end
1111
- def parse_http_accept_header(header); end
1112
- def parse_multipart; end
1113
- def parse_query(qs, d = T.unsafe(nil)); end
1114
- def query_parser; end
1115
- def reject_trusted_ip_addresses(ip_addresses); end
1116
- def split_authority(authority); end
1117
- def split_header(value); end
1118
- def wrap_ipv6(host); end
1119
- end
1120
-
1121
- Rack::Request::Helpers::DEFAULT_PORTS = T.let(T.unsafe(nil), Hash)
1122
-
1123
- Rack::Request::Helpers::FORM_DATA_MEDIA_TYPES = T.let(T.unsafe(nil), Array)
1124
-
1125
- Rack::Request::Helpers::HTTP_X_FORWARDED_FOR = T.let(T.unsafe(nil), String)
1126
-
1127
- Rack::Request::Helpers::HTTP_X_FORWARDED_HOST = T.let(T.unsafe(nil), String)
1128
-
1129
- Rack::Request::Helpers::HTTP_X_FORWARDED_PORT = T.let(T.unsafe(nil), String)
1130
-
1131
- Rack::Request::Helpers::HTTP_X_FORWARDED_PROTO = T.let(T.unsafe(nil), String)
1132
-
1133
- Rack::Request::Helpers::HTTP_X_FORWARDED_SCHEME = T.let(T.unsafe(nil), String)
1134
-
1135
- Rack::Request::Helpers::HTTP_X_FORWARDED_SSL = T.let(T.unsafe(nil), String)
1136
-
1137
- Rack::Request::Helpers::PARSEABLE_DATA_MEDIA_TYPES = T.let(T.unsafe(nil), Array)
1138
-
1139
- Rack::Request::SCHEME_WHITELIST = T.let(T.unsafe(nil), Array)
1140
-
1141
- class Rack::Response
1142
- include(::Rack::Response::Helpers)
1143
-
1144
- def initialize(body = T.unsafe(nil), status = T.unsafe(nil), headers = T.unsafe(nil)); end
1145
-
1146
- def [](key); end
1147
- def []=(key, v); end
1148
- def body; end
1149
- def body=(_arg0); end
1150
- def chunked?; end
1151
- def close; end
1152
- def delete_header(key); end
1153
- def each(&callback); end
1154
- def empty?; end
1155
- def finish(&block); end
1156
- def get_header(key); end
1157
- def has_header?(key); end
1158
- def header; end
1159
- def headers; end
1160
- def length; end
1161
- def length=(_arg0); end
1162
- def redirect(target, status = T.unsafe(nil)); end
1163
- def set_header(key, v); end
1164
- def status; end
1165
- def status=(_arg0); end
1166
- def to_a(&block); end
1167
- def write(chunk); end
1168
-
1169
- class << self
1170
- def [](status, headers, body); end
1171
- end
1172
- end
1173
-
1174
- Rack::Response::CHUNKED = T.let(T.unsafe(nil), String)
1175
-
1176
- module Rack::Response::Helpers
1177
- def accepted?; end
1178
- def add_header(key, v); end
1179
- def bad_request?; end
1180
- def cache!(duration = T.unsafe(nil), directive: T.unsafe(nil)); end
1181
- def cache_control; end
1182
- def cache_control=(v); end
1183
- def client_error?; end
1184
- def content_length; end
1185
- def content_type; end
1186
- def content_type=(content_type); end
1187
- def created?; end
1188
- def delete_cookie(key, value = T.unsafe(nil)); end
1189
- def do_not_cache!; end
1190
- def etag; end
1191
- def etag=(v); end
1192
- def forbidden?; end
1193
- def include?(header); end
1194
- def informational?; end
1195
- def invalid?; end
1196
- def location; end
1197
- def location=(location); end
1198
- def media_type; end
1199
- def media_type_params; end
1200
- def method_not_allowed?; end
1201
- def moved_permanently?; end
1202
- def no_content?; end
1203
- def not_found?; end
1204
- def ok?; end
1205
- def precondition_failed?; end
1206
- def redirect?; end
1207
- def redirection?; end
1208
- def server_error?; end
1209
- def set_cookie(key, value); end
1210
- def set_cookie_header; end
1211
- def set_cookie_header=(v); end
1212
- def successful?; end
1213
- def unauthorized?; end
1214
- def unprocessable?; end
1215
-
1216
- protected
1217
-
1218
- def append(chunk); end
1219
- def buffered_body!; end
1220
- end
1221
-
1222
- class Rack::Response::Raw
1223
- include(::Rack::Response::Helpers)
1224
-
1225
- def initialize(status, headers); end
1226
-
1227
- def delete_header(key); end
1228
- def get_header(key); end
1229
- def has_header?(key); end
1230
- def headers; end
1231
- def set_header(key, v); end
1232
- def status; end
1233
- def status=(_arg0); end
1234
- end
1235
-
1236
- Rack::Response::STATUS_WITH_NO_ENTITY_BODY = T.let(T.unsafe(nil), Hash)
1237
-
1238
- class Rack::RewindableInput
1239
- def initialize(io); end
1240
-
1241
- def close; end
1242
- def each(&block); end
1243
- def gets; end
1244
- def read(*args); end
1245
- def rewind; end
1246
-
1247
- private
1248
-
1249
- def filesystem_has_posix_semantics?; end
1250
- def make_rewindable; end
1251
- end
1252
-
1253
- class Rack::Runtime
1254
- def initialize(app, name = T.unsafe(nil)); end
1255
-
1256
- def call(env); end
1257
- end
1258
-
1259
- Rack::Runtime::FORMAT_STRING = T.let(T.unsafe(nil), String)
1260
-
1261
- Rack::Runtime::HEADER_NAME = T.let(T.unsafe(nil), String)
1262
-
1263
- Rack::SCRIPT_NAME = T.let(T.unsafe(nil), String)
1264
-
1265
- Rack::SERVER_NAME = T.let(T.unsafe(nil), String)
1266
-
1267
- Rack::SERVER_PORT = T.let(T.unsafe(nil), String)
1268
-
1269
- Rack::SERVER_PROTOCOL = T.let(T.unsafe(nil), String)
1270
-
1271
- Rack::SET_COOKIE = T.let(T.unsafe(nil), String)
1272
-
1273
- class Rack::Sendfile
1274
- def initialize(app, variation = T.unsafe(nil), mappings = T.unsafe(nil)); end
1275
-
1276
- def call(env); end
1277
-
1278
- private
1279
-
1280
- def map_accel_path(env, path); end
1281
- def variation(env); end
1282
- end
1283
-
1284
- class Rack::Server
1285
- def initialize(options = T.unsafe(nil)); end
1286
-
1287
- def app; end
1288
- def default_options; end
1289
- def middleware; end
1290
- def options; end
1291
- def options=(_arg0); end
1292
- def server; end
1293
- def start(&block); end
1294
-
1295
- private
1296
-
1297
- def build_app(app); end
1298
- def build_app_and_options_from_config; end
1299
- def build_app_from_string; end
1300
- def check_pid!; end
1301
- def daemonize_app; end
1302
- def handle_profiling(heapfile, profile_mode, filename); end
1303
- def make_profile_name(filename); end
1304
- def opt_parser; end
1305
- def parse_options(args); end
1306
- def pidfile_process_status; end
1307
- def wrapped_app; end
1308
- def write_pid; end
1309
-
1310
- class << self
1311
- def default_middleware_by_environment; end
1312
- def logging_middleware; end
1313
- def middleware; end
1314
- def start(options = T.unsafe(nil)); end
1315
- end
1316
- end
1317
-
1318
- class Rack::Server::Options
1319
- def handler_opts(options); end
1320
- def parse!(args); end
1321
- end
1322
-
1323
- module Rack::Session
1324
- end
1325
-
1326
- module Rack::Session::Abstract
1327
- end
1328
-
1329
- class Rack::Session::Abstract::ID < ::Rack::Session::Abstract::Persisted
1330
- def delete_session(req, sid, options); end
1331
- def find_session(req, sid); end
1332
- def write_session(req, sid, session, options); end
1333
-
1334
- class << self
1335
- def inherited(klass); end
1336
- end
1337
- end
1338
-
1339
- class Rack::Session::Abstract::Persisted
1340
- def initialize(app, options = T.unsafe(nil)); end
1341
-
1342
- def call(env); end
1343
- def commit_session(req, res); end
1344
- def context(env, app = T.unsafe(nil)); end
1345
- def default_options; end
1346
- def key; end
1347
- def sid_secure; end
1348
-
1349
- private
1350
-
1351
- def commit_session?(req, session, options); end
1352
- def cookie_value(data); end
1353
- def current_session_id(req); end
1354
- def delete_session(req, sid, options); end
1355
- def extract_session_id(request); end
1356
- def find_session(env, sid); end
1357
- def force_options?(options); end
1358
- def forced_session_update?(session, options); end
1359
- def generate_sid(secure = T.unsafe(nil)); end
1360
- def initialize_sid; end
1361
- def load_session(req); end
1362
- def loaded_session?(session); end
1363
- def make_request(env); end
1364
- def prepare_session(req); end
1365
- def security_matches?(request, options); end
1366
- def session_class; end
1367
- def session_exists?(req); end
1368
- def set_cookie(request, res, cookie); end
1369
- def write_session(req, sid, session, options); end
1370
- end
1371
-
1372
- Rack::Session::Abstract::Persisted::DEFAULT_OPTIONS = T.let(T.unsafe(nil), Hash)
1373
-
1374
- class Rack::Session::Abstract::PersistedSecure < ::Rack::Session::Abstract::Persisted
1375
- def extract_session_id(*_arg0); end
1376
- def generate_sid(*_arg0); end
1377
-
1378
- private
1379
-
1380
- def cookie_value(data); end
1381
- def session_class; end
1382
- end
1383
-
1384
- class Rack::Session::Abstract::PersistedSecure::SecureSessionHash < ::Rack::Session::Abstract::SessionHash
1385
- def [](key); end
1386
- end
1387
-
1388
- class Rack::Session::Abstract::SessionHash
1389
- include(::Enumerable)
1390
-
1391
- def initialize(store, req); end
1392
-
1393
- def [](key); end
1394
- def []=(key, value); end
1395
- def clear; end
1396
- def delete(key); end
1397
- def destroy; end
1398
- def dig(key, *keys); end
1399
- def each(&block); end
1400
- def empty?; end
1401
- def exists?; end
1402
- def fetch(key, default = T.unsafe(nil), &block); end
1403
- def has_key?(key); end
1404
- def id; end
1405
- def id=(_arg0); end
1406
- def include?(key); end
1407
- def inspect; end
1408
- def key?(key); end
1409
- def keys; end
1410
- def loaded?; end
1411
- def merge!(hash); end
1412
- def options; end
1413
- def replace(hash); end
1414
- def store(key, value); end
1415
- def to_hash; end
1416
- def update(hash); end
1417
- def values; end
1418
-
1419
- private
1420
-
1421
- def load!; end
1422
- def load_for_read!; end
1423
- def load_for_write!; end
1424
- def stringify_keys(other); end
1425
-
1426
- class << self
1427
- def find(req); end
1428
- def set(req, session); end
1429
- def set_options(req, options); end
1430
- end
1431
- end
1432
-
1433
- Rack::Session::Abstract::SessionHash::Unspecified = T.let(T.unsafe(nil), Object)
1434
-
1435
- class Rack::Session::Cookie < ::Rack::Session::Abstract::PersistedSecure
1436
- def initialize(app, options = T.unsafe(nil)); end
1437
-
1438
- def coder; end
1439
-
1440
- private
1441
-
1442
- def delete_session(req, session_id, options); end
1443
- def digest_match?(data, digest); end
1444
- def extract_session_id(request); end
1445
- def find_session(req, sid); end
1446
- def generate_hmac(data, secret); end
1447
- def persistent_session_id!(data, sid = T.unsafe(nil)); end
1448
- def secure?(options); end
1449
- def unpacked_cookie_data(request); end
1450
- def write_session(req, session_id, session, options); end
1451
- end
1452
-
1453
- class Rack::Session::Cookie::Base64
1454
- def decode(str); end
1455
- def encode(str); end
1456
- end
1457
-
1458
- class Rack::Session::Cookie::Base64::JSON < ::Rack::Session::Cookie::Base64
1459
- def decode(str); end
1460
- def encode(obj); end
1461
- end
1462
-
1463
- class Rack::Session::Cookie::Base64::Marshal < ::Rack::Session::Cookie::Base64
1464
- def decode(str); end
1465
- def encode(str); end
1466
- end
1467
-
1468
- class Rack::Session::Cookie::Base64::ZipJSON < ::Rack::Session::Cookie::Base64
1469
- def decode(str); end
1470
- def encode(obj); end
1471
- end
1472
-
1473
- class Rack::Session::Cookie::Identity
1474
- def decode(str); end
1475
- def encode(str); end
1476
- end
1477
-
1478
- class Rack::Session::Cookie::SessionId
1479
- def initialize(session_id, cookie_value); end
1480
-
1481
- def cookie_value; end
1482
- end
1483
-
1484
- class Rack::Session::Pool < ::Rack::Session::Abstract::PersistedSecure
1485
- def initialize(app, options = T.unsafe(nil)); end
1486
-
1487
- def delete_session(req, session_id, options); end
1488
- def find_session(req, sid); end
1489
- def generate_sid; end
1490
- def mutex; end
1491
- def pool; end
1492
- def with_lock(req); end
1493
- def write_session(req, session_id, new_session, options); end
1494
-
1495
- private
1496
-
1497
- def get_session_with_fallback(sid); end
1498
- end
1499
-
1500
- Rack::Session::Pool::DEFAULT_OPTIONS = T.let(T.unsafe(nil), Hash)
1501
-
1502
- class Rack::Session::SessionId
1503
- def initialize(public_id); end
1504
-
1505
- def cookie_value; end
1506
- def empty?; end
1507
- def inspect; end
1508
- def private_id; end
1509
- def public_id; end
1510
- def to_s; end
1511
-
1512
- private
1513
-
1514
- def hash_sid(sid); end
1515
- end
1516
-
1517
- Rack::Session::SessionId::ID_VERSION = T.let(T.unsafe(nil), Integer)
1518
-
1519
- class Rack::ShowExceptions
1520
- def initialize(app); end
1521
-
1522
- def call(env); end
1523
- def dump_exception(exception); end
1524
- def h(obj); end
1525
- def prefers_plaintext?(env); end
1526
- def pretty(env, exception); end
1527
- def template; end
1528
-
1529
- private
1530
-
1531
- def accepts_html?(env); end
1532
- end
1533
-
1534
- Rack::ShowExceptions::CONTEXT = T.let(T.unsafe(nil), Integer)
1535
-
1536
- Rack::ShowExceptions::TEMPLATE = T.let(T.unsafe(nil), ERB)
1537
-
1538
- class Rack::ShowStatus
1539
- def initialize(app); end
1540
-
1541
- def call(env); end
1542
- def h(obj); end
1543
- end
1544
-
1545
- Rack::ShowStatus::TEMPLATE = T.let(T.unsafe(nil), String)
1546
-
1547
- class Rack::Static
1548
- def initialize(app, options = T.unsafe(nil)); end
1549
-
1550
- def add_index_root?(path); end
1551
- def applicable_rules(path); end
1552
- def call(env); end
1553
- def can_serve(path); end
1554
- def overwrite_file_path(path); end
1555
- def route_file(path); end
1556
- end
1557
-
1558
- Rack::TRACE = T.let(T.unsafe(nil), String)
1559
-
1560
- Rack::TRANSFER_ENCODING = T.let(T.unsafe(nil), String)
1561
-
1562
- class Rack::TempfileReaper
1563
- def initialize(app); end
1564
-
1565
- def call(env); end
1566
- end
1567
-
1568
- Rack::UNLINK = T.let(T.unsafe(nil), String)
1569
-
1570
- class Rack::URLMap
1571
- def initialize(map = T.unsafe(nil)); end
1572
-
1573
- def call(env); end
1574
- def remap(map); end
1575
-
1576
- private
1577
-
1578
- def casecmp?(v1, v2); end
1579
- end
1580
-
1581
- module Rack::Utils
1582
-
1583
- private
1584
-
1585
- def add_cookie_to_header(header, key, value); end
1586
- def add_remove_cookie_to_header(header, key, value = T.unsafe(nil)); end
1587
- def best_q_match(q_value_header, available_mimes); end
1588
- def build_nested_query(value, prefix = T.unsafe(nil)); end
1589
- def build_query(params); end
1590
- def byte_ranges(env, size); end
1591
- def clean_path_info(path_info); end
1592
- def clock_time; end
1593
- def delete_cookie_header!(header, key, value = T.unsafe(nil)); end
1594
- def escape(s); end
1595
- def escape_html(string); end
1596
- def escape_path(s); end
1597
- def get_byte_ranges(http_range, size); end
1598
- def make_delete_cookie_header(header, key, value); end
1599
- def parse_cookies(env); end
1600
- def parse_cookies_header(header); end
1601
- def parse_nested_query(qs, d = T.unsafe(nil)); end
1602
- def parse_query(qs, d = T.unsafe(nil), &unescaper); end
1603
- def q_values(q_value_header); end
1604
- def rfc2109(time); end
1605
- def rfc2822(time); end
1606
- def secure_compare(a, b); end
1607
- def select_best_encoding(available_encodings, accept_encoding); end
1608
- def set_cookie_header!(header, key, value); end
1609
- def status_code(status); end
1610
- def unescape(s, encoding = T.unsafe(nil)); end
1611
- def unescape_path(s); end
1612
- def valid_path?(path); end
1613
-
1614
- class << self
1615
- def add_cookie_to_header(header, key, value); end
1616
- def add_remove_cookie_to_header(header, key, value = T.unsafe(nil)); end
1617
- def best_q_match(q_value_header, available_mimes); end
1618
- def build_nested_query(value, prefix = T.unsafe(nil)); end
1619
- def build_query(params); end
1620
- def byte_ranges(env, size); end
1621
- def clean_path_info(path_info); end
1622
- def clock_time; end
1623
- def default_query_parser; end
1624
- def default_query_parser=(_arg0); end
1625
- def delete_cookie_header!(header, key, value = T.unsafe(nil)); end
1626
- def escape(s); end
1627
- def escape_html(string); end
1628
- def escape_path(s); end
1629
- def get_byte_ranges(http_range, size); end
1630
- def key_space_limit; end
1631
- def key_space_limit=(v); end
1632
- def make_delete_cookie_header(header, key, value); end
1633
- def multipart_part_limit; end
1634
- def multipart_part_limit=(_arg0); end
1635
- def param_depth_limit; end
1636
- def param_depth_limit=(v); end
1637
- def parse_cookies(env); end
1638
- def parse_cookies_header(header); end
1639
- def parse_nested_query(qs, d = T.unsafe(nil)); end
1640
- def parse_query(qs, d = T.unsafe(nil), &unescaper); end
1641
- def q_values(q_value_header); end
1642
- def rfc2109(time); end
1643
- def rfc2822(time); end
1644
- def secure_compare(a, b); end
1645
- def select_best_encoding(available_encodings, accept_encoding); end
1646
- def set_cookie_header!(header, key, value); end
1647
- def status_code(status); end
1648
- def unescape(s, encoding = T.unsafe(nil)); end
1649
- def unescape_path(s); end
1650
- def valid_path?(path); end
1651
- end
1652
- end
1653
-
1654
- Rack::Utils::COMMON_SEP = T.let(T.unsafe(nil), Hash)
1655
-
1656
- class Rack::Utils::Context
1657
- def initialize(app_f, app_r); end
1658
-
1659
- def app; end
1660
- def call(env); end
1661
- def context(env, app = T.unsafe(nil)); end
1662
- def for; end
1663
- def recontext(app); end
1664
- end
1665
-
1666
- Rack::Utils::DEFAULT_SEP = T.let(T.unsafe(nil), Regexp)
1667
-
1668
- Rack::Utils::ESCAPE_HTML = T.let(T.unsafe(nil), Hash)
1669
-
1670
- Rack::Utils::ESCAPE_HTML_PATTERN = T.let(T.unsafe(nil), Regexp)
1671
-
1672
- Rack::Utils::HTTP_STATUS_CODES = T.let(T.unsafe(nil), Hash)
1673
-
1674
- class Rack::Utils::HeaderHash < ::Hash
1675
- def initialize(hash = T.unsafe(nil)); end
1676
-
1677
- def [](k); end
1678
- def []=(k, v); end
1679
- def clear; end
1680
- def delete(k); end
1681
- def each; end
1682
- def has_key?(k); end
1683
- def include?(k); end
1684
- def key?(k); end
1685
- def member?(k); end
1686
- def merge(other); end
1687
- def merge!(other); end
1688
- def replace(other); end
1689
- def to_hash; end
1690
-
1691
- protected
1692
-
1693
- def names; end
1694
-
1695
- private
1696
-
1697
- def initialize_copy(other); end
1698
-
1699
- class << self
1700
- def [](headers); end
1701
- end
1702
- end
1703
-
1704
- Rack::Utils::InvalidParameterError = Rack::QueryParser::InvalidParameterError
1705
-
1706
- Rack::Utils::KeySpaceConstrainedParams = Rack::QueryParser::Params
1707
-
1708
- Rack::Utils::NULL_BYTE = T.let(T.unsafe(nil), String)
1709
-
1710
- Rack::Utils::PATH_SEPS = T.let(T.unsafe(nil), Regexp)
1711
-
1712
- Rack::Utils::ParameterTypeError = Rack::QueryParser::ParameterTypeError
1713
-
1714
- Rack::Utils::STATUS_WITH_NO_ENTITY_BODY = T.let(T.unsafe(nil), Hash)
1715
-
1716
- Rack::Utils::SYMBOL_TO_STATUS_CODE = T.let(T.unsafe(nil), Hash)
1717
-
1718
- Rack::VERSION = T.let(T.unsafe(nil), Array)