Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
241 commits
Select commit Hold shift + click to select a range
8b11075
Add 'solargraph method_pin' command for debugging
apiology Jul 13, 2025
6fab42e
Merge remote-tracking branch 'origin/master' into method_pin
apiology Jul 13, 2025
bf61295
RuboCop and Solargraph fixes
apiology Jul 14, 2025
8b8c88b
Merge remote-tracking branch 'origin/master' into method_pin
apiology Jul 14, 2025
fdd3810
Linting fix
apiology Aug 4, 2025
30cdfc8
Add spec
apiology Aug 4, 2025
a30d790
Fix spec
apiology Aug 4, 2025
20dbf8e
Merge branch 'master' into method_pin
apiology Aug 19, 2025
e4afaad
Allow newer RBS gem versions, exclude incompatible ones (#995)
apiology Aug 19, 2025
a0a7878
Look for external requires before cataloging bench (#1021)
apiology Aug 19, 2025
0e86b88
Remove Library#folding_ranges (#904)
castwide Aug 19, 2025
c90f016
Complain in strong type-checking if an @sg-ignore line is not needed …
apiology Aug 19, 2025
8c7a5b8
Document a log level env variable (#894)
apiology Aug 21, 2025
fba485e
Fix hole in type checking evaluation (#1009)
apiology Aug 24, 2025
f61b1b6
Improve typechecking error message (#1014)
apiology Aug 24, 2025
9d4c711
Internal strict type-checking fixes (#1013)
apiology Aug 24, 2025
3bcbf85
Reproduce and fix a ||= (or-asgn) evaluation issue (#1017)
apiology Aug 24, 2025
25557b4
Define closure for Pin::Symbol, for completeness (#1027)
apiology Aug 24, 2025
32565d4
Fix 'all!' config to reporters (#1018)
apiology Aug 24, 2025
3946cc4
Fix DocMap.all_rbs_collection_gems_in_memory return type (#1037)
castwide Aug 24, 2025
43cacca
Fix RuboCop linting errors in regular expressions (#1038)
castwide Aug 24, 2025
d3bdfea
Resolve class aliases via Constant pins (#1029)
apiology Aug 24, 2025
4a10b44
Speed-up LSP completion response times (#1035)
lekemula Aug 24, 2025
7a633b1
Merge remote-tracking branch 'origin/master' into method_pin
apiology Aug 27, 2025
d1e6b12
RuboCop todo update
apiology Aug 27, 2025
5b612dd
Try rbs collection update before specs
apiology Aug 27, 2025
f2291f4
RuboCop fixes
apiology Aug 27, 2025
be46aa3
Add @sg-ignores
apiology Aug 27, 2025
0927309
Fix typo
apiology Aug 27, 2025
7899550
Exclude problematic combinations on Ruby head
apiology Aug 27, 2025
d5d6c5f
Fix indentation
apiology Aug 27, 2025
2c6cacd
method_pin -> pin, hide command
apiology Aug 27, 2025
56636ae
Fix type
apiology Aug 27, 2025
6acfa0c
RuboCop todo file stability
apiology Aug 30, 2025
14be6bf
Merge remote-tracking branch 'origin/master' into rubocop_stability
apiology Aug 30, 2025
61260f3
Fix merge issue
apiology Aug 30, 2025
f623a73
Pull in overcommit fix
apiology Sep 1, 2025
a8b678b
Add spec
apiology Sep 1, 2025
9f7fe59
Add --references flag (superclass for now)
apiology Sep 2, 2025
2f0ff82
Merge remote-tracking branch 'origin/master' into method_pin
apiology Sep 2, 2025
79e8cd9
Add another @sg-ignore
apiology Sep 2, 2025
da205a3
Catch up with .rubocop_todo.yml
apiology Sep 2, 2025
4c486ed
Add another @sg-ignore
apiology Sep 2, 2025
200e7e4
Tolerate case statement in specs
apiology Sep 2, 2025
5b6a4af
Extract gemspec, bundle and dependency management into its own class
apiology Sep 4, 2025
74e1baf
Add @sg-ignore
apiology Sep 4, 2025
ef2a81f
Merge branch 'rubocop_stability' into improve_gemspecs_logic
apiology Sep 4, 2025
947d5b9
Update rubocop todo file
apiology Sep 4, 2025
c1e4c8d
Add some new specs
apiology Sep 5, 2025
f32bb17
Convince GHA to run on branch of branch
apiology Sep 5, 2025
b1a736d
Convince GHA to run on branch of branch
apiology Sep 5, 2025
87cb546
Convince GHA to run on branch of branch
apiology Sep 5, 2025
99c8b34
Convince GHA to run on branch of branch
apiology Sep 5, 2025
b9a16c4
Convince GHA to run on branch of branch
apiology Sep 5, 2025
76e37a5
Mark another new spec as pending
apiology Sep 5, 2025
e08b61b
Mark another new spec as pending
apiology Sep 5, 2025
33b9cb1
Show missing coverage
apiology Sep 5, 2025
33a1857
Handle some missed coverage areas
apiology Sep 5, 2025
7c21510
Clean up RSpec/MessageSpies rubocop violations
apiology Sep 5, 2025
82bdb21
Merge branch 'message_spies_linting' into extract_gemspecs_logic_from…
apiology Sep 5, 2025
5afe71b
Fix up allow syntax
apiology Sep 5, 2025
2e3e9b7
Merge branch 'message_spies_linting' into extract_gemspecs_logic_from…
apiology Sep 5, 2025
aaa7573
Allow solargraph version to be overidden for test purposes
apiology Sep 5, 2025
b16594d
Merge branch 'rubocop_stability' into solargraph_force_version
apiology Sep 5, 2025
7f2d490
Merge branch 'rubocop_stability' into message_spies_linting
apiology Sep 5, 2025
b7505f7
Merge branch 'message_spies_linting' into extract_gemspecs_logic_from…
apiology Sep 5, 2025
c4f9246
Exercise log statements too
apiology Sep 5, 2025
50f6ecf
Merge branch 'solargraph_force_version' into extract_gemspecs_logic_f…
apiology Sep 5, 2025
5433479
Better versioning in example
apiology Sep 5, 2025
f44e42b
Merge branch 'solargraph_force_version' into extract_gemspecs_logic_f…
apiology Sep 5, 2025
4f68156
Merge branch 'overcommit_yardoc_bundle_fix' into extract_gemspecs_log…
apiology Sep 5, 2025
e38a79a
Backport in some specs
apiology Sep 5, 2025
e44c941
Merge remote-tracking branch 'origin/master' into extract_gemspecs_lo…
apiology Sep 6, 2025
8edc773
Merge remote-tracking branch 'origin/master' into rubocop_stability
apiology Sep 6, 2025
bb0f607
Rerun rubocop todo
apiology Sep 6, 2025
65a0140
Merge remote-tracking branch 'origin/master' into message_spies_linting
apiology Sep 6, 2025
0ede18a
Merge branch 'rubocop_stability' into method_pin
apiology Sep 7, 2025
c0becdd
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Sep 7, 2025
2548d6d
Drop xcontext
apiology Sep 7, 2025
b14029d
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Sep 7, 2025
e51777b
Rename method and add comments
apiology Sep 7, 2025
c6d88e4
Merge branch 'master' into extract_gemspecs_logic_from_doc_map
apiology Sep 7, 2025
837d7f6
Force build
apiology Sep 7, 2025
a4208e7
Restore
apiology Sep 7, 2025
f08b76a
Merge remote-tracking branch 'origin/master' into fix_solargraph_rspe…
apiology Sep 7, 2025
b66f2ac
install -> update with rbs collection
apiology Sep 7, 2025
a09a9af
Try Ruby 3.2
apiology Sep 7, 2025
6fc8feb
Update solargraph
apiology Sep 7, 2025
388c170
Re-add bundle install
apiology Sep 7, 2025
f80b73a
Drop MATRIX_SOLARGRAPH_VERSION
apiology Sep 7, 2025
ce2bee6
Drop debugging changes
apiology Sep 7, 2025
c261704
Merge remote-tracking branch 'origin/master' into rubocop_stability
apiology Sep 7, 2025
dbe9a3e
Update expectations from master branch
apiology Sep 7, 2025
620fa00
Merge branch 'fix_solargraph_rspec_check' into rubocop_stability
apiology Sep 7, 2025
10bfe03
Merge branch 'rubocop_stability' into extract_gemspecs_logic_from_doc…
apiology Sep 7, 2025
b0ace93
Merge branch 'rubocop_stability' into method_pin
apiology Sep 7, 2025
824d6c8
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Sep 8, 2025
6bfb63c
Merge branch 'rubocop_stability' into message_spies_linting
apiology Sep 8, 2025
bcd5fab
Factor out a find_gem() method
apiology Sep 8, 2025
c32c86c
Point to branch immediately upstream
apiology Sep 10, 2025
bd3ce0b
Move find_gem implementation, add more specs
apiology Sep 10, 2025
adb34e5
Use find_gem in another location
apiology Sep 11, 2025
97a3ceb
Fix workspace calls in shell.rb
apiology Sep 11, 2025
4c181ec
Refactor doc_map_spec
apiology Sep 11, 2025
7762471
Enable xit'ed spec
apiology Sep 11, 2025
7a88bd0
Add assert
apiology Sep 11, 2025
436f970
Add failing spec
apiology Sep 11, 2025
91805ea
Merge remote-tracking branch 'origin/master' into extract_gemspecs_lo…
apiology Sep 11, 2025
febe896
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Sep 11, 2025
70c60a4
Use xit to exclude spec that fails in some environment combinations
apiology Sep 11, 2025
0ae82ca
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Sep 11, 2025
602d803
Add another regression spec
apiology Sep 11, 2025
e407fc1
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Sep 11, 2025
569bf4f
Improve assertion
apiology Sep 11, 2025
396c114
Drop assert, add gem lookup workaround for conventions, enable spec
apiology Sep 11, 2025
6e03bc8
Handle bad gemdir from gemspec object
apiology Sep 11, 2025
62d7d08
Linting fix
apiology Sep 11, 2025
cc66bce
Merge branch 'handle_gemspec_bad_gemdir' into improve_gemspecs_logic
apiology Sep 11, 2025
182fccc
Handle a solargraph-rails case
apiology Sep 11, 2025
d85fc65
Reenable specs
apiology Sep 11, 2025
73f98b9
Add a regression spec
apiology Sep 11, 2025
cb59ba6
Drop assert
apiology Sep 11, 2025
05b36ec
Import spec to cover shell.rb changes
apiology Sep 11, 2025
1b12d27
Merge branch 'master' into rubocop_stability
apiology Sep 13, 2025
db725f7
Update rubocop todo
apiology Sep 13, 2025
76bc5aa
Merge branch 'master' into extract_gemspecs_logic_from_doc_map
apiology Sep 13, 2025
267b685
Merge branch 'master' into method_pin
apiology Sep 13, 2025
0e00195
Merge branch 'rubocop_stability' into method_pin
apiology Sep 13, 2025
b6d86ec
Fix merge failure
apiology Sep 13, 2025
939ca1c
Merge branch 'rubocop_stability' into extract_gemspecs_logic_from_doc…
apiology Sep 13, 2025
a9e60ca
Merge branch 'master' into message_spies_linting
apiology Sep 13, 2025
3177a89
Merge branch 'rubocop_stability' into message_spies_linting
apiology Sep 13, 2025
8d85ac5
Merge branch 'master' into extract_gemspecs_logic_from_doc_map
apiology Sep 16, 2025
9d4ba44
Allow more valid method pin paths
apiology Sep 26, 2025
2712e66
RuboCop fix
apiology Sep 26, 2025
7bc2092
Linting
apiology Sep 26, 2025
1416e1d
Reduce number of build jobs for faster CI feedback
apiology Sep 28, 2025
f2abb73
Fix punctuation
apiology Sep 28, 2025
d69cd60
Merge branch 'master' into method_pin
apiology Sep 30, 2025
879eac3
Merge branch 'master' into reduce_num_of_buid_jobs
apiology Sep 30, 2025
7e3aa9d
Merge remote-tracking branch 'origin/master' into extract_gemspecs_lo…
apiology Sep 30, 2025
94de7b5
Ratchet RuboCop
apiology Sep 30, 2025
8ddce85
Merge remote-tracking branch 'origin/master' into extract_gemspecs_lo…
apiology Sep 30, 2025
3ab765d
Drop unneeded @sg-ignores
apiology Sep 30, 2025
053de42
Merge remote-tracking branch 'origin/master' into method_pin
apiology Sep 30, 2025
ed357cd
Merge remote-tracking branch 'origin/master' into message_spies_linting
apiology Sep 30, 2025
d486e64
Trim more matrix entries to make room for solargraph-rspec specs
apiology Oct 1, 2025
56342d4
Fix version number
apiology Oct 1, 2025
ac05669
Document method
apiology Oct 5, 2025
84fb049
Drop untested change
apiology Oct 5, 2025
4fb2b2c
Fix typo in existing code
apiology Oct 5, 2025
e25702f
Back out spec
apiology Oct 6, 2025
0aefc35
Add more solargraph-rspec requires
apiology Oct 6, 2025
358ff37
Fix syntax
apiology Oct 6, 2025
ada4c12
Use bundle information to resolve gemspecs
apiology Oct 6, 2025
b2e7252
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Oct 6, 2025
2c7079c
Handle LazySpecification issue
apiology Oct 6, 2025
5a982ad
Drop @sg-ignore
apiology Oct 6, 2025
57af0eb
Handle LazySpecification issue
apiology Oct 6, 2025
e1db9a8
Handle LazySpecification issue
apiology Oct 6, 2025
719f441
Adjust specs
apiology Oct 6, 2025
b2a562a
Add space for better future merge
apiology Oct 8, 2025
6e83399
Revert
apiology Oct 8, 2025
71ac7b5
Add space for better future merge
apiology Oct 8, 2025
9d7ed97
Add space for better future merge
apiology Oct 8, 2025
66870f0
Add more space for future merges
apiology Oct 8, 2025
7365c35
Simplify code with find_gem, satisfy rubocop
apiology Oct 8, 2025
0c751de
Merge branch 'reduce_num_of_buid_jobs' into improve_gemspecs_logic
apiology Oct 8, 2025
ba1400c
Don't rely on gemspec being hashable
apiology Oct 8, 2025
fa96091
Remove unused methods
apiology Oct 8, 2025
7d8b5a3
Add back stdlib_dependencies() for use in future merge
apiology Oct 8, 2025
149962d
Add back stdlib_dependencies() for use in future merge
apiology Oct 8, 2025
5ea669e
Remove temporary changes
apiology Oct 9, 2025
6421637
Remove temporary changes
apiology Oct 9, 2025
d45652b
Remove temporary changes
apiology Oct 9, 2025
f3ca90c
Remove temporary changes
apiology Oct 9, 2025
d6aacef
Remove temporary changes
apiology Oct 9, 2025
ed23813
Reproduce solargraph-rspec rspec failure
apiology Nov 3, 2025
c6dbe4d
Trigger build
apiology Nov 15, 2025
9d26863
Fix new bundler issue
apiology Nov 15, 2025
87ec9b3
Debug
apiology Nov 15, 2025
6a14bd7
Turn off warning diagnostics in CLI
apiology Nov 15, 2025
5348f70
Merge branch 'method_pin' into solargraph_rspec_failure
apiology Nov 15, 2025
7e7604b
Debug
apiology Nov 15, 2025
91d3cd4
Fix pin merging bug
apiology Nov 15, 2025
652fcd2
Add @sg-ignore
apiology Nov 15, 2025
76c6d7f
Add fix that this PR revealed on future branch
apiology Dec 1, 2025
892630c
Add fix that this PR revealed on future branch
apiology Dec 1, 2025
dd016bf
Merge branch 'solargraph_rspec_failure' into extract_gemspecs_logic_f…
apiology Dec 1, 2025
f879eb2
Add @sg-ignore
apiology Dec 1, 2025
5600ee1
Remove @sg-ignores
apiology Dec 1, 2025
939786e
Remove @sg-ignores
apiology Dec 1, 2025
d87f222
Use consistent Ruby versions for typechecking
apiology Dec 1, 2025
fb6aabe
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Dec 1, 2025
aa40006
Bring in fixes for strong typechecking issues
apiology Dec 2, 2025
ae98b2b
Merge remote-tracking branch 'origin/master' into message_spies_linting
apiology Dec 31, 2025
dc37257
Merge remote-tracking branch 'origin/master' into extract_gemspecs_lo…
apiology Dec 31, 2025
95d0280
Fix merge
apiology Dec 31, 2025
a497e42
Merge remote-tracking branch 'origin/master' into reduce_num_of_buid_…
apiology Dec 31, 2025
a61188c
Merge remote-tracking branch 'origin/master' into improve_gemspecs_logic
apiology Dec 31, 2025
4663e7d
Fix some @sg-ignores
apiology Dec 31, 2025
a48c40a
Fix merge
apiology Dec 31, 2025
2b753e8
Bump RBS versions in rspec test
apiology Dec 31, 2025
e182a53
Fix version
apiology Dec 31, 2025
34cdf78
Fix version matrix
apiology Dec 31, 2025
851d142
Fix version matrix
apiology Dec 31, 2025
e2d27c9
Fix version matrix
apiology Dec 31, 2025
8df808a
Fix version matrix
apiology Dec 31, 2025
9974481
Fix version matrix
apiology Dec 31, 2025
56e2535
Exclude another
apiology Dec 31, 2025
d9e4936
Exclude another
apiology Dec 31, 2025
7514302
Add version, fix doc
apiology Dec 31, 2025
7957a93
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Jan 1, 2026
c6cabdc
Merge branch 'message_spies_linting' into improve_gemspecs_logic
apiology Jan 1, 2026
e5dd07b
Merge remote-tracking branch 'origin/master' into improve_gemspecs_logic
apiology Jan 1, 2026
8282485
Merge branch 'reduce_num_of_buid_jobs' into extract_gemspecs_logic_fr…
apiology Jan 1, 2026
a30c561
Merge remote-tracking branch 'origin/master' into extract_gemspecs_lo…
apiology Jan 1, 2026
51f443f
Merge branch 'reduce_num_of_buid_jobs' into improve_gemspecs_logic
apiology Jan 1, 2026
fe3f4f2
Merge remote-tracking branch 'origin/master' into improve_gemspecs_logic
apiology Jan 2, 2026
1842129
Merge branch 'master' into extract_gemspecs_logic_from_doc_map
apiology Jan 2, 2026
0d6b68b
Update rubocop todo
apiology Jan 2, 2026
d5d619e
Revert change
apiology Jan 3, 2026
0ac3cb4
Add Ruby 4.0 jobs
apiology Jan 4, 2026
3e3e4d9
Exclude another combo
apiology Jan 4, 2026
c7eefc2
Exclude another combo
apiology Jan 4, 2026
0e706d7
Merge remote-tracking branch 'origin/master' into reduce_num_of_buid_…
apiology Jan 4, 2026
d0b6d40
Merge branch 'reduce_num_of_buid_jobs' into extract_gemspecs_logic_fr…
apiology Jan 5, 2026
caa81d4
Drop dead code
apiology Jan 5, 2026
71931c5
Merge branch 'extract_gemspecs_logic_from_doc_map' of apiology.github…
apiology Jan 5, 2026
6e9fbfc
Merge branch 'extract_gemspecs_logic_from_doc_map' into improve_gemsp…
apiology Jan 5, 2026
3c947d2
Revert doc
apiology Jan 7, 2026
19b28ad
Fix spelling
apiology Jan 7, 2026
6b5d2c3
Fix merge issue
apiology Jan 7, 2026
4f4b6a0
Add error handling
apiology Jan 11, 2026
458efed
Fix some types based on future branch feedback
apiology Jan 12, 2026
45e5eca
Provide Gem::Specification to outside interface
apiology Jan 12, 2026
2d5456a
Provide Gem::Specification to outside interface
apiology Jan 12, 2026
4ce641d
Use #to_spec
apiology Jan 12, 2026
aa99710
Provide Gem::Specification to outside interface
apiology Jan 12, 2026
d9188e7
Fix typechecking error
apiology Jan 12, 2026
8eea21f
Use consistent bundler versions
apiology Jan 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# current git branch
SOLARGRAPH_FORCE_VERSION=0.0.1.dev-$(git rev-parse --abbrev-ref HEAD | tr -d '\n' | tr -d '/' | tr -d '-'| tr -d '_')
export SOLARGRAPH_FORCE_VERSION
5 changes: 2 additions & 3 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
branches: [ master ]
push:
branches:
- 'main'
- 'master'
tags:
- 'v*'

Expand All @@ -31,9 +31,8 @@ jobs:
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.4
bundler: latest
bundler-cache: true
cache-version: 2025-06-06
cache-version: 2026-01-11

- name: Update to best available RBS
run: |
Expand Down
47 changes: 39 additions & 8 deletions .github/workflows/rspec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,20 +21,51 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4', '4.0']
rbs-version: ['3.6.1', '3.9.5', '4.0.0.dev.4']
ruby-version: ['3.0', '3.1', '3.2', '3.3', '3.4', '4.0', 'head']
rbs-version: ['3.6.1', '3.8.1', '3.9.5', '3.10.0', '4.0.0.dev.4']
# Ruby 3.0 doesn't work with RBS 3.9.4 or 4.0.0.dev.4
exclude:
# only include the 3.0 variants we include later
- ruby-version: '3.0'
rbs-version: '3.9.5'
- ruby-version: '3.0'
rbs-version: '4.0.0.dev.4'
# Missing require in 'rbs collection update' - hopefully
# fixed in next RBS release
# only include the 3.1 variants we include later
- ruby-version: '3.1'
# only include the 3.2 variants we include later
- ruby-version: '3.2'
# only include the 3.3 variants we include later
- ruby-version: '3.3'
# only include the 3.4 variants we include later
- ruby-version: '3.4'
# only include the 4.0 variants we include later
- ruby-version: '4.0'
# Don't exclude 'head' - let's test all RBS versions we
# can there.
#
#
# Just exclude some odd-ball compatibility issues we can't
# work around:
#
# https://github.com/castwide/solargraph/actions/runs/20627923548/job/59241444380?pr=1102
- ruby-version: 'head'
rbs-version: '3.6.1'
- ruby-version: '4.0'
- ruby-version: 'head'
rbs-version: '3.8.1'
- ruby-version: 'head'
rbs-version: '4.0.0.dev.4'
include:
- ruby-version: '3.0'
rbs-version: '3.6.1'
- ruby-version: '3.1'
rbs-version: '3.6.1'
- ruby-version: '3.2'
rbs-version: '3.8.1'
- ruby-version: '3.3'
rbs-version: '3.9.5'
- ruby-version: '3.3'
rbs-version: '3.10.0'
- ruby-version: '3.4'
rbs-version: '4.0.0.dev.4'
- ruby-version: '4.0'
rbs-version: '3.10.0'
steps:
- uses: actions/checkout@v3
- name: Set up Ruby
Expand Down
6 changes: 1 addition & 5 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ Layout/ElseAlignment:
# Configuration parameters: EmptyLineBetweenMethodDefs, EmptyLineBetweenClassDefs, EmptyLineBetweenModuleDefs, DefLikeMacros, AllowAdjacentOneLineDefs, NumberOfEmptyLines.
Layout/EmptyLineBetweenDefs:
Exclude:
- 'lib/solargraph/doc_map.rb'
- 'lib/solargraph/language_server/message/initialize.rb'
- 'lib/solargraph/pin/delegated_method.rb'

Expand All @@ -107,7 +106,6 @@ Layout/EndOfLine:
Exclude:
- 'Gemfile'
- 'Rakefile'
- 'lib/solargraph/source/encoding_fixes.rb'
- 'solargraph.gemspec'

# This cop supports safe autocorrection (--autocorrect).
Expand Down Expand Up @@ -576,7 +574,6 @@ RSpec/BeforeAfterAll:
- '**/spec/rails_helper.rb'
- '**/spec/support/**/*.rb'
- 'spec/api_map_spec.rb'
- 'spec/doc_map_spec.rb'
- 'spec/language_server/host/dispatch_spec.rb'
- 'spec/language_server/protocol_spec.rb'

Expand Down Expand Up @@ -1144,7 +1141,7 @@ Style/SafeNavigation:
# Configuration parameters: Max.
Style/SafeNavigationChainLength:
Exclude:
- 'lib/solargraph/doc_map.rb'
- 'lib/solargraph/workspace/gemspecs.rb'

# This cop supports unsafe autocorrection (--autocorrect-all).
Style/SlicingWithRange:
Expand Down Expand Up @@ -1175,7 +1172,6 @@ Style/StringLiterals:
# This cop supports safe autocorrection (--autocorrect).
Style/SuperArguments:
Exclude:
- 'lib/solargraph/pin/base_variable.rb'
- 'lib/solargraph/pin/callable.rb'
- 'lib/solargraph/pin/method.rb'
- 'lib/solargraph/pin/signature.rb'
Expand Down
19 changes: 12 additions & 7 deletions lib/solargraph/api_map.rb
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ def catalog bench
@doc_map&.uncached_rbs_collection_gemspecs&.any? ||
@doc_map&.rbs_collection_path != bench.workspace.rbs_collection_path
if recreate_docmap
@doc_map = DocMap.new(unresolved_requires, [], bench.workspace) # @todo Implement gem preferences
@doc_map = DocMap.new(unresolved_requires, bench.workspace) # @todo Implement gem preferences
@unresolved_requires = @doc_map.unresolved_requires
end
@cache.clear if store.update(@@core_map.pins, @doc_map.pins, conventions_environ.pins, iced_pins, live_pins)
Expand All @@ -119,12 +119,12 @@ def catalog bench

# @return [DocMap]
def doc_map
@doc_map ||= DocMap.new([], [])
@doc_map ||= DocMap.new([], Workspace.new('.'))
end

# @return [::Array<Gem::Specification>]
def uncached_gemspecs
@doc_map&.uncached_gemspecs || []
doc_map.uncached_gemspecs || []
end

# @return [::Array<Gem::Specification>]
Expand Down Expand Up @@ -195,15 +195,15 @@ def self.load directory
# @param out [IO, nil]
# @return [void]
def cache_all!(out)
@doc_map.cache_all!(out)
doc_map.cache_all!(out)
end

# @param gemspec [Gem::Specification]
# @param rebuild [Boolean]
# @param out [IO, nil]
# @return [void]
def cache_gem(gemspec, rebuild: false, out: nil)
@doc_map.cache(gemspec, rebuild: rebuild, out: out)
doc_map.cache(gemspec, rebuild: rebuild, out: out)
end

class << self
Expand Down Expand Up @@ -676,6 +676,11 @@ def resolve_method_aliases pins, visibility = [:public, :private, :protected]
GemPins.combine_method_pins_by_path(with_resolved_aliases)
end

# @return [Workspace]
def workspace
doc_map.workspace
end

# @param fq_reference_tag [String] A fully qualified whose method should be pulled in
# @param namespace_pin [Pin::Base] Namespace pin for the rooted_type
# parameter - used to pull generics information
Expand Down Expand Up @@ -927,7 +932,7 @@ def erase_generics(namespace_pin, rooted_type, pins)

# @param namespace_pin [Pin::Namespace]
# @param rooted_type [ComplexType]
def should_erase_generics_when_done?(namespace_pin, rooted_type)
def should_erase_generics_when_done? namespace_pin, rooted_type
has_generics?(namespace_pin) && !can_resolve_generics?(namespace_pin, rooted_type)
end

Expand All @@ -938,7 +943,7 @@ def has_generics?(namespace_pin)

# @param namespace_pin [Pin::Namespace]
# @param rooted_type [ComplexType]
def can_resolve_generics?(namespace_pin, rooted_type)
def can_resolve_generics? namespace_pin, rooted_type
has_generics?(namespace_pin) && !rooted_type.all_params.empty?
end
end
Expand Down
Loading
Loading