solargraph 0.55.5 → 0.56.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/lib/solargraph/doc_map.rb +15 -4
- data/lib/solargraph/library.rb +1 -1
- data/lib/solargraph/shell.rb +6 -4
- data/lib/solargraph/version.rb +1 -1
- data/lib/solargraph/yardoc.rb +5 -0
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6f8c351394fab745041193e5d33cd582f0131e6d0f2d30f210767bd273376f24
|
4
|
+
data.tar.gz: 9d7a3c46740bd9fa040190d00f0e17cab638bde681da5998337dd41e6a924ff6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0fefbe369014891f339463c19a198ab0b9c1d918fb70662b496d90f79871e7ab03d3b4e7bf853fee19f7bbd467817690b29e506ca340518156667e986685c92e
|
7
|
+
data.tar.gz: e92af09e57129e47e6c4b685642460c514bc7c26a015f93c7eb81d917b12717cfac0621181fc36dcc481770ce6b3d93a611f5acd5aee64b1730c8dde4b63b949
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,18 @@
|
|
1
|
+
## 0.56.0 - July 1, 2025
|
2
|
+
- [regression] Gem caching perf and logging fixes #983
|
3
|
+
|
1
4
|
## 0.55.5 - July 1, 2025
|
5
|
+
- Flatten results of DocMap external bundle query (#981)
|
6
|
+
- [breaking] Reimplement global conventions (#877)
|
7
|
+
- GemPins pin merging improvements (#946)
|
8
|
+
- Support class-scoped aliases and attributes from RBS (#952)
|
9
|
+
- Restructure ComplexType specs towards YARD doc compliance (#969)
|
10
|
+
- Use Prism (#974)
|
11
|
+
- Document pages (#977)
|
12
|
+
- Enable disabled-but-working specs (#978)
|
13
|
+
- Map RBS 'untyped' type (RBS::Types::Bases::Any) to 'undefined' (#979)
|
14
|
+
- Re-enable support for .gem_rbs_collection directories (#942)
|
15
|
+
- [breaking] Comply with YARD documentation on Hash tag format (#968)
|
2
16
|
- Ignore directory paths in Workspace#would_require? (#988)
|
3
17
|
|
4
18
|
## 0.55.4 - June 27, 2025
|
data/lib/solargraph/doc_map.rb
CHANGED
@@ -90,9 +90,16 @@ module Solargraph
|
|
90
90
|
|
91
91
|
# @param gemspec [Gem::Specification]
|
92
92
|
def cache(gemspec, rebuild: false, out: nil)
|
93
|
-
|
94
|
-
|
95
|
-
|
93
|
+
build_yard = uncached_yard_gemspecs.include?(gemspec) || rebuild
|
94
|
+
build_rbs_collection = uncached_rbs_collection_gemspecs.include?(gemspec) || rebuild
|
95
|
+
if build_yard || build_rbs_collection
|
96
|
+
type = []
|
97
|
+
type << 'YARD' if build_yard
|
98
|
+
type << 'RBS collection' if build_rbs_collection
|
99
|
+
out.puts("Caching #{type.join(' and ')} pins for gem #{gemspec.name}:#{gemspec.version}") if out
|
100
|
+
end
|
101
|
+
cache_yard_pins(gemspec, out) if build_yard
|
102
|
+
cache_rbs_collection_pins(gemspec, out) if build_rbs_collection
|
96
103
|
end
|
97
104
|
|
98
105
|
# @return [Array<Gem::Specification>]
|
@@ -121,10 +128,14 @@ module Solargraph
|
|
121
128
|
self.class.all_rbs_collection_gems_in_memory[rbs_collection_path] ||= {}
|
122
129
|
end
|
123
130
|
|
124
|
-
def
|
131
|
+
def self.all_combined_pins_in_memory
|
125
132
|
@combined_pins_in_memory ||= {}
|
126
133
|
end
|
127
134
|
|
135
|
+
def combined_pins_in_memory
|
136
|
+
self.class.all_combined_pins_in_memory
|
137
|
+
end
|
138
|
+
|
128
139
|
# @return [Set<Gem::Specification>]
|
129
140
|
def dependencies
|
130
141
|
@dependencies ||= (gemspecs.flat_map { |spec| fetch_dependencies(spec) } - gemspecs).to_set
|
data/lib/solargraph/library.rb
CHANGED
@@ -587,7 +587,7 @@ module Solargraph
|
|
587
587
|
|
588
588
|
# @return [void]
|
589
589
|
def cache_next_gemspec
|
590
|
-
return if @
|
590
|
+
return if @cache_progress
|
591
591
|
spec = (api_map.uncached_yard_gemspecs + api_map.uncached_rbs_collection_gemspecs).
|
592
592
|
find { |spec| !cache_errors.include?(spec) }
|
593
593
|
return end_cache_progress unless spec
|
data/lib/solargraph/shell.rb
CHANGED
@@ -137,15 +137,18 @@ module Solargraph
|
|
137
137
|
# @param names [Array<String>]
|
138
138
|
# @return [void]
|
139
139
|
def gems *names
|
140
|
+
api_map = ApiMap.load('.')
|
140
141
|
if names.empty?
|
141
|
-
Gem::Specification.to_a.each { |spec| do_cache spec }
|
142
|
+
Gem::Specification.to_a.each { |spec| do_cache spec, api_map }
|
143
|
+
STDERR.puts "Documentation cached for all #{Gem::Specification.count} gems."
|
142
144
|
else
|
143
145
|
names.each do |name|
|
144
146
|
spec = Gem::Specification.find_by_name(*name.split('='))
|
145
|
-
do_cache spec
|
147
|
+
do_cache spec, api_map
|
146
148
|
rescue Gem::MissingSpecError
|
147
149
|
warn "Gem '#{name}' not found"
|
148
150
|
end
|
151
|
+
STDERR.puts "Documentation cached for #{names.count} gems."
|
149
152
|
end
|
150
153
|
end
|
151
154
|
|
@@ -256,8 +259,7 @@ module Solargraph
|
|
256
259
|
|
257
260
|
# @param gemspec [Gem::Specification]
|
258
261
|
# @return [void]
|
259
|
-
def do_cache gemspec
|
260
|
-
api_map = ApiMap.load('.')
|
262
|
+
def do_cache gemspec, api_map
|
261
263
|
# @todo if the rebuild: option is passed as a positional arg,
|
262
264
|
# typecheck doesn't complain on the below line
|
263
265
|
api_map.cache_gem(gemspec, rebuild: options.rebuild, out: $stdout)
|
data/lib/solargraph/version.rb
CHANGED
data/lib/solargraph/yardoc.rb
CHANGED
@@ -30,6 +30,11 @@ module Solargraph
|
|
30
30
|
File.exist?(yardoc)
|
31
31
|
end
|
32
32
|
|
33
|
+
def processing?(gemspec)
|
34
|
+
yardoc = File.join(PinCache.yardoc_path(gemspec), 'processing')
|
35
|
+
File.exist?(yardoc)
|
36
|
+
end
|
37
|
+
|
33
38
|
# Load a gem's yardoc and return its code objects.
|
34
39
|
#
|
35
40
|
# @note This method modifies the global YARD registry.
|