solargraph 0.46.0 → 0.54.5

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 (279) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/.github/workflows/plugins.yml +40 -0
  4. data/.github/workflows/rspec.yml +37 -41
  5. data/.github/workflows/typecheck.yml +34 -0
  6. data/.gitignore +9 -9
  7. data/.rspec +2 -2
  8. data/.yardopts +2 -2
  9. data/CHANGELOG.md +1338 -1115
  10. data/Gemfile +0 -0
  11. data/LICENSE +1 -1
  12. data/README.md +131 -128
  13. data/Rakefile +0 -0
  14. data/SPONSORS.md +10 -18
  15. data/bin/solargraph +0 -0
  16. data/lib/solargraph/api_map/cache.rb +109 -70
  17. data/lib/solargraph/api_map/index.rb +167 -0
  18. data/lib/solargraph/api_map/source_to_yard.rb +88 -81
  19. data/lib/solargraph/api_map/store.rb +260 -256
  20. data/lib/solargraph/api_map.rb +870 -686
  21. data/lib/solargraph/bench.rb +44 -27
  22. data/lib/solargraph/cache.rb +77 -0
  23. data/lib/solargraph/complex_type/type_methods.rb +217 -130
  24. data/lib/solargraph/complex_type/unique_type.rb +386 -75
  25. data/lib/solargraph/complex_type.rb +394 -221
  26. data/lib/solargraph/convention/base.rb +33 -33
  27. data/lib/solargraph/convention/gemfile.rb +15 -15
  28. data/lib/solargraph/convention/gemspec.rb +22 -22
  29. data/lib/solargraph/convention/rakefile.rb +17 -0
  30. data/lib/solargraph/convention.rb +47 -47
  31. data/lib/solargraph/converters/dd.rb +17 -12
  32. data/lib/solargraph/converters/dl.rb +15 -12
  33. data/lib/solargraph/converters/dt.rb +15 -12
  34. data/lib/solargraph/converters/misc.rb +1 -1
  35. data/lib/solargraph/diagnostics/base.rb +29 -29
  36. data/lib/solargraph/diagnostics/require_not_found.rb +53 -53
  37. data/lib/solargraph/diagnostics/rubocop.rb +113 -98
  38. data/lib/solargraph/diagnostics/rubocop_helpers.rb +66 -63
  39. data/lib/solargraph/diagnostics/severities.rb +15 -15
  40. data/lib/solargraph/diagnostics/type_check.rb +55 -54
  41. data/lib/solargraph/diagnostics/update_errors.rb +41 -41
  42. data/lib/solargraph/diagnostics.rb +55 -55
  43. data/lib/solargraph/doc_map.rb +188 -0
  44. data/lib/solargraph/environ.rb +45 -45
  45. data/lib/solargraph/equality.rb +33 -0
  46. data/lib/solargraph/gem_pins.rb +72 -0
  47. data/lib/solargraph/language_server/completion_item_kinds.rb +35 -35
  48. data/lib/solargraph/language_server/error_codes.rb +20 -20
  49. data/lib/solargraph/language_server/host/diagnoser.rb +89 -89
  50. data/lib/solargraph/language_server/host/dispatch.rb +128 -111
  51. data/lib/solargraph/language_server/host/message_worker.rb +106 -59
  52. data/lib/solargraph/language_server/host/sources.rb +99 -156
  53. data/lib/solargraph/language_server/host.rb +861 -865
  54. data/lib/solargraph/language_server/message/base.rb +96 -89
  55. data/lib/solargraph/language_server/message/cancel_request.rb +13 -13
  56. data/lib/solargraph/language_server/message/client/register_capability.rb +15 -15
  57. data/lib/solargraph/language_server/message/client.rb +11 -11
  58. data/lib/solargraph/language_server/message/completion_item/resolve.rb +60 -58
  59. data/lib/solargraph/language_server/message/completion_item.rb +11 -11
  60. data/lib/solargraph/language_server/message/exit_notification.rb +13 -13
  61. data/lib/solargraph/language_server/message/extended/check_gem_version.rb +112 -100
  62. data/lib/solargraph/language_server/message/extended/document.rb +20 -20
  63. data/lib/solargraph/language_server/message/extended/document_gems.rb +32 -32
  64. data/lib/solargraph/language_server/message/extended/download_core.rb +19 -23
  65. data/lib/solargraph/language_server/message/extended/environment.rb +25 -25
  66. data/lib/solargraph/language_server/message/extended/search.rb +20 -20
  67. data/lib/solargraph/language_server/message/extended.rb +21 -21
  68. data/lib/solargraph/language_server/message/initialize.rb +191 -162
  69. data/lib/solargraph/language_server/message/initialized.rb +28 -27
  70. data/lib/solargraph/language_server/message/method_not_found.rb +16 -16
  71. data/lib/solargraph/language_server/message/method_not_implemented.rb +14 -14
  72. data/lib/solargraph/language_server/message/shutdown.rb +13 -13
  73. data/lib/solargraph/language_server/message/text_document/base.rb +19 -19
  74. data/lib/solargraph/language_server/message/text_document/code_action.rb +17 -17
  75. data/lib/solargraph/language_server/message/text_document/completion.rb +56 -59
  76. data/lib/solargraph/language_server/message/text_document/definition.rb +38 -38
  77. data/lib/solargraph/language_server/message/text_document/did_change.rb +15 -15
  78. data/lib/solargraph/language_server/message/text_document/did_close.rb +15 -15
  79. data/lib/solargraph/language_server/message/text_document/did_open.rb +15 -15
  80. data/lib/solargraph/language_server/message/text_document/did_save.rb +17 -17
  81. data/lib/solargraph/language_server/message/text_document/document_highlight.rb +16 -16
  82. data/lib/solargraph/language_server/message/text_document/document_symbol.rb +26 -23
  83. data/lib/solargraph/language_server/message/text_document/folding_range.rb +26 -26
  84. data/lib/solargraph/language_server/message/text_document/formatting.rb +131 -126
  85. data/lib/solargraph/language_server/message/text_document/hover.rb +58 -54
  86. data/lib/solargraph/language_server/message/text_document/on_type_formatting.rb +34 -34
  87. data/lib/solargraph/language_server/message/text_document/prepare_rename.rb +11 -11
  88. data/lib/solargraph/language_server/message/text_document/references.rb +16 -16
  89. data/lib/solargraph/language_server/message/text_document/rename.rb +19 -19
  90. data/lib/solargraph/language_server/message/text_document/signature_help.rb +24 -29
  91. data/lib/solargraph/language_server/message/text_document/type_definition.rb +24 -0
  92. data/lib/solargraph/language_server/message/text_document.rb +28 -28
  93. data/lib/solargraph/language_server/message/workspace/did_change_configuration.rb +35 -30
  94. data/lib/solargraph/language_server/message/workspace/did_change_watched_files.rb +40 -33
  95. data/lib/solargraph/language_server/message/workspace/did_change_workspace_folders.rb +24 -24
  96. data/lib/solargraph/language_server/message/workspace/workspace_symbol.rb +23 -23
  97. data/lib/solargraph/language_server/message/workspace.rb +14 -14
  98. data/lib/solargraph/language_server/message.rb +94 -93
  99. data/lib/solargraph/language_server/message_types.rb +14 -14
  100. data/lib/solargraph/language_server/progress.rb +135 -0
  101. data/lib/solargraph/language_server/request.rb +24 -24
  102. data/lib/solargraph/language_server/symbol_kinds.rb +36 -36
  103. data/lib/solargraph/language_server/transport/adapter.rb +68 -53
  104. data/lib/solargraph/language_server/transport/data_reader.rb +74 -72
  105. data/lib/solargraph/language_server/transport.rb +13 -13
  106. data/lib/solargraph/language_server/uri_helpers.rb +49 -49
  107. data/lib/solargraph/language_server.rb +20 -19
  108. data/lib/solargraph/library.rb +663 -546
  109. data/lib/solargraph/location.rb +58 -37
  110. data/lib/solargraph/logging.rb +27 -27
  111. data/lib/solargraph/page.rb +89 -83
  112. data/lib/solargraph/parser/comment_ripper.rb +56 -52
  113. data/lib/solargraph/parser/node_methods.rb +83 -43
  114. data/lib/solargraph/parser/node_processor/base.rb +87 -77
  115. data/lib/solargraph/parser/node_processor.rb +45 -43
  116. data/lib/solargraph/parser/{legacy → parser_gem}/class_methods.rb +153 -135
  117. data/lib/solargraph/parser/{legacy → parser_gem}/flawed_builder.rb +18 -16
  118. data/lib/solargraph/parser/{legacy → parser_gem}/node_chainer.rb +164 -148
  119. data/lib/solargraph/parser/parser_gem/node_methods.rb +495 -0
  120. data/lib/solargraph/parser/{rubyvm → parser_gem}/node_processors/alias_node.rb +23 -23
  121. data/lib/solargraph/parser/parser_gem/node_processors/args_node.rb +57 -0
  122. data/lib/solargraph/parser/{rubyvm → parser_gem}/node_processors/begin_node.rb +15 -15
  123. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/block_node.rb +43 -42
  124. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/casgn_node.rb +35 -25
  125. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/cvasgn_node.rb +23 -23
  126. data/lib/solargraph/parser/{rubyvm → parser_gem}/node_processors/def_node.rb +50 -63
  127. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/defs_node.rb +36 -36
  128. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/gvasgn_node.rb +23 -23
  129. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/ivasgn_node.rb +38 -38
  130. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/lvasgn_node.rb +28 -28
  131. data/lib/solargraph/parser/parser_gem/node_processors/masgn_node.rb +53 -0
  132. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/namespace_node.rb +39 -39
  133. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/orasgn_node.rb +16 -16
  134. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/resbody_node.rb +36 -36
  135. data/lib/solargraph/parser/parser_gem/node_processors/sclass_node.rb +42 -0
  136. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/send_node.rb +259 -257
  137. data/lib/solargraph/parser/{legacy → parser_gem}/node_processors/sym_node.rb +18 -18
  138. data/lib/solargraph/parser/parser_gem/node_processors.rb +56 -0
  139. data/lib/solargraph/parser/parser_gem.rb +12 -0
  140. data/lib/solargraph/parser/region.rb +66 -66
  141. data/lib/solargraph/parser/snippet.rb +15 -13
  142. data/lib/solargraph/parser.rb +22 -26
  143. data/lib/solargraph/pin/base.rb +378 -296
  144. data/lib/solargraph/pin/base_variable.rb +118 -84
  145. data/lib/solargraph/pin/block.rb +101 -72
  146. data/lib/solargraph/pin/callable.rb +147 -0
  147. data/lib/solargraph/pin/class_variable.rb +8 -8
  148. data/lib/solargraph/pin/closure.rb +57 -37
  149. data/lib/solargraph/pin/common.rb +70 -70
  150. data/lib/solargraph/pin/constant.rb +43 -43
  151. data/lib/solargraph/pin/conversions.rb +123 -96
  152. data/lib/solargraph/pin/delegated_method.rb +101 -0
  153. data/lib/solargraph/pin/documenting.rb +98 -105
  154. data/lib/solargraph/pin/duck_method.rb +16 -16
  155. data/lib/solargraph/pin/global_variable.rb +8 -8
  156. data/lib/solargraph/pin/instance_variable.rb +34 -30
  157. data/lib/solargraph/pin/keyword.rb +15 -15
  158. data/lib/solargraph/pin/keyword_param.rb +8 -8
  159. data/lib/solargraph/pin/local_variable.rb +67 -55
  160. data/lib/solargraph/pin/method.rb +527 -245
  161. data/lib/solargraph/pin/method_alias.rb +31 -31
  162. data/lib/solargraph/pin/namespace.rb +107 -91
  163. data/lib/solargraph/pin/parameter.rb +212 -201
  164. data/lib/solargraph/pin/proxy_type.rb +29 -29
  165. data/lib/solargraph/pin/reference/extend.rb +10 -10
  166. data/lib/solargraph/pin/reference/include.rb +10 -10
  167. data/lib/solargraph/pin/reference/override.rb +29 -29
  168. data/lib/solargraph/pin/reference/prepend.rb +10 -10
  169. data/lib/solargraph/pin/reference/require.rb +14 -14
  170. data/lib/solargraph/pin/reference/superclass.rb +10 -10
  171. data/lib/solargraph/pin/reference.rb +22 -14
  172. data/lib/solargraph/pin/search.rb +56 -56
  173. data/lib/solargraph/pin/signature.rb +17 -0
  174. data/lib/solargraph/pin/singleton.rb +11 -11
  175. data/lib/solargraph/pin/symbol.rb +47 -47
  176. data/lib/solargraph/pin.rb +41 -37
  177. data/lib/solargraph/position.rb +107 -100
  178. data/lib/solargraph/range.rb +98 -95
  179. data/lib/solargraph/rbs_map/conversions.rb +646 -0
  180. data/lib/solargraph/rbs_map/core_fills.rb +50 -0
  181. data/lib/solargraph/rbs_map/core_map.rb +28 -0
  182. data/lib/solargraph/rbs_map/stdlib_map.rb +33 -0
  183. data/lib/solargraph/rbs_map.rb +93 -0
  184. data/lib/solargraph/server_methods.rb +16 -16
  185. data/lib/solargraph/shell.rb +269 -226
  186. data/lib/solargraph/source/chain/array.rb +33 -0
  187. data/lib/solargraph/source/chain/block_symbol.rb +13 -0
  188. data/lib/solargraph/source/chain/block_variable.rb +13 -13
  189. data/lib/solargraph/source/chain/call.rb +303 -204
  190. data/lib/solargraph/source/chain/class_variable.rb +13 -13
  191. data/lib/solargraph/source/chain/constant.rb +89 -75
  192. data/lib/solargraph/source/chain/global_variable.rb +13 -13
  193. data/lib/solargraph/source/chain/hash.rb +33 -28
  194. data/lib/solargraph/source/chain/head.rb +19 -19
  195. data/lib/solargraph/source/chain/if.rb +28 -0
  196. data/lib/solargraph/source/chain/instance_variable.rb +13 -13
  197. data/lib/solargraph/source/chain/link.rb +98 -71
  198. data/lib/solargraph/source/chain/literal.rb +28 -23
  199. data/lib/solargraph/source/chain/or.rb +23 -23
  200. data/lib/solargraph/source/chain/q_call.rb +11 -11
  201. data/lib/solargraph/source/chain/variable.rb +13 -13
  202. data/lib/solargraph/source/chain/z_super.rb +30 -30
  203. data/lib/solargraph/source/chain.rb +252 -164
  204. data/lib/solargraph/source/change.rb +82 -79
  205. data/lib/solargraph/source/cursor.rb +167 -164
  206. data/lib/solargraph/source/source_chainer.rb +194 -191
  207. data/lib/solargraph/source/updater.rb +55 -54
  208. data/lib/solargraph/source.rb +495 -522
  209. data/lib/solargraph/source_map/clip.rb +232 -224
  210. data/lib/solargraph/source_map/completion.rb +23 -23
  211. data/lib/solargraph/source_map/data.rb +30 -0
  212. data/lib/solargraph/source_map/mapper.rb +255 -212
  213. data/lib/solargraph/source_map.rb +217 -180
  214. data/lib/solargraph/type_checker/checks.rb +120 -99
  215. data/lib/solargraph/type_checker/param_def.rb +35 -35
  216. data/lib/solargraph/type_checker/problem.rb +32 -32
  217. data/lib/solargraph/type_checker/rules.rb +62 -57
  218. data/lib/solargraph/type_checker.rb +672 -543
  219. data/lib/solargraph/version.rb +5 -5
  220. data/lib/solargraph/views/environment.erb +56 -58
  221. data/lib/solargraph/workspace/config.rb +239 -231
  222. data/lib/solargraph/workspace.rb +239 -215
  223. data/lib/solargraph/yard_map/cache.rb +25 -19
  224. data/lib/solargraph/yard_map/helpers.rb +16 -16
  225. data/lib/solargraph/yard_map/mapper/to_constant.rb +26 -25
  226. data/lib/solargraph/yard_map/mapper/to_method.rb +94 -78
  227. data/lib/solargraph/yard_map/mapper/to_namespace.rb +28 -27
  228. data/lib/solargraph/yard_map/mapper.rb +78 -77
  229. data/lib/solargraph/yard_map/to_method.rb +86 -79
  230. data/lib/solargraph/yard_map.rb +18 -460
  231. data/lib/solargraph/yard_tags.rb +20 -0
  232. data/lib/solargraph/yardoc.rb +52 -0
  233. data/lib/solargraph.rb +72 -69
  234. data/solargraph.gemspec +21 -10
  235. metadata +184 -115
  236. data/.travis.yml +0 -19
  237. data/lib/solargraph/api_map/bundler_methods.rb +0 -22
  238. data/lib/solargraph/compat.rb +0 -37
  239. data/lib/solargraph/convention/rspec.rb +0 -30
  240. data/lib/solargraph/documentor.rb +0 -76
  241. data/lib/solargraph/language_server/host/cataloger.rb +0 -56
  242. data/lib/solargraph/parser/legacy/node_methods.rb +0 -325
  243. data/lib/solargraph/parser/legacy/node_processors/alias_node.rb +0 -23
  244. data/lib/solargraph/parser/legacy/node_processors/args_node.rb +0 -35
  245. data/lib/solargraph/parser/legacy/node_processors/begin_node.rb +0 -15
  246. data/lib/solargraph/parser/legacy/node_processors/def_node.rb +0 -63
  247. data/lib/solargraph/parser/legacy/node_processors/sclass_node.rb +0 -21
  248. data/lib/solargraph/parser/legacy/node_processors.rb +0 -54
  249. data/lib/solargraph/parser/legacy.rb +0 -12
  250. data/lib/solargraph/parser/rubyvm/class_methods.rb +0 -144
  251. data/lib/solargraph/parser/rubyvm/node_chainer.rb +0 -160
  252. data/lib/solargraph/parser/rubyvm/node_methods.rb +0 -315
  253. data/lib/solargraph/parser/rubyvm/node_processors/args_node.rb +0 -85
  254. data/lib/solargraph/parser/rubyvm/node_processors/block_node.rb +0 -42
  255. data/lib/solargraph/parser/rubyvm/node_processors/casgn_node.rb +0 -22
  256. data/lib/solargraph/parser/rubyvm/node_processors/cvasgn_node.rb +0 -23
  257. data/lib/solargraph/parser/rubyvm/node_processors/defs_node.rb +0 -57
  258. data/lib/solargraph/parser/rubyvm/node_processors/gvasgn_node.rb +0 -23
  259. data/lib/solargraph/parser/rubyvm/node_processors/ivasgn_node.rb +0 -38
  260. data/lib/solargraph/parser/rubyvm/node_processors/kw_arg_node.rb +0 -39
  261. data/lib/solargraph/parser/rubyvm/node_processors/lit_node.rb +0 -20
  262. data/lib/solargraph/parser/rubyvm/node_processors/lvasgn_node.rb +0 -27
  263. data/lib/solargraph/parser/rubyvm/node_processors/namespace_node.rb +0 -39
  264. data/lib/solargraph/parser/rubyvm/node_processors/opt_arg_node.rb +0 -26
  265. data/lib/solargraph/parser/rubyvm/node_processors/orasgn_node.rb +0 -15
  266. data/lib/solargraph/parser/rubyvm/node_processors/resbody_node.rb +0 -45
  267. data/lib/solargraph/parser/rubyvm/node_processors/sclass_node.rb +0 -21
  268. data/lib/solargraph/parser/rubyvm/node_processors/scope_node.rb +0 -15
  269. data/lib/solargraph/parser/rubyvm/node_processors/send_node.rb +0 -277
  270. data/lib/solargraph/parser/rubyvm/node_processors/sym_node.rb +0 -18
  271. data/lib/solargraph/parser/rubyvm/node_processors.rb +0 -63
  272. data/lib/solargraph/parser/rubyvm.rb +0 -40
  273. data/lib/solargraph/yard_map/core_docs.rb +0 -170
  274. data/lib/solargraph/yard_map/core_fills.rb +0 -208
  275. data/lib/solargraph/yard_map/core_gen.rb +0 -76
  276. data/lib/solargraph/yard_map/rdoc_to_yard.rb +0 -140
  277. data/lib/solargraph/yard_map/stdlib_fills.rb +0 -43
  278. data/lib/yard-solargraph.rb +0 -33
  279. data/yardoc/2.2.2.tar.gz +0 -0
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.46.0
4
+ version: 0.54.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fred Snyder
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-22 00:00:00.000000000 Z
11
+ date: 2025-05-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: backport
@@ -28,30 +28,30 @@ 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
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.17.2
47
+ version: '2.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.17.2
54
+ version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: diff-lcs
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -67,61 +67,95 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.4'
69
69
  - !ruby/object:Gem::Dependency
70
- name: e2mmap
70
+ name: jaro_winkler
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.6'
73
76
  - - ">="
74
77
  - !ruby/object:Gem::Version
75
- version: '0'
78
+ version: 1.6.1
76
79
  type: :runtime
77
80
  prerelease: false
78
81
  version_requirements: !ruby/object:Gem::Requirement
79
82
  requirements:
83
+ - - "~>"
84
+ - !ruby/object:Gem::Version
85
+ version: '1.6'
80
86
  - - ">="
81
87
  - !ruby/object:Gem::Version
82
- version: '0'
88
+ version: 1.6.1
83
89
  - !ruby/object:Gem::Dependency
84
- name: jaro_winkler
90
+ name: kramdown
85
91
  requirement: !ruby/object:Gem::Requirement
86
92
  requirements:
87
93
  - - "~>"
88
94
  - !ruby/object:Gem::Version
89
- version: '1.5'
95
+ version: '2.3'
90
96
  type: :runtime
91
97
  prerelease: false
92
98
  version_requirements: !ruby/object:Gem::Requirement
93
99
  requirements:
94
100
  - - "~>"
95
101
  - !ruby/object:Gem::Version
96
- version: '1.5'
102
+ version: '2.3'
97
103
  - !ruby/object:Gem::Dependency
98
- name: kramdown
104
+ name: kramdown-parser-gfm
99
105
  requirement: !ruby/object:Gem::Requirement
100
106
  requirements:
101
107
  - - "~>"
102
108
  - !ruby/object:Gem::Version
103
- version: '2.3'
109
+ version: '1.1'
104
110
  type: :runtime
105
111
  prerelease: false
106
112
  version_requirements: !ruby/object:Gem::Requirement
107
113
  requirements:
108
114
  - - "~>"
109
115
  - !ruby/object:Gem::Version
110
- version: '2.3'
116
+ version: '1.1'
111
117
  - !ruby/object:Gem::Dependency
112
- name: kramdown-parser-gfm
118
+ name: logger
113
119
  requirement: !ruby/object:Gem::Requirement
114
120
  requirements:
115
121
  - - "~>"
116
122
  - !ruby/object:Gem::Version
117
- version: '1.1'
123
+ version: '1.6'
118
124
  type: :runtime
119
125
  prerelease: false
120
126
  version_requirements: !ruby/object:Gem::Requirement
121
127
  requirements:
122
128
  - - "~>"
123
129
  - !ruby/object:Gem::Version
124
- version: '1.1'
130
+ version: '1.6'
131
+ - !ruby/object:Gem::Dependency
132
+ name: observer
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '0.1'
138
+ type: :runtime
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '0.1'
145
+ - !ruby/object:Gem::Dependency
146
+ name: ostruct
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '0.6'
152
+ type: :runtime
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: '0.6'
125
159
  - !ruby/object:Gem::Dependency
