1.2.2
🔍 Overview
This release introduces a dedicated authentication handler with exponential backoff, simplifies worker task definitions via decorators, and improves API consistency for user and application resources. It delivers bug fixes and API alignment updates to maintain parity with the Orkes Conductor server.
✅ Issues Resolved
Python SDK workers cannot pick up tasks from workflows created in UI without domain configuration
DynamicForkTask sets incompatible parameters causing validation error
🧩 Highlights
-
Added full support for Orkes Events in both Sync and Async clients.
-
Exponential Backoff & Fail-Stop on Invalid API Tokens:
- Updated both Sync and Async clients to use new Auth Handler that manages exponential backoff and graceful fail-stop behavior when invalid tokens (HTTP 401) are detected.
- Extended IntegrationDefFormFieldAdapter with new OAuth2 field names: oAuth2RefreshToken, oAuth2AuthCode, oAuth2TokenExpiresAt, oAuth2RedirectUri.
-
Worker Task Definition via Decorators:
- Introduced a TaskOptions model and a task_options decorator for easy worker task definition directly in code.
- Implemented helper to convert TaskOptions → TaskDef automatically.
-
API Alignment and Validation Fixes:
- Fixed bugs related to missed empty-string validation, tags deletion and data normalization in the Sync client for both application and user resources.
- Added missing get_app_by_access_key_id route to OrkesAuthorizationClient.
- Updated ConductorUserAdapter and IntegrationDefFormFieldAdapter to match latest server behavior.
- Extended IntegrationDefFormFieldAdapter to remain fully synchronized with the server schema.
-
Configuration Improvements:
- Fixed Sync Client Configuration initialization to correctly handle cases where /api is included in base_url.
- Added missing imports in conductor.client.http.models to expose them properly.
- Default value for worker_domain is now set to None, ensuring better default behavior.
- Updated DynamicForkTask to handle parameter setting without validation errors.
Full Changelog: 1.2.1...1.2.2
What's Changed
- Refactoring improve sdk logging by @IgorChvyrov-sm in #328
- Exponential Backoff & Fail-Stop on 401 (Invalid API Token) by @IgorChvyrov-sm in #342
- Worker task definition configuration from decorators by @IgorChvyrov-sm in #345
- Fix application resource API inconsistencies by @IgorChvyrov-sm in #347
- Fix user resource API inconsistencies by @IgorChvyrov-sm in #346
- Fix sync client Configuration by @IgorChvyrov-sm in #341
- Updated configuration to set None as default domain by @IgorChvyrov-sm in #351
- Updated dynamic for task to set params in right way by @IgorChvyrov-sm in #352
- Tags field for event handler by @IgorChvyrov-sm in #336
- Bump package version to 1.2.2 by @IgorChvyrov-sm in #354
Full Changelog: 1.2.1...1.2.2