castwide / solargraph

A Ruby language server.
https://solargraph.org
MIT License
1.89k stars 158 forks source link

2 Diagnostic errors #647

Open avucic opened 1 year ago

avucic commented 1 year ago

Hi

I'm not too familiar with Solargraph but am experiencing a problem with it while I'm trying to setup my Neovim lsp server.

solargraph/diagnostics/rubocop.rb:98:in `offense_ending_position': undefined method `code' for nil:NilClass (NoMethodError)\n\n          line = @source.code.lines[start_line]\r\n
\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/diagnostics/rubocop.rb:56:in `block in make_array'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/diagnostics/rubocop.rb:55:in `each'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/diagnostics/rubocop.rb:55:in `make_array'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/bundler/gems/solargraph-standardrb-1b3ebdf33c00/lib/solargraph-standardrb.rb:16:in `diagnose'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/library.rb:364:in `block in diagnose'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/library.rb:363:in `each_pair'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/library.rb:363:in `diagnose'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/language_server/host.rb:215:in `diagnose'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/language_server/host/diagnoser.rb:66:in `tick'\n\tfrom /Users/me/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/solargraph-0.49.0/lib/solargraph/language_server/host/diagnoser.rb:47:in `block in start'\n"
plugins:
  - solargraph-standardrb
reporters:
  - standardrb


This setup works fine with Solargraph 0.48

Ruby 3.2.2
Solargraph 0.49
Rubocop (1.48.1, 1.49.0. 1.50)
Let me know if you need more details
ocarreterom commented 1 year ago

I'm getting the same error setting up solargraph-standardrb in SublimeText.

# .solargraph.yml
---
include:
- "**/*.rb"
exclude:
- spec/**/*
- test/**/*
- vendor/**/*
- ".bundle/**/*"
- db/migrate/**/*
require: []
domains: []
reporters:
- standardrb
- require_not_found
plugins:
  - solargraph-standardrb
require_paths: []
max_files: 5000
# .standard.yml
plugins:
  - standard-rails
  - standard-rspec
#<Thread:0x0000000104c7efc0 /Users/[me]/.rvm/gems/ruby-3.2.2/gems/solargraph-0.49.0/lib/solargraph/language_server/host/diagnoser.rb:45 run> terminated with exception (report_on_exception is true):
ruby: /Users/[me]/.rvm/gems/ruby-3.2.2/gems/solargraph-0.49.0/lib/solargraph/diagnostics/rubocop.rb:98:in `offense_ending_position': undefined method `code' for nil:NilClass (NoMethodError)
ruby: 
ruby:           line = @source.code.lines[start_line]
ruby:                         ^^^^^
ruby:   from /Users/[me]/.rvm/gems/ruby-3.2.2/gems/solargraph-0.49.0/lib/solargraph/diagnostics/rubocop.rb:81:in `offense_range'