hatchet-sdk 1.8.2__py3-none-any.whl → 1.9.0__py3-none-any.whl

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.

Potentially problematic release.


This version of hatchet-sdk might be problematic. Click here for more details.

@@ -69,7 +69,7 @@ class Context:
69
69
  def trigger_data(self) -> JSONSerializableMapping:
70
70
  return self.data.triggers
71
71
 
72
- def _task_output(self, task: "Task[TWorkflowInput, R]") -> "R":
72
+ def task_output(self, task: "Task[TWorkflowInput, R]") -> "R":
73
73
  from hatchet_sdk.runnables.types import R
74
74
 
75
75
  if self.was_skipped(task):
@@ -85,19 +85,6 @@ class Context:
85
85
 
86
86
  return parent_step_data
87
87
 
88
- def task_output(self, task: "Task[TWorkflowInput, R]") -> "R":
89
- from hatchet_sdk.runnables.types import R
90
-
91
- ## If the task is async, we need to wrap its output in a coroutine
92
- ## so that the type checker behaves right
93
- async def _aio_output() -> "R":
94
- return self._task_output(task)
95
-
96
- if task.is_async_function:
97
- return cast(R, _aio_output())
98
-
99
- return self._task_output(task)
100
-
101
88
  def aio_task_output(self, task: "Task[TWorkflowInput, R]") -> "R":
102
89
  warn(
103
90
  "`aio_task_output` is deprecated. Use `task_output` instead.",
hatchet_sdk/hatchet.py CHANGED
@@ -32,6 +32,7 @@ from hatchet_sdk.runnables.types import (
32
32
  )
33
33
  from hatchet_sdk.runnables.workflow import BaseWorkflow, Workflow
34
34
  from hatchet_sdk.utils.timedelta_to_expression import Duration
35
+ from hatchet_sdk.utils.typing import CoroutineLike
35
36
  from hatchet_sdk.worker.worker import LifespanFn, Worker
36
37
 
37
38
 
@@ -300,7 +301,10 @@ class Hatchet:
300
301
  desired_worker_labels: dict[str, DesiredWorkerLabel] = {},
301
302
  backoff_factor: float | None = None,
302
303
  backoff_max_seconds: int | None = None,
303
- ) -> Callable[[Callable[[EmptyModel, Context], R]], Standalone[EmptyModel, R]]: ...
304
+ ) -> Callable[
305
+ [Callable[[EmptyModel, Context], R | CoroutineLike[R]]],
306
+ Standalone[EmptyModel, R],
307
+ ]: ...
304
308
 
305
309
  @overload
