sima-cli 0.0.27__py3-none-any.whl → 0.0.28__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.
- sima_cli/__version__.py +1 -1
- sima_cli/install/metadata_installer.py +26 -0
- {sima_cli-0.0.27.dist-info → sima_cli-0.0.28.dist-info}/METADATA +1 -1
- {sima_cli-0.0.27.dist-info → sima_cli-0.0.28.dist-info}/RECORD +8 -8
- {sima_cli-0.0.27.dist-info → sima_cli-0.0.28.dist-info}/WHEEL +0 -0
- {sima_cli-0.0.27.dist-info → sima_cli-0.0.28.dist-info}/entry_points.txt +0 -0
- {sima_cli-0.0.27.dist-info → sima_cli-0.0.28.dist-info}/licenses/LICENSE +0 -0
- {sima_cli-0.0.27.dist-info → sima_cli-0.0.28.dist-info}/top_level.txt +0 -0
sima_cli/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
# sima_cli/__version__.py
|
2
|
-
__version__ = "0.0.
|
2
|
+
__version__ = "0.0.28"
|
@@ -9,6 +9,7 @@ import tarfile
|
|
9
9
|
import zipfile
|
10
10
|
import stat
|
11
11
|
from urllib.parse import urlparse
|
12
|
+
from InquirerPy import inquirer
|
12
13
|
|
13
14
|
from typing import Dict
|
14
15
|
from tqdm import tqdm
|
@@ -104,6 +105,29 @@ def _download_assets(metadata: dict, base_url: str, dest_folder: str, internal:
|
|
104
105
|
|
105
106
|
return local_paths
|
106
107
|
|
108
|
+
def selectable_resource_handler(metadata):
|
109
|
+
selectable = metadata.get("selectable-resources")
|
110
|
+
if not selectable:
|
111
|
+
return metadata
|
112
|
+
|
113
|
+
choices = [(f"{i.get('name','Unnamed')} ({i.get('url','')})" if i.get('url') else i.get('name','Unnamed')) for i in selectable]
|
114
|
+
choices.append("Skip")
|
115
|
+
|
116
|
+
sel = inquirer.select(message="Select an opt-in resource to download:", choices=choices).execute()
|
117
|
+
if sel == "Skip":
|
118
|
+
print("✅ No selectable resource chosen.")
|
119
|
+
return metadata
|
120
|
+
|
121
|
+
idx = choices.index(sel)
|
122
|
+
entry = selectable[idx]
|
123
|
+
res = entry.get("resource")
|
124
|
+
if res:
|
125
|
+
metadata.setdefault("resources", [])
|
126
|
+
if res not in metadata["resources"]:
|
127
|
+
metadata["resources"].append(res)
|
128
|
+
print(f"✅ Selected: {entry.get('name','(unnamed)')} → {res}")
|
129
|
+
return metadata
|
130
|
+
|
107
131
|
def _download_and_validate_metadata(metadata_url, internal=False):
|
108
132
|
"""
|
109
133
|
Downloads (if remote), validates, and parses metadata from a given URL or local file path.
|
@@ -141,6 +165,7 @@ def _download_and_validate_metadata(metadata_url, internal=False):
|
|
141
165
|
metadata = json.load(f)
|
142
166
|
validate_metadata(metadata)
|
143
167
|
click.echo("✅ Metadata validated successfully.")
|
168
|
+
metadata = selectable_resource_handler(metadata)
|
144
169
|
return metadata, os.path.dirname(metadata_path)
|
145
170
|
|
146
171
|
# Common validation logic for local file
|
@@ -148,6 +173,7 @@ def _download_and_validate_metadata(metadata_url, internal=False):
|
|
148
173
|
metadata = json.load(f)
|
149
174
|
|
150
175
|
validate_metadata(metadata)
|
176
|
+
metadata = selectable_resource_handler(metadata)
|
151
177
|
click.echo("✅ Metadata validated successfully.")
|
152
178
|
return metadata, os.path.dirname(os.path.abspath(metadata_path))
|
153
179
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
sima_cli/__init__.py,sha256=Nb2jSg9-CX1XvSc1c21U9qQ3atINxphuNkNfmR-9P3o,332
|
2
2
|
sima_cli/__main__.py,sha256=ehzD6AZ7zGytC2gLSvaJatxeD0jJdaEvNJvwYeGsWOg,69
|
3
|
-
sima_cli/__version__.py,sha256=
|
3
|
+
sima_cli/__version__.py,sha256=wdQWaXW7_2lzCGpGJA9Ok41JbEuK-vA6q78SmligY_w,49
|
4
4
|
sima_cli/cli.py,sha256=GYmQ7_XObl9VgFwuWWkWDo-_Y_Vn6lM53F7mKiYGubI,17126
|
5
5
|
sima_cli/app_zoo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
6
6
|
sima_cli/app_zoo/app.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -14,7 +14,7 @@ sima_cli/download/downloader.py,sha256=nCBrr_0WdnKTIyecwKpg1sCdfm_4PSQTRPwEbiezy
|
|
14
14
|
sima_cli/install/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
15
15
|
sima_cli/install/hostdriver.py,sha256=kAWDLebs60mbWIyTbUxmNrChcKW1uD5r7FtWNSUVUE4,5852
|
16
16
|
sima_cli/install/metadata_info.py,sha256=wmMqwzGfXbuilkqaxRVrFOzOtTOiONkmPCyA2oDAQpA,2168
|
17
|
-
sima_cli/install/metadata_installer.py,sha256=
|
17
|
+
sima_cli/install/metadata_installer.py,sha256=UPXxXL5gH0iotX8WCUgEbySbYeIHE1UwsfpZvACjZQs,18928
|
18
18
|
sima_cli/install/metadata_validator.py,sha256=7954rp9vFRNnqmIMvCVTjq40kUIEbGXzfc8HmQmChe0,5221
|
19
19
|
sima_cli/install/optiview.py,sha256=i5eWVor-9MScEfrQm3Ty9OP4VpSsCgWvNh7AvYdZu7s,3365
|
20
20
|
sima_cli/install/palette.py,sha256=uRznoHa4Mv9ZXHp6AoqknfC3RxpYNKi9Ins756Cyifk,3930
|
@@ -44,7 +44,7 @@ sima_cli/utils/disk.py,sha256=66Kr631yhc_ny19up2aijfycWfD35AeLQOJgUsuH2hY,446
|
|
44
44
|
sima_cli/utils/env.py,sha256=IP5HrH0lE7RMSiBeXcEt5GCLMT5p-QQroG-uGzl5XFU,8181
|
45
45
|
sima_cli/utils/net.py,sha256=WVntA4CqipkNrrkA4tBVRadJft_pMcGYh4Re5xk3rqo,971
|
46
46
|
sima_cli/utils/network.py,sha256=UvqxbqbWUczGFyO-t1SybG7Q-x9kjUVRNIn_D6APzy8,1252
|
47
|
-
sima_cli-0.0.
|
47
|
+
sima_cli-0.0.28.dist-info/licenses/LICENSE,sha256=a260OFuV4SsMZ6sQCkoYbtws_4o2deFtbnT9kg7Rfd4,1082
|
48
48
|
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
49
49
|
tests/test_app_zoo.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
50
50
|
tests/test_auth.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -53,8 +53,8 @@ tests/test_download.py,sha256=t87DwxlHs26_ws9rpcHGwr_OrcRPd3hz6Zmm0vRee2U,4465
|
|
53
53
|
tests/test_firmware.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
54
54
|
tests/test_model_zoo.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
55
55
|
tests/test_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
56
|
-
sima_cli-0.0.
|
57
|
-
sima_cli-0.0.
|
58
|
-
sima_cli-0.0.
|
59
|
-
sima_cli-0.0.
|
60
|
-
sima_cli-0.0.
|
56
|
+
sima_cli-0.0.28.dist-info/METADATA,sha256=ETEoEF5hAtX6d8yNLF6dzARvDLO3AyuKfoiSn5wKRPg,3705
|
57
|
+
sima_cli-0.0.28.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
58
|
+
sima_cli-0.0.28.dist-info/entry_points.txt,sha256=xRYrDq1nCs6R8wEdB3c1kKuimxEjWJkHuCzArQPT0Xk,47
|
59
|
+
sima_cli-0.0.28.dist-info/top_level.txt,sha256=FtrbAUdHNohtEPteOblArxQNwoX9_t8qJQd59fagDlc,15
|
60
|
+
sima_cli-0.0.28.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|