qwak-sdk 0.5.13__py3-none-any.whl → 0.5.15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of qwak-sdk might be problematic. Click here for more details.
- qwak_sdk/__init__.py +1 -1
- qwak_sdk/commands/models/deployments/deploy/_logic/base_deploy_executor.py +6 -4
- qwak_sdk/commands/models/deployments/deploy/_logic/deployment_response_handler.py +4 -2
- qwak_sdk/commands/models/deployments/deploy/batch/ui.py +5 -1
- qwak_sdk/commands/models/deployments/deploy/realtime/ui.py +6 -2
- qwak_sdk/commands/models/deployments/deploy/streaming/ui.py +6 -2
- qwak_sdk/commands/models/executions/start/ui.py +6 -2
- qwak_sdk/inner/tools/cli_tools.py +58 -0
- {qwak_sdk-0.5.13.dist-info → qwak_sdk-0.5.15.dist-info}/METADATA +3 -3
- {qwak_sdk-0.5.13.dist-info → qwak_sdk-0.5.15.dist-info}/RECORD +12 -12
- {qwak_sdk-0.5.13.dist-info → qwak_sdk-0.5.15.dist-info}/WHEEL +0 -0
- {qwak_sdk-0.5.13.dist-info → qwak_sdk-0.5.15.dist-info}/entry_points.txt +0 -0
qwak_sdk/__init__.py
CHANGED
|
@@ -29,7 +29,7 @@ class BaseDeployExecutor(ABC):
|
|
|
29
29
|
self.user_config = UserAccountConfiguration().get_user_config()
|
|
30
30
|
self.instance_template_client = InstanceTemplateManagementClient()
|
|
31
31
|
|
|
32
|
-
def poll_until_complete(self, deployment_id: str,
|
|
32
|
+
def poll_until_complete(self, deployment_id: str, check_every_n_seconds: int):
|
|
33
33
|
def deployment_status():
|
|
34
34
|
status_response = self.deploy_client.get_deployment_status(
|
|
35
35
|
deployment_named_id=deployment_id
|
|
@@ -39,11 +39,13 @@ class BaseDeployExecutor(ABC):
|
|
|
39
39
|
|
|
40
40
|
status = deployment_status()
|
|
41
41
|
while status not in END_STATUSES:
|
|
42
|
-
sleep(
|
|
42
|
+
sleep(check_every_n_seconds)
|
|
43
43
|
status = deployment_status()
|
|
44
44
|
return status
|
|
45
45
|
|
|
46
|
-
def poll_until_complete_multiple(
|
|
46
|
+
def poll_until_complete_multiple(
|
|
47
|
+
self, deployment_ids: List[str], check_every_n_seconds: int
|
|
48
|
+
):
|
|
47
49
|
def deployment_status(deployment_id: str):
|
|
48
50
|
status_response = self.deploy_client.get_deployment_status(
|
|
49
51
|
deployment_named_id=deployment_id
|
|
@@ -55,7 +57,7 @@ class BaseDeployExecutor(ABC):
|
|
|
55
57
|
deployment_status(deployment_id) for deployment_id in deployment_ids
|
|
56
58
|
]
|
|
57
59
|
while all(status not in END_STATUSES for status in statuses):
|
|
58
|
-
sleep(
|
|
60
|
+
sleep(check_every_n_seconds)
|
|
59
61
|
statuses = [
|
|
60
62
|
deployment_status(deployment_id) for deployment_id in deployment_ids
|
|
61
63
|
]
|
|
@@ -124,7 +124,7 @@ def __sync_deployments(
|
|
|
124
124
|
print_callback=print,
|
|
125
125
|
):
|
|
126
126
|
deployment_id_to_status = deploy.poll_until_complete_multiple(
|
|
127
|
-
list(deployment_id_to_env.keys()),
|
|
127
|
+
list(deployment_id_to_env.keys()), check_every_n_seconds=5
|
|
128
128
|
)
|
|
129
129
|
failed_deployments = []
|
|
130
130
|
for deployment_id, status in deployment_id_to_status.items():
|
|
@@ -143,7 +143,9 @@ def __sync_deployment(deploy: BaseDeployExecutor, deploy_name: str):
|
|
|
143
143
|
end_text="Successful deployments",
|
|
144
144
|
print_callback=print,
|
|
145
145
|
):
|
|
146
|
-
deployment_status = deploy.poll_until_complete(
|
|
146
|
+
deployment_status = deploy.poll_until_complete(
|
|
147
|
+
deploy_name, check_every_n_seconds=5
|
|
148
|
+
)
|
|
147
149
|
if deployment_status in FAILED_STATUS:
|
|
148
150
|
raise QwakException(deployment_status)
|
|
149
151
|
|
|
@@ -12,7 +12,7 @@ from qwak_sdk.commands.models.deployments.deploy._logic.deployment_response_hand
|
|
|
12
12
|
from qwak_sdk.commands.models.deployments.deploy.batch._logic.deploy_executor import (
|
|
13
13
|
BatchDeployExecutor,
|
|
14
14
|
)
|
|
15
|
-
from qwak_sdk.inner.tools.cli_tools import QwakCommand
|
|
15
|
+
from qwak_sdk.inner.tools.cli_tools import DeprecatedOption, QwakCommand
|
|
16
16
|
from qwak_sdk.inner.tools.config_handler import config_handler
|
|
17
17
|
|
|
18
18
|
|
|
@@ -25,8 +25,12 @@ from qwak_sdk.inner.tools.config_handler import config_handler
|
|
|
25
25
|
@click.option("--model-id", help="Model ID", type=str, required=True)
|
|
26
26
|
@click.option(
|
|
27
27
|
"--pods",
|
|
28
|
+
"--replicas",
|
|
28
29
|
type=int,
|
|
29
30
|
help="Number of pods to deploy.",
|
|
31
|
+
deprecated=["--pods"],
|
|
32
|
+
preferred="--replicas",
|
|
33
|
+
cls=DeprecatedOption,
|
|
30
34
|
)
|
|
31
35
|
@click.option(
|
|
32
36
|
"--cpus",
|
|
@@ -17,7 +17,7 @@ from qwak_sdk.commands.models.deployments.deploy._logic.deployment_response_hand
|
|
|
17
17
|
from qwak_sdk.commands.models.deployments.deploy.realtime._logic.deploy_executor import (
|
|
18
18
|
RealtimeDeployExecutor,
|
|
19
19
|
)
|
|
20
|
-
from qwak_sdk.inner.tools.cli_tools import QwakCommand
|
|
20
|
+
from qwak_sdk.inner.tools.cli_tools import DeprecatedOption, QwakCommand
|
|
21
21
|
from qwak_sdk.inner.tools.config_handler import config_handler
|
|
22
22
|
|
|
23
23
|
logger = get_qwak_logger()
|
|
@@ -48,8 +48,12 @@ logger = get_qwak_logger()
|
|
|
48
48
|
)
|
|
49
49
|
@click.option(
|
|
50
50
|
"--pods",
|
|
51
|
+
"--replicas",
|
|
51
52
|
type=int,
|
|
52
|
-
help="Number of
|
|
53
|
+
help="Number of replicas to deploy.",
|
|
54
|
+
deprecated=["--pods"],
|
|
55
|
+
preferred="--replicas",
|
|
56
|
+
cls=DeprecatedOption,
|
|
53
57
|
)
|
|
54
58
|
@click.option(
|
|
55
59
|
"--cpus",
|
|
@@ -16,7 +16,7 @@ from qwak_sdk.commands.models.deployments.deploy._logic.deployment_response_hand
|
|
|
16
16
|
from qwak_sdk.commands.models.deployments.deploy.streaming._logic.deploy_executor import (
|
|
17
17
|
StreamDeployExecutor,
|
|
18
18
|
)
|
|
19
|
-
from qwak_sdk.inner.tools.cli_tools import QwakCommand
|
|
19
|
+
from qwak_sdk.inner.tools.cli_tools import DeprecatedOption, QwakCommand
|
|
20
20
|
from qwak_sdk.inner.tools.config_handler import config_handler
|
|
21
21
|
|
|
22
22
|
logger = get_qwak_logger()
|
|
@@ -115,8 +115,12 @@ FAILED_STATUSES = [
|
|
|
115
115
|
)
|
|
116
116
|
@click.option(
|
|
117
117
|
"--pods",
|
|
118
|
+
"--replicas",
|
|
118
119
|
type=int,
|
|
119
|
-
help="Number of
|
|
120
|
+
help="Number of replicas to deploy.",
|
|
121
|
+
deprecated=["--pods"],
|
|
122
|
+
preferred="--replicas",
|
|
123
|
+
cls=DeprecatedOption,
|
|
120
124
|
)
|
|
121
125
|
@click.option(
|
|
122
126
|
"--cpus",
|
|
@@ -11,7 +11,7 @@ from qwak.tools.logger.logger import get_qwak_logger
|
|
|
11
11
|
from tabulate import tabulate
|
|
12
12
|
|
|
13
13
|
from qwak_sdk.commands.models.executions.start._logic import execute_start_execution
|
|
14
|
-
from qwak_sdk.inner.tools.cli_tools import QwakCommand
|
|
14
|
+
from qwak_sdk.inner.tools.cli_tools import DeprecatedOption, QwakCommand
|
|
15
15
|
from qwak_sdk.inner.tools.config_handler import config_handler
|
|
16
16
|
|
|
17
17
|
logger = get_qwak_logger()
|
|
@@ -93,9 +93,13 @@ logger = get_qwak_logger()
|
|
|
93
93
|
)
|
|
94
94
|
@click.option(
|
|
95
95
|
"--pods",
|
|
96
|
+
"--replicas",
|
|
96
97
|
type=int,
|
|
97
98
|
default=0,
|
|
98
|
-
help="Number of
|
|
99
|
+
help="Number of replicas to deploy. (concurrent files processing). Default is as deployed.",
|
|
100
|
+
deprecated=["--pods"],
|
|
101
|
+
preferred="--replicas",
|
|
102
|
+
cls=DeprecatedOption,
|
|
99
103
|
)
|
|
100
104
|
@click.option(
|
|
101
105
|
"--cpus",
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import functools
|
|
2
2
|
import time
|
|
3
|
+
import warnings
|
|
3
4
|
from collections import namedtuple
|
|
4
5
|
from typing import Any, Callable, Dict, List, Tuple, Union
|
|
5
6
|
|
|
6
7
|
import click
|
|
8
|
+
from click import Context, OptionParser
|
|
7
9
|
from qwak.exceptions import QwakException
|
|
8
10
|
from qwak.inner.di_configuration import UserAccountConfiguration
|
|
9
11
|
from qwak.inner.di_configuration.session import Session
|
|
@@ -80,6 +82,13 @@ def usage_statistics_wrapper(func: Callable):
|
|
|
80
82
|
return wrapper
|
|
81
83
|
|
|
82
84
|
|
|
85
|
+
class DeprecatedOption(click.Option):
|
|
86
|
+
def __init__(self, *args, **kwargs):
|
|
87
|
+
self.deprecated = kwargs.pop("deprecated", ())
|
|
88
|
+
self.preferred = kwargs.pop("preferred", args[0][-1])
|
|
89
|
+
super(DeprecatedOption, self).__init__(*args, **kwargs)
|
|
90
|
+
|
|
91
|
+
|
|
83
92
|
class QwakCommand(click.Command):
|
|
84
93
|
def __init__(self, *args, **kwargs):
|
|
85
94
|
super().__init__(*args, **kwargs)
|
|
@@ -106,6 +115,55 @@ class QwakCommand(click.Command):
|
|
|
106
115
|
),
|
|
107
116
|
)
|
|
108
117
|
|
|
118
|
+
def make_parser(self, ctx: Context) -> OptionParser:
|
|
119
|
+
parser = super(QwakCommand, self).make_parser(ctx)
|
|
120
|
+
|
|
121
|
+
# get the parser options
|
|
122
|
+
options = set(parser._short_opt.values())
|
|
123
|
+
options |= set(parser._long_opt.values())
|
|
124
|
+
|
|
125
|
+
for option in options:
|
|
126
|
+
if not isinstance(option.obj, DeprecatedOption):
|
|
127
|
+
continue
|
|
128
|
+
|
|
129
|
+
def make_process(an_option):
|
|
130
|
+
"""Construct a closure to the parser option processor"""
|
|
131
|
+
|
|
132
|
+
orig_process = an_option.process
|
|
133
|
+
deprecated = getattr(an_option.obj, "deprecated", None)
|
|
134
|
+
preferred = getattr(an_option.obj, "preferred", None)
|
|
135
|
+
|
|
136
|
+
if not deprecated:
|
|
137
|
+
f"Expected `deprecated` value for `{an_option.obj.name}`"
|
|
138
|
+
|
|
139
|
+
def process(value, state):
|
|
140
|
+
"""The function above us on the stack used 'opt' to
|
|
141
|
+
pick option from a dict, see if it is deprecated"""
|
|
142
|
+
|
|
143
|
+
# reach up the stack and get 'opt'
|
|
144
|
+
import inspect
|
|
145
|
+
|
|
146
|
+
frame = inspect.currentframe()
|
|
147
|
+
try:
|
|
148
|
+
opt = frame.f_back.f_locals.get("opt")
|
|
149
|
+
finally:
|
|
150
|
+
del frame
|
|
151
|
+
|
|
152
|
+
if opt in deprecated:
|
|
153
|
+
warnings.warn(
|
|
154
|
+
f"{opt} has been deprecated, use {preferred}."
|
|
155
|
+
f" {opt} will be removed in future releases.",
|
|
156
|
+
DeprecationWarning,
|
|
157
|
+
)
|
|
158
|
+
|
|
159
|
+
return orig_process(value, state)
|
|
160
|
+
|
|
161
|
+
return process
|
|
162
|
+
|
|
163
|
+
option.process = make_process(option)
|
|
164
|
+
|
|
165
|
+
return parser
|
|
166
|
+
|
|
109
167
|
@profile_setter_wrapper
|
|
110
168
|
@usage_statistics_wrapper
|
|
111
169
|
def invoke(self, ctx: click.Context) -> Any:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: qwak-sdk
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.15
|
|
4
4
|
Summary: Qwak SDK and CLI for qwak models
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Keywords: mlops,ml,deployment,serving,model
|
|
@@ -27,8 +27,8 @@ Requires-Dist: pandas (<1.4) ; (python_full_version >= "3.7.1" and python_versio
|
|
|
27
27
|
Requires-Dist: pandas (>=1.4.3,<2.0.0) ; (python_version >= "3.8" and python_version < "3.10") and (extra == "batch" or extra == "feedback")
|
|
28
28
|
Requires-Dist: pyarrow (>=6.0.0,<11.0.0) ; extra == "batch"
|
|
29
29
|
Requires-Dist: python-json-logger (>=2.0.2)
|
|
30
|
-
Requires-Dist: qwak-core (==0.0.
|
|
31
|
-
Requires-Dist: qwak-inference (==0.1.
|
|
30
|
+
Requires-Dist: qwak-core (==0.0.157)
|
|
31
|
+
Requires-Dist: qwak-inference (==0.1.7)
|
|
32
32
|
Requires-Dist: tabulate (>=0.8.0)
|
|
33
33
|
Requires-Dist: yaspin (>=2.0.0)
|
|
34
34
|
Project-URL: Home page, https://www.qwak.com/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
qwak_sdk/__init__.py,sha256=
|
|
1
|
+
qwak_sdk/__init__.py,sha256=k6bfpPr0lPXa5fGj7XJnmb-TRDTJOk8FWTVtqNnu4j0,135
|
|
2
2
|
qwak_sdk/cli.py,sha256=GP0DChLWRMQuVbnmntom2MUjRfehzfcCFAGGna43TwU,2304
|
|
3
3
|
qwak_sdk/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
qwak_sdk/commands/admin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -165,11 +165,11 @@ qwak_sdk/commands/models/deployments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
|
|
|
165
165
|
qwak_sdk/commands/models/deployments/deploy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
166
166
|
qwak_sdk/commands/models/deployments/deploy/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
167
167
|
qwak_sdk/commands/models/deployments/deploy/_logic/advance_deployment_options_handler.py,sha256=gCo3WuP-IDuA5Sg7WbFmp1hYT5qyXyf6pUD3tZGyZXs,1251
|
|
168
|
-
qwak_sdk/commands/models/deployments/deploy/_logic/base_deploy_executor.py,sha256=
|
|
168
|
+
qwak_sdk/commands/models/deployments/deploy/_logic/base_deploy_executor.py,sha256=HYKUG5s4ZrpFwoxJYn3EuTYU71lmM0cFOOjbHqd9ajY,2706
|
|
169
169
|
qwak_sdk/commands/models/deployments/deploy/_logic/deploy_config.py,sha256=j5wt_5tNdJyPyy4YgWUsz6id1We3JmsCACc3284mgSA,8355
|
|
170
170
|
qwak_sdk/commands/models/deployments/deploy/_logic/deployment.py,sha256=zBTjeeEVtTnTwUMwUfGTI3Ip9AgqKDvHAZ6_Wi22XVo,13221
|
|
171
171
|
qwak_sdk/commands/models/deployments/deploy/_logic/deployment_message_helpers.py,sha256=xMr4nd3V-B-9kXx-e2MYDkN5-AIuz0NCJphkQTf7GHE,4087
|
|
172
|
-
qwak_sdk/commands/models/deployments/deploy/_logic/deployment_response_handler.py,sha256=
|
|
172
|
+
qwak_sdk/commands/models/deployments/deploy/_logic/deployment_response_handler.py,sha256=cHa2iF_2A8e1wx2a4UZuTjQ5IHgPvua1xziFJwzP_6s,5837
|
|
173
173
|
qwak_sdk/commands/models/deployments/deploy/_logic/deployment_size_mapper.py,sha256=SJk9egX-OW29RcLvsWBogYMFzVMkazWkL8z3bT05O24,2167
|
|
174
174
|
qwak_sdk/commands/models/deployments/deploy/_logic/get_latest_successful_build.py,sha256=NVHjRVM2oQhlJxMYXD1yQ5ZT6Jcd5msO1hpzGdrC64I,1067
|
|
175
175
|
qwak_sdk/commands/models/deployments/deploy/_logic/variations.py,sha256=XyjeypZuuqjyIv8cqnhD6JHQUz2HZJ6XR4N9F_V4__k,3166
|
|
@@ -177,19 +177,19 @@ qwak_sdk/commands/models/deployments/deploy/batch/__init__.py,sha256=47DEQpj8HBS
|
|
|
177
177
|
qwak_sdk/commands/models/deployments/deploy/batch/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
178
178
|
qwak_sdk/commands/models/deployments/deploy/batch/_logic/advanced_deployment_mapper.py,sha256=1MpmBea3ERNdaDajCPdwYnt04IoGZdh5pwMlIzdBX5U,495
|
|
179
179
|
qwak_sdk/commands/models/deployments/deploy/batch/_logic/deploy_executor.py,sha256=oOKPotp37qdLupYau5Fv2voki4SAIFitHMn_U4ZaJP8,946
|
|
180
|
-
qwak_sdk/commands/models/deployments/deploy/batch/ui.py,sha256=
|
|
180
|
+
qwak_sdk/commands/models/deployments/deploy/batch/ui.py,sha256=W8FBHy5F9CD9Xl5_hFCtd_JN-ib22ehsMznQR6yvHKg,3245
|
|
181
181
|
qwak_sdk/commands/models/deployments/deploy/deploy_commands_group.py,sha256=LnfdnfeSTCO90SrJfgXf21xiVRry6Y2sfj_JfdBQu_U,500
|
|
182
182
|
qwak_sdk/commands/models/deployments/deploy/realtime/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
183
183
|
qwak_sdk/commands/models/deployments/deploy/realtime/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
184
184
|
qwak_sdk/commands/models/deployments/deploy/realtime/_logic/advanced_deployment_mapper.py,sha256=y_qfvoOtwr0615hm123z8li7doF5PjBj1d95g98GEZk,902
|
|
185
185
|
qwak_sdk/commands/models/deployments/deploy/realtime/_logic/deploy_executor.py,sha256=KClooUmWbt4Iym7_PC8jg8oHCFRWNvno-16-aFWwutA,950
|
|
186
186
|
qwak_sdk/commands/models/deployments/deploy/realtime/_logic/serving_strategy_mapper.py,sha256=BJxuds7pf8s7pqhYIs5YIjlO3OByjQHob3jEgVWhR3U,3621
|
|
187
|
-
qwak_sdk/commands/models/deployments/deploy/realtime/ui.py,sha256=
|
|
187
|
+
qwak_sdk/commands/models/deployments/deploy/realtime/ui.py,sha256=yXj4LaAG6Ol1UepbP-KPEz2Cd0EDX5j-qSxAWAmZFEc,4835
|
|
188
188
|
qwak_sdk/commands/models/deployments/deploy/streaming/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
189
189
|
qwak_sdk/commands/models/deployments/deploy/streaming/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
190
190
|
qwak_sdk/commands/models/deployments/deploy/streaming/_logic/deploy_executor.py,sha256=RRkNzFcPhfj70pjFJE5DQDMxDi-gJOiaH5C9ofHEQUA,948
|
|
191
191
|
qwak_sdk/commands/models/deployments/deploy/streaming/_logic/serving_strategy_mapper.py,sha256=97m93afiwmrNL9EQ3tE4JmrBYfcBnKZB9ipcvzrIWDk,1500
|
|
192
|
-
qwak_sdk/commands/models/deployments/deploy/streaming/ui.py,sha256=
|
|
192
|
+
qwak_sdk/commands/models/deployments/deploy/streaming/ui.py,sha256=pqL6F4RuGPuFcGzi97OlIIkrdlvbP50xhcYn5OXF4VI,5615
|
|
193
193
|
qwak_sdk/commands/models/deployments/undeploy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
194
194
|
qwak_sdk/commands/models/deployments/undeploy/_logic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
195
195
|
qwak_sdk/commands/models/deployments/undeploy/_logic/request_undeploy.py,sha256=8DMxVBFHa_Hf_iC-RwHZaCoiP3DEXvMeUP1Ah42zuZY,5677
|
|
@@ -208,7 +208,7 @@ qwak_sdk/commands/models/executions/report/_logic.py,sha256=f3ISnVUSbqgZoUo_iGZL
|
|
|
208
208
|
qwak_sdk/commands/models/executions/report/ui.py,sha256=ouqgm0BzqURse-FSB_7cc1L0Ch89zNAQ4w_bdnZDgPg,1435
|
|
209
209
|
qwak_sdk/commands/models/executions/start/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
210
210
|
qwak_sdk/commands/models/executions/start/_logic.py,sha256=LQtcfuw9S4-EQoXMKKDR185ZASMQfDQ6smrBT54zNHc,926
|
|
211
|
-
qwak_sdk/commands/models/executions/start/ui.py,sha256=
|
|
211
|
+
qwak_sdk/commands/models/executions/start/ui.py,sha256=6F8xLmQV8uXvdM1T8H59g8MhGrUhDM3unUxI9mp95xc,5302
|
|
212
212
|
qwak_sdk/commands/models/executions/status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
213
213
|
qwak_sdk/commands/models/executions/status/_logic.py,sha256=RACCYLGh3AaSm7M_a5tunIiO3qH0Tld1ugAvM123_cU,480
|
|
214
214
|
qwak_sdk/commands/models/executions/status/ui.py,sha256=HvViXO0AE9ZXly_4jqJIgxSB45-S48XTeBHwGrAhdU8,820
|
|
@@ -313,7 +313,7 @@ qwak_sdk/exceptions/qwak_suggestion_exception.py,sha256=3sIK6s3OB3G0NLC_fGV1WkAo
|
|
|
313
313
|
qwak_sdk/inner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
314
314
|
qwak_sdk/inner/file_registry.py,sha256=CViXsi9ipYpLuPfIPY0R4DftSGjY7BN-5mxjjkQcFIY,3164
|
|
315
315
|
qwak_sdk/inner/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
316
|
-
qwak_sdk/inner/tools/cli_tools.py,sha256=
|
|
316
|
+
qwak_sdk/inner/tools/cli_tools.py,sha256=VaYvv8e86tfRI7pX1Pa7O48vnZ6-dXEgUIthH1LknJs,6598
|
|
317
317
|
qwak_sdk/inner/tools/config_handler.py,sha256=XYaB7cvjWg4CRFPB9lyKdxEop2qTwcWGxrVkCeg66do,880
|
|
318
318
|
qwak_sdk/inner/tools/dataclasses_utils.py,sha256=Ixm6Bz0qWA4bwqC4djT4XhqF2ua4LCNsadj2Xxwmi_A,793
|
|
319
319
|
qwak_sdk/inner/tools/logger/__init__.py,sha256=LJmj3u5w2AZNVfGPpD6hmEzKhwPLlZNruGTjQdHfN_A,71
|
|
@@ -326,7 +326,7 @@ qwak_sdk/tools/colors.py,sha256=7pui_GGjC4uZKYFsIyXaJjYsjLxJVHb4OrfTgr93hqo,287
|
|
|
326
326
|
qwak_sdk/tools/files.py,sha256=AyKJTOy7NhvP3SrqwIw_lxYNCOy1CvLgMmSJpWZ0OKM,2257
|
|
327
327
|
qwak_sdk/tools/log_handling.py,sha256=CC9XC3z3eHr_fehQgDsXZr4VP29VaMRwC05xvC5Wue4,5616
|
|
328
328
|
qwak_sdk/tools/utils.py,sha256=SHmU4r_m2ABZyFYMC03P17GvltPbYbmB39hvalIZEtI,1168
|
|
329
|
-
qwak_sdk-0.5.
|
|
330
|
-
qwak_sdk-0.5.
|
|
331
|
-
qwak_sdk-0.5.
|
|
332
|
-
qwak_sdk-0.5.
|
|
329
|
+
qwak_sdk-0.5.15.dist-info/entry_points.txt,sha256=vSl0ELYDyj640oMM57u0AjBP87wtLYxCcGOendhEx80,47
|
|
330
|
+
qwak_sdk-0.5.15.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
|
|
331
|
+
qwak_sdk-0.5.15.dist-info/METADATA,sha256=duJGNVFEE35vuYG-1Mwr1Llvq9F20TCrDLZw4UMtYTs,1852
|
|
332
|
+
qwak_sdk-0.5.15.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|