You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The v0.39 branch introduces several enhancements that should noticeably improve performance, especially the language server's startup time.
Cached YARD Gems
Solargraph generates serialized caches for the Ruby core, the stdlib, and external gems. This eliminates the need to process yardocs every time the server initializes a workspace.
Reduced Map Size
Pins (the objects that comprise code maps) no longer store copies of their corresponding YARD objects. On average, this reduces memory consumption by 25-30%.
RubyVM Parsing
Solargraph on Ruby 2.6+ uses the core RubyVM library to parse workspace code. In my benchmarks, it's about 5 times faster than the Parser gem. Ruby < 2.6 falls back to Parser.
Comment Ripping
All versions of Ruby use Ripper to extract comments from workspace code.
Other Notes
The serialized YARD maps should be mostly stable, but if an update introduces a breaking change, you might need to run solargraph clear to reset the cache.
The v0.39 branch also includes the type checker updates being tracked in Static type checker #192.
The text was updated successfully, but these errors were encountered:
The
v0.39
branch introduces several enhancements that should noticeably improve performance, especially the language server's startup time.Cached YARD Gems
Solargraph generates serialized caches for the Ruby core, the stdlib, and external gems. This eliminates the need to process yardocs every time the server initializes a workspace.
Reduced Map Size
Pins (the objects that comprise code maps) no longer store copies of their corresponding YARD objects. On average, this reduces memory consumption by 25-30%.
RubyVM Parsing
Solargraph on Ruby 2.6+ uses the core
RubyVM
library to parse workspace code. In my benchmarks, it's about 5 times faster than theParser
gem. Ruby < 2.6 falls back toParser
.Comment Ripping
All versions of Ruby use
Ripper
to extract comments from workspace code.Other Notes
solargraph clear
to reset the cache.v0.39
branch also includes the type checker updates being tracked in Static type checker #192.The text was updated successfully, but these errors were encountered: