From 428eecfd7fc78ccae67da9561346c4a8ec0aee78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felici=C3=A1n=20N=C3=A9meth?= Date: Wed, 23 Jun 2021 13:50:25 +0200 Subject: [PATCH] Add --version CLI argument and return version in InitializeResult --- pylsp/__main__.py | 5 +++++ pylsp/python_lsp.py | 9 ++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pylsp/__main__.py b/pylsp/__main__.py index bbc6986e..a480823b 100644 --- a/pylsp/__main__.py +++ b/pylsp/__main__.py @@ -14,6 +14,7 @@ from .python_lsp import (PythonLSPServer, start_io_lang_server, start_tcp_lang_server) +from ._version import __version__ LOG_FORMAT = "%(asctime)s {0} - %(levelname)s - %(name)s - %(message)s".format( time.localtime().tm_zone) @@ -57,6 +58,10 @@ def add_arguments(parser): help="Increase verbosity of log output, overrides log config file" ) + parser.add_argument( + '-V', '--version', action='version', version='%(prog)s v' + __version__ + ) + def main(): parser = argparse.ArgumentParser() diff --git a/pylsp/python_lsp.py b/pylsp/python_lsp.py index d4c98306..f15ccd66 100644 --- a/pylsp/python_lsp.py +++ b/pylsp/python_lsp.py @@ -14,6 +14,7 @@ from . import lsp, _utils, uris from .config import config from .workspace import Workspace +from ._version import __version__ log = logging.getLogger(__name__) @@ -225,7 +226,13 @@ def watch_parent_process(pid): self.watching_thread.daemon = True self.watching_thread.start() # Get our capabilities - return {'capabilities': self.capabilities()} + return { + 'capabilities': self.capabilities(), + 'serverInfo': { + 'name': 'pylsp', + 'version': __version__, + }, + } def m_initialized(self, **_kwargs): self._hook('pylsp_initialized')