dex-python-sdk 0.2.7__tar.gz → 0.2.8__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.
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/PKG-INFO +5 -5
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/README.md +4 -4
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/stream.py +5 -17
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/pyproject.toml +1 -1
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/LEGACY_NOTICES.md +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/LICENSE +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/__init__.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_async_value_hydrator.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_async_worker_dispatcher.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_async_worker_service.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_grpc_errors.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_invocation_context.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_native.pyi +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_utils.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_value_hydrator.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_value_mapper.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_worker_dispatcher.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/_worker_service.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/async_client.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/async_worker.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/attribute.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/blob_cache.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/channel.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/client.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/client_options.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/codec.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/condition.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/context.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/dexpb/__init__.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/dexpb/dex_pb2.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/dexpb/dex_pb2.pyi +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/dexpb/dex_pb2_grpc.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/flow.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/flow_config.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/flow_info.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/flow_options.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/flow_result.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/py.typed +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/runtime_errors.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/step.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/step_execution.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/subflow.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/timer.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/wait.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/worker.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/dex/worker_options.py +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/Cargo.lock +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/Cargo.toml +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/Cargo.toml +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/LICENSE +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/config.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/entry.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/error.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/format.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/lib.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/policy.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/src/store.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache/tests/blob_cache_integration.rs +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache-python/Cargo.toml +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache-python/LICENSE +0 -0
- {dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache-python/src/lib.rs +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dex-python-sdk
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.8
|
|
4
4
|
Requires-Dist: grpcio>=1.83.0
|
|
5
5
|
Requires-Dist: grpcio-status>=1.83.0
|
|
6
6
|
Requires-Dist: protobuf>=7.35.1
|
|
@@ -179,10 +179,10 @@ async def execute(
|
|
|
179
179
|
return dex.graceful_complete(input)
|
|
180
180
|
```
|
|
181
181
|
|
|
182
|
-
The async buffered writer has synchronous `write`
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
182
|
+
The async buffered writer has a synchronous `write` method, so `writer.write`
|
|
183
|
+
can be passed directly as an LLM delta callback. It flushes after one second, at
|
|
184
|
+
a soft 16 KiB UTF-8 threshold, or before the final result or error. It
|
|
185
|
+
concatenates chunks exactly and ignores empty chunks.
|
|
186
186
|
|
|
187
187
|
A synchronous generator uses the cooperative form because only yielded
|
|
188
188
|
`StepOutput` values can reach gRPC:
|
|
@@ -163,10 +163,10 @@ async def execute(
|
|
|
163
163
|
return dex.graceful_complete(input)
|
|
164
164
|
```
|
|
165
165
|
|
|
166
|
-
The async buffered writer has synchronous `write`
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
166
|
+
The async buffered writer has a synchronous `write` method, so `writer.write`
|
|
167
|
+
can be passed directly as an LLM delta callback. It flushes after one second, at
|
|
168
|
+
a soft 16 KiB UTF-8 threshold, or before the final result or error. It
|
|
169
|
+
concatenates chunks exactly and ignores empty chunks.
|
|
170
170
|
|
|
171
171
|
A synchronous generator uses the cooperative form because only yielded
|
|
172
172
|
`StepOutput` values can reach gRPC:
|
|
@@ -183,9 +183,9 @@ class StreamMessage(Generic[ValueT]):
|
|
|
183
183
|
class AsyncBufferedTextStream:
|
|
184
184
|
"""Batch text chunks for an asynchronous Step invocation.
|
|
185
185
|
|
|
186
|
-
Create this writer with :meth:`Stream.buffered_text`. ``write``
|
|
187
|
-
|
|
188
|
-
|
|
186
|
+
Create this writer with :meth:`Stream.buffered_text`. ``write`` is synchronous and returns
|
|
187
|
+
after local buffering or Worker-output enqueueing. AsyncWorker automatically stops its timer
|
|
188
|
+
and flushes remaining text before the invocation result or error.
|
|
189
189
|
"""
|
|
190
190
|
|
|
191
191
|
def __init__(
|
|
@@ -240,20 +240,8 @@ class AsyncBufferedTextStream:
|
|
|
240
240
|
if was_empty:
|
|
241
241
|
self._start_timer()
|
|
242
242
|
if self._buffered_bytes >= self._max_buffered_bytes:
|
|
243
|
-
self.
|
|
244
|
-
|
|
245
|
-
def flush(self) -> None:
|
|
246
|
-
"""Immediately enqueue the current non-empty batch.
|
|
247
|
-
|
|
248
|
-
A later write starts a new timer. Stream Store failures remain unacknowledged.
|
|
249
|
-
|
|
250
|
-
Raises:
|
|
251
|
-
BaseException: A timer or Worker-output failure.
|
|
252
|
-
ValueError: If the invocation already finished.
|
|
253
|
-
"""
|
|
254
|
-
self._require_open()
|
|
255
|
-
self._stop_timer()
|
|
256
|
-
self._flush_buffer()
|
|
243
|
+
self._stop_timer()
|
|
244
|
+
self._flush_buffer()
|
|
257
245
|
|
|
258
246
|
def _finalize_step_output(self) -> None:
|
|
259
247
|
if self._is_closed:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache-python/Cargo.toml
RENAMED
|
File without changes
|
|
File without changes
|
{dex_python_sdk-0.2.7 → dex_python_sdk-0.2.8}/sdk-rust/crates/dex-blob-cache-python/src/lib.rs
RENAMED
|
File without changes
|