File cmd2.patch of Package kuksa-val

From dc685a8fb1d43cef02e214ac1143420a7f0428cf Mon Sep 17 00:00:00 2001
From: Alexandre Vicenzi <alexandre.vicenzi@suse.com>
Date: Thu, 21 Sep 2023 16:35:23 +0200
Subject: [PATCH] Use new cmd2 API

Legacy versions not available in Factory.

diff --git a/kuksa-client/kuksa_client/__main__.py b/kuksa-client/kuksa_client/__main__.py
index d144a55..b6a4898 100755
--- a/kuksa-client/kuksa_client/__main__.py
+++ b/kuksa-client/kuksa_client/__main__.py
@@ -34,7 +34,6 @@ from cmd2 import Cmd
 from cmd2 import CompletionItem
 from cmd2 import with_argparser
 from cmd2 import with_category
-from cmd2.utils import basic_complete
 
 from kuksa_client import KuksaClientThread
 from kuksa_client import _metadata
@@ -124,7 +123,7 @@ class TestClient(Cmd):
                                        "Children of branch "+prefix+key),
                     )
 
-        return basic_complete(text, line, begidx, endidx, self.pathCompletionItems)
+        return Cmd.basic_complete(text, line, begidx, endidx, self.pathCompletionItems)
 
     def subscribeCallback(self, logPath, resp):
         with logPath.open('a', encoding='utf-8') as logFile:
@@ -134,7 +133,7 @@ class TestClient(Cmd):
         self.pathCompletionItems = []
         for sub_id in self.subscribeIds:
             self.pathCompletionItems.append(CompletionItem(sub_id))
-        return basic_complete(text, line, begidx, endidx, self.pathCompletionItems)
+        return Cmd.basic_complete(text, line, begidx, endidx, self.pathCompletionItems)
 
     COMM_SETUP_COMMANDS = "Communication Set-up Commands"
     VSS_COMMANDS = "Kuksa Interaction Commands"
@@ -151,7 +150,7 @@ class TestClient(Cmd):
     ap_authorize.add_argument(
         'token_or_tokenfile',
         help='JWT(or the file storing the token) for authorizing the client.',
-        completer_method=tokenfile_completer_method,)
+        completer=tokenfile_completer_method,)
     ap_setServerAddr = argparse.ArgumentParser()
     ap_setServerAddr.add_argument(
         'IP', help='VISS/gRPC Server IP Address', default=DEFAULT_SERVER_ADDR)
@@ -166,7 +165,7 @@ class TestClient(Cmd):
 
     ap_setValue = argparse.ArgumentParser()
     ap_setValue.add_argument(
-        "Path", help="Path to be set", completer_method=path_completer)
+        "Path", help="Path to be set", completer=path_completer)
     ap_setValue.add_argument("Value", nargs='+', help="Value to be set")
     ap_setValue.add_argument(
         "-a", "--attribute", help="Attribute to be set", default="value")
@@ -183,19 +182,19 @@ class TestClient(Cmd):
 
     ap_getValue = argparse.ArgumentParser()
     ap_getValue.add_argument(
-        "Path", help="Path to be read", completer_method=path_completer)
+        "Path", help="Path to be read", completer=path_completer)
     ap_getValue.add_argument(
         "-a", "--attribute", help="Attribute to be get", default="value")
 
     ap_getValues = argparse.ArgumentParser()
     ap_getValues.add_argument(
-        "Path", help="Path whose value is to be read", nargs='+', completer_method=path_completer)
+        "Path", help="Path whose value is to be read", nargs='+', completer=path_completer)
     ap_getValues.add_argument(
         "-a", "--attribute", help="Attribute to be get", default="value")
 
     ap_setTargetValue = argparse.ArgumentParser()
     ap_setTargetValue.add_argument(
-        "Path", help="Path whose target value to be set", completer_method=path_completer)
+        "Path", help="Path whose target value to be set", completer=path_completer)
     ap_setTargetValue.add_argument("Value", help="Value to be set")
 
     ap_setTargetValues = argparse.ArgumentParser()
@@ -208,35 +207,35 @@ class TestClient(Cmd):
 
     ap_getTargetValue = argparse.ArgumentParser()
     ap_getTargetValue.add_argument(
-        "Path", help="Path whose target value is to be read", completer_method=path_completer)
+        "Path", help="Path whose target value is to be read", completer=path_completer)
 
     ap_getTargetValues = argparse.ArgumentParser()
     ap_getTargetValues.add_argument(
-        "Path", help="Path whose target value is to be read", nargs='+', completer_method=path_completer)
+        "Path", help="Path whose target value is to be read", nargs='+', completer=path_completer)
 
     ap_subscribe = argparse.ArgumentParser()
     ap_subscribe.add_argument(
-        "Path", help="Path to subscribe to", completer_method=path_completer)
+        "Path", help="Path to subscribe to", completer=path_completer)
     ap_subscribe.add_argument(
         "-a", "--attribute", help="Attribute to subscribe to", default="value")
 
     ap_subscribeMultiple = argparse.ArgumentParser()
     ap_subscribeMultiple.add_argument(
-        "Path", help="Path to subscribe to", nargs='+', completer_method=path_completer)
+        "Path", help="Path to subscribe to", nargs='+', completer=path_completer)
     ap_subscribeMultiple.add_argument(
         "-a", "--attribute", help="Attribute to subscribe to", default="value")
 
     ap_unsubscribe = argparse.ArgumentParser()
     ap_unsubscribe.add_argument(
-        "SubscribeId", help="Corresponding subscription Id", completer_method=subscriptionIdCompleter,
+        "SubscribeId", help="Corresponding subscription Id", completer=subscriptionIdCompleter,
     )
 
     ap_getMetaData = argparse.ArgumentParser()
     ap_getMetaData.add_argument(
-        "Path", help="Path whose metadata is to be read", completer_method=path_completer)
+        "Path", help="Path whose metadata is to be read", completer=path_completer)
     ap_updateMetaData = argparse.ArgumentParser()
     ap_updateMetaData.add_argument(
-        "Path", help="Path whose MetaData is to update", completer_method=path_completer)
+        "Path", help="Path whose MetaData is to update", completer=path_completer)
     ap_updateMetaData.add_argument(
         "Json",
         help="MetaData to update. Note, only attributes can be update, if update children or the whole vss tree, use"
@@ -247,7 +246,7 @@ class TestClient(Cmd):
     jsonfile_completer_method = functools.partial(Cmd.path_complete,
                                                   path_filter=lambda path: (os.path.isdir(path) or path.endswith(".json")))
     ap_updateVSSTree.add_argument(
-        "Json", help="Json tree to update VSS", completer_method=jsonfile_completer_method)
+        "Json", help="Json tree to update VSS", completer=jsonfile_completer_method)
 
     # Constructor, request names after protocol to avoid errors
     def __init__(self, server_ip=None, server_port=None, server_protocol=None, *, insecure=False, token_or_tokenfile=None,
openSUSE Build Service is sponsored by