126
160
  name: parser
127
161
  requirement: !ruby/object:Gem::Requirement
@@ -137,39 +171,47 @@ dependencies:
137
171
  - !ruby/object:Gem::Version
138
172
  version: '3.0'
139
173
  - !ruby/object:Gem::Dependency
140
- name: reverse_markdown
174
+ name: rbs
141
175
  requirement: !ruby/object:Gem::Requirement
142
176
  requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: 1.0.5
146
- - - "<"
177
+ - - "~>"
147
178
  - !ruby/object:Gem::Version
148
- version: '3'
179
+ version: '3.3'
149
180
  type: :runtime
150
181
  prerelease: false
151
182
  version_requirements: !ruby/object:Gem::Requirement
152
183
  requirements:
153
- - - ">="
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: '3.3'
187
+ - !ruby/object:Gem::Dependency
188
+ name: reverse_markdown
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
154
192
  - !ruby/object:Gem::Version
155
- version: 1.0.5
156
- - - "<"
193
+ version: '3.0'
194
+ type: :runtime
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
157
199
  - !ruby/object:Gem::Version
158
- version: '3'
200
+ version: '3.0'
159
201
  - !ruby/object:Gem::Dependency
160
202
  name: rubocop
161
203
  requirement: !ruby/object:Gem::Requirement
