anchor.diff:            new ResponseMessage(message.id, null, error, jsonRpcVersion));
         // Since the LSP client might not show the failed requests to the user,
         // also ensure the error is logged to the client.
  -      logError(error.message);
  +      logErrorToClient(error.message);
       } else if (message is ResponseMessage) {
         // For bad response messages where we can't respond with an error, send it as
         // show instead of log.
  
positive.code:       messageHandler = new FailureStateMessageHandler(this);
  
        final message = 'An unrecoverable error occurred.';
        logError(
            '$message\n\n${error.message}\n\n${error.code}\n\n${error.data}');
  
        shutdown();
  
negative.code:                 errorMessage,
                  null,
                ));
            logException(errorMessage, error, stackTrace);
          }
        });
      }, onError: error);
    }
  
    /// Logs the error on the client using window/logMessage.
    void logErrorToClient(String message) {
      channel.sendNotification(new NotificationMessage(
        Method.window_logMessage,
        new LogMessageParams(MessageType.Error, message),
  