306
310
  def task(
@@ -323,7 +327,8 @@ class Hatchet:
323
327
  backoff_factor: float | None = None,
324
328
  backoff_max_seconds: int | None = None,
325
329
  ) -> Callable[
326
- [Callable[[TWorkflowInput, Context], R]], Standalone[TWorkflowInput, R]
330
+ [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
331
+ Standalone[TWorkflowInput, R],
327
332
  ]: ...
328
333
 
329
334
  def task(
@@ -346,9 +351,13 @@ class Hatchet:
346
351
  backoff_factor: float | None = None,
347
352
  backoff_max_seconds: int | None = None,
348
353
  ) -> (
349
- Callable[[Callable[[EmptyModel, Context], R]], Standalone[EmptyModel, R]]
354
+ Callable[
355
+ [Callable[[EmptyModel, Context], R | CoroutineLike[R]]],
356
+ Standalone[EmptyModel, R],
357
+ ]
350
358
  | Callable[
351
- [Callable[[TWorkflowInput, Context], R]], Standalone[TWorkflowInput, R]
359
+ [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
360
+ Standalone[TWorkflowInput, R],
352
361
  ]
353
362
  ):
354
363
  """
@@ -426,7 +435,7 @@ class Hatchet:
426
435
  )
427
436
 
428
437
  def inner(
429
- func: Callable[[TWorkflowInput, Context], R]
438
+ func: Callable[[TWorkflowInput, Context], R | CoroutineLike[R]],
430
439
  ) -> Standalone[TWorkflowInput, R]:
431
440
  created_task = task_wrapper(func)
432
441
 
@@ -458,7 +467,8 @@ class Hatchet:
458
467
  backoff_factor: float | None = None,
459
468
  backoff_max_seconds: int | None = None,
460
469
  ) -> Callable[
461
- [Callable[[EmptyModel, DurableContext], R]], Standalone[EmptyModel, R]
470
+ [Callable[[EmptyModel, DurableContext], R | CoroutineLike[R]]],
471
+ Standalone[EmptyModel, R],
462
472
  ]: ...
463
473
 
464
474
  @overload
@@ -482,7 +492,8 @@ class Hatchet:
482
492
  backoff_factor: float | None = None,
483
493
  backoff_max_seconds: int | None = None,
484
494
  ) -> Callable[
485
- [Callable[[TWorkflowInput, DurableContext], R]], Standalone[TWorkflowInput, R]
495
+ [Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]],
496
+ Standalone[TWorkflowInput, R],
486
497
  ]: ...
487
498
 
488
499
  def durable_task(
@@ -505,9 +516,12 @@ class Hatchet:
505
516
  backoff_factor: float | None = None,
506
517
  backoff_max_seconds: int | None = None,
507
518
  ) -> (
508
- Callable[[Callable[[EmptyModel, DurableContext], R]], Standalone[EmptyModel, R]]
519
+ Callable[
520
+ [Callable[[EmptyModel, DurableContext], R | CoroutineLike[R]]],
521
+ Standalone[EmptyModel, R],
522
+ ]
509
523
  | Callable[
510
- [Callable[[TWorkflowInput, DurableContext], R]],
524
+ [Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]],
511
525
  Standalone[TWorkflowInput, R],
512
526
  ]
513
527
  ):
@@ -579,7 +593,7 @@ class Hatchet:
579
593
  )
580
594
 
581
595
  def inner(
582
- func: Callable[[TWorkflowInput, DurableContext], R]
596
+ func: Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]],
583
597
  ) -> Standalone[TWorkflowInput, R]:
584
598
  created_task = task_wrapper(func)
585
599
 
@@ -1,14 +1,5 @@
1
1
  from datetime import timedelta
2
- from typing import (
3
- TYPE_CHECKING,
4
- Any,
5
- Awaitable,
6
- Callable,
7
- Generic,
8
- Union,
9
- cast,
10
- get_type_hints,
11
- )
2
+ from typing import TYPE_CHECKING, Any, Callable, Generic, Union, cast, get_type_hints
12
3
 
13
4
  from hatchet_sdk.context.context import Context, DurableContext
14
5
  from hatchet_sdk.contracts.v1.shared.condition_pb2 import TaskConditions
@@ -27,7 +18,12 @@ from hatchet_sdk.runnables.types import (
27
18
  is_sync_fn,
28
19
  )
29
20
  from hatchet_sdk.utils.timedelta_to_expression import Duration, timedelta_to_expr
30
- from hatchet_sdk.utils.typing import TaskIOValidator, is_basemodel_subclass
21
+ from hatchet_sdk.utils.typing import (
22
+ AwaitableLike,
23
+ CoroutineLike,
24
+ TaskIOValidator,
25
+ is_basemodel_subclass,
26
+ )
31
27
  from hatchet_sdk.waits import (
32
28
  Action,
33
29
  Condition,
@@ -45,10 +41,10 @@ class Task(Generic[TWorkflowInput, R]):
45
41
  def __init__(
46
42
  self,
47
43
  _fn: Union[
48
- Callable[[TWorkflowInput, Context], R]
49
- | Callable[[TWorkflowInput, Context], Awaitable[R]],
50
- Callable[[TWorkflowInput, DurableContext], R]
51
- | Callable[[TWorkflowInput, DurableContext], Awaitable[R]],
44
+ Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]
45
+ | Callable[[TWorkflowInput, Context], AwaitableLike[R]],
46
+ Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]
47
+ | Callable[[TWorkflowInput, DurableContext], AwaitableLike[R]],
52
48
  ],
53
49
  is_durable: bool,
54
50
  type: StepType,
@@ -1,17 +1,17 @@
1
1
  import asyncio
2
2
  from enum import Enum
3
- from typing import Any, Awaitable, Callable, ParamSpec, Type, TypeGuard, TypeVar, Union
3
+ from typing import Any, Callable, ParamSpec, Type, TypeGuard, TypeVar, Union
4
4
 
5
5
  from pydantic import BaseModel, ConfigDict, Field
6
6
 
7
7
  from hatchet_sdk.context.context import Context, DurableContext
8
8
  from hatchet_sdk.contracts.v1.workflows_pb2 import Concurrency
9
9
  from hatchet_sdk.utils.timedelta_to_expression import Duration
10
- from hatchet_sdk.utils.typing import JSONSerializableMapping
10
+ from hatchet_sdk.utils.typing import AwaitableLike, JSONSerializableMapping
11
11
 
12
12
  ValidTaskReturnType = Union[BaseModel, JSONSerializableMapping, None]
13
13
 
14
- R = TypeVar("R", bound=Union[ValidTaskReturnType, Awaitable[ValidTaskReturnType]])
14
+ R = TypeVar("R", bound=ValidTaskReturnType)
15
15
  P = ParamSpec("P")
16
16
 
17
17
 
@@ -87,7 +87,7 @@ class StepType(str, Enum):
87
87
  ON_SUCCESS = "on_success"
88
88
 
89
89
 
90
- AsyncFunc = Callable[[TWorkflowInput, Context], Awaitable[R]]
90
+ AsyncFunc = Callable[[TWorkflowInput, Context], AwaitableLike[R]]
91
91
  SyncFunc = Callable[[TWorkflowInput, Context], R]
92
92
  TaskFunc = Union[AsyncFunc[TWorkflowInput, R], SyncFunc[TWorkflowInput, R]]
93
93
 
@@ -104,7 +104,7 @@ def is_sync_fn(
104
104
  return not asyncio.iscoroutinefunction(fn)
105
105
 
106
106
 
107
- DurableAsyncFunc = Callable[[TWorkflowInput, DurableContext], Awaitable[R]]
107
+ DurableAsyncFunc = Callable[[TWorkflowInput, DurableContext], AwaitableLike[R]]
108
108
  DurableSyncFunc = Callable[[TWorkflowInput, DurableContext], R]
109
109
  DurableTaskFunc = Union[
110
110
  DurableAsyncFunc[TWorkflowInput, R], DurableSyncFunc[TWorkflowInput, R]
@@ -35,7 +35,7 @@ from hatchet_sdk.runnables.types import (
35
35
  )
36
36
  from hatchet_sdk.utils.proto_enums import convert_python_enum_to_proto
37
37
  from hatchet_sdk.utils.timedelta_to_expression import Duration
38
- from hatchet_sdk.utils.typing import JSONSerializableMapping
38
+ from hatchet_sdk.utils.typing import CoroutineLike, JSONSerializableMapping
39
39
  from hatchet_sdk.waits import Condition, OrGroup
40
40
  from hatchet_sdk.workflow_run import WorkflowRunRef
41
41
 
@@ -545,10 +545,7 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
545
545
  def _parse_task_name(
546
546
  self,
547
547
  name: str | None,
548
- func: (
549
- Callable[[TWorkflowInput, Context], R]
550
- | Callable[[TWorkflowInput, DurableContext], R]
551
- ),
548
+ func: Callable[..., Any],
552
549
  ) -> str:
553
550
  non_null_name = name or func.__name__
554
551
 
@@ -569,7 +566,10 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
569
566
  wait_for: list[Condition | OrGroup] = [],
570
567
  skip_if: list[Condition | OrGroup] = [],
571
568
  cancel_if: list[Condition | OrGroup] = [],
572
- ) -> Callable[[Callable[[TWorkflowInput, Context], R]], Task[TWorkflowInput, R]]:
569
+ ) -> Callable[
570
+ [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
571
+ Task[TWorkflowInput, R],
572
+ ]:
573
573
  """
574
574
  A decorator to transform a function into a Hatchet task that runs as part of a workflow.
575
575
 
@@ -612,7 +612,7 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
612
612
  )
613
613
 
614
614
  def inner(
615
- func: Callable[[TWorkflowInput, Context], R]
615
+ func: Callable[[TWorkflowInput, Context], R | CoroutineLike[R]],
616
616
  ) -> Task[TWorkflowInput, R]:
617
617
  task = Task(
618
618
  _fn=func,
@@ -659,7 +659,8 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
659
659
  skip_if: list[Condition | OrGroup] = [],
660
660
  cancel_if: list[Condition | OrGroup] = [],
661
661
  ) -> Callable[
662
- [Callable[[TWorkflowInput, DurableContext], R]], Task[TWorkflowInput, R]
662
+ [Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]],
663
+ Task[TWorkflowInput, R],
663
664
  ]:
664
665
  """
665
666
  A decorator to transform a function into a durable Hatchet task that runs as part of a workflow.
@@ -707,7 +708,7 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
707
708
  )
708
709
 
709
710
  def inner(
710
- func: Callable[[TWorkflowInput, DurableContext], R]
711
+ func: Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]],
711
712
  ) -> Task[TWorkflowInput, R]:
712
713
  task = Task(
713
714
  _fn=func,
@@ -748,7 +749,10 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
748
749
  backoff_factor: float | None = None,
749
750
  backoff_max_seconds: int | None = None,
750
751
  concurrency: list[ConcurrencyExpression] = [],
751
- ) -> Callable[[Callable[[TWorkflowInput, Context], R]], Task[TWorkflowInput, R]]:
752
+ ) -> Callable[
753
+ [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
754
+ Task[TWorkflowInput, R],
755
+ ]:
752
756
  """
753
757
  A decorator to transform a function into a Hatchet on-failure task that runs as the last step in a workflow that had at least one task fail.
754
758
 
@@ -772,7 +776,7 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
772
776
  """
773
777
 
774
778
  def inner(
775
- func: Callable[[TWorkflowInput, Context], R]
779
+ func: Callable[[TWorkflowInput, Context], R | CoroutineLike[R]],
776
780
  ) -> Task[TWorkflowInput, R]:
777
781
  task = Task(
778
782
  is_durable=False,
@@ -808,7 +812,10 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
808
812
  backoff_factor: float | None = None,
809
813
  backoff_max_seconds: int | None = None,
810
814
  concurrency: list[ConcurrencyExpression] = [],
811
- ) -> Callable[[Callable[[TWorkflowInput, Context], R]], Task[TWorkflowInput, R]]:
815
+ ) -> Callable[
816
+ [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
817
+ Task[TWorkflowInput, R],
818
+ ]:
812
819
  """
813
820
  A decorator to transform a function into a Hatchet on-success task that runs as the last step in a workflow that had all upstream tasks succeed.
814
821
 
@@ -832,7 +839,7 @@ class Workflow(BaseWorkflow[TWorkflowInput]):
832
839
  """
833
840
 
834
841
  def inner(
835
- func: Callable[[TWorkflowInput, Context], R]
842
+ func: Callable[[TWorkflowInput, Context], R | CoroutineLike[R]],
836
843
  ) -> Task[TWorkflowInput, R]:
837
844
  task = Task(
838
845
  is_durable=False,
@@ -1,4 +1,15 @@
1
- from typing import Any, Mapping, Type, TypeGuard
1
+ import sys
2
+ from typing import (
3
+ Any,
4
+ Awaitable,
5
+ Coroutine,
6
+ Generator,
7
+ Mapping,
8
+ Type,
9
+ TypeAlias,
10
+ TypeGuard,
11
+ TypeVar,
12
+ )
2
13
 
3
14
  from pydantic import BaseModel
4
15
 
@@ -16,3 +27,13 @@ class TaskIOValidator(BaseModel):
16
27
 
17
28
 
18
29
  JSONSerializableMapping = Mapping[str, Any]
30
+
31
+
32
+ _T_co = TypeVar("_T_co", covariant=True)
33
+
34
+ if sys.version_info >= (3, 12):
35
+ AwaitableLike: TypeAlias = Awaitable[_T_co] # noqa: Y047
36
+ CoroutineLike: TypeAlias = Coroutine[Any, Any, _T_co] # noqa: Y047
37
+ else:
38
+ AwaitableLike: TypeAlias = Generator[Any, None, _T_co] | Awaitable[_T_co]
39
+ CoroutineLike: TypeAlias = Generator[Any, None, _T_co] | Coroutine[Any, Any, _T_co]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hatchet-sdk
3
- Version: 1.8.2
3
+ Version: 1.9.0
4
4
  Summary:
5
5
  License: MIT
6
6
  Author: Alexander Belanger
@@ -223,7 +223,7 @@ hatchet_sdk/clients/v1/api_client.py,sha256=mJQUZ3cOxlFJiwWKK5F8jBxcpNZ7A2292Huc
223
223
  hatchet_sdk/config.py,sha256=Jm-3ja29cpDf2MwfJAJSpL1qCLmYg_CPC29GhN-eUBY,3853
224
224
  hatchet_sdk/connection.py,sha256=B5gT5NL9BBB5-l9U_cN6pMlraQk880rEYMnqaK_dgL0,2590
225
225
  hatchet_sdk/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
226
- hatchet_sdk/context/context.py,sha256=c45AadcE4mm-1ahSoj2khjcdUcYZzqYBQkndxbs2ock,9519
226
+ hatchet_sdk/context/context.py,sha256=CGFqfdaEflG4_um618o8Lo_WPu0UJCJBYZLV8PDibw8,9073
227
227
  hatchet_sdk/context/worker_context.py,sha256=OVcEWvdT_Kpd0nlg61VAPUgIPSFzSLs0aSrXWj-1GX4,974
228
228
  hatchet_sdk/contracts/dispatcher_pb2.py,sha256=wO-x-NiHjMuC55RArpcvQX7QAjpSrjq1n70mFVwOD0Q,14543
229
229
  hatchet_sdk/contracts/dispatcher_pb2.pyi,sha256=iOcGfGtoyvmT58yCrQDvst_o0VPbq1-9rir-0jH_140,18559
@@ -252,7 +252,7 @@ hatchet_sdk/features/runs.py,sha256=9kmn2AM1XVFZS9P_lR-hh6SXwW42Kh73l0WUBl5VJh8,
252
252
  hatchet_sdk/features/scheduled.py,sha256=1kNR8AxN1UlabNroU9TtVbptZEXfqTVE25Gxmh2lABs,8928
253
253
  hatchet_sdk/features/workers.py,sha256=vD6j7GCttu0fm23_XmBMdE0IuX4mUbL0adgMoC8Sk_E,2571
254
254
  hatchet_sdk/features/workflows.py,sha256=PFJsGXTHVfdDBDQ9WcQXcAzr7u-dN7vUpwbZ9fH0ZD8,3976
255
- hatchet_sdk/hatchet.py,sha256=HRa__owQMeSRhtXzEfObap3ZKxUeNq2FJKOZEUVZ_CI,21795
255
+ hatchet_sdk/hatchet.py,sha256=GYiIAOXUmtVCNCOvWkIOeAGfboxCdiiwPTmd6e5Q9s8,22171
256
256
  hatchet_sdk/labels.py,sha256=nATgxWE3lFxRTnfISEpoIRLGbMfAZsHF4lZTuG4Mfic,182
257
257
  hatchet_sdk/logger.py,sha256=5uOr52T4mImSQm1QvWT8HvZFK5WfPNh3Y1cBQZRFgUQ,333
258
258
  hatchet_sdk/metadata.py,sha256=XkRbhnghJJGCdVvF-uzyGBcNaTqpeQ3uiQvNNP1wyBc,107
@@ -261,14 +261,14 @@ hatchet_sdk/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
261
261
  hatchet_sdk/rate_limit.py,sha256=TwbCuggiZaWpYuo4mjVLlE-z1OfQ2mRBiVvCSaG3lv4,3919
262
262
  hatchet_sdk/runnables/contextvars.py,sha256=6MDocAMmlyiRW37oQ1jyx10tAlJs-xgDjR3xPoPz05g,426
263
263
  hatchet_sdk/runnables/standalone.py,sha256=pCAIS40q9ltkK7K97ff79MzE73_k22ymZdrLdFdFwD8,15233
264
- hatchet_sdk/runnables/task.py,sha256=5VOgi413eH8Gz9_XBxFTfbfLITTpPJYwRB2ZXshysW8,7014
265
- hatchet_sdk/runnables/types.py,sha256=hVO4AI5OmzgWU5X74oeccLIbSfj1G7FgZKDtyyVohfw,3803
266
- hatchet_sdk/runnables/workflow.py,sha256=is61MQz6qBdzF48pixCTz_ILtpqVv6tiQAAbWEJtYbI,38775
264
+ hatchet_sdk/runnables/task.py,sha256=AOpULMr3hqxn4W58Lh9oEvsXn_7PPB_c_sIqHRfQn5Q,7063
265
+ hatchet_sdk/runnables/types.py,sha256=5jf1c7_0QVUFh0bcXi4hIiaOdUiyhspU4LltoAFCwlM,3776
266
+ hatchet_sdk/runnables/workflow.py,sha256=6DjM8Qt4ALbxl3_3BQgxdt3FR8tqGCv_JzRIYtrQjzU,38920
267
267
  hatchet_sdk/token.py,sha256=KjIiInwG5Kqd_FO4BSW1x_5Uc7PFbnzIVJqr50-ZldE,779
268
268
  hatchet_sdk/utils/backoff.py,sha256=6B5Rb5nLKw_TqqgpJMYjIBV1PTTtbOMRZCveisVhg_I,353
269
269
  hatchet_sdk/utils/proto_enums.py,sha256=0UybwE3s7TcqmzoQSO8YnhgAKOS8WZXsyPchB8-eksw,1247
270
270
  hatchet_sdk/utils/timedelta_to_expression.py,sha256=kwuYZ51JdDdc3h9Sw4vgBFmJBMPkgbGJA4v9uO4_NGk,660
271
- hatchet_sdk/utils/typing.py,sha256=huflXWR7fvRfIFYdqQIrQmn9jtukzOWoTpW3AXGk5c0,427
271
+ hatchet_sdk/utils/typing.py,sha256=P6-Nd5K_Hk-VhEkGj6LYki_9ddw05rJtzRA56qGXHag,914
272
272
  hatchet_sdk/v0/__init__.py,sha256=YNh-0rPHS0rcphmykJ1N2NMfgvERF4oJpBtx3IH_E_M,9657
273
273
  hatchet_sdk/v0/client.py,sha256=G1RDZln9Og7tRQulogXkZw8TsVlx7f0VvmtFI_VAe6E,3495
274
274
  hatchet_sdk/v0/clients/admin.py,sha256=l6fW21p_3pROz8mVB2QOXX0Pg5poeLXcBNEm6Uids30,18071
@@ -508,7 +508,7 @@ hatchet_sdk/worker/runner/runner.py,sha256=CdsWl0l4tFp8Yy35uLsR74jNsBs-fIHiDAJZw
508
508
  hatchet_sdk/worker/runner/utils/capture_logs.py,sha256=nHRPSiDBqzhObM7i2X7t03OupVFnE7kQBdR2Ckgg-2w,2709
509
509
  hatchet_sdk/worker/worker.py,sha256=SfUeYYGfPDVa7Hr1Tdgrzn_A0T-e_apIzW26BhsiB70,16101
510
510
  hatchet_sdk/workflow_run.py,sha256=ZwH0HLFGFVXz6jbiqSv4w0Om2XuR52Tzzw6LH4y65jQ,2765
511
- hatchet_sdk-1.8.2.dist-info/METADATA,sha256=dFJDcLYWDvetxbfsX-ljK5816vmuGNvsC2exJbq4_40,3635
512
- hatchet_sdk-1.8.2.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
513
- hatchet_sdk-1.8.2.dist-info/entry_points.txt,sha256=Un_76pcLse-ZGBlwebhQpnTPyQrripeHW8J7qmEpGOk,1400
514
- hatchet_sdk-1.8.2.dist-info/RECORD,,
511
+ hatchet_sdk-1.9.0.dist-info/METADATA,sha256=sxi4zDvyHWlKB65XhEpehELIj0J6-ugHiR9egq78fhU,3635
512
+ hatchet_sdk-1.9.0.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
513
+ hatchet_sdk-1.9.0.dist-info/entry_points.txt,sha256=Un_76pcLse-ZGBlwebhQpnTPyQrripeHW8J7qmEpGOk,1400
514
+ hatchet_sdk-1.9.0.dist-info/RECORD,,