162
204
  requirements:
163
- - - ">="
205
+ - - "~>"
164
206
  - !ruby/object:Gem::Version
165
- version: '0.52'
207
+ version: '1.38'
166
208
  type: :runtime
167
209
  prerelease: false
168
210
  version_requirements: !ruby/object:Gem::Requirement
169
211
  requirements:
170
- - - ">="
212
+ - - "~>"
171
213
  - !ruby/object:Gem::Version
172
- version: '0.52'
214
+ version: '1.38'
173
215
  - !ruby/object:Gem::Dependency
174
216
  name: thor
175
217
  requirement: !ruby/object:Gem::Requirement
@@ -218,20 +260,34 @@ dependencies:
218
260
  - - ">="
219
261
  - !ruby/object:Gem::Version
220
262
  version: 0.9.24
263
+ - !ruby/object:Gem::Dependency
264
+ name: yard-solargraph
265
+ requirement: !ruby/object:Gem::Requirement
266
+ requirements:
267
+ - - "~>"
268
+ - !ruby/object:Gem::Version
269
+ version: '0.1'
270
+ type: :runtime
271
+ prerelease: false
272
+ version_requirements: !ruby/object:Gem::Requirement
273
+ requirements:
274
+ - - "~>"
275
+ - !ruby/object:Gem::Version
276
+ version: '0.1'
221
277
  - !ruby/object:Gem::Dependency
222
278
  name: pry
223
279
  requirement: !ruby/object:Gem::Requirement
224
280
  requirements:
225
- - - ">="
281
+ - - "~>"
226
282
  - !ruby/object:Gem::Version
227
- version: '0'
283
+ version: '0.15'
228
284
  type: :development
229
285
  prerelease: false
230
286
  version_requirements: !ruby/object:Gem::Requirement
231
287
  requirements:
232
- - - ">="
288
+ - - "~>"
233
289
  - !ruby/object:Gem::Version
234
- version: '0'
290
+ version: '0.15'
235
291
  - !ruby/object:Gem::Dependency
236
292
  name: public_suffix
237
293
  requirement: !ruby/object:Gem::Requirement
@@ -247,12 +303,23 @@ dependencies:
247
303
  - !ruby/object:Gem::Version
248
304
  version: '3.1'
249
305
  - !ruby/object:Gem::Dependency
250
- name: rspec
306
+ name: rake
251
307
  requirement: !ruby/object:Gem::Requirement
252
308
  requirements:
253
- - - ">="
309
+ - - "~>"
310
+ - !ruby/object:Gem::Version
311
+ version: '13.2'
312
+ type: :development
313
+ prerelease: false
314
+ version_requirements: !ruby/object:Gem::Requirement
315
+ requirements:
316
+ - - "~>"
254
317
  - !ruby/object:Gem::Version
255
- version: 3.5.0
318
+ version: '13.2'
319
+ - !ruby/object:Gem::Dependency
320
+ name: rspec
321
+ requirement: !ruby/object:Gem::Requirement
322
+ requirements:
256
323
  - - "~>"
257
324
  - !ruby/object:Gem::Version
258
325
  version: '3.5'
@@ -260,9 +327,6 @@ dependencies:
260
327
  prerelease: false
261
328
  version_requirements: !ruby/object:Gem::Requirement
262
329
  requirements:
263
- - - ">="
264
- - !ruby/object:Gem::Version
265
- version: 3.5.0
266
330
  - - "~>"
267
331
  - !ruby/object:Gem::Version
268
332
  version: '3.5'
@@ -294,6 +358,20 @@ dependencies:
294
358
  - - "~>"
295
359
  - !ruby/object:Gem::Version
296
360
  version: '3.6'
361
+ - !ruby/object:Gem::Dependency
362
+ name: irb
363
+ requirement: !ruby/object:Gem::Requirement
364
+ requirements:
365
+ - - "~>"
366
+ - !ruby/object:Gem::Version
367
+ version: '1.15'
368
+ type: :development
369
+ prerelease: false
370
+ version_requirements: !ruby/object:Gem::Requirement
371
+ requirements:
372
+ - - "~>"
373
+ - !ruby/object:Gem::Version
374
+ version: '1.15'
297
375
  description: IDE tools for code completion, inline documentation, and static analysis
298
376
  email: admin@castwide.com
299
377
  executables:
@@ -301,10 +379,12 @@ executables:
301
379
  extensions: []
302
380
  extra_rdoc_files: []
303
381
  files:
382
+ - ".github/FUNDING.yml"
383
+ - ".github/workflows/plugins.yml"
304
384
  - ".github/workflows/rspec.yml"
385
+ - ".github/workflows/typecheck.yml"
305
386
  - ".gitignore"
306
387
  - ".rspec"
307
- - ".travis.yml"
308
388
  - ".yardopts"
309
389
  - CHANGELOG.md
310
390
  - Gemfile
@@ -316,12 +396,12 @@ files:
316
396
  - lib/.rubocop.yml
317
397
  - lib/solargraph.rb
318
398
  - lib/solargraph/api_map.rb
