Merged
Conversation
4951ecc to
c2b894e
Compare
Contributor
Author
|
🧪 Testing To try out this version of the SDK: Expires at: Fri, 24 Apr 2026 02:27:15 GMT |
363b630 to
ca4ae65
Compare
Note that we still want to run tests, as these depend on the metadata.
ca4ae65 to
f50438b
Compare
Contributor
Author
Release version edited manuallyThe Pull Request version has been manually set to If you instead want to use the version number |
f50438b to
462c331
Compare
dines-rl
approved these changes
Mar 25, 2026
Contributor
Author
|
🤖 Release is at https://github.com/runloopai/api-client-python/releases/tag/v1.13.1 🌻 |
tode-rl
added a commit
that referenced
this pull request
Apr 1, 2026
- Create CancellationToken class with sync/async event support - Update poll_until() and async_poll_until() with cancellation_token parameter - Add cancellable sleep using threading.Event.wait() and asyncio.wait_for() - Update PollingRequestOptions TypedDict with cancellation_token field - Propagate cancellation_token through Blueprint and ScenarioRun polling methods Part of porting TypeScript PR #765 features to Python SDK.
tode-rl
added a commit
that referenced
this pull request
Apr 1, 2026
- Update Blueprints: await_build_complete, create_and_await_build_complete - Update ScenarioRuns: await_scored, score_and_await - Update Devboxes: await_running, await_suspended, create_and_await_running - Update DiskSnapshots: await_completed - Update Executions: await_completed - Update SDK wrappers: ScenarioRun.await_env_ready - Add comprehensive docstrings with PollingCancelled exception All methods support both sync and async variants. Part of porting TypeScript PR #765 features to Python SDK.
tode-rl
added a commit
that referenced
this pull request
Apr 1, 2026
- Update AsyncScenarioRun.await_env_ready to pass cancellation_token - Completes cancellation support across all SDK polling operations Part of porting TypeScript PR #765 features to Python SDK.
tode-rl
added a commit
that referenced
this pull request
Apr 1, 2026
- Add AxonSubscribeSseParams with after_sequence parameter (internal use only) - Wrap subscribe_sse() with ReconnectingStream/AsyncReconnectingStream - Automatically resume from last received event on timeout using sequence-based offset - Add opt-out via RAW_RESPONSE_HEADER for users who want raw streams - after_sequence is handled internally by reconnector, not exposed in public API Per code review feedback from @dines-rl on TypeScript PR #765: 'after_sequence should just be a variable in the reconnector for follow-up' Part of porting TypeScript PR #765 features to Python SDK.
tode-rl
added a commit
that referenced
this pull request
Apr 1, 2026
Add extensive test coverage for: 1. CancellationToken class (test_cancellation.py): - Thread-safe cancellation behavior - Sync and async event handling - Lazy async event creation - raise_if_cancelled() method - Multiple tokens independence - Cross-thread cancellation 2. Polling with cancellation (test_polling.py): - Cancellation before first poll - Cancellation during polling loop - Cancellation during sleep with immediate wake-up - Cancellation with error handlers - Backward compatibility (None token) - Multiple polls with same token 3. Async polling with cancellation (test_polling_async.py): - All sync tests adapted for async - Concurrent polling with shared token - Cancellation from different async tasks - asyncio.TimeoutError handling 4. SSE auto-reconnect for Axons (test_axon_sse_reconnect.py): - ReconnectingStream/AsyncReconnectingStream usage - Sequence-based resumption after disconnect - RAW_RESPONSE_HEADER opt-out mechanism - Missing/None sequence handling - Request options preservation - AxonSubscribeSseParams structure Total: 60+ new test cases ensuring robustness of both features. Part of porting TypeScript PR #765 features to Python SDK.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated Release PR
1.13.1 (2026-03-25)
Full Changelog: v1.13.0...v1.13.1
Features
Bug Fixes
Chores
This pull request is managed by Stainless's GitHub App.
The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.
For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.
🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions