@@ -446,6 +446,7 @@ def workflow_start_activity(
446
446
activity : Any ,
447
447
* args : Any ,
448
448
task_queue : Optional [str ],
449
+ result_type : Optional [Type ],
449
450
schedule_to_close_timeout : Optional [timedelta ],
450
451
schedule_to_start_timeout : Optional [timedelta ],
451
452
start_to_close_timeout : Optional [timedelta ],
@@ -463,6 +464,7 @@ async def workflow_start_child_workflow(
463
464
* args : Any ,
464
465
id : str ,
465
466
task_queue : Optional [str ],
467
+ result_type : Optional [Type ],
466
468
cancellation_type : ChildWorkflowCancellationType ,
467
469
parent_close_policy : ParentClosePolicy ,
468
470
execution_timeout : Optional [timedelta ],
@@ -481,6 +483,7 @@ def workflow_start_local_activity(
481
483
self ,
482
484
activity : Any ,
483
485
* args : Any ,
486
+ result_type : Optional [Type ],
484
487
schedule_to_close_timeout : Optional [timedelta ],
485
488
schedule_to_start_timeout : Optional [timedelta ],
486
489
start_to_close_timeout : Optional [timedelta ],
@@ -1265,6 +1268,7 @@ def start_activity(
1265
1268
* ,
1266
1269
args : Sequence [Any ] = [],
1267
1270
task_queue : Optional [str ] = None ,
1271
+ result_type : Optional [Type ] = None ,
1268
1272
schedule_to_close_timeout : Optional [timedelta ] = None ,
1269
1273
schedule_to_start_timeout : Optional [timedelta ] = None ,
1270
1274
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -1282,6 +1286,7 @@ def start_activity(
1282
1286
* ,
1283
1287
args : Sequence [Any ] = [],
1284
1288
task_queue : Optional [str ] = None ,
1289
+ result_type : Optional [Type ] = None ,
1285
1290
schedule_to_close_timeout : Optional [timedelta ] = None ,
1286
1291
schedule_to_start_timeout : Optional [timedelta ] = None ,
1287
1292
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -1301,6 +1306,8 @@ def start_activity(
1301
1306
args: Multiple arguments to the activity. Cannot be set if arg is.
1302
1307
task_queue: Task queue to run the activity on. Defaults to the current
1303
1308
workflow's task queue.
1309
+ result_type: For string activities, this can set the specific result
1310
+ type hint to deserialize into.
1304
1311
schedule_to_close_timeout: Max amount of time the activity can take from
1305
1312
first being scheduled to being completed before it times out. This
1306
1313
is inclusive of all retries.
@@ -1326,6 +1333,7 @@ def start_activity(
1326
1333
activity ,
1327
1334
* temporalio .common ._arg_or_args (arg , args ),
1328
1335
task_queue = task_queue ,
1336
+ result_type = result_type ,
1329
1337
schedule_to_close_timeout = schedule_to_close_timeout ,
1330
1338
schedule_to_start_timeout = schedule_to_start_timeout ,
1331
1339
start_to_close_timeout = start_to_close_timeout ,
@@ -1450,6 +1458,7 @@ async def execute_activity(
1450
1458
* ,
1451
1459
args : Sequence [Any ] = [],
1452
1460
task_queue : Optional [str ] = None ,
1461
+ result_type : Optional [Type ] = None ,
1453
1462
schedule_to_close_timeout : Optional [timedelta ] = None ,
1454
1463
schedule_to_start_timeout : Optional [timedelta ] = None ,
1455
1464
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -1467,6 +1476,7 @@ async def execute_activity(
1467
1476
* ,
1468
1477
args : Sequence [Any ] = [],
1469
1478
task_queue : Optional [str ] = None ,
1479
+ result_type : Optional [Type ] = None ,
1470
1480
schedule_to_close_timeout : Optional [timedelta ] = None ,
1471
1481
schedule_to_start_timeout : Optional [timedelta ] = None ,
1472
1482
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -1485,6 +1495,7 @@ async def execute_activity(
1485
1495
activity ,
1486
1496
* temporalio .common ._arg_or_args (arg , args ),
1487
1497
task_queue = task_queue ,
1498
+ result_type = result_type ,
1488
1499
schedule_to_close_timeout = schedule_to_close_timeout ,
1489
1500
schedule_to_start_timeout = schedule_to_start_timeout ,
1490
1501
start_to_close_timeout = start_to_close_timeout ,
@@ -1623,6 +1634,7 @@ def start_activity_class(
1623
1634
activity ,
1624
1635
* temporalio .common ._arg_or_args (arg , args ),
1625
1636
task_queue = task_queue ,
1637
+ result_type = None ,
1626
1638
schedule_to_close_timeout = schedule_to_close_timeout ,
1627
1639
schedule_to_start_timeout = schedule_to_start_timeout ,
1628
1640
start_to_close_timeout = start_to_close_timeout ,
@@ -1761,6 +1773,7 @@ async def execute_activity_class(
1761
1773
activity ,
1762
1774
* temporalio .common ._arg_or_args (arg , args ),
1763
1775
task_queue = task_queue ,
1776
+ result_type = None ,
1764
1777
schedule_to_close_timeout = schedule_to_close_timeout ,
1765
1778
schedule_to_start_timeout = schedule_to_start_timeout ,
1766
1779
start_to_close_timeout = start_to_close_timeout ,
@@ -1899,6 +1912,7 @@ def start_activity_method(
1899
1912
activity ,
1900
1913
* temporalio .common ._arg_or_args (arg , args ),
1901
1914
task_queue = task_queue ,
1915
+ result_type = None ,
1902
1916
schedule_to_close_timeout = schedule_to_close_timeout ,
1903
1917
schedule_to_start_timeout = schedule_to_start_timeout ,
1904
1918
start_to_close_timeout = start_to_close_timeout ,
@@ -2039,6 +2053,7 @@ async def execute_activity_method(
2039
2053
activity ,
2040
2054
* temporalio .common ._arg_or_args (arg , args ),
2041
2055
task_queue = task_queue ,
2056
+ result_type = None ,
2042
2057
schedule_to_close_timeout = schedule_to_close_timeout ,
2043
2058
schedule_to_start_timeout = schedule_to_start_timeout ,
2044
2059
start_to_close_timeout = start_to_close_timeout ,
@@ -2170,6 +2185,7 @@ def start_local_activity(
2170
2185
arg : Any = temporalio .common ._arg_unset ,
2171
2186
* ,
2172
2187
args : Sequence [Any ] = [],
2188
+ result_type : Optional [Type ] = None ,
2173
2189
schedule_to_close_timeout : Optional [timedelta ] = None ,
2174
2190
schedule_to_start_timeout : Optional [timedelta ] = None ,
2175
2191
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -2186,6 +2202,7 @@ def start_local_activity(
2186
2202
arg : Any = temporalio .common ._arg_unset ,
2187
2203
* ,
2188
2204
args : Sequence [Any ] = [],
2205
+ result_type : Optional [Type ] = None ,
2189
2206
schedule_to_close_timeout : Optional [timedelta ] = None ,
2190
2207
schedule_to_start_timeout : Optional [timedelta ] = None ,
2191
2208
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -2206,6 +2223,8 @@ def start_local_activity(
2206
2223
activity: Activity name or function reference.
2207
2224
arg: Single argument to the activity.
2208
2225
args: Multiple arguments to the activity. Cannot be set if arg is.
2226
+ result_type: For string activities, this can set the specific result
2227
+ type hint to deserialize into.
2209
2228
activity_id: Optional unique identifier for the activity.
2210
2229
schedule_to_close_timeout: Max amount of time the activity can take from
2211
2230
first being scheduled to being completed before it times out. This
@@ -2229,6 +2248,7 @@ def start_local_activity(
2229
2248
return _Runtime .current ().workflow_start_local_activity (
2230
2249
activity ,
2231
2250
* temporalio .common ._arg_or_args (arg , args ),
2251
+ result_type = result_type ,
2232
2252
schedule_to_close_timeout = schedule_to_close_timeout ,
2233
2253
schedule_to_start_timeout = schedule_to_start_timeout ,
2234
2254
start_to_close_timeout = start_to_close_timeout ,
@@ -2346,6 +2366,7 @@ async def execute_local_activity(
2346
2366
arg : Any = temporalio .common ._arg_unset ,
2347
2367
* ,
2348
2368
args : Sequence [Any ] = [],
2369
+ result_type : Optional [Type ] = None ,
2349
2370
schedule_to_close_timeout : Optional [timedelta ] = None ,
2350
2371
schedule_to_start_timeout : Optional [timedelta ] = None ,
2351
2372
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -2362,6 +2383,7 @@ async def execute_local_activity(
2362
2383
arg : Any = temporalio .common ._arg_unset ,
2363
2384
* ,
2364
2385
args : Sequence [Any ] = [],
2386
+ result_type : Optional [Type ] = None ,
2365
2387
schedule_to_close_timeout : Optional [timedelta ] = None ,
2366
2388
schedule_to_start_timeout : Optional [timedelta ] = None ,
2367
2389
start_to_close_timeout : Optional [timedelta ] = None ,
@@ -2382,6 +2404,7 @@ async def execute_local_activity(
2382
2404
return await _Runtime .current ().workflow_start_local_activity (
2383
2405
activity ,
2384
2406
* temporalio .common ._arg_or_args (arg , args ),
2407
+ result_type = result_type ,
2385
2408
schedule_to_close_timeout = schedule_to_close_timeout ,
2386
2409
schedule_to_start_timeout = schedule_to_start_timeout ,
2387
2410
start_to_close_timeout = start_to_close_timeout ,
@@ -2515,6 +2538,7 @@ def start_local_activity_class(
2515
2538
return _Runtime .current ().workflow_start_local_activity (
2516
2539
activity ,
2517
2540
* temporalio .common ._arg_or_args (arg , args ),
2541
+ result_type = None ,
2518
2542
schedule_to_close_timeout = schedule_to_close_timeout ,
2519
2543
schedule_to_start_timeout = schedule_to_start_timeout ,
2520
2544
start_to_close_timeout = start_to_close_timeout ,
@@ -2650,6 +2674,7 @@ async def execute_local_activity_class(
2650
2674
return await _Runtime .current ().workflow_start_local_activity (
2651
2675
activity ,
2652
2676
* temporalio .common ._arg_or_args (arg , args ),
2677
+ result_type = None ,
2653
2678
schedule_to_close_timeout = schedule_to_close_timeout ,
2654
2679
schedule_to_start_timeout = schedule_to_start_timeout ,
2655
2680
start_to_close_timeout = start_to_close_timeout ,
@@ -2783,6 +2808,7 @@ def start_local_activity_method(
2783
2808
return _Runtime .current ().workflow_start_local_activity (
2784
2809
activity ,
2785
2810
* temporalio .common ._arg_or_args (arg , args ),
2811
+ result_type = None ,
2786
2812
schedule_to_close_timeout = schedule_to_close_timeout ,
2787
2813
schedule_to_start_timeout = schedule_to_start_timeout ,
2788
2814
start_to_close_timeout = start_to_close_timeout ,
@@ -2918,6 +2944,7 @@ async def execute_local_activity_method(
2918
2944
return await _Runtime .current ().workflow_start_local_activity (
2919
2945
activity ,
2920
2946
* temporalio .common ._arg_or_args (arg , args ),
2947
+ result_type = None ,
2921
2948
schedule_to_close_timeout = schedule_to_close_timeout ,
2922
2949
schedule_to_start_timeout = schedule_to_start_timeout ,
2923
2950
start_to_close_timeout = start_to_close_timeout ,
@@ -3127,6 +3154,7 @@ async def start_child_workflow(
3127
3154
args : Sequence [Any ] = [],
3128
3155
id : Optional [str ] = None ,
3129
3156
task_queue : Optional [str ] = None ,
3157
+ result_type : Optional [Type ] = None ,
3130
3158
cancellation_type : ChildWorkflowCancellationType = ChildWorkflowCancellationType .WAIT_CANCELLATION_COMPLETED ,
3131
3159
parent_close_policy : ParentClosePolicy = ParentClosePolicy .TERMINATE ,
3132
3160
execution_timeout : Optional [timedelta ] = None ,
@@ -3148,6 +3176,7 @@ async def start_child_workflow(
3148
3176
args : Sequence [Any ] = [],
3149
3177
id : Optional [str ] = None ,
3150
3178
task_queue : Optional [str ] = None ,
3179
+ result_type : Optional [Type ] = None ,
3151
3180
cancellation_type : ChildWorkflowCancellationType = ChildWorkflowCancellationType .WAIT_CANCELLATION_COMPLETED ,
3152
3181
parent_close_policy : ParentClosePolicy = ParentClosePolicy .TERMINATE ,
3153
3182
execution_timeout : Optional [timedelta ] = None ,
@@ -3170,6 +3199,8 @@ async def start_child_workflow(
3170
3199
defaults to :py:func:`uuid4`.
3171
3200
task_queue: Task queue to run the workflow on. Defaults to the current
3172
3201
workflow's task queue.
3202
+ result_type: For string workflows, this can set the specific result type
3203
+ hint to deserialize into.
3173
3204
cancellation_type: How the child workflow will react to cancellation.
3174
3205
parent_close_policy: How to handle the child workflow when the parent
3175
3206
workflow closes.
@@ -3191,6 +3222,7 @@ async def start_child_workflow(
3191
3222
* temporalio .common ._arg_or_args (arg , args ),
3192
3223
id = id or str (uuid4 ()),
3193
3224
task_queue = task_queue ,
3225
+ result_type = result_type ,
3194
3226
cancellation_type = cancellation_type ,
3195
3227
parent_close_policy = parent_close_policy ,
3196
3228
execution_timeout = execution_timeout ,
@@ -3278,6 +3310,7 @@ async def execute_child_workflow(
3278
3310
args : Sequence [Any ] = [],
3279
3311
id : Optional [str ] = None ,
3280
3312
task_queue : Optional [str ] = None ,
3313
+ result_type : Optional [Type ] = None ,
3281
3314
cancellation_type : ChildWorkflowCancellationType = ChildWorkflowCancellationType .WAIT_CANCELLATION_COMPLETED ,
3282
3315
parent_close_policy : ParentClosePolicy = ParentClosePolicy .TERMINATE ,
3283
3316
execution_timeout : Optional [timedelta ] = None ,
@@ -3299,6 +3332,7 @@ async def execute_child_workflow(
3299
3332
args : Sequence [Any ] = [],
3300
3333
id : Optional [str ] = None ,
3301
3334
task_queue : Optional [str ] = None ,
3335
+ result_type : Optional [Type ] = None ,
3302
3336
cancellation_type : ChildWorkflowCancellationType = ChildWorkflowCancellationType .WAIT_CANCELLATION_COMPLETED ,
3303
3337
parent_close_policy : ParentClosePolicy = ParentClosePolicy .TERMINATE ,
3304
3338
execution_timeout : Optional [timedelta ] = None ,
@@ -3321,6 +3355,7 @@ async def execute_child_workflow(
3321
3355
* temporalio .common ._arg_or_args (arg , args ),
3322
3356
id = id or str (uuid4 ()),
3323
3357
task_queue = task_queue ,
3358
+ result_type = result_type ,
3324
3359
cancellation_type = cancellation_type ,
3325
3360
parent_close_policy = parent_close_policy ,
3326
3361
execution_timeout = execution_timeout ,
0 commit comments