319
- - lib/solargraph/api_map/bundler_methods.rb
320
399
  - lib/solargraph/api_map/cache.rb
400
+ - lib/solargraph/api_map/index.rb
321
401
  - lib/solargraph/api_map/source_to_yard.rb
322
402
  - lib/solargraph/api_map/store.rb
323
403
  - lib/solargraph/bench.rb
324
- - lib/solargraph/compat.rb
404
+ - lib/solargraph/cache.rb
325
405
  - lib/solargraph/complex_type.rb
326
406
  - lib/solargraph/complex_type/type_methods.rb
327
407
  - lib/solargraph/complex_type/unique_type.rb
@@ -329,7 +409,7 @@ files:
329
409
  - lib/solargraph/convention/base.rb
330
410
  - lib/solargraph/convention/gemfile.rb
331
411
  - lib/solargraph/convention/gemspec.rb
332
- - lib/solargraph/convention/rspec.rb
412
+ - lib/solargraph/convention/rakefile.rb
333
413
  - lib/solargraph/converters/dd.rb
334
414
  - lib/solargraph/converters/dl.rb
335
415
  - lib/solargraph/converters/dt.rb
@@ -342,13 +422,14 @@ files:
342
422
  - lib/solargraph/diagnostics/severities.rb
343
423
  - lib/solargraph/diagnostics/type_check.rb
344
424
  - lib/solargraph/diagnostics/update_errors.rb
345
- - lib/solargraph/documentor.rb
425
+ - lib/solargraph/doc_map.rb
346
426
  - lib/solargraph/environ.rb
427
+ - lib/solargraph/equality.rb
428
+ - lib/solargraph/gem_pins.rb
347
429
  - lib/solargraph/language_server.rb
348
430
  - lib/solargraph/language_server/completion_item_kinds.rb
349
431
  - lib/solargraph/language_server/error_codes.rb
350
432
  - lib/solargraph/language_server/host.rb
351
- - lib/solargraph/language_server/host/cataloger.rb
352
433
  - lib/solargraph/language_server/host/diagnoser.rb
353
434
  - lib/solargraph/language_server/host/dispatch.rb
354
435
  - lib/solargraph/language_server/host/message_worker.rb
@@ -392,12 +473,14 @@ files:
392
473
  - lib/solargraph/language_server/message/text_document/references.rb
393
474
  - lib/solargraph/language_server/message/text_document/rename.rb
394
475
  - lib/solargraph/language_server/message/text_document/signature_help.rb
476
+ - lib/solargraph/language_server/message/text_document/type_definition.rb
395
477
  - lib/solargraph/language_server/message/workspace.rb
396
478
  - lib/solargraph/language_server/message/workspace/did_change_configuration.rb
397
479
  - lib/solargraph/language_server/message/workspace/did_change_watched_files.rb
398
480
  - lib/solargraph/language_server/message/workspace/did_change_workspace_folders.rb
399
481
  - lib/solargraph/language_server/message/workspace/workspace_symbol.rb
400
482
  - lib/solargraph/language_server/message_types.rb
483
+ - lib/solargraph/language_server/progress.rb
401
484
  - lib/solargraph/language_server/request.rb
402
485
  - lib/solargraph/language_server/symbol_kinds.rb
403
486
  - lib/solargraph/language_server/transport.rb
@@ -410,69 +493,46 @@ files:
410
493
  - lib/solargraph/page.rb
411
494
  - lib/solargraph/parser.rb
412
495
  - lib/solargraph/parser/comment_ripper.rb
413
- - lib/solargraph/parser/legacy.rb
414
- - lib/solargraph/parser/legacy/class_methods.rb
415
- - lib/solargraph/parser/legacy/flawed_builder.rb
416
- - lib/solargraph/parser/legacy/node_chainer.rb
417
- - lib/solargraph/parser/legacy/node_methods.rb
418
- - lib/solargraph/parser/legacy/node_processors.rb
419
- - lib/solargraph/parser/legacy/node_processors/alias_node.rb
420
- - lib/solargraph/parser/legacy/node_processors/args_node.rb
421
- - lib/solargraph/parser/legacy/node_processors/begin_node.rb
422
- - lib/solargraph/parser/legacy/node_processors/block_node.rb
423
- - lib/solargraph/parser/legacy/node_processors/casgn_node.rb
424
- - lib/solargraph/parser/legacy/node_processors/cvasgn_node.rb
425
- - lib/solargraph/parser/legacy/node_processors/def_node.rb
426
- - lib/solargraph/parser/legacy/node_processors/defs_node.rb
427
- - lib/solargraph/parser/legacy/node_processors/gvasgn_node.rb
428
- - lib/solargraph/parser/legacy/node_processors/ivasgn_node.rb
429
- - lib/solargraph/parser/legacy/node_processors/lvasgn_node.rb
430
- - lib/solargraph/parser/legacy/node_processors/namespace_node.rb
431
- - lib/solargraph/parser/legacy/node_processors/orasgn_node.rb
432
- - lib/solargraph/parser/legacy/node_processors/resbody_node.rb
433
- - lib/solargraph/parser/legacy/node_processors/sclass_node.rb
434
- - lib/solargraph/parser/legacy/node_processors/send_node.rb
435
- - lib/solargraph/parser/legacy/node_processors/sym_node.rb
436
496
  - lib/solargraph/parser/node_methods.rb
437
497
  - lib/solargraph/parser/node_processor.rb
438
498
  - lib/solargraph/parser/node_processor/base.rb
