From 1b7402915cdf73a32de1effe936480b4d69ee3b6 Mon Sep 17 00:00:00 2001 From: Ben Jackson Date: Sun, 8 Mar 2020 18:18:29 +0000 Subject: [PATCH] Catch adapter being None and print user-friendly message: --- python3/vimspector/debug_session.py | 12 +++++++++++- support/test/python/simple_python/.vimspector.json | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/python3/vimspector/debug_session.py b/python3/vimspector/debug_session.py index 9c60ab8..8212ab1 100644 --- a/python3/vimspector/debug_session.py +++ b/python3/vimspector/debug_session.py @@ -136,7 +136,17 @@ class DebugSession( object ): configuration = configurations[ configuration_name ] adapter = configuration.get( 'adapter' ) if isinstance( adapter, str ): - adapter = adapters.get( adapter ) + adapter_dict = adapters.get( adapter ) + + if adapter_dict is None: + utils.UserMessage( f"The specified adapter '{adapter}' is not " + "available. Did you forget to run " + "'install_gadget.py'?", + persist = True, + error = True ) + return + + adapter = adapter_dict # TODO: Do we want some form of persistence ? e.g. self._staticVariables, # set from an api call like SetLaunchParam( 'var', 'value' ), perhaps also a diff --git a/support/test/python/simple_python/.vimspector.json b/support/test/python/simple_python/.vimspector.json index c2af1b4..5e5902a 100644 --- a/support/test/python/simple_python/.vimspector.json +++ b/support/test/python/simple_python/.vimspector.json @@ -18,7 +18,7 @@ } }, "attach": { - "adapter": "vscode-python", + "adapter": "debugpy", "configuration": { "request": "attach", "type": "python",