durabletask 0.0.0.dev16__tar.gz → 0.0.0.dev18__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.
Files changed (31) hide show
  1. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/PKG-INFO +1 -1
  2. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/helpers.py +2 -3
  3. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/task.py +7 -9
  4. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/worker.py +7 -7
  5. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask.egg-info/PKG-INFO +1 -1
  6. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/pyproject.toml +1 -1
  7. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/LICENSE +0 -0
  8. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/README.md +0 -0
  9. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/__init__.py +0 -0
  10. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/client.py +0 -0
  11. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/entities/__init__.py +0 -0
  12. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/entities/durable_entity.py +0 -0
  13. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/entities/entity_context.py +0 -0
  14. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/entities/entity_instance_id.py +0 -0
  15. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/entities/entity_lock.py +0 -0
  16. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/entities/entity_metadata.py +0 -0
  17. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/entity_state_shim.py +0 -0
  18. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/exceptions.py +0 -0
  19. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/grpc_interceptor.py +0 -0
  20. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/orchestration_entity_context.py +0 -0
  21. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/orchestrator_service_pb2.py +0 -0
  22. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/orchestrator_service_pb2.pyi +0 -0
  23. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/orchestrator_service_pb2_grpc.py +0 -0
  24. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/proto_task_hub_sidecar_service_stub.py +0 -0
  25. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/internal/shared.py +0 -0
  26. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask/py.typed +0 -0
  27. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask.egg-info/SOURCES.txt +0 -0
  28. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask.egg-info/dependency_links.txt +0 -0
  29. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask.egg-info/requires.txt +0 -0
  30. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/durabletask.egg-info/top_level.txt +0 -0
  31. {durabletask-0.0.0.dev16 → durabletask-0.0.0.dev18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: durabletask
3
- Version: 0.0.0.dev16
3
+ Version: 0.0.0.dev18
4
4
  Summary: A Durable Task Client SDK for Python
5
5
  License: MIT License
6
6
 
@@ -116,12 +116,11 @@ def new_sub_orchestration_failed_event(event_id: int, ex: Exception) -> pb.Histo
116
116
  )
117
117
 
118
118
 
119
- def new_failure_details(ex: BaseException) -> pb.TaskFailureDetails:
119
+ def new_failure_details(ex: Exception) -> pb.TaskFailureDetails:
120
120
  return pb.TaskFailureDetails(
121
121
  errorType=type(ex).__name__,
122
122
  errorMessage=str(ex),
123
- stackTrace=wrappers_pb2.StringValue(value=''.join(traceback.format_tb(ex.__traceback__))),
124
- innerFailure=new_failure_details(ex.__cause__) if ex.__cause__ else None
123
+ stackTrace=wrappers_pb2.StringValue(value=''.join(traceback.format_tb(ex.__traceback__)))
125
124
  )
126
125
 
127
126
 
@@ -98,7 +98,7 @@ class OrchestrationContext(ABC):
98
98
  pass
99
99
 
100
100
  @abstractmethod
101
- def create_timer(self, fire_at: Union[datetime, timedelta]) -> Task:
101
+ def create_timer(self, fire_at: Union[datetime, timedelta]) -> TimerTask:
102
102
  """Create a Timer Task to fire after at the specified deadline.
103
103
 
104
104
  Parameters
@@ -117,7 +117,7 @@ class OrchestrationContext(ABC):
117
117
  def call_activity(self, activity: Union[Activity[TInput, TOutput], str], *,
118
118
  input: Optional[TInput] = None,
119
119
  retry_policy: Optional[RetryPolicy] = None,
120
- tags: Optional[dict[str, str]] = None) -> Task[TOutput]:
120
+ tags: Optional[dict[str, str]] = None) -> CompletableTask[TOutput]:
121
121
  """Schedule an activity for execution.
122
122
 
123
123
  Parameters
@@ -142,7 +142,7 @@ class OrchestrationContext(ABC):
142
142
  def call_entity(self,
143
143
  entity: EntityInstanceId,
144
144
  operation: str,
145
- input: Optional[TInput] = None) -> Task:
145
+ input: Optional[TInput] = None) -> CompletableTask:
146
146
  """Schedule entity function for execution.
147
147
 
148
148
  Parameters
@@ -182,7 +182,7 @@ class OrchestrationContext(ABC):
182
182
  pass
183
183
 
184
184
  @abstractmethod
185
- def lock_entities(self, entities: list[EntityInstanceId]) -> Task[EntityLock]:
185
+ def lock_entities(self, entities: list[EntityInstanceId]) -> CompletableTask[EntityLock]:
186
186
  """Creates a Task object that locks the specified entity instances.
187
187
 
188
188
  The locks will be acquired the next time the orchestrator yields.
@@ -206,7 +206,7 @@ class OrchestrationContext(ABC):
206
206
  input: Optional[TInput] = None,
207
207
  instance_id: Optional[str] = None,
208
208
  retry_policy: Optional[RetryPolicy] = None,
