kleinkram 0.30.2.dev20241010132702__py3-none-any.whl → 0.30.4.dev20241010181849__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 kleinkram might be problematic. Click here for more details.
- kleinkram/mission/mission.py +30 -24
- {kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/METADATA +1 -1
- {kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/RECORD +6 -6
- {kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/WHEEL +0 -0
- {kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/entry_points.txt +0 -0
- {kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/licenses/LICENSE +0 -0
kleinkram/mission/mission.py
CHANGED
|
@@ -156,8 +156,8 @@ def mission_by_uuid(
|
|
|
156
156
|
|
|
157
157
|
@missionCommands.command("download")
|
|
158
158
|
def download(
|
|
159
|
-
mission_uuid: Annotated[str, typer.
|
|
160
|
-
local_path: Annotated[str, typer.
|
|
159
|
+
mission_uuid: Annotated[List[str], typer.Option(help="UUIDs of Mission to download")],
|
|
160
|
+
local_path: Annotated[str, typer.Option()],
|
|
161
161
|
):
|
|
162
162
|
"""
|
|
163
163
|
|
|
@@ -172,34 +172,40 @@ def download(
|
|
|
172
172
|
raise ValueError(f"Local path '{local_path}' is not empty, but must be empty.")
|
|
173
173
|
|
|
174
174
|
client = AuthenticatedClient()
|
|
175
|
-
|
|
175
|
+
for single_mission_uuid in mission_uuid:
|
|
176
|
+
response = client.get("/mission/download", params={"uuid": single_mission_uuid})
|
|
177
|
+
try:
|
|
178
|
+
response.raise_for_status()
|
|
179
|
+
except httpx.HTTPError as e:
|
|
180
|
+
raise AccessDeniedException(
|
|
181
|
+
f"Failed to download file."
|
|
182
|
+
f"Consider using the following command to list all missions: 'klein mission list --verbose'\n",
|
|
183
|
+
f"{response.json()['message']} ({response.status_code})",
|
|
184
|
+
)
|
|
176
185
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
f"Failed to download file."
|
|
182
|
-
f"Consider using the following command to list all missions: 'klein mission list --verbose'\n",
|
|
183
|
-
f"{response.json()['message']} ({response.status_code})",
|
|
184
|
-
)
|
|
186
|
+
paths = response.json()
|
|
187
|
+
if(len(paths) == 0):
|
|
188
|
+
continue
|
|
189
|
+
mission_name = paths[0].split("/")[5] # Trust me bro
|
|
185
190
|
|
|
186
|
-
|
|
191
|
+
local_mission_path = os.path.join(local_path, mission_name)
|
|
192
|
+
os.mkdir(local_mission_path)
|
|
187
193
|
|
|
188
|
-
|
|
189
|
-
|
|
194
|
+
print(f"Downloading files to {local_mission_path}:")
|
|
195
|
+
for path in paths:
|
|
190
196
|
|
|
191
|
-
|
|
192
|
-
|
|
197
|
+
filename = path.split("/")[-1].split("?")[0]
|
|
198
|
+
print(f" - {filename}")
|
|
193
199
|
|
|
194
|
-
|
|
195
|
-
|
|
200
|
+
response = requests.get(path, stream=True) # Enable streaming mode
|
|
201
|
+
chunk_size = 1024 * 100 # 100 KB chunks, adjust size if needed
|
|
196
202
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
+
# Open the file for writing in binary mode
|
|
204
|
+
with open(os.path.join(local_mission_path, filename), "wb") as f:
|
|
205
|
+
for chunk in response.iter_content(chunk_size=chunk_size):
|
|
206
|
+
if chunk: # Filter out keep-alive new chunks
|
|
207
|
+
f.write(chunk)
|
|
208
|
+
print(f" Downloaded {filename}")
|
|
203
209
|
|
|
204
210
|
|
|
205
211
|
@missionCommands.command("upload")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: kleinkram
|
|
3
|
-
Version: 0.30.
|
|
3
|
+
Version: 0.30.4.dev20241010181849
|
|
4
4
|
Summary: A CLI for the ETH project kleinkram
|
|
5
5
|
Project-URL: Homepage, https://github.com/leggedrobotics/kleinkram
|
|
6
6
|
Project-URL: Issues, https://github.com/leggedrobotics/kleinkram/issues
|
{kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/RECORD
RENAMED
|
@@ -7,14 +7,14 @@ kleinkram/main.py,sha256=9u_msMlPhphfaL92GNrm-cRUeSHxc_mOFPeXLDzv-ok,9642
|
|
|
7
7
|
kleinkram/auth/auth.py,sha256=w3-TsxWxURzLQ3_p43zgV4Rlh4dVL_WqI6HG2aes-b4,4991
|
|
8
8
|
kleinkram/endpoint/endpoint.py,sha256=uez5UrAnP7L5rVHUysA9tFkN3dB3dG1Ojt9g3w-UWuQ,1441
|
|
9
9
|
kleinkram/file/file.py,sha256=gLCZDHHgQWq25OmeG-lwkIh4aRZaLK12xxLkbhZ_m-g,5390
|
|
10
|
-
kleinkram/mission/mission.py,sha256=
|
|
10
|
+
kleinkram/mission/mission.py,sha256=gdkR6IWgyBGf0IgnEfcRBgRlNUSKqm_J25yX1V0dY9Q,9093
|
|
11
11
|
kleinkram/project/project.py,sha256=yDygz9JJ4Td5VsoCoCLm36HccRyd7jl65Hq05uxEGts,1602
|
|
12
12
|
kleinkram/queue/queue.py,sha256=MaLBjAu8asi9BkPvbbT-5AobCcpy3ex5rxM1kHpRINA,181
|
|
13
13
|
kleinkram/tag/tag.py,sha256=JSHbDPVfsvP34MuQhw__DPQk-Bah5G9BgwYsj_K_JGc,1805
|
|
14
14
|
kleinkram/topic/topic.py,sha256=IaXhrIHcJ3FSIr0WC-N7u9fkz-lAvSBgQklTX67t0Yc,1641
|
|
15
15
|
kleinkram/user/user.py,sha256=hDrbWeFPPnh2sswDd445SwcIFGyAbfXXWpYq1VqrK0g,1379
|
|
16
|
-
kleinkram-0.30.
|
|
17
|
-
kleinkram-0.30.
|
|
18
|
-
kleinkram-0.30.
|
|
19
|
-
kleinkram-0.30.
|
|
20
|
-
kleinkram-0.30.
|
|
16
|
+
kleinkram-0.30.4.dev20241010181849.dist-info/METADATA,sha256=0bO3d5o03qfhq1xTCwd4MahxeJhpGrAL22HEjafD7FQ,845
|
|
17
|
+
kleinkram-0.30.4.dev20241010181849.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
|
|
18
|
+
kleinkram-0.30.4.dev20241010181849.dist-info/entry_points.txt,sha256=RHXtRzcreVHImatgjhQwZQ6GdJThElYjHEWcR1BPXUI,45
|
|
19
|
+
kleinkram-0.30.4.dev20241010181849.dist-info/licenses/LICENSE,sha256=ixuiBLtpoK3iv89l7ylKkg9rs2GzF9ukPH7ynZYzK5s,35148
|
|
20
|
+
kleinkram-0.30.4.dev20241010181849.dist-info/RECORD,,
|
{kleinkram-0.30.2.dev20241010132702.dist-info → kleinkram-0.30.4.dev20241010181849.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|