continuum-task-server-sdk 0.1.0__tar.gz → 1.1.0__tar.gz
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.
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/PKG-INFO +1 -1
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/client.py +2 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/server.py +5 -1
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/websocket.py +4 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/pyproject.toml +1 -1
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/.gitignore +0 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/README.md +0 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/__init__.py +0 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/_http.py +0 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/_stomp.py +0 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/exceptions.py +0 -0
- {continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/models.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: continuum-task-server-sdk
|
|
3
|
-
Version:
|
|
3
|
+
Version: 1.1.0
|
|
4
4
|
Summary: Python SDK for the Continuum Task Server
|
|
5
5
|
Project-URL: Homepage, https://github.com/ContinuumWorkflow/continuum-task-server-sdk-python
|
|
6
6
|
Project-URL: Issues, https://github.com/ContinuumWorkflow/continuum-task-server-sdk-python/issues
|
{continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/client.py
RENAMED
|
@@ -230,6 +230,7 @@ class QueueApi:
|
|
|
230
230
|
input_data: Any = None,
|
|
231
231
|
priority: int | None = None,
|
|
232
232
|
parent_id: UUID | str | None = None,
|
|
233
|
+
idempotency_token: str | None = None,
|
|
233
234
|
) -> QueueItem:
|
|
234
235
|
"""Add a queue item. At least one of task_name or task_item_name is required."""
|
|
235
236
|
if task_name is None and task_item_name is None:
|
|
@@ -241,6 +242,7 @@ class QueueApi:
|
|
|
241
242
|
"taskItemName": task_item_name,
|
|
242
243
|
"priority": priority,
|
|
243
244
|
"inputData": _encode_input(input_data),
|
|
245
|
+
"idempotencyToken": idempotency_token,
|
|
244
246
|
}
|
|
245
247
|
)
|
|
246
248
|
return QueueItem.model_validate(self._http.post_json(self._MGMT, body))
|
{continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/server.py
RENAMED
|
@@ -14,6 +14,7 @@ the claim stays alive across process restarts.
|
|
|
14
14
|
from __future__ import annotations
|
|
15
15
|
|
|
16
16
|
import logging
|
|
17
|
+
import os
|
|
17
18
|
import signal
|
|
18
19
|
import threading
|
|
19
20
|
import time
|
|
@@ -496,7 +497,10 @@ class TaskServer:
|
|
|
496
497
|
|
|
497
498
|
def _coerce_transport(value: TransportMode | str | None) -> TransportMode:
|
|
498
499
|
if value is None:
|
|
499
|
-
|
|
500
|
+
env = os.environ.get("CONTINUUM_TRANSPORT")
|
|
501
|
+
if env is None or not str(env).strip():
|
|
502
|
+
return TransportMode.HTTP
|
|
503
|
+
value = env
|
|
500
504
|
if isinstance(value, TransportMode):
|
|
501
505
|
return value
|
|
502
506
|
normalized = str(value).strip().lower()
|
|
@@ -225,6 +225,7 @@ class ContinuumWebSocketClient:
|
|
|
225
225
|
priority: int | None = None,
|
|
226
226
|
parent_id: UUID | str | None = None,
|
|
227
227
|
request_id: str | None = None,
|
|
228
|
+
idempotency_token: str | None = None,
|
|
228
229
|
) -> QueueItem:
|
|
229
230
|
if task_name is None and task_item_name is None:
|
|
230
231
|
raise ValueError("at least one of task_name or task_item_name is required")
|
|
@@ -235,6 +236,7 @@ class ContinuumWebSocketClient:
|
|
|
235
236
|
"taskItemName": task_item_name,
|
|
236
237
|
"priority": priority,
|
|
237
238
|
"inputData": _encode_input(input_data),
|
|
239
|
+
"idempotencyToken": idempotency_token,
|
|
238
240
|
}
|
|
239
241
|
)
|
|
240
242
|
payload = self._command("/app/enqueue", body, request_id=request_id, retry=False)
|
|
@@ -255,6 +257,7 @@ class ContinuumWebSocketClient:
|
|
|
255
257
|
mode: WaitMode | str | None = None,
|
|
256
258
|
correlation: str | None = None,
|
|
257
259
|
request_id: str | None = None,
|
|
260
|
+
idempotency_token: str | None = None,
|
|
258
261
|
) -> EnqueueAndSubscribeWaitResult:
|
|
259
262
|
if task_name is None and task_item_name is None:
|
|
260
263
|
raise ValueError("at least one of task_name or task_item_name is required")
|
|
@@ -271,6 +274,7 @@ class ContinuumWebSocketClient:
|
|
|
271
274
|
"subscriberId": subscriber_id,
|
|
272
275
|
"mode": mode_value,
|
|
273
276
|
"correlation": correlation,
|
|
277
|
+
"idempotencyToken": idempotency_token,
|
|
274
278
|
}
|
|
275
279
|
)
|
|
276
280
|
payload = self._command(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/_http.py
RENAMED
|
File without changes
|
{continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/_stomp.py
RENAMED
|
File without changes
|
|
File without changes
|
{continuum_task_server_sdk-0.1.0 → continuum_task_server_sdk-1.1.0}/continuum_task_server/models.py
RENAMED
|
File without changes
|