209
- version: Optional[str] = None) -> Task[TOutput]:
209
+ version: Optional[str] = None) -> CompletableTask[TOutput]:
210
210
  """Schedule sub-orchestrator function for execution.
211
211
 
212
212
  Parameters
@@ -231,7 +231,7 @@ class OrchestrationContext(ABC):
231
231
  # TOOD: Add a timeout parameter, which allows the task to be canceled if the event is
232
232
  # not received within the specified timeout. This requires support for task cancellation.
233
233
  @abstractmethod
234
- def wait_for_external_event(self, name: str) -> Task:
234
+ def wait_for_external_event(self, name: str) -> CompletableTask:
235
235
  """Wait asynchronously for an event to be raised with the name `name`.
236
236
 
237
237
  Parameters
@@ -302,10 +302,8 @@ class FailureDetails:
302
302
  class TaskFailedError(Exception):
303
303
  """Exception type for all orchestration task failures."""
304
304
 
305
- def __init__(self, message: str, details: Union[pb.TaskFailureDetails, Exception]):
305
+ def __init__(self, message: str, details: pb.TaskFailureDetails):
306
306
  super().__init__(message)
307
- if isinstance(details, Exception):
308
- details = pbh.new_failure_details(details)
309
307
  self._details = FailureDetails(
310
308
  details.errorMessage,
311
309
  details.errorType,
@@ -1007,14 +1007,14 @@ class _RuntimeOrchestrationContext(task.OrchestrationContext):
1007
1007
  shared.to_json(custom_status) if custom_status is not None else None
1008
1008
  )
1009
1009
 
1010
- def create_timer(self, fire_at: Union[datetime, timedelta]) -> task.Task:
1010
+ def create_timer(self, fire_at: Union[datetime, timedelta]) -> task.TimerTask:
1011
1011
  return self.create_timer_internal(fire_at)
1012
1012
 
1013
1013
  def create_timer_internal(
1014
1014
  self,
1015
1015
  fire_at: Union[datetime, timedelta],
1016
1016
  retryable_task: Optional[task.RetryableTask] = None,
1017
- ) -> task.Task:
1017
+ ) -> task.TimerTask:
1018
1018
  id = self.next_sequence_number()
1019
1019
  if isinstance(fire_at, timedelta):
1020
1020
  fire_at = self.current_utc_datetime + fire_at
@@ -1034,7 +1034,7 @@ class _RuntimeOrchestrationContext(task.OrchestrationContext):
1034
1034
  input: Optional[TInput] = None,
1035
1035
  retry_policy: Optional[task.RetryPolicy] = None,
1036
1036
  tags: Optional[dict[str, str]] = None,
1037
- ) -> task.Task[TOutput]:
1037
+ ) -> task.CompletableTask[TOutput]:
1038
1038
  id = self.next_sequence_number()
1039
1039
 
1040
1040
  self.call_activity_function_helper(
@@ -1047,7 +1047,7 @@ class _RuntimeOrchestrationContext(task.OrchestrationContext):
1047
1047
  entity: EntityInstanceId,
1048
1048
  operation: str,
1049
1049
  input: Optional[TInput] = None,
1050
- ) -> task.Task:
1050
+ ) -> task.CompletableTask:
1051
1051
  id = self.next_sequence_number()
1052
1052
 
1053
1053
  self.call_entity_function_helper(
@@ -1068,7 +1068,7 @@ class _RuntimeOrchestrationContext(task.OrchestrationContext):
1068
1068
  id, entity_id, operation_name, input
1069
1069
  )
1070
1070
 
1071
- def lock_entities(self, entities: list[EntityInstanceId]) -> task.Task[EntityLock]:
1071
+ def lock_entities(self, entities: list[EntityInstanceId]) -> task.CompletableTask[EntityLock]:
1072
1072
  id = self.next_sequence_number()
1073
1073
 
1074
1074
  self.lock_entities_function_helper(
@@ -1084,7 +1084,7 @@ class _RuntimeOrchestrationContext(task.OrchestrationContext):
1084
1084
  instance_id: Optional[str] = None,
1085
1085
  retry_policy: Optional[task.RetryPolicy] = None,
1086
1086
  version: Optional[str] = None,
1087
- ) -> task.Task[TOutput]:
1087
+ ) -> task.CompletableTask[TOutput]:
1088
1088
  id = self.next_sequence_number()
1089
1089
  if isinstance(orchestrator, str):
1090
1090
  orchestrator_name = orchestrator
@@ -1229,7 +1229,7 @@ class _RuntimeOrchestrationContext(task.OrchestrationContext):
1229
1229
  action = pb.OrchestratorAction(id=task_id, sendEntityMessage=entity_unlock_message)
1230
1230
  self._pending_actions[task_id] = action
1231
1231
 
1232
- def wait_for_external_event(self, name: str) -> task.Task:
1232
+ def wait_for_external_event(self, name: str) -> task.CompletableTask:
1233
1233
  # Check to see if this event has already been received, in which case we
1234
1234
  # can return it immediately. Otherwise, record out intent to receive an
1235
1235
  # event with the given name so that we can resume the generator when it
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: durabletask
3
- Version: 0.0.0.dev16
3
+ Version: 0.0.0.dev18
4
4
  Summary: A Durable Task Client SDK for Python
5
5
  License: MIT License
6
6
 
@@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"
9
9
 
10
10
  [project]
11
11
  name = "durabletask"
12
- version = "0.0.0.dev16"
12
+ version = "0.0.0.dev18"
13
13
  description = "A Durable Task Client SDK for Python"
14
14
  keywords = [
15
15
  "durable",