lib/theme_check/language_server/server.rb in theme-check-0.4.0 vs lib/theme_check/language_server/server.rb in theme-check-0.5.0

- old
+ new

@@ -8,25 +8,29 @@ class DoneStreaming < StandardError; end class IncompatibleStream < StandardError; end class Server attr_reader :handler + attr_reader :should_raise_errors def initialize( in_stream: STDIN, out_stream: STDOUT, - err_stream: $DEBUG ? File.open('/tmp/lsp.log', 'a') : STDERR + err_stream: $DEBUG ? File.open('/tmp/lsp.log', 'a') : STDERR, + should_raise_errors: false ) validate!([in_stream, out_stream, err_stream]) @handler = Handler.new(self) @in = in_stream @out = out_stream @err = err_stream @out.sync = true # do not buffer @err.sync = true # do not buffer + + @should_raise_errors = should_raise_errors end def listen loop do process_request @@ -35,9 +39,10 @@ rescue SignalException, DoneStreaming cleanup return 0 rescue Exception => e # rubocop:disable Lint/RescueException + raise e if should_raise_errors log(e) log(e.backtrace) return 1 end end