workos 4.1.0 → 4.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (132) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +37 -0
  3. data/.github/workflows/release.yml +43 -0
  4. data/.rubocop.yml +8 -1
  5. data/Gemfile.lock +22 -69
  6. data/lib/workos/audit_log_export.rb +8 -31
  7. data/lib/workos/audit_logs.rb +0 -26
  8. data/lib/workos/authentication_factor_and_challenge.rb +0 -3
  9. data/lib/workos/authentication_response.rb +3 -6
  10. data/lib/workos/challenge.rb +9 -28
  11. data/lib/workos/client.rb +0 -41
  12. data/lib/workos/configuration.rb +0 -1
  13. data/lib/workos/connection.rb +11 -35
  14. data/lib/workos/directory.rb +10 -37
  15. data/lib/workos/directory_group.rb +9 -36
  16. data/lib/workos/directory_sync.rb +0 -21
  17. data/lib/workos/directory_user.rb +17 -51
  18. data/lib/workos/errors.rb +0 -16
  19. data/lib/workos/event.rb +5 -26
  20. data/lib/workos/events.rb +0 -7
  21. data/lib/workos/factor.rb +9 -28
  22. data/lib/workos/hash_provider.rb +0 -1
  23. data/lib/workos/impersonator.rb +0 -3
  24. data/lib/workos/invitation.rb +12 -37
  25. data/lib/workos/mfa.rb +0 -42
  26. data/lib/workos/organization.rb +8 -31
  27. data/lib/workos/organization_membership.rb +8 -27
  28. data/lib/workos/organizations.rb +0 -26
  29. data/lib/workos/passwordless.rb +0 -14
  30. data/lib/workos/portal.rb +1 -13
  31. data/lib/workos/profile.rb +12 -39
  32. data/lib/workos/profile_and_token.rb +1 -4
  33. data/lib/workos/refresh_authentication_response.rb +2 -5
  34. data/lib/workos/sso.rb +1 -43
  35. data/lib/workos/types/intent.rb +16 -0
  36. data/lib/workos/types/list_struct.rb +8 -5
  37. data/lib/workos/types/passwordless_session_struct.rb +10 -9
  38. data/lib/workos/types/provider.rb +15 -0
  39. data/lib/workos/types.rb +5 -23
  40. data/lib/workos/user.rb +10 -31
  41. data/lib/workos/user_and_token.rb +1 -4
  42. data/lib/workos/user_management.rb +36 -244
  43. data/lib/workos/user_response.rb +0 -3
  44. data/lib/workos/verify_challenge.rb +4 -18
  45. data/lib/workos/version.rb +1 -2
  46. data/lib/workos/webhook.rb +5 -26
  47. data/lib/workos/webhooks.rb +1 -38
  48. data/lib/workos.rb +0 -2
  49. data/spec/lib/workos/audit_logs_spec.rb +2 -3
  50. data/spec/lib/workos/configuration_spec.rb +0 -1
  51. data/spec/lib/workos/directory_sync_spec.rb +0 -1
  52. data/spec/lib/workos/directory_user_spec.rb +0 -1
  53. data/spec/lib/workos/event_spec.rb +0 -1
  54. data/spec/lib/workos/mfa_spec.rb +0 -1
  55. data/spec/lib/workos/organizations_spec.rb +0 -1
  56. data/spec/lib/workos/passwordless_spec.rb +0 -1
  57. data/spec/lib/workos/portal_spec.rb +0 -1
  58. data/spec/lib/workos/sso_spec.rb +0 -1
  59. data/spec/lib/workos/user_management_spec.rb +29 -1
  60. data/spec/lib/workos/webhooks_spec.rb +0 -1
  61. data/spec/spec_helper.rb +0 -9
  62. data/spec/support/fixtures/vcr_cassettes/user_management/revoke_session/not_found.yml +80 -0
  63. data/spec/support/fixtures/vcr_cassettes/user_management/revoke_session/valid.yml +76 -0
  64. data/spec/support/shared_examples/client_spec.rb +0 -1
  65. data/workos.gemspec +1 -6
  66. metadata +15 -129
  67. data/.semaphore/rubygems.yml +0 -24
  68. data/.semaphore/semaphore.yml +0 -51
  69. data/bin/tapioca +0 -29
  70. data/codecov.yml +0 -12
  71. data/devbox.json +0 -18
  72. data/devbox.lock +0 -11
  73. data/lib/workos/types/audit_log_export_struct.rb +0 -17
  74. data/lib/workos/types/challenge_struct.rb +0 -18
  75. data/lib/workos/types/connection_struct.rb +0 -20
  76. data/lib/workos/types/directory_group_struct.rb +0 -19
  77. data/lib/workos/types/directory_struct.rb +0 -19
  78. data/lib/workos/types/directory_user_struct.rb +0 -26
  79. data/lib/workos/types/event_struct.rb +0 -15
  80. data/lib/workos/types/factor_struct.rb +0 -18
  81. data/lib/workos/types/intent_enum.rb +0 -17
  82. data/lib/workos/types/invitation_struct.rb +0 -20
  83. data/lib/workos/types/magic_auth_challenge_struct.rb +0 -12
  84. data/lib/workos/types/organization_membership_struct.rb +0 -16
  85. data/lib/workos/types/organization_struct.rb +0 -17
  86. data/lib/workos/types/profile_struct.rb +0 -21
  87. data/lib/workos/types/provider_enum.rb +0 -16
  88. data/lib/workos/types/user_struct.rb +0 -18
  89. data/lib/workos/types/verify_challenge_struct.rb +0 -13
  90. data/lib/workos/types/webhook_struct.rb +0 -15
  91. data/sorbet/config +0 -2
  92. data/sorbet/rbi/gems/addressable@2.8.0.rbi +0 -290
  93. data/sorbet/rbi/gems/ast@2.4.2.rbi +0 -54
  94. data/sorbet/rbi/gems/codecov@0.2.12.rbi +0 -55
  95. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -8
  96. data/sorbet/rbi/gems/crack@0.4.5.rbi +0 -57
  97. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +0 -185
  98. data/sorbet/rbi/gems/docile@1.3.5.rbi +0 -54
  99. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +0 -82
  100. data/sorbet/rbi/gems/json@2.5.1.rbi +0 -109
  101. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -8
  102. data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -113
  103. data/sorbet/rbi/gems/parser@3.0.1.0.rbi +0 -1187
  104. data/sorbet/rbi/gems/pry@0.14.2.rbi +0 -8
  105. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +0 -146
  106. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -153
  107. data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -807
  108. data/sorbet/rbi/gems/rbi@0.0.16.rbi +0 -2118
  109. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -1117
  110. data/sorbet/rbi/gems/rexml@3.2.5.rbi +0 -709
  111. data/sorbet/rbi/gems/rspec-core@3.9.3.rbi +0 -2467
  112. data/sorbet/rbi/gems/rspec-expectations@3.9.4.rbi +0 -1569
  113. data/sorbet/rbi/gems/rspec-mocks@3.9.1.rbi +0 -1493
  114. data/sorbet/rbi/gems/rspec-support@3.9.4.rbi +0 -511
  115. data/sorbet/rbi/gems/rspec@3.9.0.rbi +0 -38
  116. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -1881
  117. data/sorbet/rbi/gems/rubocop@0.93.1.rbi +0 -11497
  118. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +0 -405
  119. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +0 -89
  120. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +0 -577
  121. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.2.rbi +0 -8
  122. data/sorbet/rbi/gems/spoom@1.1.15.rbi +0 -1549
  123. data/sorbet/rbi/gems/tapioca@0.7.3.rbi +0 -1718
  124. data/sorbet/rbi/gems/thor@1.2.1.rbi +0 -844
  125. data/sorbet/rbi/gems/unicode-display_width@1.7.0.rbi +0 -22
  126. data/sorbet/rbi/gems/unparser@0.6.2.rbi +0 -8
  127. data/sorbet/rbi/gems/vcr@5.0.0.rbi +0 -699
  128. data/sorbet/rbi/gems/webmock@3.12.2.rbi +0 -662
  129. data/sorbet/rbi/gems/yard-sorbet@0.8.0.rbi +0 -268
  130. data/sorbet/rbi/gems/yard@0.9.26.rbi +0 -4048
  131. data/sorbet/tapioca/config.yml +0 -13
  132. data/sorbet/tapioca/require.rb +0 -4
@@ -1,1549 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `spoom` gem.
5
- # Please instead update this file by running `bin/tapioca gem spoom`.
6
-
7
- module Spoom
8
- class << self
9
- sig { params(cmd: ::String, arg: ::String, path: ::String, capture_err: T::Boolean).returns(::Spoom::ExecResult) }
10
- def exec(cmd, *arg, path: T.unsafe(nil), capture_err: T.unsafe(nil)); end
11
- end
12
- end
13
-
14
- module Spoom::Cli; end
15
-
16
- class Spoom::Cli::Bump < ::Thor
17
- include ::Spoom::Colorize
18
- include ::Spoom::Cli::Helper
19
-
20
- sig { params(directory: ::String).void }
21
- def bump(directory = T.unsafe(nil)); end
22
-
23
- def config_files(path: T.unsafe(nil)); end
24
- def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
25
- def print_changes(files, command:, from: T.unsafe(nil), to: T.unsafe(nil), dry: T.unsafe(nil), path: T.unsafe(nil)); end
26
- def undo_changes(files, from_strictness); end
27
- end
28
-
29
- class Spoom::Cli::Config < ::Thor
30
- include ::Spoom::Colorize
31
- include ::Spoom::Cli::Helper
32
-
33
- def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
34
- def show; end
35
- end
36
-
37
- class Spoom::Cli::Coverage < ::Thor
38
- include ::Spoom::Colorize
39
- include ::Spoom::Cli::Helper
40
-
41
- def bundle_install(path, sha); end
42
- def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
43
- def message_no_data(file); end
44
- def open(file = T.unsafe(nil)); end
45
- def parse_time(string, option); end
46
- def report; end
47
- def snapshot; end
48
- def timeline; end
49
- end
50
-
51
- Spoom::Cli::Coverage::DATA_DIR = T.let(T.unsafe(nil), String)
52
-
53
- module Spoom::Cli::Helper
54
- include ::Spoom::Colorize
55
-
56
- requires_ancestor { Thor }
57
-
58
- sig { params(string: ::String).returns(::String) }
59
- def blue(string); end
60
-
61
- sig { params(exit_code: ::Integer, block: T.nilable(T.proc.void)).void }
62
- def check_sorbet_segfault(exit_code, &block); end
63
-
64
- sig { returns(T::Boolean) }
65
- def color?; end
66
-
67
- sig { params(string: ::String, color: ::Spoom::Color).returns(::String) }
68
- def colorize(string, *color); end
69
-
70
- sig { params(string: ::String).returns(::String) }
71
- def cyan(string); end
72
-
73
- sig { returns(::String) }
74
- def exec_path; end
75
-
76
- sig { params(string: ::String).returns(::String) }
77
- def gray(string); end
78
-
79
- sig { params(string: ::String).returns(::String) }
80
- def green(string); end
81
-
82
- sig { params(string: ::String).returns(::String) }
83
- def highlight(string); end
84
-
85
- sig { void }
86
- def in_sorbet_project!; end
87
-
88
- sig { returns(T::Boolean) }
89
- def in_sorbet_project?; end
90
-
91
- sig { params(string: ::String).returns(::String) }
92
- def red(string); end
93
-
94
- sig { params(message: ::String).void }
95
- def say(message); end
96
-
97
- sig { params(message: ::String, status: T.nilable(::String), nl: T::Boolean).void }
98
- def say_error(message, status: T.unsafe(nil), nl: T.unsafe(nil)); end
99
-
100
- sig { returns(::Spoom::Sorbet::Config) }
101
- def sorbet_config; end
102
-
103
- sig { returns(::String) }
104
- def sorbet_config_file; end
105
-
106
- sig { params(string: ::String).returns(::String) }
107
- def yellow(string); end
108
- end
109
-
110
- class Spoom::Cli::LSP < ::Thor
111
- include ::Spoom::Colorize
112
- include ::Spoom::Cli::Helper
113
-
114
- def defs(file, line, col); end
115
- def find(query); end
116
- def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
117
- def hover(file, line, col); end
118
- def list; end
119
- def lsp_client; end
120
- def refs(file, line, col); end
121
- def run(&block); end
122
- def show; end
123
- def sigs(file, line, col); end
124
- def symbol_printer; end
125
- def symbols(file); end
126
- def to_uri(path); end
127
- def types(file, line, col); end
128
- end
129
-
130
- class Spoom::Cli::Main < ::Thor
131
- include ::Spoom::Colorize
132
- include ::Spoom::Cli::Helper
133
-
134
- def __print_version; end
135
- def bump(*args); end
136
- def config(*args); end
137
- def coverage(*args); end
138
- def files; end
139
- def lsp(*args); end
140
- def tc(*args); end
141
-
142
- class << self
143
- def exit_on_failure?; end
144
- end
145
- end
146
-
147
- class Spoom::Cli::Run < ::Thor
148
- include ::Spoom::Colorize
149
- include ::Spoom::Cli::Helper
150
-
151
- def colorize_message(message); end
152
- def format_error(error, format); end
153
- def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
154
- def tc(*paths_to_select); end
155
- end
156
-
157
- Spoom::Cli::Run::DEFAULT_FORMAT = T.let(T.unsafe(nil), String)
158
- Spoom::Cli::Run::SORT_CODE = T.let(T.unsafe(nil), String)
159
- Spoom::Cli::Run::SORT_ENUM = T.let(T.unsafe(nil), Array)
160
- Spoom::Cli::Run::SORT_LOC = T.let(T.unsafe(nil), String)
161
-
162
- class Spoom::Color < ::T::Enum
163
- enums do
164
- CLEAR = new
165
- BOLD = new
166
- BLACK = new
167
- RED = new
168
- GREEN = new
169
- YELLOW = new
170
- BLUE = new
171
- MAGENTA = new
172
- CYAN = new
173
- WHITE = new
174
- LIGHT_BLACK = new
175
- LIGHT_RED = new
176
- LIGHT_GREEN = new
177
- LIGHT_YELLOW = new
178
- LIGHT_BLUE = new
179
- LIGHT_MAGENTA = new
180
- LIGHT_CYAN = new
181
- LIGHT_WHITE = new
182
- end
183
-
184
- sig { returns(::String) }
185
- def ansi_code; end
186
- end
187
-
188
- module Spoom::Colorize
189
- sig { params(string: ::String, color: ::Spoom::Color).returns(::String) }
190
- def set_color(string, *color); end
191
- end
192
-
193
- class Spoom::Context
194
- sig { params(absolute_path: ::String).void }
195
- def initialize(absolute_path); end
196
-
197
- sig { returns(::String) }
198
- def absolute_path; end
199
-
200
- sig { params(relative_path: ::String).returns(::String) }
201
- def absolute_path_to(relative_path); end
202
-
203
- sig { params(command: ::String, version: T.nilable(::String)).returns(::Spoom::ExecResult) }
204
- def bundle(command, version: T.unsafe(nil)); end
205
-
206
- sig { params(command: ::String, version: T.nilable(::String)).returns(::Spoom::ExecResult) }
207
- def bundle_exec(command, version: T.unsafe(nil)); end
208
-
209
- sig { params(version: T.nilable(::String)).returns(::Spoom::ExecResult) }
210
- def bundle_install!(version: T.unsafe(nil)); end
211
-
212
- sig { void }
213
- def destroy!; end
214
-
215
- sig { params(command: ::String, capture_err: T::Boolean).returns(::Spoom::ExecResult) }
216
- def exec(command, capture_err: T.unsafe(nil)); end
217
-
218
- sig { returns(T::Boolean) }
219
- def exist?; end
220
-
221
- sig { params(relative_path: ::String).returns(T::Boolean) }
222
- def file?(relative_path); end
223
-
224
- sig { params(command: ::String).returns(::Spoom::ExecResult) }
225
- def git(command); end
226
-
227
- sig { params(ref: ::String).returns(::Spoom::ExecResult) }
228
- def git_checkout!(ref: T.unsafe(nil)); end
229
-
230
- sig { returns(T.nilable(::String)) }
231
- def git_current_branch; end
232
-
233
- sig { params(branch: ::String).void }
234
- def git_init!(branch: T.unsafe(nil)); end
235
-
236
- sig { params(short_sha: T::Boolean).returns(T.nilable(::Spoom::Git::Commit)) }
237
- def git_last_commit(short_sha: T.unsafe(nil)); end
238
-
239
- sig { params(pattern: ::String).returns(T::Array[::String]) }
240
- def glob(pattern = T.unsafe(nil)); end
241
-
242
- sig { returns(T::Array[::String]) }
243
- def list; end
244
-
245
- sig { void }
246
- def mkdir!; end
247
-
248
- sig { params(from_relative_path: ::String, to_relative_path: ::String).void }
249
- def move!(from_relative_path, to_relative_path); end
250
-
251
- sig { params(relative_path: ::String).returns(::String) }
252
- def read(relative_path); end
253
-
254
- sig { params(relative_path: ::String).returns(T.nilable(::String)) }
255
- def read_file_strictness(relative_path); end
256
-
257
- sig { returns(T.nilable(::String)) }
258
- def read_gemfile; end
259
-
260
- sig { returns(::String) }
261
- def read_sorbet_config; end
262
-
263
- sig { params(relative_path: ::String).void }
264
- def remove!(relative_path); end
265
-
266
- sig { params(command: ::String).returns(::Spoom::ExecResult) }
267
- def srb(command); end
268
-
269
- sig { params(relative_path: ::String, contents: ::String, append: T::Boolean).void }
270
- def write!(relative_path, contents = T.unsafe(nil), append: T.unsafe(nil)); end
271
-
272
- sig { params(contents: ::String, append: T::Boolean).void }
273
- def write_gemfile!(contents, append: T.unsafe(nil)); end
274
-
275
- sig { params(contents: ::String, append: T::Boolean).void }
276
- def write_sorbet_config!(contents, append: T.unsafe(nil)); end
277
-
278
- class << self
279
- sig { params(name: T.nilable(::String)).returns(T.attached_class) }
280
- def mktmp!(name = T.unsafe(nil)); end
281
- end
282
- end
283
-
284
- module Spoom::Coverage
285
- class << self
286
- sig do
287
- params(
288
- snapshots: T::Array[::Spoom::Coverage::Snapshot],
289
- palette: ::Spoom::Coverage::D3::ColorPalette,
290
- path: ::String
291
- ).returns(::Spoom::Coverage::Report)
292
- end
293
- def report(snapshots, palette:, path: T.unsafe(nil)); end
294
-
295
- sig { params(path: ::String).returns(::Spoom::FileTree) }
296
- def sigils_tree(path: T.unsafe(nil)); end
297
-
298
- sig do
299
- params(
300
- path: ::String,
301
- rbi: T::Boolean,
302
- sorbet_bin: T.nilable(::String)
303
- ).returns(::Spoom::Coverage::Snapshot)
304
- end
305
- def snapshot(path: T.unsafe(nil), rbi: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
306
-
307
- sig { params(path: ::String).returns(::Spoom::Sorbet::Config) }
308
- def sorbet_config(path: T.unsafe(nil)); end
309
- end
310
- end
311
-
312
- module Spoom::Coverage::Cards; end
313
-
314
- class Spoom::Coverage::Cards::Card < ::Spoom::Coverage::Template
315
- sig { params(template: ::String, title: T.nilable(::String), body: T.nilable(::String)).void }
316
- def initialize(template: T.unsafe(nil), title: T.unsafe(nil), body: T.unsafe(nil)); end
317
-
318
- def body; end
319
-
320
- sig { returns(T.nilable(::String)) }
321
- def title; end
322
- end
323
-
324
- Spoom::Coverage::Cards::Card::TEMPLATE = T.let(T.unsafe(nil), String)
325
-
326
- class Spoom::Coverage::Cards::Erb < ::Spoom::Coverage::Cards::Card
327
- abstract!
328
-
329
- sig { void }
330
- def initialize; end
331
-
332
- sig { abstract.returns(::String) }
333
- def erb; end
334
-
335
- sig { override.returns(::String) }
336
- def html; end
337
- end
338
-
339
- class Spoom::Coverage::Cards::Map < ::Spoom::Coverage::Cards::Card
340
- sig { params(sigils_tree: ::Spoom::FileTree, title: ::String).void }
341
- def initialize(sigils_tree:, title: T.unsafe(nil)); end
342
- end
343
-
344
- class Spoom::Coverage::Cards::Snapshot < ::Spoom::Coverage::Cards::Card
345
- sig { params(snapshot: ::Spoom::Coverage::Snapshot, title: ::String).void }
346
- def initialize(snapshot:, title: T.unsafe(nil)); end
347
-
348
- sig { returns(::Spoom::Coverage::D3::Pie::Calls) }
349
- def pie_calls; end
350
-
351
- sig { returns(::Spoom::Coverage::D3::Pie::Sigils) }
352
- def pie_sigils; end
353
-
354
- sig { returns(::Spoom::Coverage::D3::Pie::Sigs) }
355
- def pie_sigs; end
356
-
357
- sig { returns(::Spoom::Coverage::Snapshot) }
358
- def snapshot; end
359
- end
360
-
361
- Spoom::Coverage::Cards::Snapshot::TEMPLATE = T.let(T.unsafe(nil), String)
362
-
363
- class Spoom::Coverage::Cards::SorbetIntro < ::Spoom::Coverage::Cards::Erb
364
- sig { params(sorbet_intro_commit: T.nilable(::String), sorbet_intro_date: T.nilable(::Time)).void }
365
- def initialize(sorbet_intro_commit: T.unsafe(nil), sorbet_intro_date: T.unsafe(nil)); end
366
-
367
- sig { override.returns(::String) }
368
- def erb; end
369
- end
370
-
371
- class Spoom::Coverage::Cards::Timeline < ::Spoom::Coverage::Cards::Card
372
- sig { params(title: ::String, timeline: ::Spoom::Coverage::D3::Timeline).void }
373
- def initialize(title:, timeline:); end
374
- end
375
-
376
- class Spoom::Coverage::Cards::Timeline::Calls < ::Spoom::Coverage::Cards::Timeline
377
- sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
378
- def initialize(snapshots:, title: T.unsafe(nil)); end
379
- end
380
-
381
- class Spoom::Coverage::Cards::Timeline::RBIs < ::Spoom::Coverage::Cards::Timeline
382
- sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
383
- def initialize(snapshots:, title: T.unsafe(nil)); end
384
- end
385
-
386
- class Spoom::Coverage::Cards::Timeline::Runtimes < ::Spoom::Coverage::Cards::Timeline
387
- sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
388
- def initialize(snapshots:, title: T.unsafe(nil)); end
389
- end
390
-
391
- class Spoom::Coverage::Cards::Timeline::Sigils < ::Spoom::Coverage::Cards::Timeline
392
- sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
393
- def initialize(snapshots:, title: T.unsafe(nil)); end
394
- end
395
-
396
- class Spoom::Coverage::Cards::Timeline::Sigs < ::Spoom::Coverage::Cards::Timeline
397
- sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
398
- def initialize(snapshots:, title: T.unsafe(nil)); end
399
- end
400
-
401
- class Spoom::Coverage::Cards::Timeline::Versions < ::Spoom::Coverage::Cards::Timeline
402
- sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
403
- def initialize(snapshots:, title: T.unsafe(nil)); end
404
- end
405
-
406
- module Spoom::Coverage::D3
407
- class << self
408
- sig { params(palette: ::Spoom::Coverage::D3::ColorPalette).returns(::String) }
409
- def header_script(palette); end
410
-
411
- sig { returns(::String) }
412
- def header_style; end
413
- end
414
- end
415
-
416
- class Spoom::Coverage::D3::Base
417
- abstract!
418
-
419
- sig { params(id: ::String, data: T.untyped).void }
420
- def initialize(id, data); end
421
-
422
- sig { returns(::String) }
423
- def html; end
424
-
425
- sig { returns(::String) }
426
- def id; end
427
-
428
- sig { abstract.returns(::String) }
429
- def script; end
430
-
431
- sig { returns(::String) }
432
- def tooltip; end
433
-
434
- class << self
435
- sig { returns(::String) }
436
- def header_script; end
437
-
438
- sig { returns(::String) }
439
- def header_style; end
440
- end
441
- end
442
-
443
- Spoom::Coverage::D3::COLOR_FALSE = T.let(T.unsafe(nil), String)
444
- Spoom::Coverage::D3::COLOR_IGNORE = T.let(T.unsafe(nil), String)
445
- Spoom::Coverage::D3::COLOR_STRICT = T.let(T.unsafe(nil), String)
446
- Spoom::Coverage::D3::COLOR_STRONG = T.let(T.unsafe(nil), String)
447
- Spoom::Coverage::D3::COLOR_TRUE = T.let(T.unsafe(nil), String)
448
-
449
- class Spoom::Coverage::D3::CircleMap < ::Spoom::Coverage::D3::Base
450
- sig { override.returns(::String) }
451
- def script; end
452
-
453
- class << self
454
- sig { returns(::String) }
455
- def header_script; end
456
-
457
- sig { returns(::String) }
458
- def header_style; end
459
- end
460
- end
461
-
462
- class Spoom::Coverage::D3::CircleMap::Sigils < ::Spoom::Coverage::D3::CircleMap
463
- sig { params(id: ::String, sigils_tree: ::Spoom::FileTree).void }
464
- def initialize(id, sigils_tree); end
465
-
466
- sig { params(node: ::Spoom::FileTree::Node).returns(::Float) }
467
- def tree_node_score(node); end
468
-
469
- sig { params(node: ::Spoom::FileTree::Node).returns(T.nilable(::String)) }
470
- def tree_node_strictness(node); end
471
-
472
- sig { params(node: ::Spoom::FileTree::Node).returns(T::Hash[::Symbol, T.untyped]) }
473
- def tree_node_to_json(node); end
474
- end
475
-
476
- class Spoom::Coverage::D3::ColorPalette < ::T::Struct
477
- prop :ignore, ::String
478
- prop :false, ::String
479
- prop :true, ::String
480
- prop :strict, ::String
481
- prop :strong, ::String
482
-
483
- class << self
484
- def inherited(s); end
485
- end
486
- end
487
-
488
- class Spoom::Coverage::D3::Pie < ::Spoom::Coverage::D3::Base
489
- abstract!
490
-
491
- sig { params(id: ::String, title: ::String, data: T.untyped).void }
492
- def initialize(id, title, data); end
493
-
494
- sig { override.returns(::String) }
495
- def script; end
496
-
497
- class << self
498
- sig { returns(::String) }
499
- def header_script; end
500
-
501
- sig { returns(::String) }
502
- def header_style; end
503
- end
504
- end
505
-
506
- class Spoom::Coverage::D3::Pie::Calls < ::Spoom::Coverage::D3::Pie
507
- sig { params(id: ::String, title: ::String, snapshot: ::Spoom::Coverage::Snapshot).void }
508
- def initialize(id, title, snapshot); end
509
-
510
- sig { override.returns(::String) }
511
- def tooltip; end
512
- end
513
-
514
- class Spoom::Coverage::D3::Pie::Sigils < ::Spoom::Coverage::D3::Pie
515
- sig { params(id: ::String, title: ::String, snapshot: ::Spoom::Coverage::Snapshot).void }
516
- def initialize(id, title, snapshot); end
517
-
518
- sig { override.returns(::String) }
519
- def tooltip; end
520
- end
521
-
522
- class Spoom::Coverage::D3::Pie::Sigs < ::Spoom::Coverage::D3::Pie
523
- sig { params(id: ::String, title: ::String, snapshot: ::Spoom::Coverage::Snapshot).void }
524
- def initialize(id, title, snapshot); end
525
-
526
- sig { override.returns(::String) }
527
- def tooltip; end
528
- end
529
-
530
- class Spoom::Coverage::D3::Timeline < ::Spoom::Coverage::D3::Base
531
- abstract!
532
-
533
- sig { params(id: ::String, data: T.untyped, keys: T::Array[::String]).void }
534
- def initialize(id, data, keys); end
535
-
536
- sig { params(y: ::String, color: ::String, curve: ::String).returns(::String) }
537
- def area(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
538
-
539
- sig { params(y: ::String, color: ::String, curve: ::String).returns(::String) }
540
- def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
541
-
542
- sig { abstract.returns(::String) }
543
- def plot; end
544
-
545
- sig { params(y: ::String).returns(::String) }
546
- def points(y:); end
547
-
548
- sig { override.returns(::String) }
549
- def script; end
550
-
551
- sig { returns(::String) }
552
- def x_scale; end
553
-
554
- sig { returns(::String) }
555
- def x_ticks; end
556
-
557
- sig { params(min: ::String, max: ::String, ticks: ::String).returns(::String) }
558
- def y_scale(min:, max:, ticks:); end
559
-
560
- sig { params(ticks: ::String, format: ::String, padding: ::Integer).returns(::String) }
561
- def y_ticks(ticks:, format:, padding:); end
562
-
563
- class << self
564
- sig { returns(::String) }
565
- def header_script; end
566
-
567
- sig { returns(::String) }
568
- def header_style; end
569
- end
570
- end
571
-
572
- class Spoom::Coverage::D3::Timeline::Calls < ::Spoom::Coverage::D3::Timeline::Stacked
573
- sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
574
- def initialize(id, snapshots); end
575
-
576
- sig { override.returns(::String) }
577
- def tooltip; end
578
- end
579
-
580
- class Spoom::Coverage::D3::Timeline::RBIs < ::Spoom::Coverage::D3::Timeline::Stacked
581
- sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
582
- def initialize(id, snapshots); end
583
-
584
- sig { override.params(y: ::String, color: ::String, curve: ::String).returns(::String) }
585
- def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
586
-
587
- sig { override.returns(::String) }
588
- def plot; end
589
-
590
- sig { override.returns(::String) }
591
- def script; end
592
-
593
- sig { override.returns(::String) }
594
- def tooltip; end
595
- end
596
-
597
- class Spoom::Coverage::D3::Timeline::Runtimes < ::Spoom::Coverage::D3::Timeline
598
- sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
599
- def initialize(id, snapshots); end
600
-
601
- sig { override.returns(::String) }
602
- def plot; end
603
-
604
- sig { override.returns(::String) }
605
- def tooltip; end
606
- end
607
-
608
- class Spoom::Coverage::D3::Timeline::Sigils < ::Spoom::Coverage::D3::Timeline::Stacked
609
- sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
610
- def initialize(id, snapshots); end
611
-
612
- sig { override.returns(::String) }
613
- def tooltip; end
614
- end
615
-
616
- class Spoom::Coverage::D3::Timeline::Sigs < ::Spoom::Coverage::D3::Timeline::Stacked
617
- sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
618
- def initialize(id, snapshots); end
619
-
620
- sig { override.returns(::String) }
621
- def tooltip; end
622
- end
623
-
624
- class Spoom::Coverage::D3::Timeline::Stacked < ::Spoom::Coverage::D3::Timeline
625
- abstract!
626
-
627
- def initialize(*args, **_arg1, &blk); end
628
-
629
- sig { override.params(y: ::String, color: ::String, curve: ::String).returns(::String) }
630
- def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
631
-
632
- sig { override.returns(::String) }
633
- def plot; end
634
-
635
- sig { override.returns(::String) }
636
- def script; end
637
- end
638
-
639
- class Spoom::Coverage::D3::Timeline::Versions < ::Spoom::Coverage::D3::Timeline
640
- sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
641
- def initialize(id, snapshots); end
642
-
643
- sig { override.returns(::String) }
644
- def plot; end
645
-
646
- sig { override.returns(::String) }
647
- def tooltip; end
648
- end
649
-
650
- class Spoom::Coverage::Page < ::Spoom::Coverage::Template
651
- abstract!
652
-
653
- sig { params(title: ::String, palette: ::Spoom::Coverage::D3::ColorPalette, template: ::String).void }
654
- def initialize(title:, palette:, template: T.unsafe(nil)); end
655
-
656
- sig { returns(::String) }
657
- def body_html; end
658
-
659
- sig { abstract.returns(T::Array[::Spoom::Coverage::Cards::Card]) }
660
- def cards; end
661
-
662
- sig { returns(::String) }
663
- def footer_html; end
664
-
665
- sig { returns(::String) }
666
- def header_html; end
667
-
668
- sig { returns(::String) }
669
- def header_script; end
670
-
671
- sig { returns(::String) }
672
- def header_style; end
673
-
674
- sig { returns(::Spoom::Coverage::D3::ColorPalette) }
675
- def palette; end
676
-
677
- sig { returns(::String) }
678
- def title; end
679
- end
680
-
681
- Spoom::Coverage::Page::TEMPLATE = T.let(T.unsafe(nil), String)
682
-
683
- class Spoom::Coverage::Report < ::Spoom::Coverage::Page
684
- sig do
685
- params(
686
- project_name: ::String,
687
- palette: ::Spoom::Coverage::D3::ColorPalette,
688
- snapshots: T::Array[::Spoom::Coverage::Snapshot],
689
- sigils_tree: ::Spoom::FileTree,
690
- sorbet_intro_commit: T.nilable(::String),
691
- sorbet_intro_date: T.nilable(::Time)
692
- ).void
693
- end
694
- def initialize(project_name:, palette:, snapshots:, sigils_tree:, sorbet_intro_commit: T.unsafe(nil), sorbet_intro_date: T.unsafe(nil)); end
695
-
696
- sig { override.returns(T::Array[::Spoom::Coverage::Cards::Card]) }
697
- def cards; end
698
-
699
- sig { override.returns(::String) }
700
- def header_html; end
701
-
702
- sig { returns(::String) }
703
- def project_name; end
704
-
705
- sig { returns(::Spoom::FileTree) }
706
- def sigils_tree; end
707
-
708
- sig { returns(T::Array[::Spoom::Coverage::Snapshot]) }
709
- def snapshots; end
710
-
711
- sig { returns(T.nilable(::String)) }
712
- def sorbet_intro_commit; end
713
-
714
- sig { returns(T.nilable(::Time)) }
715
- def sorbet_intro_date; end
716
- end
717
-
718
- class Spoom::Coverage::Snapshot < ::T::Struct
719
- prop :timestamp, ::Integer, default: T.unsafe(nil)
720
- prop :version_static, T.nilable(::String), default: T.unsafe(nil)
721
- prop :version_runtime, T.nilable(::String), default: T.unsafe(nil)
722
- prop :duration, ::Integer, default: T.unsafe(nil)
723
- prop :commit_sha, T.nilable(::String), default: T.unsafe(nil)
724
- prop :commit_timestamp, T.nilable(::Integer), default: T.unsafe(nil)
725
- prop :files, ::Integer, default: T.unsafe(nil)
726
- prop :rbi_files, ::Integer, default: T.unsafe(nil)
727
- prop :modules, ::Integer, default: T.unsafe(nil)
728
- prop :classes, ::Integer, default: T.unsafe(nil)
729
- prop :singleton_classes, ::Integer, default: T.unsafe(nil)
730
- prop :methods_without_sig, ::Integer, default: T.unsafe(nil)
731
- prop :methods_with_sig, ::Integer, default: T.unsafe(nil)
732
- prop :calls_untyped, ::Integer, default: T.unsafe(nil)
733
- prop :calls_typed, ::Integer, default: T.unsafe(nil)
734
- prop :sigils, T::Hash[::String, ::Integer], default: T.unsafe(nil)
735
- prop :methods_with_sig_excluding_rbis, ::Integer, default: T.unsafe(nil)
736
- prop :methods_without_sig_excluding_rbis, ::Integer, default: T.unsafe(nil)
737
- prop :sigils_excluding_rbis, T::Hash[::String, ::Integer], default: T.unsafe(nil)
738
-
739
- sig { params(out: T.any(::IO, ::StringIO), colors: T::Boolean, indent_level: ::Integer).void }
740
- def print(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
741
-
742
- sig { params(arg: T.untyped).returns(::String) }
743
- def to_json(*arg); end
744
-
745
- class << self
746
- sig { params(json: ::String).returns(::Spoom::Coverage::Snapshot) }
747
- def from_json(json); end
748
-
749
- sig { params(obj: T::Hash[::String, T.untyped]).returns(::Spoom::Coverage::Snapshot) }
750
- def from_obj(obj); end
751
-
752
- def inherited(s); end
753
- end
754
- end
755
-
756
- Spoom::Coverage::Snapshot::STRICTNESSES = T.let(T.unsafe(nil), Array)
757
-
758
- class Spoom::Coverage::SnapshotPrinter < ::Spoom::Printer
759
- sig { params(snapshot: ::Spoom::Coverage::Snapshot).void }
760
- def print_snapshot(snapshot); end
761
-
762
- private
763
-
764
- sig { params(value: T.nilable(::Integer), total: T.nilable(::Integer)).returns(::String) }
765
- def percent(value, total); end
766
-
767
- sig { params(hash: T::Hash[::String, ::Integer], total: ::Integer).void }
768
- def print_map(hash, total); end
769
- end
770
-
771
- class Spoom::Coverage::Template
772
- abstract!
773
-
774
- sig { params(template: ::String).void }
775
- def initialize(template:); end
776
-
777
- sig { returns(::String) }
778
- def erb; end
779
-
780
- sig { returns(::Binding) }
781
- def get_binding; end
782
-
783
- sig { returns(::String) }
784
- def html; end
785
- end
786
-
787
- class Spoom::Error < ::StandardError; end
788
-
789
- class Spoom::ExecResult < ::T::Struct
790
- const :out, ::String
791
- const :err, ::String
792
- const :status, T::Boolean
793
- const :exit_code, ::Integer
794
-
795
- sig { returns(::String) }
796
- def to_s; end
797
-
798
- class << self
799
- def inherited(s); end
800
- end
801
- end
802
-
803
- class Spoom::FileTree
804
- sig { params(paths: T::Enumerable[::String], strip_prefix: T.nilable(::String)).void }
805
- def initialize(paths = T.unsafe(nil), strip_prefix: T.unsafe(nil)); end
806
-
807
- sig { params(path: ::String).returns(::Spoom::FileTree::Node) }
808
- def add_path(path); end
809
-
810
- sig { params(paths: T::Enumerable[::String]).void }
811
- def add_paths(paths); end
812
-
813
- sig { returns(T::Array[::Spoom::FileTree::Node]) }
814
- def nodes; end
815
-
816
- sig { returns(T::Array[::String]) }
817
- def paths; end
818
-
819
- sig do
820
- params(
821
- out: T.any(::IO, ::StringIO),
822
- show_strictness: T::Boolean,
823
- colors: T::Boolean,
824
- indent_level: ::Integer
825
- ).void
826
- end
827
- def print(out: T.unsafe(nil), show_strictness: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
828
-
829
- sig { returns(T::Array[::Spoom::FileTree::Node]) }
830
- def roots; end
831
-
832
- sig { returns(T.nilable(::String)) }
833
- def strip_prefix; end
834
-
835
- private
836
-
837
- sig do
838
- params(
839
- node: ::Spoom::FileTree::Node,
840
- collected_nodes: T::Array[::Spoom::FileTree::Node]
841
- ).returns(T::Array[::Spoom::FileTree::Node])
842
- end
843
- def collect_nodes(node, collected_nodes = T.unsafe(nil)); end
844
- end
845
-
846
- class Spoom::FileTree::Node < ::T::Struct
847
- const :parent, T.nilable(::Spoom::FileTree::Node)
848
- const :name, ::String
849
- const :children, T::Hash[::String, ::Spoom::FileTree::Node], default: T.unsafe(nil)
850
-
851
- sig { returns(::String) }
852
- def path; end
853
-
854
- class << self
855
- def inherited(s); end
856
- end
857
- end
858
-
859
- class Spoom::FileTree::TreePrinter < ::Spoom::Printer
860
- sig do
861
- params(
862
- tree: ::Spoom::FileTree,
863
- out: T.any(::IO, ::StringIO),
864
- show_strictness: T::Boolean,
865
- colors: T::Boolean,
866
- indent_level: ::Integer
867
- ).void
868
- end
869
- def initialize(tree:, out: T.unsafe(nil), show_strictness: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
870
-
871
- sig { params(node: ::Spoom::FileTree::Node).void }
872
- def print_node(node); end
873
-
874
- sig { params(nodes: T::Array[::Spoom::FileTree::Node]).void }
875
- def print_nodes(nodes); end
876
-
877
- sig { void }
878
- def print_tree; end
879
-
880
- sig { returns(::Spoom::FileTree) }
881
- def tree; end
882
-
883
- private
884
-
885
- sig { params(node: ::Spoom::FileTree::Node).returns(T.nilable(::String)) }
886
- def node_strictness(node); end
887
-
888
- sig { params(strictness: T.nilable(::String)).returns(::Spoom::Color) }
889
- def strictness_color(strictness); end
890
- end
891
-
892
- module Spoom::Git
893
- class << self
894
- sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
895
- def checkout(*arg, path: T.unsafe(nil)); end
896
-
897
- sig { params(path: ::String).returns(T.nilable(::String)) }
898
- def current_branch(path: T.unsafe(nil)); end
899
-
900
- sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
901
- def diff(*arg, path: T.unsafe(nil)); end
902
-
903
- sig { params(command: ::String, arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
904
- def exec(command, *arg, path: T.unsafe(nil)); end
905
-
906
- sig { params(path: ::String, short_sha: T::Boolean).returns(T.nilable(::Spoom::Git::Commit)) }
907
- def last_commit(path: T.unsafe(nil), short_sha: T.unsafe(nil)); end
908
-
909
- sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
910
- def log(*arg, path: T.unsafe(nil)); end
911
-
912
- sig { params(string: ::String).returns(T.nilable(::Spoom::Git::Commit)) }
913
- def parse_commit(string); end
914
-
915
- sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
916
- def show(*arg, path: T.unsafe(nil)); end
917
-
918
- sig { params(path: ::String).returns(T.nilable(::Spoom::Git::Commit)) }
919
- def sorbet_intro_commit(path: T.unsafe(nil)); end
920
-
921
- sig { params(path: ::String).returns(T.nilable(::Spoom::Git::Commit)) }
922
- def sorbet_removal_commit(path: T.unsafe(nil)); end
923
-
924
- sig { params(path: ::String).returns(T::Boolean) }
925
- def workdir_clean?(path: T.unsafe(nil)); end
926
- end
927
- end
928
-
929
- class Spoom::Git::Commit < ::T::Struct
930
- const :sha, ::String
931
- const :time, ::Time
932
-
933
- sig { returns(::Integer) }
934
- def timestamp; end
935
-
936
- class << self
937
- def inherited(s); end
938
- end
939
- end
940
-
941
- module Spoom::LSP; end
942
-
943
- class Spoom::LSP::Client
944
- sig { params(sorbet_bin: ::String, sorbet_args: ::String, path: ::String).void }
945
- def initialize(sorbet_bin, *sorbet_args, path: T.unsafe(nil)); end
946
-
947
- sig { void }
948
- def close; end
949
-
950
- sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T::Array[::Spoom::LSP::Location]) }
951
- def definitions(uri, line, column); end
952
-
953
- sig { params(uri: ::String).returns(T::Array[::Spoom::LSP::DocumentSymbol]) }
954
- def document_symbols(uri); end
955
-
956
- sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T.nilable(::Spoom::LSP::Hover)) }
957
- def hover(uri, line, column); end
958
-
959
- sig { returns(::Integer) }
960
- def next_id; end
961
-
962
- sig { params(workspace_path: ::String).void }
963
- def open(workspace_path); end
964
-
965
- sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
966
- def read; end
967
-
968
- sig { returns(T.nilable(::String)) }
969
- def read_raw; end
970
-
971
- sig do
972
- params(
973
- uri: ::String,
974
- line: ::Integer,
975
- column: ::Integer,
976
- include_decl: T::Boolean
977
- ).returns(T::Array[::Spoom::LSP::Location])
978
- end
979
- def references(uri, line, column, include_decl = T.unsafe(nil)); end
980
-
981
- sig { params(message: ::Spoom::LSP::Message).returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
982
- def send(message); end
983
-
984
- sig { params(json_string: ::String).void }
985
- def send_raw(json_string); end
986
-
987
- sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T::Array[::Spoom::LSP::SignatureHelp]) }
988
- def signatures(uri, line, column); end
989
-
990
- sig { params(query: ::String).returns(T::Array[::Spoom::LSP::DocumentSymbol]) }
991
- def symbols(query); end
992
-
993
- sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T::Array[::Spoom::LSP::Location]) }
994
- def type_definitions(uri, line, column); end
995
- end
996
-
997
- class Spoom::LSP::Diagnostic < ::T::Struct
998
- include ::Spoom::LSP::PrintableSymbol
999
-
1000
- const :range, ::Spoom::LSP::Range
1001
- const :code, ::Integer
1002
- const :message, ::String
1003
- const :informations, ::Object
1004
-
1005
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1006
- def accept_printer(printer); end
1007
-
1008
- sig { returns(::String) }
1009
- def to_s; end
1010
-
1011
- class << self
1012
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Diagnostic) }
1013
- def from_json(json); end
1014
-
1015
- def inherited(s); end
1016
- end
1017
- end
1018
-
1019
- class Spoom::LSP::DocumentSymbol < ::T::Struct
1020
- include ::Spoom::LSP::PrintableSymbol
1021
-
1022
- const :name, ::String
1023
- const :detail, T.nilable(::String)
1024
- const :kind, ::Integer
1025
- const :location, T.nilable(::Spoom::LSP::Location)
1026
- const :range, T.nilable(::Spoom::LSP::Range)
1027
- const :children, T::Array[::Spoom::LSP::DocumentSymbol]
1028
-
1029
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1030
- def accept_printer(printer); end
1031
-
1032
- sig { returns(::String) }
1033
- def kind_string; end
1034
-
1035
- sig { returns(::String) }
1036
- def to_s; end
1037
-
1038
- class << self
1039
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::DocumentSymbol) }
1040
- def from_json(json); end
1041
-
1042
- def inherited(s); end
1043
- end
1044
- end
1045
-
1046
- Spoom::LSP::DocumentSymbol::SYMBOL_KINDS = T.let(T.unsafe(nil), Hash)
1047
- class Spoom::LSP::Error < ::StandardError; end
1048
- class Spoom::LSP::Error::AlreadyOpen < ::Spoom::LSP::Error; end
1049
- class Spoom::LSP::Error::BadHeaders < ::Spoom::LSP::Error; end
1050
-
1051
- class Spoom::LSP::Error::Diagnostics < ::Spoom::LSP::Error
1052
- sig { params(uri: ::String, diagnostics: T::Array[::Spoom::LSP::Diagnostic]).void }
1053
- def initialize(uri, diagnostics); end
1054
-
1055
- sig { returns(T::Array[::Spoom::LSP::Diagnostic]) }
1056
- def diagnostics; end
1057
-
1058
- sig { returns(::String) }
1059
- def uri; end
1060
-
1061
- class << self
1062
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Error::Diagnostics) }
1063
- def from_json(json); end
1064
- end
1065
- end
1066
-
1067
- class Spoom::LSP::Hover < ::T::Struct
1068
- include ::Spoom::LSP::PrintableSymbol
1069
-
1070
- const :contents, ::String
1071
- const :range, T.nilable(T::Range[T.untyped])
1072
-
1073
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1074
- def accept_printer(printer); end
1075
-
1076
- sig { returns(::String) }
1077
- def to_s; end
1078
-
1079
- class << self
1080
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Hover) }
1081
- def from_json(json); end
1082
-
1083
- def inherited(s); end
1084
- end
1085
- end
1086
-
1087
- class Spoom::LSP::Location < ::T::Struct
1088
- include ::Spoom::LSP::PrintableSymbol
1089
-
1090
- const :uri, ::String
1091
- const :range, ::Spoom::LSP::Range
1092
-
1093
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1094
- def accept_printer(printer); end
1095
-
1096
- sig { returns(::String) }
1097
- def to_s; end
1098
-
1099
- class << self
1100
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Location) }
1101
- def from_json(json); end
1102
-
1103
- def inherited(s); end
1104
- end
1105
- end
1106
-
1107
- class Spoom::LSP::Message
1108
- sig { void }
1109
- def initialize; end
1110
-
1111
- sig { returns(T::Hash[T.untyped, T.untyped]) }
1112
- def as_json; end
1113
-
1114
- sig { returns(::String) }
1115
- def jsonrpc; end
1116
-
1117
- sig { params(args: T.untyped).returns(::String) }
1118
- def to_json(*args); end
1119
- end
1120
-
1121
- class Spoom::LSP::Notification < ::Spoom::LSP::Message
1122
- sig { params(method: ::String, params: T::Hash[T.untyped, T.untyped]).void }
1123
- def initialize(method, params); end
1124
-
1125
- sig { returns(::String) }
1126
- def method; end
1127
-
1128
- sig { returns(T::Hash[T.untyped, T.untyped]) }
1129
- def params; end
1130
- end
1131
-
1132
- class Spoom::LSP::Position < ::T::Struct
1133
- include ::Spoom::LSP::PrintableSymbol
1134
-
1135
- const :line, ::Integer
1136
- const :char, ::Integer
1137
-
1138
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1139
- def accept_printer(printer); end
1140
-
1141
- sig { returns(::String) }
1142
- def to_s; end
1143
-
1144
- class << self
1145
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Position) }
1146
- def from_json(json); end
1147
-
1148
- def inherited(s); end
1149
- end
1150
- end
1151
-
1152
- module Spoom::LSP::PrintableSymbol
1153
- interface!
1154
-
1155
- sig { abstract.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1156
- def accept_printer(printer); end
1157
- end
1158
-
1159
- class Spoom::LSP::Range < ::T::Struct
1160
- include ::Spoom::LSP::PrintableSymbol
1161
-
1162
- const :start, ::Spoom::LSP::Position
1163
- const :end, ::Spoom::LSP::Position
1164
-
1165
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1166
- def accept_printer(printer); end
1167
-
1168
- sig { returns(::String) }
1169
- def to_s; end
1170
-
1171
- class << self
1172
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Range) }
1173
- def from_json(json); end
1174
-
1175
- def inherited(s); end
1176
- end
1177
- end
1178
-
1179
- class Spoom::LSP::Request < ::Spoom::LSP::Message
1180
- sig { params(id: ::Integer, method: ::String, params: T::Hash[T.untyped, T.untyped]).void }
1181
- def initialize(id, method, params); end
1182
-
1183
- sig { returns(::Integer) }
1184
- def id; end
1185
-
1186
- sig { returns(::String) }
1187
- def method; end
1188
-
1189
- sig { returns(T::Hash[T.untyped, T.untyped]) }
1190
- def params; end
1191
- end
1192
-
1193
- class Spoom::LSP::ResponseError < ::Spoom::LSP::Error
1194
- sig { params(code: ::Integer, message: ::String, data: T::Hash[T.untyped, T.untyped]).void }
1195
- def initialize(code, message, data); end
1196
-
1197
- sig { returns(::Integer) }
1198
- def code; end
1199
-
1200
- sig { returns(T::Hash[T.untyped, T.untyped]) }
1201
- def data; end
1202
-
1203
- class << self
1204
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::ResponseError) }
1205
- def from_json(json); end
1206
- end
1207
- end
1208
-
1209
- class Spoom::LSP::SignatureHelp < ::T::Struct
1210
- include ::Spoom::LSP::PrintableSymbol
1211
-
1212
- const :label, T.nilable(::String)
1213
- const :doc, ::Object
1214
- const :params, T::Array[T.untyped]
1215
-
1216
- sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1217
- def accept_printer(printer); end
1218
-
1219
- sig { returns(::String) }
1220
- def to_s; end
1221
-
1222
- class << self
1223
- sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::SignatureHelp) }
1224
- def from_json(json); end
1225
-
1226
- def inherited(s); end
1227
- end
1228
- end
1229
-
1230
- class Spoom::LSP::SymbolPrinter < ::Spoom::Printer
1231
- sig do
1232
- params(
1233
- out: T.any(::IO, ::StringIO),
1234
- colors: T::Boolean,
1235
- indent_level: ::Integer,
1236
- prefix: T.nilable(::String)
1237
- ).void
1238
- end
1239
- def initialize(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil), prefix: T.unsafe(nil)); end
1240
-
1241
- sig { params(uri: ::String).returns(::String) }
1242
- def clean_uri(uri); end
1243
-
1244
- sig { returns(T.nilable(::String)) }
1245
- def prefix; end
1246
-
1247
- sig { params(prefix: T.nilable(::String)).returns(T.nilable(::String)) }
1248
- def prefix=(prefix); end
1249
-
1250
- sig { params(objects: T::Array[::Spoom::LSP::PrintableSymbol]).void }
1251
- def print_list(objects); end
1252
-
1253
- sig { params(object: T.nilable(::Spoom::LSP::PrintableSymbol)).void }
1254
- def print_object(object); end
1255
-
1256
- sig { params(objects: T::Array[::Spoom::LSP::PrintableSymbol]).void }
1257
- def print_objects(objects); end
1258
-
1259
- sig { returns(T::Set[::Integer]) }
1260
- def seen; end
1261
-
1262
- sig { params(seen: T::Set[::Integer]).returns(T::Set[::Integer]) }
1263
- def seen=(seen); end
1264
- end
1265
-
1266
- class Spoom::Printer
1267
- include ::Spoom::Colorize
1268
-
1269
- abstract!
1270
-
1271
- sig { params(out: T.any(::IO, ::StringIO), colors: T::Boolean, indent_level: ::Integer).void }
1272
- def initialize(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
1273
-
1274
- sig { params(string: ::String, color: ::Spoom::Color).returns(::String) }
1275
- def colorize(string, *color); end
1276
-
1277
- sig { void }
1278
- def dedent; end
1279
-
1280
- sig { void }
1281
- def indent; end
1282
-
1283
- sig { returns(T.any(::IO, ::StringIO)) }
1284
- def out; end
1285
-
1286
- sig { params(out: T.any(::IO, ::StringIO)).returns(T.any(::IO, ::StringIO)) }
1287
- def out=(out); end
1288
-
1289
- sig { params(string: T.nilable(::String)).void }
1290
- def print(string); end
1291
-
1292
- sig { params(string: T.nilable(::String), color: ::Spoom::Color).void }
1293
- def print_colored(string, *color); end
1294
-
1295
- sig { params(string: T.nilable(::String)).void }
1296
- def printl(string); end
1297
-
1298
- sig { void }
1299
- def printn; end
1300
-
1301
- sig { void }
1302
- def printt; end
1303
- end
1304
-
1305
- Spoom::SPOOM_PATH = T.let(T.unsafe(nil), String)
1306
-
1307
- module Spoom::Sorbet
1308
- class << self
1309
- sig do
1310
- params(
1311
- arg: ::String,
1312
- path: ::String,
1313
- capture_err: T::Boolean,
1314
- sorbet_bin: T.nilable(::String)
1315
- ).returns(::Spoom::ExecResult)
1316
- end
1317
- def srb(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1318
-
1319
- sig { params(config: ::Spoom::Sorbet::Config, path: ::String).returns(T::Array[::String]) }
1320
- def srb_files(config, path: T.unsafe(nil)); end
1321
-
1322
- sig do
1323
- params(
1324
- arg: ::String,
1325
- path: ::String,
1326
- capture_err: T::Boolean,
1327
- sorbet_bin: T.nilable(::String)
1328
- ).returns(T.nilable(T::Hash[::String, ::Integer]))
1329
- end
1330
- def srb_metrics(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1331
-
1332
- sig do
1333
- params(
1334
- arg: ::String,
1335
- path: ::String,
1336
- capture_err: T::Boolean,
1337
- sorbet_bin: T.nilable(::String)
1338
- ).returns(::Spoom::ExecResult)
1339
- end
1340
- def srb_tc(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1341
-
1342
- sig do
1343
- params(
1344
- arg: ::String,
1345
- path: ::String,
1346
- capture_err: T::Boolean,
1347
- sorbet_bin: T.nilable(::String)
1348
- ).returns(T.nilable(::String))
1349
- end
1350
- def srb_version(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1351
-
1352
- sig { params(gem: ::String, path: ::String).returns(T.nilable(::String)) }
1353
- def version_from_gemfile_lock(gem: T.unsafe(nil), path: T.unsafe(nil)); end
1354
- end
1355
- end
1356
-
1357
- Spoom::Sorbet::BIN_PATH = T.let(T.unsafe(nil), String)
1358
- Spoom::Sorbet::CONFIG_PATH = T.let(T.unsafe(nil), String)
1359
-
1360
- class Spoom::Sorbet::Config
1361
- sig { void }
1362
- def initialize; end
1363
-
1364
- def allowed_extensions; end
1365
-
1366
- sig { returns(::Spoom::Sorbet::Config) }
1367
- def copy; end
1368
-
1369
- def ignore; end
1370
-
1371
- sig { returns(T::Boolean) }
1372
- def no_stdlib; end
1373
-
1374
- sig { params(no_stdlib: T::Boolean).returns(T::Boolean) }
1375
- def no_stdlib=(no_stdlib); end
1376
-
1377
- sig { returns(::String) }
1378
- def options_string; end
1379
-
1380
- sig { returns(T::Array[::String]) }
1381
- def paths; end
1382
-
1383
- class << self
1384
- sig { params(sorbet_config_path: ::String).returns(::Spoom::Sorbet::Config) }
1385
- def parse_file(sorbet_config_path); end
1386
-
1387
- sig { params(sorbet_config: ::String).returns(::Spoom::Sorbet::Config) }
1388
- def parse_string(sorbet_config); end
1389
-
1390
- private
1391
-
1392
- sig { params(line: ::String).returns(::String) }
1393
- def parse_option(line); end
1394
- end
1395
- end
1396
-
1397
- module Spoom::Sorbet::Errors
1398
- class << self
1399
- sig { params(errors: T::Array[::Spoom::Sorbet::Errors::Error]).returns(T::Array[::Spoom::Sorbet::Errors::Error]) }
1400
- def sort_errors_by_code(errors); end
1401
- end
1402
- end
1403
-
1404
- Spoom::Sorbet::Errors::DEFAULT_ERROR_URL_BASE = T.let(T.unsafe(nil), String)
1405
-
1406
- class Spoom::Sorbet::Errors::Error
1407
- include ::Comparable
1408
-
1409
- sig do
1410
- params(
1411
- file: T.nilable(::String),
1412
- line: T.nilable(::Integer),
1413
- message: T.nilable(::String),
1414
- code: T.nilable(::Integer),
1415
- more: T::Array[::String]
1416
- ).void
1417
- end
1418
- def initialize(file, line, message, code, more = T.unsafe(nil)); end
1419
-
1420
- sig { params(other: T.untyped).returns(::Integer) }
1421
- def <=>(other); end
1422
-
1423
- def code; end
1424
-
1425
- sig { returns(T.nilable(::String)) }
1426
- def file; end
1427
-
1428
- sig { returns(T::Set[::String]) }
1429
- def files_from_error_sections; end
1430
-
1431
- sig { returns(T.nilable(::Integer)) }
1432
- def line; end
1433
-
1434
- def message; end
1435
-
1436
- sig { returns(T::Array[::String]) }
1437
- def more; end
1438
-
1439
- sig { returns(::String) }
1440
- def to_s; end
1441
- end
1442
-
1443
- class Spoom::Sorbet::Errors::Parser
1444
- sig { params(error_url_base: ::String).void }
1445
- def initialize(error_url_base: T.unsafe(nil)); end
1446
-
1447
- sig { params(output: ::String).returns(T::Array[::Spoom::Sorbet::Errors::Error]) }
1448
- def parse(output); end
1449
-
1450
- private
1451
-
1452
- sig { params(line: ::String).void }
1453
- def append_error(line); end
1454
-
1455
- sig { void }
1456
- def close_error; end
1457
-
1458
- sig { params(error_url_base: ::String).returns(::Regexp) }
1459
- def error_line_match_regexp(error_url_base); end
1460
-
1461
- sig { params(line: ::String).returns(T.nilable(::Spoom::Sorbet::Errors::Error)) }
1462
- def match_error_line(line); end
1463
-
1464
- sig { params(error: ::Spoom::Sorbet::Errors::Error).void }
1465
- def open_error(error); end
1466
-
1467
- class << self
1468
- sig { params(output: ::String, error_url_base: ::String).returns(T::Array[::Spoom::Sorbet::Errors::Error]) }
1469
- def parse_string(output, error_url_base: T.unsafe(nil)); end
1470
- end
1471
- end
1472
-
1473
- Spoom::Sorbet::Errors::Parser::HEADER = T.let(T.unsafe(nil), Array)
1474
- Spoom::Sorbet::GEM_PATH = T.let(T.unsafe(nil), String)
1475
-
1476
- module Spoom::Sorbet::MetricsParser
1477
- class << self
1478
- sig { params(path: ::String, prefix: ::String).returns(T::Hash[::String, ::Integer]) }
1479
- def parse_file(path, prefix = T.unsafe(nil)); end
1480
-
1481
- sig { params(obj: T::Hash[::String, T.untyped], prefix: ::String).returns(T::Hash[::String, ::Integer]) }
1482
- def parse_hash(obj, prefix = T.unsafe(nil)); end
1483
-
1484
- sig { params(string: ::String, prefix: ::String).returns(T::Hash[::String, ::Integer]) }
1485
- def parse_string(string, prefix = T.unsafe(nil)); end
1486
- end
1487
- end
1488
-
1489
- Spoom::Sorbet::MetricsParser::DEFAULT_PREFIX = T.let(T.unsafe(nil), String)
1490
- Spoom::Sorbet::SEGFAULT_CODE = T.let(T.unsafe(nil), Integer)
1491
-
1492
- module Spoom::Sorbet::Sigils
1493
- class << self
1494
- sig { params(path: T.any(::Pathname, ::String), new_strictness: ::String).returns(T::Boolean) }
1495
- def change_sigil_in_file(path, new_strictness); end
1496
-
1497
- sig { params(path_list: T::Array[::String], new_strictness: ::String).returns(T::Array[::String]) }
1498
- def change_sigil_in_files(path_list, new_strictness); end
1499
-
1500
- sig { params(path: T.any(::Pathname, ::String)).returns(T.nilable(::String)) }
1501
- def file_strictness(path); end
1502
-
1503
- sig do
1504
- params(
1505
- directory: T.any(::Pathname, ::String),
1506
- strictness: ::String,
1507
- extension: ::String
1508
- ).returns(T::Array[::String])
1509
- end
1510
- def files_with_sigil_strictness(directory, strictness, extension: T.unsafe(nil)); end
1511
-
1512
- sig { params(strictness: ::String).returns(::String) }
1513
- def sigil_string(strictness); end
1514
-
1515
- sig { params(content: ::String).returns(T.nilable(::String)) }
1516
- def strictness_in_content(content); end
1517
-
1518
- sig { params(content: ::String, new_strictness: ::String).returns(::String) }
1519
- def update_sigil(content, new_strictness); end
1520
-
1521
- sig { params(strictness: ::String).returns(T::Boolean) }
1522
- def valid_strictness?(strictness); end
1523
- end
1524
- end
1525
-
1526
- Spoom::Sorbet::Sigils::SIGIL_REGEXP = T.let(T.unsafe(nil), Regexp)
1527
- Spoom::Sorbet::Sigils::STRICTNESS_FALSE = T.let(T.unsafe(nil), String)
1528
- Spoom::Sorbet::Sigils::STRICTNESS_IGNORE = T.let(T.unsafe(nil), String)
1529
- Spoom::Sorbet::Sigils::STRICTNESS_INTERNAL = T.let(T.unsafe(nil), String)
1530
- Spoom::Sorbet::Sigils::STRICTNESS_STRICT = T.let(T.unsafe(nil), String)
1531
- Spoom::Sorbet::Sigils::STRICTNESS_STRONG = T.let(T.unsafe(nil), String)
1532
- Spoom::Sorbet::Sigils::STRICTNESS_TRUE = T.let(T.unsafe(nil), String)
1533
- Spoom::Sorbet::Sigils::VALID_STRICTNESS = T.let(T.unsafe(nil), Array)
1534
-
1535
- class Spoom::Timeline
1536
- sig { params(from: ::Time, to: ::Time, path: ::String).void }
1537
- def initialize(from, to, path: T.unsafe(nil)); end
1538
-
1539
- sig { params(dates: T::Array[::Time]).returns(T::Array[::Spoom::Git::Commit]) }
1540
- def commits_for_dates(dates); end
1541
-
1542
- sig { returns(T::Array[::Time]) }
1543
- def months; end
1544
-
1545
- sig { returns(T::Array[::Spoom::Git::Commit]) }
1546
- def ticks; end
1547
- end
1548
-
1549
- Spoom::VERSION = T.let(T.unsafe(nil), String)