499
+ - lib/solargraph/parser/parser_gem.rb
500
+ - lib/solargraph/parser/parser_gem/class_methods.rb
501
+ - lib/solargraph/parser/parser_gem/flawed_builder.rb
502
+ - lib/solargraph/parser/parser_gem/node_chainer.rb
503
+ - lib/solargraph/parser/parser_gem/node_methods.rb
504
+ - lib/solargraph/parser/parser_gem/node_processors.rb
505
+ - lib/solargraph/parser/parser_gem/node_processors/alias_node.rb
506
+ - lib/solargraph/parser/parser_gem/node_processors/args_node.rb
507
+ - lib/solargraph/parser/parser_gem/node_processors/begin_node.rb
508
+ - lib/solargraph/parser/parser_gem/node_processors/block_node.rb
509
+ - lib/solargraph/parser/parser_gem/node_processors/casgn_node.rb
510
+ - lib/solargraph/parser/parser_gem/node_processors/cvasgn_node.rb
511
+ - lib/solargraph/parser/parser_gem/node_processors/def_node.rb
512
+ - lib/solargraph/parser/parser_gem/node_processors/defs_node.rb
513
+ - lib/solargraph/parser/parser_gem/node_processors/gvasgn_node.rb
514
+ - lib/solargraph/parser/parser_gem/node_processors/ivasgn_node.rb
515
+ - lib/solargraph/parser/parser_gem/node_processors/lvasgn_node.rb
516
+ - lib/solargraph/parser/parser_gem/node_processors/masgn_node.rb
517
+ - lib/solargraph/parser/parser_gem/node_processors/namespace_node.rb
518
+ - lib/solargraph/parser/parser_gem/node_processors/orasgn_node.rb
519
+ - lib/solargraph/parser/parser_gem/node_processors/resbody_node.rb
520
+ - lib/solargraph/parser/parser_gem/node_processors/sclass_node.rb
521
+ - lib/solargraph/parser/parser_gem/node_processors/send_node.rb
522
+ - lib/solargraph/parser/parser_gem/node_processors/sym_node.rb
439
523
  - lib/solargraph/parser/region.rb
440
- - lib/solargraph/parser/rubyvm.rb
441
- - lib/solargraph/parser/rubyvm/class_methods.rb
442
- - lib/solargraph/parser/rubyvm/node_chainer.rb
443
- - lib/solargraph/parser/rubyvm/node_methods.rb
444
- - lib/solargraph/parser/rubyvm/node_processors.rb
445
- - lib/solargraph/parser/rubyvm/node_processors/alias_node.rb
446
- - lib/solargraph/parser/rubyvm/node_processors/args_node.rb
447
- - lib/solargraph/parser/rubyvm/node_processors/begin_node.rb
448
- - lib/solargraph/parser/rubyvm/node_processors/block_node.rb
449
- - lib/solargraph/parser/rubyvm/node_processors/casgn_node.rb
450
- - lib/solargraph/parser/rubyvm/node_processors/cvasgn_node.rb
451
- - lib/solargraph/parser/rubyvm/node_processors/def_node.rb
452
- - lib/solargraph/parser/rubyvm/node_processors/defs_node.rb
453
- - lib/solargraph/parser/rubyvm/node_processors/gvasgn_node.rb
454
- - lib/solargraph/parser/rubyvm/node_processors/ivasgn_node.rb
455
- - lib/solargraph/parser/rubyvm/node_processors/kw_arg_node.rb
456
- - lib/solargraph/parser/rubyvm/node_processors/lit_node.rb
457
- - lib/solargraph/parser/rubyvm/node_processors/lvasgn_node.rb
458
- - lib/solargraph/parser/rubyvm/node_processors/namespace_node.rb
459
- - lib/solargraph/parser/rubyvm/node_processors/opt_arg_node.rb
460
- - lib/solargraph/parser/rubyvm/node_processors/orasgn_node.rb
461
- - lib/solargraph/parser/rubyvm/node_processors/resbody_node.rb
462
- - lib/solargraph/parser/rubyvm/node_processors/sclass_node.rb
463
- - lib/solargraph/parser/rubyvm/node_processors/scope_node.rb
464
- - lib/solargraph/parser/rubyvm/node_processors/send_node.rb
465
- - lib/solargraph/parser/rubyvm/node_processors/sym_node.rb
466
524
  - lib/solargraph/parser/snippet.rb
467
525
  - lib/solargraph/pin.rb
468
526
  - lib/solargraph/pin/base.rb
469
527
  - lib/solargraph/pin/base_variable.rb
470
528
  - lib/solargraph/pin/block.rb
529
+ - lib/solargraph/pin/callable.rb
471
530
  - lib/solargraph/pin/class_variable.rb
472
531
  - lib/solargraph/pin/closure.rb
473
532
  - lib/solargraph/pin/common.rb
474
533
  - lib/solargraph/pin/constant.rb
475
534
  - lib/solargraph/pin/conversions.rb
535
+ - lib/solargraph/pin/delegated_method.rb
476
536
  - lib/solargraph/pin/documenting.rb
477
537
  - lib/solargraph/pin/duck_method.rb
478
538
  - lib/solargraph/pin/global_variable.rb
@@ -493,14 +553,22 @@ files:
493
553
  - lib/solargraph/pin/reference/require.rb
494
554
  - lib/solargraph/pin/reference/superclass.rb
495
555
  - lib/solargraph/pin/search.rb
556
+ - lib/solargraph/pin/signature.rb
496
557
  - lib/solargraph/pin/singleton.rb
497
558
  - lib/solargraph/pin/symbol.rb
498
559
  - lib/solargraph/position.rb
499
560
  - lib/solargraph/range.rb
561
+ - lib/solargraph/rbs_map.rb
562
+ - lib/solargraph/rbs_map/conversions.rb
563
+ - lib/solargraph/rbs_map/core_fills.rb
564
+ - lib/solargraph/rbs_map/core_map.rb
565
+ - lib/solargraph/rbs_map/stdlib_map.rb
500
566
  - lib/solargraph/server_methods.rb
501
567
  - lib/solargraph/shell.rb
502
568
  - lib/solargraph/source.rb
503
569
  - lib/solargraph/source/chain.rb
570
+ - lib/solargraph/source/chain/array.rb
571
+ - lib/solargraph/source/chain/block_symbol.rb
504
572
  - lib/solargraph/source/chain/block_variable.rb
505
573
  - lib/solargraph/source/chain/call.rb
506
574
  - lib/solargraph/source/chain/class_variable.rb
@@ -508,6 +576,7 @@ files:
508
576
  - lib/solargraph/source/chain/global_variable.rb
509
577
  - lib/solargraph/source/chain/hash.rb
