solargraph 0.54.0 → 0.54.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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +27 -0
  3. data/lib/solargraph/api_map/store.rb +8 -4
  4. data/lib/solargraph/api_map.rb +74 -23
  5. data/lib/solargraph/complex_type/type_methods.rb +17 -11
  6. data/lib/solargraph/complex_type/unique_type.rb +72 -9
  7. data/lib/solargraph/complex_type.rb +66 -17
  8. data/lib/solargraph/language_server/host/message_worker.rb +45 -5
  9. data/lib/solargraph/language_server/host.rb +10 -10
  10. data/lib/solargraph/language_server/message/base.rb +18 -11
  11. data/lib/solargraph/language_server/message/text_document/completion.rb +0 -3
  12. data/lib/solargraph/language_server/message/text_document/definition.rb +3 -3
  13. data/lib/solargraph/language_server/message/text_document/document_symbol.rb +3 -3
  14. data/lib/solargraph/language_server/message/text_document/hover.rb +1 -1
  15. data/lib/solargraph/language_server/message/text_document/type_definition.rb +3 -3
  16. data/lib/solargraph/language_server/message/workspace/workspace_symbol.rb +2 -2
  17. data/lib/solargraph/language_server/progress.rb +19 -2
  18. data/lib/solargraph/library.rb +29 -39
  19. data/lib/solargraph/location.rb +14 -1
  20. data/lib/solargraph/parser/parser_gem/node_chainer.rb +13 -7
  21. data/lib/solargraph/parser/parser_gem/node_methods.rb +1 -1
  22. data/lib/solargraph/parser/parser_gem/node_processors/args_node.rb +23 -19
  23. data/lib/solargraph/parser/parser_gem/node_processors/lvasgn_node.rb +2 -2
  24. data/lib/solargraph/parser/parser_gem/node_processors/masgn_node.rb +8 -2
  25. data/lib/solargraph/parser/parser_gem/node_processors/send_node.rb +1 -1
  26. data/lib/solargraph/parser.rb +2 -5
  27. data/lib/solargraph/pin/base.rb +16 -3
  28. data/lib/solargraph/pin/base_variable.rb +1 -1
  29. data/lib/solargraph/pin/block.rb +6 -26
  30. data/lib/solargraph/pin/callable.rb +147 -0
  31. data/lib/solargraph/pin/closure.rb +8 -3
  32. data/lib/solargraph/pin/common.rb +2 -6
  33. data/lib/solargraph/pin/conversions.rb +3 -2
  34. data/lib/solargraph/pin/instance_variable.rb +2 -2
  35. data/lib/solargraph/pin/method.rb +51 -31
  36. data/lib/solargraph/pin/namespace.rb +4 -4
  37. data/lib/solargraph/pin/parameter.rb +9 -11
  38. data/lib/solargraph/pin/proxy_type.rb +1 -1
  39. data/lib/solargraph/pin/signature.rb +3 -129
  40. data/lib/solargraph/pin.rb +4 -1
  41. data/lib/solargraph/range.rb +2 -4
  42. data/lib/solargraph/rbs_map/conversions.rb +76 -37
  43. data/lib/solargraph/rbs_map/core_fills.rb +6 -6
  44. data/lib/solargraph/shell.rb +17 -2
  45. data/lib/solargraph/source/chain/array.rb +6 -5
  46. data/lib/solargraph/source/chain/block_symbol.rb +1 -1
  47. data/lib/solargraph/source/chain/block_variable.rb +1 -1
  48. data/lib/solargraph/source/chain/call.rb +81 -51
  49. data/lib/solargraph/source/chain/link.rb +9 -0
  50. data/lib/solargraph/source/chain/or.rb +1 -1
  51. data/lib/solargraph/source/chain.rb +41 -17
  52. data/lib/solargraph/source/cursor.rb +14 -2
  53. data/lib/solargraph/source.rb +102 -85
  54. data/lib/solargraph/source_map/clip.rb +4 -4
  55. data/lib/solargraph/source_map/data.rb +30 -0
  56. data/lib/solargraph/source_map.rb +28 -16
  57. data/lib/solargraph/type_checker/rules.rb +6 -1
  58. data/lib/solargraph/type_checker.rb +7 -7
  59. data/lib/solargraph/version.rb +1 -1
  60. data/lib/solargraph/views/environment.erb +3 -5
  61. data/solargraph.gemspec +4 -4
  62. metadata +20 -24
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solargraph
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.54.0
4
+ version: 0.54.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fred Snyder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-04-14 00:00:00.000000000 Z
11
+ date: 2025-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: backport
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: benchmark
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '0.4'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '0.4'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -182,22 +182,16 @@ dependencies:
182
182
  name: reverse_markdown
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: '2.0'
188
- - - "<"
185
+ - - "~>"
189
186
  - !ruby/object:Gem::Version
190
- version: '4'
187
+ version: '3.0'
191
188
  type: :runtime
192
189
  prerelease: false
193
190
  version_requirements: !ruby/object:Gem::Requirement
194
191
  requirements:
195
- - - ">="
196
- - !ruby/object:Gem::Version
197
- version: '2.0'
198
- - - "<"
192
+ - - "~>"
199
193
  - !ruby/object:Gem::Version
200
- version: '4'
194
+ version: '3.0'
201
195
  - !ruby/object:Gem::Dependency
202
196
  name: rubocop
203
197
  requirement: !ruby/object:Gem::Requirement
@@ -278,16 +272,16 @@ dependencies:
278
272
  name: pry
279
273
  requirement: !ruby/object:Gem::Requirement
280
274
  requirements:
281
- - - ">="
275
+ - - "~>"
282
276
  - !ruby/object:Gem::Version
283
- version: '0'
277
+ version: '0.15'
284
278
  type: :development
285
279
  prerelease: false
286
280
  version_requirements: !ruby/object:Gem::Requirement
287
281
  requirements:
288
- - - ">="
282
+ - - "~>"
289
283
  - !ruby/object:Gem::Version
290
- version: '0'
284
+ version: '0.15'
291
285
  - !ruby/object:Gem::Dependency
292
286
  name: public_suffix
293
287
  requirement: !ruby/object:Gem::Requirement
@@ -362,16 +356,16 @@ dependencies:
362
356
  name: irb
363
357
  requirement: !ruby/object:Gem::Requirement
364
358
  requirements:
365
- - - ">="
359
+ - - "~>"
366
360
  - !ruby/object:Gem::Version
367
- version: '0'
361
+ version: '1.15'
368
362
  type: :development
369
363
  prerelease: false
370
364
  version_requirements: !ruby/object:Gem::Requirement
371
365
  requirements:
372
- - - ">="
366
+ - - "~>"
373
367
  - !ruby/object:Gem::Version
374
- version: '0'
368
+ version: '1.15'
375
369
  description: IDE tools for code completion, inline documentation, and static analysis
376
370
  email: admin@castwide.com
377
371
  executables:
@@ -524,6 +518,7 @@ files:
524
518
  - lib/solargraph/pin/base.rb
525
519
  - lib/solargraph/pin/base_variable.rb
526
520
  - lib/solargraph/pin/block.rb
521
+ - lib/solargraph/pin/callable.rb
527
522
  - lib/solargraph/pin/class_variable.rb
528
523
  - lib/solargraph/pin/closure.rb
529
524
  - lib/solargraph/pin/common.rb
@@ -589,6 +584,7 @@ files:
589
584
  - lib/solargraph/source_map.rb
590
585
  - lib/solargraph/source_map/clip.rb
591
586
  - lib/solargraph/source_map/completion.rb
587
+ - lib/solargraph/source_map/data.rb
592
588
  - lib/solargraph/source_map/mapper.rb
593
589
  - lib/solargraph/type_checker.rb
594
590
  - lib/solargraph/type_checker/checks.rb