510
578
  - lib/solargraph/source/chain/head.rb
579
+ - lib/solargraph/source/chain/if.rb
511
580
  - lib/solargraph/source/chain/instance_variable.rb
512
581
  - lib/solargraph/source/chain/link.rb
513
582
  - lib/solargraph/source/chain/literal.rb
@@ -523,6 +592,7 @@ files:
523
592
  - lib/solargraph/source_map.rb
524
593
  - lib/solargraph/source_map/clip.rb
525
594
  - lib/solargraph/source_map/completion.rb
595
+ - lib/solargraph/source_map/data.rb
526
596
  - lib/solargraph/source_map/mapper.rb
527
597
  - lib/solargraph/type_checker.rb
528
598
  - lib/solargraph/type_checker/checks.rb
@@ -541,25 +611,24 @@ files:
541
611
  - lib/solargraph/workspace/config.rb
542
612
  - lib/solargraph/yard_map.rb
543
613
  - lib/solargraph/yard_map/cache.rb
544
- - lib/solargraph/yard_map/core_docs.rb
545
- - lib/solargraph/yard_map/core_fills.rb
546
- - lib/solargraph/yard_map/core_gen.rb
547
614
  - lib/solargraph/yard_map/helpers.rb
548
615
  - lib/solargraph/yard_map/mapper.rb
549
616
  - lib/solargraph/yard_map/mapper/to_constant.rb
550
617
  - lib/solargraph/yard_map/mapper/to_method.rb
551
618
  - lib/solargraph/yard_map/mapper/to_namespace.rb
552
- - lib/solargraph/yard_map/rdoc_to_yard.rb
553
- - lib/solargraph/yard_map/stdlib_fills.rb
554
619
  - lib/solargraph/yard_map/to_method.rb
555
- - lib/yard-solargraph.rb
620
+ - lib/solargraph/yard_tags.rb
621
+ - lib/solargraph/yardoc.rb
556
622
  - solargraph.gemspec
557
- - yardoc/2.2.2.tar.gz
558
- homepage: http://solargraph.org
623
+ homepage: https://solargraph.org
559
624
  licenses:
560
625
  - MIT
561
- metadata: {}
562
- post_install_message:
626
+ metadata:
627
+ funding_uri: https://www.patreon.com/castwide
628
+ bug_tracker_uri: https://github.com/castwide/solargraph/issues
629
+ changelog_uri: https://github.com/castwide/solargraph/blob/master/CHANGELOG.md
630
+ source_code_uri: https://github.com/castwide/solargraph
631
+ post_install_message:
563
632
  rdoc_options: []
564
633
  require_paths:
565
634
  - lib
@@ -567,15 +636,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
567
636
  requirements:
568
637
  - - ">="
569
638
  - !ruby/object:Gem::Version
570
- version: '2.4'
639
+ version: '3.0'
571
640
  required_rubygems_version: !ruby/object:Gem::Requirement
572
641
  requirements:
573
642
  - - ">="
574
643
  - !ruby/object:Gem::Version
575
644
  version: '0'
576
645
  requirements: []
577
- rubygems_version: 3.0.9
578
- signing_key:
646
+ rubygems_version: 3.5.22
647
+ signing_key:
579
648
  specification_version: 4
580
649
  summary: A Ruby language server
581
650
  test_files: []
data/.travis.yml DELETED
@@ -1,19 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.4
4
- - 2.5
5
- - 2.6
6
- - 2.7
7
- - 3.0
8
- - jruby-head
9
- matrix:
10
- include:
11
- - rvm: 2.7
12
- os: osx
13
- allow_failures:
14
- - rvm: jruby-head
15
- before_install:
16
- - gem update --system
17
- - gem install bundler
18
- before_script: yard gems
19
- script: rspec
@@ -1,22 +0,0 @@
1
- require 'bundler'
2
- require 'shellwords'
3
-
4
- module Solargraph
5
- class ApiMap
6
- module BundlerMethods
7
- module_function
8
-
9
- # @param directory [String]
10
- # @return [Hash]
11
- def require_from_bundle directory
12
- begin
13
- Solargraph.logger.info "Loading gems for bundler/require"
14
- Documentor.specs_from_bundle(directory)
15
- rescue BundleNotFoundError => e
16
- Solargraph.logger.warn e.message
17
- {}
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,37 +0,0 @@
1
- unless Hash.method_defined?(:transform_keys)
2
- class Hash
3
- def transform_keys &block
4
- result = {}
5
- each_pair do |k, v|
6
- result[block.call(k)] = v
7
- end
8
- result
9
- end
10
- end
11
- end
12
-
13
- unless Hash.method_defined?(:transform_values)
14
- class Hash
15
- def transform_values &block
16
- result = {}
17
- each_pair do |k, v|
18
- result[k] = block.call(v)
19
- end
20
- result
21
- end
22
- end
23
- end
24
-
25
- unless Array.method_defined?(:sum)
26
- class Array
27
- def sum &block
28
- inject(0) do |s, x|
29
- if block
30
- s + block.call(x)
31
- else
32
- s + x
33
- end
34
- end
35
- end
36
- end
37
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Solargraph
4
- module Convention
5
- class Rspec < Base
6
- def local source_map
7
- return EMPTY_ENVIRON unless File.basename(source_map.filename) =~ /_spec\.rb$/
8
- @environ ||= Environ.new(
9
- requires: ['rspec'],
10
- domains: ['RSpec::Matchers', 'RSpec::ExpectationGroups'],
11
- pins: [
12
- # This override is necessary due to an erroneous @return tag in
13
- # rspec's YARD documentation.
14
- # @todo The return types have been fixed (https://github.com/rspec/rspec-expectations/pull/1121)
15
- Solargraph::Pin::Reference::Override.method_return('RSpec::Matchers#expect', 'RSpec::Expectations::ExpectationTarget')
16
- ].concat(extras)
17
- )
18
- end
19
-
20
- private
21
-
22
- def extras
23
- @@extras ||= SourceMap.load_string(%(
24
- def describe(*args); end
25
- def it(*args); end
26
- )).pins
27
- end
28
- end
29
- end
30
- end