diff --git a/.gitignore b/.gitignore index 239b10a..8695c4b 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,6 @@ __pycache__/ .attach_* -dist/ \ No newline at end of file +dist/ + +.idea \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3a0db55..708b856 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -95,7 +95,7 @@ This will drop you into the Python debugger on the failed test. ### Writing tests Place test files in the `tests/` directory, using file names that end with `_test`. -Mimic the package structure in the src/aws_durable_functions_sdk_python directory. +Mimic the package structure in the src/aws_durable_execution_sdk_python directory. Name your module so that src/mypackage/mymodule.py has a dedicated unit test file tests/mypackage/mymodule_test.py diff --git a/README.md b/README.md index 2498b26..2b74024 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ ## Installation ```console -pip install aws-durable-functions-sdk-python +pip install aws-durable-execution-sdk-python ``` ## Developers diff --git a/pyproject.toml b/pyproject.toml index 11b8be0..f3b1b95 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ requires = ["hatchling"] build-backend = "hatchling.build" [project] -name = "aws-durable-functions-sdk-python" +name = "aws-durable-execution-sdk-python" dynamic = ["version"] description = 'This the Python SDK for AWS Lambda Durable Functions.' readme = "README.md" @@ -25,18 +25,18 @@ dependencies = [ ] [project.urls] -Documentation = "https://github.com/aws/aws-durable-functions-sdk-python#readme" -Issues = "https://github.com/aws/aws-durable-functions-sdk-python/issues" -Source = "https://github.com/aws/aws-durable-functions-sdk-python" +Documentation = "https://github.com/aws/aws-durable-execution-sdk-python#readme" +Issues = "https://github.com/aws/aws-durable-execution-sdk-python/issues" +Source = "https://github.com/aws/aws-durable-execution-sdk-python" [tool.hatch.build.targets.sdist] -packages = ["src/aws_durable_functions_sdk_python"] +packages = ["src/aws_durable_execution_sdk_python"] [tool.hatch.build.targets.wheel] -packages = ["src/aws_durable_functions_sdk_python"] +packages = ["src/aws_durable_execution_sdk_python"] [tool.hatch.version] -path = "src/aws_durable_functions_sdk_python/__about__.py" +path = "src/aws_durable_execution_sdk_python/__about__.py" # [tool.hatch.envs.default] # dependencies=["pytest"] @@ -52,7 +52,7 @@ dependencies = [ ] [tool.hatch.envs.test.scripts] -cov="pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=src/aws_durable_functions_sdk_python --cov=tests --cov-fail-under=98" +cov="pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=src/aws_durable_execution_sdk_python --cov=tests --cov-fail-under=98" [tool.hatch.envs.types] extra-dependencies = [ @@ -60,19 +60,19 @@ extra-dependencies = [ "pytest" ] [tool.hatch.envs.types.scripts] -check = "mypy --install-types --non-interactive {args:src/aws_durable_functions_sdk_python tests}" +check = "mypy --install-types --non-interactive {args:src/aws_durable_execution_sdk_python tests}" [tool.coverage.run] -source_pkgs = ["aws_durable_functions_sdk_python", "tests"] +source_pkgs = ["aws_durable_execution_sdk_python", "tests"] branch = true parallel = true omit = [ - "src/aws_durable_functions_sdk_python/__about__.py", + "src/aws_durable_execution_sdk_python/__about__.py", ] [tool.coverage.paths] -aws_durable_functions_sdk_python = ["src/aws_durable_functions_sdk_python", "*/aws-durable-functions-sdk-python/src/aws_durable_functions_sdk_python"] -tests = ["tests", "*/aws-durable-functions-sdk-python/tests"] +aws_durable_execution_sdk_python = ["src/aws_durable_execution_sdk_python", "*/aws-durable-execution-sdk-python/src/aws_durable_execution_sdk_python"] +tests = ["tests", "*/aws-durable-execution-sdk-python/tests"] [tool.coverage.report] exclude_lines = [ @@ -88,4 +88,4 @@ line-length = 88 preview = false [tool.ruff.lint.per-file-ignores] -"tests/**" = ["ARG001", "ARG002", "ARG005", "S101", "PLR2004", "SIM117", "TRY301"] \ No newline at end of file +"tests/**" = ["ARG001", "ARG002", "ARG005", "S101", "PLR2004", "SIM117", "TRY301"] diff --git a/src/aws_durable_functions_sdk_python/.gitignore b/src/aws_durable_execution_sdk_python/.gitignore similarity index 100% rename from src/aws_durable_functions_sdk_python/.gitignore rename to src/aws_durable_execution_sdk_python/.gitignore diff --git a/src/aws_durable_functions_sdk_python/__about__.py b/src/aws_durable_execution_sdk_python/__about__.py similarity index 100% rename from src/aws_durable_functions_sdk_python/__about__.py rename to src/aws_durable_execution_sdk_python/__about__.py diff --git a/src/aws_durable_functions_sdk_python/__init__.py b/src/aws_durable_execution_sdk_python/__init__.py similarity index 100% rename from src/aws_durable_functions_sdk_python/__init__.py rename to src/aws_durable_execution_sdk_python/__init__.py diff --git a/src/aws_durable_functions_sdk_python/concurrency.py b/src/aws_durable_execution_sdk_python/concurrency.py similarity index 97% rename from src/aws_durable_functions_sdk_python/concurrency.py rename to src/aws_durable_execution_sdk_python/concurrency.py index 1487e8f..d7eed9c 100644 --- a/src/aws_durable_functions_sdk_python/concurrency.py +++ b/src/aws_durable_execution_sdk_python/concurrency.py @@ -12,21 +12,21 @@ from enum import Enum from typing import TYPE_CHECKING, Generic, Self, TypeVar -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( InvalidStateError, SuspendExecution, TimedSuspendExecution, ) -from aws_durable_functions_sdk_python.lambda_service import ErrorObject -from aws_durable_functions_sdk_python.types import BatchResult as BatchResultProtocol +from aws_durable_execution_sdk_python.lambda_service import ErrorObject +from aws_durable_execution_sdk_python.types import BatchResult as BatchResultProtocol if TYPE_CHECKING: from collections.abc import Callable - from aws_durable_functions_sdk_python.config import ChildConfig, CompletionConfig - from aws_durable_functions_sdk_python.lambda_service import OperationSubType - from aws_durable_functions_sdk_python.state import ExecutionState - from aws_durable_functions_sdk_python.types import DurableContext + from aws_durable_execution_sdk_python.config import ChildConfig, CompletionConfig + from aws_durable_execution_sdk_python.lambda_service import OperationSubType + from aws_durable_execution_sdk_python.state import ExecutionState + from aws_durable_execution_sdk_python.types import DurableContext logger = logging.getLogger(__name__) @@ -689,7 +689,7 @@ def _execute_item_in_child_context( executable: Executable[CallableType], ) -> ResultType: """Execute a single item in a child context.""" - from aws_durable_functions_sdk_python.config import ChildConfig + from aws_durable_execution_sdk_python.config import ChildConfig def execute_in_child_context(child_context: DurableContext) -> ResultType: return self.execute_item(child_context, executable) diff --git a/src/aws_durable_functions_sdk_python/config.py b/src/aws_durable_execution_sdk_python/config.py similarity index 96% rename from src/aws_durable_functions_sdk_python/config.py rename to src/aws_durable_execution_sdk_python/config.py index e2a3ae6..08747f2 100644 --- a/src/aws_durable_functions_sdk_python/config.py +++ b/src/aws_durable_execution_sdk_python/config.py @@ -6,7 +6,7 @@ from enum import Enum from typing import TYPE_CHECKING, Generic, TypeVar -from aws_durable_functions_sdk_python.retries import RetryDecision # noqa: TCH001 +from aws_durable_execution_sdk_python.retries import RetryDecision # noqa: TCH001 R = TypeVar("R") T = TypeVar("T") @@ -16,8 +16,8 @@ from collections.abc import Callable from concurrent.futures import Future - from aws_durable_functions_sdk_python.lambda_service import OperationSubType - from aws_durable_functions_sdk_python.serdes import SerDes + from aws_durable_execution_sdk_python.lambda_service import OperationSubType + from aws_durable_execution_sdk_python.serdes import SerDes Numeric = int | float # deliberately leaving off complex diff --git a/src/aws_durable_functions_sdk_python/context.py b/src/aws_durable_execution_sdk_python/context.py similarity index 92% rename from src/aws_durable_functions_sdk_python/context.py rename to src/aws_durable_execution_sdk_python/context.py index 8f02101..62fda63 100644 --- a/src/aws_durable_functions_sdk_python/context.py +++ b/src/aws_durable_execution_sdk_python/context.py @@ -3,7 +3,7 @@ import logging from typing import TYPE_CHECKING, Any, Concatenate, Generic, ParamSpec, TypeVar -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( BatchedInput, CallbackConfig, ChildConfig, @@ -13,48 +13,48 @@ WaitForCallbackConfig, WaitForConditionConfig, ) -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( FatalError, SuspendExecution, ValidationError, ) -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_context import ( +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_context import ( LambdaContext, make_dict_from_obj, ) -from aws_durable_functions_sdk_python.lambda_service import OperationSubType -from aws_durable_functions_sdk_python.logger import Logger, LogInfo -from aws_durable_functions_sdk_python.operation.callback import ( +from aws_durable_execution_sdk_python.lambda_service import OperationSubType +from aws_durable_execution_sdk_python.logger import Logger, LogInfo +from aws_durable_execution_sdk_python.operation.callback import ( create_callback_handler, wait_for_callback_handler, ) -from aws_durable_functions_sdk_python.operation.child import child_handler -from aws_durable_functions_sdk_python.operation.map import map_handler -from aws_durable_functions_sdk_python.operation.parallel import parallel_handler -from aws_durable_functions_sdk_python.operation.step import step_handler -from aws_durable_functions_sdk_python.operation.wait import wait_handler -from aws_durable_functions_sdk_python.operation.wait_for_condition import ( +from aws_durable_execution_sdk_python.operation.child import child_handler +from aws_durable_execution_sdk_python.operation.map import map_handler +from aws_durable_execution_sdk_python.operation.parallel import parallel_handler +from aws_durable_execution_sdk_python.operation.step import step_handler +from aws_durable_execution_sdk_python.operation.wait import wait_handler +from aws_durable_execution_sdk_python.operation.wait_for_condition import ( wait_for_condition_handler, ) -from aws_durable_functions_sdk_python.serdes import SerDes, deserialize -from aws_durable_functions_sdk_python.state import ExecutionState # noqa: TCH001 -from aws_durable_functions_sdk_python.threading import OrderedCounter -from aws_durable_functions_sdk_python.types import ( +from aws_durable_execution_sdk_python.serdes import SerDes, deserialize +from aws_durable_execution_sdk_python.state import ExecutionState # noqa: TCH001 +from aws_durable_execution_sdk_python.threading import OrderedCounter +from aws_durable_execution_sdk_python.types import ( BatchResult, LoggerInterface, StepContext, WaitForConditionCheckContext, ) -from aws_durable_functions_sdk_python.types import Callback as CallbackProtocol -from aws_durable_functions_sdk_python.types import ( +from aws_durable_execution_sdk_python.types import Callback as CallbackProtocol +from aws_durable_execution_sdk_python.types import ( DurableContext as DurableContextProtocol, ) if TYPE_CHECKING: from collections.abc import Callable, Sequence - from aws_durable_functions_sdk_python.state import CheckpointedResult + from aws_durable_execution_sdk_python.state import CheckpointedResult R = TypeVar("R") T = TypeVar("T") diff --git a/src/aws_durable_functions_sdk_python/exceptions.py b/src/aws_durable_execution_sdk_python/exceptions.py similarity index 100% rename from src/aws_durable_functions_sdk_python/exceptions.py rename to src/aws_durable_execution_sdk_python/exceptions.py diff --git a/src/aws_durable_functions_sdk_python/execution.py b/src/aws_durable_execution_sdk_python/execution.py similarity index 97% rename from src/aws_durable_functions_sdk_python/execution.py rename to src/aws_durable_execution_sdk_python/execution.py index 6775cf2..1634d20 100644 --- a/src/aws_durable_functions_sdk_python/execution.py +++ b/src/aws_durable_execution_sdk_python/execution.py @@ -6,14 +6,14 @@ from enum import Enum from typing import TYPE_CHECKING, Any -from aws_durable_functions_sdk_python.context import DurableContext, ExecutionState -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.context import DurableContext, ExecutionState +from aws_durable_execution_sdk_python.exceptions import ( CheckpointError, DurableExecutionsError, FatalError, SuspendExecution, ) -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.lambda_service import ( DurableServiceClient, ErrorObject, LambdaClient, @@ -25,7 +25,7 @@ if TYPE_CHECKING: from collections.abc import Callable, MutableMapping - from aws_durable_functions_sdk_python.lambda_context import LambdaContext + from aws_durable_execution_sdk_python.lambda_context import LambdaContext logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/identifier.py b/src/aws_durable_execution_sdk_python/identifier.py similarity index 100% rename from src/aws_durable_functions_sdk_python/identifier.py rename to src/aws_durable_execution_sdk_python/identifier.py diff --git a/src/aws_durable_functions_sdk_python/lambda_context.py b/src/aws_durable_execution_sdk_python/lambda_context.py similarity index 100% rename from src/aws_durable_functions_sdk_python/lambda_context.py rename to src/aws_durable_execution_sdk_python/lambda_context.py diff --git a/src/aws_durable_functions_sdk_python/lambda_service.py b/src/aws_durable_execution_sdk_python/lambda_service.py similarity index 99% rename from src/aws_durable_functions_sdk_python/lambda_service.py rename to src/aws_durable_execution_sdk_python/lambda_service.py index 5f270aa..b421c01 100644 --- a/src/aws_durable_functions_sdk_python/lambda_service.py +++ b/src/aws_durable_execution_sdk_python/lambda_service.py @@ -10,7 +10,7 @@ import boto3 # type: ignore -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, CheckpointError, ) @@ -18,7 +18,7 @@ if TYPE_CHECKING: from collections.abc import MutableMapping - from aws_durable_functions_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.identifier import OperationIdentifier logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/logger.py b/src/aws_durable_execution_sdk_python/logger.py similarity index 96% rename from src/aws_durable_functions_sdk_python/logger.py rename to src/aws_durable_execution_sdk_python/logger.py index 2942600..f68b9b8 100644 --- a/src/aws_durable_functions_sdk_python/logger.py +++ b/src/aws_durable_execution_sdk_python/logger.py @@ -5,12 +5,12 @@ from dataclasses import dataclass from typing import TYPE_CHECKING -from aws_durable_functions_sdk_python.types import LoggerInterface +from aws_durable_execution_sdk_python.types import LoggerInterface if TYPE_CHECKING: from collections.abc import Mapping, MutableMapping - from aws_durable_functions_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.identifier import OperationIdentifier @dataclass(frozen=True) diff --git a/src/aws_durable_functions_sdk_python/operation/__init__.py b/src/aws_durable_execution_sdk_python/operation/__init__.py similarity index 100% rename from src/aws_durable_functions_sdk_python/operation/__init__.py rename to src/aws_durable_execution_sdk_python/operation/__init__.py diff --git a/src/aws_durable_functions_sdk_python/operation/callback.py b/src/aws_durable_execution_sdk_python/operation/callback.py similarity index 89% rename from src/aws_durable_functions_sdk_python/operation/callback.py rename to src/aws_durable_execution_sdk_python/operation/callback.py index 61d454a..98bdbb8 100644 --- a/src/aws_durable_functions_sdk_python/operation/callback.py +++ b/src/aws_durable_execution_sdk_python/operation/callback.py @@ -4,8 +4,8 @@ from typing import TYPE_CHECKING, Any -from aws_durable_functions_sdk_python.exceptions import FatalError -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.exceptions import FatalError +from aws_durable_execution_sdk_python.lambda_service import ( CallbackOptions, OperationUpdate, ) @@ -13,16 +13,16 @@ if TYPE_CHECKING: from collections.abc import Callable - from aws_durable_functions_sdk_python.config import ( + from aws_durable_execution_sdk_python.config import ( CallbackConfig, WaitForCallbackConfig, ) - from aws_durable_functions_sdk_python.identifier import OperationIdentifier - from aws_durable_functions_sdk_python.state import ( + from aws_durable_execution_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.state import ( CheckpointedResult, ExecutionState, ) - from aws_durable_functions_sdk_python.types import Callback, DurableContext + from aws_durable_execution_sdk_python.types import Callback, DurableContext def create_callback_handler( diff --git a/src/aws_durable_functions_sdk_python/operation/child.py b/src/aws_durable_execution_sdk_python/operation/child.py similarity index 89% rename from src/aws_durable_functions_sdk_python/operation/child.py rename to src/aws_durable_execution_sdk_python/operation/child.py index e0a9ac5..d5ef8f7 100644 --- a/src/aws_durable_functions_sdk_python/operation/child.py +++ b/src/aws_durable_execution_sdk_python/operation/child.py @@ -5,20 +5,20 @@ import logging from typing import TYPE_CHECKING, TypeVar -from aws_durable_functions_sdk_python.config import ChildConfig -from aws_durable_functions_sdk_python.exceptions import FatalError, SuspendExecution -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.config import ChildConfig +from aws_durable_execution_sdk_python.exceptions import FatalError, SuspendExecution +from aws_durable_execution_sdk_python.lambda_service import ( ErrorObject, OperationSubType, OperationUpdate, ) -from aws_durable_functions_sdk_python.serdes import deserialize, serialize +from aws_durable_execution_sdk_python.serdes import deserialize, serialize if TYPE_CHECKING: from collections.abc import Callable - from aws_durable_functions_sdk_python.identifier import OperationIdentifier - from aws_durable_functions_sdk_python.state import ExecutionState + from aws_durable_execution_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.state import ExecutionState logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/operation/map.py b/src/aws_durable_execution_sdk_python/operation/map.py similarity index 87% rename from src/aws_durable_functions_sdk_python/operation/map.py rename to src/aws_durable_execution_sdk_python/operation/map.py index 820f8eb..cabc1c0 100644 --- a/src/aws_durable_functions_sdk_python/operation/map.py +++ b/src/aws_durable_execution_sdk_python/operation/map.py @@ -6,18 +6,18 @@ from collections.abc import Callable, Sequence from typing import TYPE_CHECKING, Generic, TypeVar -from aws_durable_functions_sdk_python.concurrency import ( +from aws_durable_execution_sdk_python.concurrency import ( BatchResult, ConcurrentExecutor, Executable, ) -from aws_durable_functions_sdk_python.config import MapConfig -from aws_durable_functions_sdk_python.lambda_service import OperationSubType +from aws_durable_execution_sdk_python.config import MapConfig +from aws_durable_execution_sdk_python.lambda_service import OperationSubType if TYPE_CHECKING: - from aws_durable_functions_sdk_python.config import ChildConfig - from aws_durable_functions_sdk_python.state import ExecutionState - from aws_durable_functions_sdk_python.types import DurableContext + from aws_durable_execution_sdk_python.config import ChildConfig + from aws_durable_execution_sdk_python.state import ExecutionState + from aws_durable_execution_sdk_python.types import DurableContext logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/operation/parallel.py b/src/aws_durable_execution_sdk_python/operation/parallel.py similarity index 84% rename from src/aws_durable_functions_sdk_python/operation/parallel.py rename to src/aws_durable_execution_sdk_python/operation/parallel.py index d071721..f55b802 100644 --- a/src/aws_durable_functions_sdk_python/operation/parallel.py +++ b/src/aws_durable_execution_sdk_python/operation/parallel.py @@ -6,15 +6,15 @@ from collections.abc import Callable, Sequence from typing import TYPE_CHECKING, TypeVar -from aws_durable_functions_sdk_python.concurrency import ConcurrentExecutor, Executable -from aws_durable_functions_sdk_python.config import ParallelConfig -from aws_durable_functions_sdk_python.lambda_service import OperationSubType +from aws_durable_execution_sdk_python.concurrency import ConcurrentExecutor, Executable +from aws_durable_execution_sdk_python.config import ParallelConfig +from aws_durable_execution_sdk_python.lambda_service import OperationSubType if TYPE_CHECKING: - from aws_durable_functions_sdk_python.concurrency import BatchResult - from aws_durable_functions_sdk_python.config import ChildConfig - from aws_durable_functions_sdk_python.state import ExecutionState - from aws_durable_functions_sdk_python.types import DurableContext + from aws_durable_execution_sdk_python.concurrency import BatchResult + from aws_durable_execution_sdk_python.config import ChildConfig + from aws_durable_execution_sdk_python.state import ExecutionState + from aws_durable_execution_sdk_python.types import DurableContext logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/operation/step.py b/src/aws_durable_execution_sdk_python/operation/step.py similarity index 92% rename from src/aws_durable_functions_sdk_python/operation/step.py rename to src/aws_durable_execution_sdk_python/operation/step.py index b9516d1..86ec08f 100644 --- a/src/aws_durable_functions_sdk_python/operation/step.py +++ b/src/aws_durable_execution_sdk_python/operation/step.py @@ -6,27 +6,27 @@ import time from typing import TYPE_CHECKING, TypeVar -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( RetryDecision, StepConfig, StepSemantics, ) -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( FatalError, StepInterruptedError, TimedSuspendExecution, ) -from aws_durable_functions_sdk_python.lambda_service import ErrorObject, OperationUpdate -from aws_durable_functions_sdk_python.logger import Logger, LogInfo -from aws_durable_functions_sdk_python.retries import RetryPresets -from aws_durable_functions_sdk_python.serdes import deserialize, serialize -from aws_durable_functions_sdk_python.types import StepContext +from aws_durable_execution_sdk_python.lambda_service import ErrorObject, OperationUpdate +from aws_durable_execution_sdk_python.logger import Logger, LogInfo +from aws_durable_execution_sdk_python.retries import RetryPresets +from aws_durable_execution_sdk_python.serdes import deserialize, serialize +from aws_durable_execution_sdk_python.types import StepContext if TYPE_CHECKING: from collections.abc import Callable - from aws_durable_functions_sdk_python.identifier import OperationIdentifier - from aws_durable_functions_sdk_python.state import ( + from aws_durable_execution_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.state import ( CheckpointedResult, ExecutionState, ) diff --git a/src/aws_durable_functions_sdk_python/operation/wait.py b/src/aws_durable_execution_sdk_python/operation/wait.py similarity index 82% rename from src/aws_durable_functions_sdk_python/operation/wait.py rename to src/aws_durable_execution_sdk_python/operation/wait.py index b9feb5e..8a982e6 100644 --- a/src/aws_durable_functions_sdk_python/operation/wait.py +++ b/src/aws_durable_execution_sdk_python/operation/wait.py @@ -6,12 +6,12 @@ import time from typing import TYPE_CHECKING -from aws_durable_functions_sdk_python.exceptions import TimedSuspendExecution -from aws_durable_functions_sdk_python.lambda_service import OperationUpdate, WaitOptions +from aws_durable_execution_sdk_python.exceptions import TimedSuspendExecution +from aws_durable_execution_sdk_python.lambda_service import OperationUpdate, WaitOptions if TYPE_CHECKING: - from aws_durable_functions_sdk_python.identifier import OperationIdentifier - from aws_durable_functions_sdk_python.state import ExecutionState + from aws_durable_execution_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.state import ExecutionState logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/operation/wait_for_condition.py b/src/aws_durable_execution_sdk_python/operation/wait_for_condition.py similarity index 92% rename from src/aws_durable_functions_sdk_python/operation/wait_for_condition.py rename to src/aws_durable_execution_sdk_python/operation/wait_for_condition.py index 0df6776..ebdcad9 100644 --- a/src/aws_durable_functions_sdk_python/operation/wait_for_condition.py +++ b/src/aws_durable_execution_sdk_python/operation/wait_for_condition.py @@ -6,25 +6,25 @@ import time from typing import TYPE_CHECKING, TypeVar -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( FatalError, TimedSuspendExecution, ) -from aws_durable_functions_sdk_python.lambda_service import ErrorObject, OperationUpdate -from aws_durable_functions_sdk_python.logger import LogInfo -from aws_durable_functions_sdk_python.serdes import deserialize, serialize -from aws_durable_functions_sdk_python.types import WaitForConditionCheckContext +from aws_durable_execution_sdk_python.lambda_service import ErrorObject, OperationUpdate +from aws_durable_execution_sdk_python.logger import LogInfo +from aws_durable_execution_sdk_python.serdes import deserialize, serialize +from aws_durable_execution_sdk_python.types import WaitForConditionCheckContext if TYPE_CHECKING: from collections.abc import Callable - from aws_durable_functions_sdk_python.config import ( + from aws_durable_execution_sdk_python.config import ( WaitForConditionConfig, WaitForConditionDecision, ) - from aws_durable_functions_sdk_python.identifier import OperationIdentifier - from aws_durable_functions_sdk_python.logger import Logger - from aws_durable_functions_sdk_python.state import ExecutionState + from aws_durable_execution_sdk_python.identifier import OperationIdentifier + from aws_durable_execution_sdk_python.logger import Logger + from aws_durable_execution_sdk_python.state import ExecutionState T = TypeVar("T") diff --git a/src/aws_durable_functions_sdk_python/py.typed b/src/aws_durable_execution_sdk_python/py.typed similarity index 100% rename from src/aws_durable_functions_sdk_python/py.typed rename to src/aws_durable_execution_sdk_python/py.typed diff --git a/src/aws_durable_functions_sdk_python/retries.py b/src/aws_durable_execution_sdk_python/retries.py similarity index 100% rename from src/aws_durable_functions_sdk_python/retries.py rename to src/aws_durable_execution_sdk_python/retries.py diff --git a/src/aws_durable_functions_sdk_python/serdes.py b/src/aws_durable_execution_sdk_python/serdes.py similarity index 96% rename from src/aws_durable_functions_sdk_python/serdes.py rename to src/aws_durable_execution_sdk_python/serdes.py index bb8ef16..72451d7 100644 --- a/src/aws_durable_functions_sdk_python/serdes.py +++ b/src/aws_durable_execution_sdk_python/serdes.py @@ -6,7 +6,7 @@ from dataclasses import dataclass from typing import Generic, TypeVar -from aws_durable_functions_sdk_python.exceptions import FatalError +from aws_durable_execution_sdk_python.exceptions import FatalError logger = logging.getLogger(__name__) diff --git a/src/aws_durable_functions_sdk_python/state.py b/src/aws_durable_execution_sdk_python/state.py similarity index 97% rename from src/aws_durable_functions_sdk_python/state.py rename to src/aws_durable_execution_sdk_python/state.py index 2452658..dd101a0 100644 --- a/src/aws_durable_functions_sdk_python/state.py +++ b/src/aws_durable_execution_sdk_python/state.py @@ -6,8 +6,8 @@ from threading import Lock from typing import TYPE_CHECKING -from aws_durable_functions_sdk_python.exceptions import DurableExecutionsError -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.exceptions import DurableExecutionsError +from aws_durable_execution_sdk_python.lambda_service import ( CheckpointOutput, DurableServiceClient, ErrorObject, @@ -17,7 +17,7 @@ OperationUpdate, StateOutput, ) -from aws_durable_functions_sdk_python.threading import OrderedLock +from aws_durable_execution_sdk_python.threading import OrderedLock if TYPE_CHECKING: from collections.abc import MutableMapping diff --git a/src/aws_durable_functions_sdk_python/threading.py b/src/aws_durable_execution_sdk_python/threading.py similarity index 98% rename from src/aws_durable_functions_sdk_python/threading.py rename to src/aws_durable_execution_sdk_python/threading.py index cecb595..c64ed0e 100644 --- a/src/aws_durable_functions_sdk_python/threading.py +++ b/src/aws_durable_execution_sdk_python/threading.py @@ -6,7 +6,7 @@ from threading import Event, Lock from typing import TYPE_CHECKING -from aws_durable_functions_sdk_python.exceptions import OrderedLockError +from aws_durable_execution_sdk_python.exceptions import OrderedLockError if TYPE_CHECKING: from typing import Self diff --git a/src/aws_durable_functions_sdk_python/types.py b/src/aws_durable_execution_sdk_python/types.py similarity index 98% rename from src/aws_durable_functions_sdk_python/types.py rename to src/aws_durable_execution_sdk_python/types.py index db9354a..94eb0ef 100644 --- a/src/aws_durable_functions_sdk_python/types.py +++ b/src/aws_durable_execution_sdk_python/types.py @@ -9,7 +9,7 @@ if TYPE_CHECKING: from collections.abc import Callable, Mapping, Sequence - from aws_durable_functions_sdk_python.config import ( + from aws_durable_execution_sdk_python.config import ( BatchedInput, CallbackConfig, ChildConfig, diff --git a/tests/concurrency_test.py b/tests/concurrency_test.py index 7e60ad1..51e4101 100644 --- a/tests/concurrency_test.py +++ b/tests/concurrency_test.py @@ -7,7 +7,7 @@ import pytest -from aws_durable_functions_sdk_python.concurrency import ( +from aws_durable_execution_sdk_python.concurrency import ( BatchItem, BatchItemStatus, BatchResult, @@ -19,14 +19,14 @@ ExecutionCounters, TimerScheduler, ) -from aws_durable_functions_sdk_python.config import CompletionConfig -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.config import CompletionConfig +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, InvalidStateError, SuspendExecution, TimedSuspendExecution, ) -from aws_durable_functions_sdk_python.lambda_service import ErrorObject +from aws_durable_execution_sdk_python.lambda_service import ErrorObject def test_batch_item_status_enum(): @@ -738,7 +738,7 @@ def execute_item(self, child_context, executable): # Mock ChildConfig from the config module with patch( - "aws_durable_functions_sdk_python.config.ChildConfig" + "aws_durable_execution_sdk_python.config.ChildConfig" ) as mock_child_config: mock_child_config.return_value = Mock() diff --git a/tests/config_test.py b/tests/config_test.py index ba710ae..a78d842 100644 --- a/tests/config_test.py +++ b/tests/config_test.py @@ -3,7 +3,7 @@ from concurrent.futures import ThreadPoolExecutor from unittest.mock import Mock -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( BatchedInput, CallbackConfig, CheckpointMode, diff --git a/tests/context_test.py b/tests/context_test.py index fe79aa3..cfb2e32 100644 --- a/tests/context_test.py +++ b/tests/context_test.py @@ -5,7 +5,7 @@ import pytest -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( CallbackConfig, ChildConfig, MapConfig, @@ -13,22 +13,22 @@ StepConfig, WaitForConditionConfig, ) -from aws_durable_functions_sdk_python.context import Callback, DurableContext -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.context import Callback, DurableContext +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, FatalError, SuspendExecution, ValidationError, ) -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( CallbackDetails, ErrorObject, Operation, OperationStatus, OperationType, ) -from aws_durable_functions_sdk_python.state import CheckpointedResult, ExecutionState +from aws_durable_execution_sdk_python.state import CheckpointedResult, ExecutionState from tests.serdes_test import CustomDictSerDes @@ -209,7 +209,7 @@ def test_callback_result_timed_out(): # region create_callback -@patch("aws_durable_functions_sdk_python.context.create_callback_handler") +@patch("aws_durable_execution_sdk_python.context.create_callback_handler") def test_create_callback_basic(mock_handler): """Test create_callback with basic parameters.""" mock_handler.return_value = "callback123" @@ -234,7 +234,7 @@ def test_create_callback_basic(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.create_callback_handler") +@patch("aws_durable_execution_sdk_python.context.create_callback_handler") def test_create_callback_with_name_and_config(mock_handler): """Test create_callback with name and config.""" mock_handler.return_value = "callback456" @@ -259,7 +259,7 @@ def test_create_callback_with_name_and_config(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.create_callback_handler") +@patch("aws_durable_execution_sdk_python.context.create_callback_handler") def test_create_callback_with_parent_id(mock_handler): """Test create_callback with parent_id.""" mock_handler.return_value = "callback789" @@ -282,7 +282,7 @@ def test_create_callback_with_parent_id(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.create_callback_handler") +@patch("aws_durable_execution_sdk_python.context.create_callback_handler") def test_create_callback_increments_counter(mock_handler): """Test create_callback increments step counter.""" mock_handler.return_value = "callback_test" @@ -306,7 +306,7 @@ def test_create_callback_increments_counter(mock_handler): # region step -@patch("aws_durable_functions_sdk_python.context.step_handler") +@patch("aws_durable_execution_sdk_python.context.step_handler") def test_step_basic(mock_handler): """Test step with basic parameters.""" mock_handler.return_value = "step_result" @@ -333,7 +333,7 @@ def test_step_basic(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.step_handler") +@patch("aws_durable_execution_sdk_python.context.step_handler") def test_step_with_name_and_config(mock_handler): """Test step with name and config.""" mock_handler.return_value = "configured_result" @@ -362,7 +362,7 @@ def test_step_with_name_and_config(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.step_handler") +@patch("aws_durable_execution_sdk_python.context.step_handler") def test_step_with_parent_id(mock_handler): """Test step with parent_id.""" mock_handler.return_value = "parent_result" @@ -389,7 +389,7 @@ def test_step_with_parent_id(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.step_handler") +@patch("aws_durable_execution_sdk_python.context.step_handler") def test_step_increments_counter(mock_handler): """Test step increments step counter.""" mock_handler.return_value = "result" @@ -417,7 +417,7 @@ def test_step_increments_counter(mock_handler): ] == OperationIdentifier("12", None, None) -@patch("aws_durable_functions_sdk_python.context.step_handler") +@patch("aws_durable_execution_sdk_python.context.step_handler") def test_step_with_original_name(mock_handler): """Test step with callable that has _original_name attribute.""" mock_handler.return_value = "named_result" @@ -445,7 +445,7 @@ def test_step_with_original_name(mock_handler): # region wait -@patch("aws_durable_functions_sdk_python.context.wait_handler") +@patch("aws_durable_execution_sdk_python.context.wait_handler") def test_wait_basic(mock_handler): """Test wait with basic parameters.""" mock_state = Mock(spec=ExecutionState) @@ -464,7 +464,7 @@ def test_wait_basic(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.wait_handler") +@patch("aws_durable_execution_sdk_python.context.wait_handler") def test_wait_with_name(mock_handler): """Test wait with name parameter.""" mock_state = Mock(spec=ExecutionState) @@ -484,7 +484,7 @@ def test_wait_with_name(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.wait_handler") +@patch("aws_durable_execution_sdk_python.context.wait_handler") def test_wait_with_parent_id(mock_handler): """Test wait with parent_id.""" mock_state = Mock(spec=ExecutionState) @@ -504,7 +504,7 @@ def test_wait_with_parent_id(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.wait_handler") +@patch("aws_durable_execution_sdk_python.context.wait_handler") def test_wait_increments_counter(mock_handler): """Test wait increments step counter.""" mock_state = Mock(spec=ExecutionState) @@ -527,7 +527,7 @@ def test_wait_increments_counter(mock_handler): ] == OperationIdentifier("12", None, None) -@patch("aws_durable_functions_sdk_python.context.wait_handler") +@patch("aws_durable_execution_sdk_python.context.wait_handler") def test_wait_returns_none(mock_handler): """Test wait returns None.""" mock_state = Mock(spec=ExecutionState) @@ -546,7 +546,7 @@ def test_wait_returns_none(mock_handler): # region run_in_child_context -@patch("aws_durable_functions_sdk_python.context.child_handler") +@patch("aws_durable_execution_sdk_python.context.child_handler") def test_run_in_child_context_basic(mock_handler): """Test run_in_child_context with basic parameters.""" mock_handler.return_value = "child_result" @@ -573,7 +573,7 @@ def test_run_in_child_context_basic(mock_handler): assert call_args[1]["config"] is None -@patch("aws_durable_functions_sdk_python.context.child_handler") +@patch("aws_durable_execution_sdk_python.context.child_handler") def test_run_in_child_context_with_name_and_config(mock_handler): """Test run_in_child_context with name and config.""" mock_handler.return_value = "configured_child_result" @@ -599,7 +599,7 @@ def test_run_in_child_context_with_name_and_config(mock_handler): assert call_args[1]["config"] is config -@patch("aws_durable_functions_sdk_python.context.child_handler") +@patch("aws_durable_execution_sdk_python.context.child_handler") def test_run_in_child_context_with_parent_id(mock_handler): """Test run_in_child_context with parent_id.""" mock_handler.return_value = "parent_child_result" @@ -623,7 +623,7 @@ def test_run_in_child_context_with_parent_id(mock_handler): ) -@patch("aws_durable_functions_sdk_python.context.child_handler") +@patch("aws_durable_execution_sdk_python.context.child_handler") def test_run_in_child_context_creates_child_context(mock_handler): """Test run_in_child_context creates proper child context.""" mock_state = Mock(spec=ExecutionState) @@ -649,7 +649,7 @@ def capture_child_context(child_context): mock_callable.assert_called_once() -@patch("aws_durable_functions_sdk_python.context.child_handler") +@patch("aws_durable_execution_sdk_python.context.child_handler") def test_run_in_child_context_increments_counter(mock_handler): """Test run_in_child_context increments step counter.""" mock_handler.return_value = "result" @@ -677,7 +677,7 @@ def test_run_in_child_context_increments_counter(mock_handler): ] == OperationIdentifier("7", None, None) -@patch("aws_durable_functions_sdk_python.context.child_handler") +@patch("aws_durable_execution_sdk_python.context.child_handler") def test_run_in_child_context_resolves_name_from_callable(mock_handler): """Test run_in_child_context resolves name from callable._original_name.""" mock_handler.return_value = "named_result" @@ -700,7 +700,7 @@ def test_run_in_child_context_resolves_name_from_callable(mock_handler): # region wait_for_callback -@patch("aws_durable_functions_sdk_python.context.wait_for_callback_handler") +@patch("aws_durable_execution_sdk_python.context.wait_for_callback_handler") def test_wait_for_callback_basic(mock_handler): """Test wait_for_callback with basic parameters.""" mock_handler.return_value = "callback_result" @@ -727,7 +727,7 @@ def test_wait_for_callback_basic(mock_handler): assert call_args[0][1] is None # name should be None -@patch("aws_durable_functions_sdk_python.context.wait_for_callback_handler") +@patch("aws_durable_execution_sdk_python.context.wait_for_callback_handler") def test_wait_for_callback_with_name_and_config(mock_handler): """Test wait_for_callback with name and config.""" mock_handler.return_value = "configured_callback_result" @@ -752,7 +752,7 @@ def test_wait_for_callback_with_name_and_config(mock_handler): ) # name should be from _original_name -@patch("aws_durable_functions_sdk_python.context.wait_for_callback_handler") +@patch("aws_durable_execution_sdk_python.context.wait_for_callback_handler") def test_wait_for_callback_resolves_name_from_submitter(mock_handler): """Test wait_for_callback resolves name from submitter._original_name.""" mock_handler.return_value = "named_callback_result" @@ -773,7 +773,7 @@ def test_wait_for_callback_resolves_name_from_submitter(mock_handler): assert call_args[0][1] == "submit_task" -@patch("aws_durable_functions_sdk_python.context.wait_for_callback_handler") +@patch("aws_durable_execution_sdk_python.context.wait_for_callback_handler") def test_wait_for_callback_passes_child_context(mock_handler): """Test wait_for_callback passes child context to handler.""" mock_state = Mock(spec=ExecutionState) @@ -809,7 +809,7 @@ def run_child_context(callable_func, name): # region map -@patch("aws_durable_functions_sdk_python.context.map_handler") +@patch("aws_durable_execution_sdk_python.context.map_handler") def test_map_basic(mock_handler): """Test map with basic parameters.""" mock_handler.return_value = "map_result" @@ -838,10 +838,10 @@ def test_function(context, item, index, items): assert call_args[1]["config"].sub_type.value == "Map" -@patch("aws_durable_functions_sdk_python.context.map_handler") +@patch("aws_durable_execution_sdk_python.context.map_handler") def test_map_with_name_and_config(mock_handler): """Test map with name and config.""" - from aws_durable_functions_sdk_python.config import MapConfig + from aws_durable_execution_sdk_python.config import MapConfig mock_handler.return_value = "configured_map_result" mock_state = Mock(spec=ExecutionState) @@ -868,7 +868,7 @@ def test_function(context, item, index, items): assert call_args[1]["name"] == "custom_map" # name should be custom_map -@patch("aws_durable_functions_sdk_python.context.map_handler") +@patch("aws_durable_execution_sdk_python.context.map_handler") def test_map_calls_handler_correctly(mock_handler): """Test map calls map_handler with correct parameters.""" mock_handler.return_value = "handler_result" @@ -892,7 +892,7 @@ def test_function(context, item, index, items): mock_run_in_child.assert_called_once() -@patch("aws_durable_functions_sdk_python.context.map_handler") +@patch("aws_durable_execution_sdk_python.context.map_handler") def test_map_with_empty_inputs(mock_handler): """Test map with empty inputs.""" mock_handler.return_value = "empty_map_result" @@ -915,7 +915,7 @@ def test_function(context, item, index, items): assert result == "empty_map_result" -@patch("aws_durable_functions_sdk_python.context.map_handler") +@patch("aws_durable_execution_sdk_python.context.map_handler") def test_map_with_different_input_types(mock_handler): """Test map with different input types.""" mock_handler.return_value = "mixed_map_result" @@ -942,7 +942,7 @@ def test_function(context, item, index, items): # region parallel -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_basic(mock_handler): """Test parallel with basic parameters.""" mock_handler.return_value = "parallel_result" @@ -974,10 +974,10 @@ def task2(context): assert call_args[1]["config"].sub_type.value == "Parallel" -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_with_name_and_config(mock_handler): """Test parallel with name and config.""" - from aws_durable_functions_sdk_python.config import ParallelConfig + from aws_durable_execution_sdk_python.config import ParallelConfig mock_handler.return_value = "configured_parallel_result" mock_state = Mock(spec=ExecutionState) @@ -1007,7 +1007,7 @@ def task2(context): ) # name should be custom_parallel -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_resolves_name_from_callable(mock_handler): """Test parallel resolves name from callable._original_name.""" mock_handler.return_value = "named_parallel_result" @@ -1044,7 +1044,7 @@ def task2(context): ) # name should be None since callables don't have _original_name -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_calls_handler_correctly(mock_handler): """Test parallel calls parallel_handler with correct parameters.""" mock_handler.return_value = "handler_result" @@ -1071,7 +1071,7 @@ def task2(context): mock_run_in_child.assert_called_once() -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_with_empty_callables(mock_handler): """Test parallel with empty callables.""" mock_handler.return_value = "empty_parallel_result" @@ -1091,7 +1091,7 @@ def test_parallel_with_empty_callables(mock_handler): assert result == "empty_parallel_result" -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_with_single_callable(mock_handler): """Test parallel with single callable.""" mock_handler.return_value = "single_parallel_result" @@ -1114,7 +1114,7 @@ def single_task(context): assert result == "single_parallel_result" -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_with_many_callables(mock_handler): """Test parallel with many callables.""" mock_handler.return_value = "many_parallel_result" @@ -1144,7 +1144,7 @@ def task(context): # region map -@patch("aws_durable_functions_sdk_python.context.map_handler") +@patch("aws_durable_execution_sdk_python.context.map_handler") def test_map_calls_handler(mock_handler): """Test map calls map_handler through run_in_child_context.""" mock_handler.return_value = "map_result" @@ -1169,7 +1169,7 @@ def test_function(context, item, index, items): mock_run_in_child.assert_called_once() -@patch("aws_durable_functions_sdk_python.context.parallel_handler") +@patch("aws_durable_execution_sdk_python.context.parallel_handler") def test_parallel_calls_handler(mock_handler): """Test parallel calls parallel_handler through run_in_child_context.""" mock_handler.return_value = "parallel_result" @@ -1245,7 +1245,7 @@ def test_function(context, item, index, items): # Mock the handlers to track calls with patch( - "aws_durable_functions_sdk_python.context.map_handler" + "aws_durable_execution_sdk_python.context.map_handler" ) as mock_map_handler: mock_map_handler.return_value = Mock() @@ -1285,7 +1285,7 @@ def test_callable_2(context): # Mock the handlers to track calls with patch( - "aws_durable_functions_sdk_python.context.parallel_handler" + "aws_durable_execution_sdk_python.context.parallel_handler" ) as mock_parallel_handler: mock_parallel_handler.return_value = Mock() @@ -1314,7 +1314,7 @@ def test_check(state, check_context): return state def test_wait_strategy(state, attempt): - from aws_durable_functions_sdk_python.config import WaitForConditionDecision + from aws_durable_execution_sdk_python.config import WaitForConditionDecision return WaitForConditionDecision.STOP @@ -1331,7 +1331,7 @@ def test_wait_strategy(state, attempt): # Mock the handler to track calls with patch( - "aws_durable_functions_sdk_python.context.wait_for_condition_handler" + "aws_durable_execution_sdk_python.context.wait_for_condition_handler" ) as mock_handler: mock_handler.return_value = "final_state" diff --git a/tests/durable_executions_python_language_sdk_test.py b/tests/durable_executions_python_language_sdk_test.py index a61741f..7b0f79e 100644 --- a/tests/durable_executions_python_language_sdk_test.py +++ b/tests/durable_executions_python_language_sdk_test.py @@ -1,6 +1,6 @@ """Tests for DurableExecutionsPythonLanguageSDK module.""" -def test_aws_durable_functions_sdk_python_importable(): - """Test aws_durable_functions_sdk_python is importable.""" - import aws_durable_functions_sdk_python # noqa: F401 +def test_aws_durable_execution_sdk_python_importable(): + """Test aws_durable_execution_sdk_python is importable.""" + import aws_durable_execution_sdk_python # noqa: F401 diff --git a/tests/e2e/execution_int_test.py b/tests/e2e/execution_int_test.py index ded6ced..a236bdc 100644 --- a/tests/e2e/execution_int_test.py +++ b/tests/e2e/execution_int_test.py @@ -5,23 +5,23 @@ from typing import TYPE_CHECKING, Any from unittest.mock import Mock, patch -from aws_durable_functions_sdk_python.context import ( +from aws_durable_execution_sdk_python.context import ( DurableContext, durable_step, durable_with_child_context, ) -from aws_durable_functions_sdk_python.execution import InvocationStatus, durable_handler -from aws_durable_functions_sdk_python.lambda_context import LambdaContext -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.execution import InvocationStatus, durable_handler +from aws_durable_execution_sdk_python.lambda_context import LambdaContext +from aws_durable_execution_sdk_python.lambda_service import ( CheckpointOutput, CheckpointUpdatedExecutionState, OperationAction, OperationType, ) -from aws_durable_functions_sdk_python.logger import LoggerInterface +from aws_durable_execution_sdk_python.logger import LoggerInterface if TYPE_CHECKING: - from aws_durable_functions_sdk_python.types import StepContext + from aws_durable_execution_sdk_python.types import StepContext def test_step_different_ways_to_pass_args(): @@ -57,7 +57,7 @@ def my_handler(event, context: DurableContext) -> list[str]: return results with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_client_class: mock_client = Mock() mock_client_class.initialize_local_runner_client.return_value = mock_client @@ -134,7 +134,7 @@ def my_handler(event, context: DurableContext): assert result == "result" with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_client_class: mock_client = Mock() mock_client_class.initialize_local_runner_client.return_value = mock_client @@ -216,7 +216,7 @@ def my_handler(event, context): # Mock the lambda client with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_client_class: mock_client = Mock() mock_client_class.initialize_local_runner_client.return_value = mock_client @@ -302,7 +302,7 @@ def my_handler(event: Any, context: DurableContext): raise CustomError(msg) from err with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_client_class: mock_client = Mock() mock_client_class.initialize_local_runner_client.return_value = mock_client diff --git a/tests/exceptions_test.py b/tests/exceptions_test.py index d548b1b..de8e279 100644 --- a/tests/exceptions_test.py +++ b/tests/exceptions_test.py @@ -2,7 +2,7 @@ import pytest -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, CallableRuntimeErrorSerializableDetails, CheckpointError, diff --git a/tests/execution_test.py b/tests/execution_test.py index afe5e3a..cffa141 100644 --- a/tests/execution_test.py +++ b/tests/execution_test.py @@ -7,17 +7,17 @@ import pytest -from aws_durable_functions_sdk_python.context import DurableContext -from aws_durable_functions_sdk_python.exceptions import CheckpointError, FatalError -from aws_durable_functions_sdk_python.execution import ( +from aws_durable_execution_sdk_python.context import DurableContext +from aws_durable_execution_sdk_python.exceptions import CheckpointError, FatalError +from aws_durable_execution_sdk_python.execution import ( DurableExecutionInvocationInput, DurableExecutionInvocationInputWithClient, InitialExecutionState, InvocationStatus, durable_handler, ) -from aws_durable_functions_sdk_python.lambda_context import LambdaContext -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.lambda_context import LambdaContext +from aws_durable_execution_sdk_python.lambda_service import ( CheckpointOutput, CheckpointUpdatedExecutionState, DurableServiceClient, @@ -271,7 +271,7 @@ def test_operation_to_dict_minimal(): def test_durable_handler_client_selection_env_normal_result(): """Test durable_handler selects correct client from environment.""" with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_lambda_client: mock_client = Mock(spec=DurableServiceClient) mock_lambda_client.initialize_from_env.return_value = mock_client @@ -324,7 +324,7 @@ def test_handler(event: Any, context: DurableContext) -> dict: def test_durable_handler_client_selection_env_large_result(): """Test durable_handler selects correct client from environment.""" with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_lambda_client: mock_client = Mock(spec=DurableServiceClient) mock_lambda_client.initialize_from_env.return_value = mock_client @@ -617,7 +617,7 @@ def test_handler(event: Any, context: DurableContext) -> dict: def test_durable_handler_client_selection_local_runner(): """Test durable_handler selects correct client for local runner.""" with patch( - "aws_durable_functions_sdk_python.execution.LambdaClient" + "aws_durable_execution_sdk_python.execution.LambdaClient" ) as mock_lambda_client: mock_client = Mock(spec=DurableServiceClient) mock_lambda_client.initialize_local_runner_client.return_value = mock_client diff --git a/tests/lambda_context_test.py b/tests/lambda_context_test.py index eb307cf..2e6ee7a 100644 --- a/tests/lambda_context_test.py +++ b/tests/lambda_context_test.py @@ -2,7 +2,7 @@ from unittest.mock import Mock, patch -from aws_durable_functions_sdk_python.lambda_context import ( +from aws_durable_execution_sdk_python.lambda_context import ( Client, ClientContext, CognitoIdentity, diff --git a/tests/lambda_service_test.py b/tests/lambda_service_test.py index cba6747..137b66d 100644 --- a/tests/lambda_service_test.py +++ b/tests/lambda_service_test.py @@ -5,12 +5,12 @@ import pytest -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, CheckpointError, ) -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( CallbackDetails, CallbackOptions, CheckpointOutput, @@ -480,7 +480,7 @@ def test_operation_update_create_wait_start(): assert update.sub_type is OperationSubType.WAIT -@patch("aws_durable_functions_sdk_python.lambda_service.datetime") +@patch("aws_durable_execution_sdk_python.lambda_service.datetime") def test_operation_update_create_execution_succeed(mock_datetime): """Test OperationUpdate.create_execution_succeed factory method.""" mock_datetime.datetime.now.return_value = "2023-01-01" @@ -775,7 +775,7 @@ def test_state_output_from_dict_empty_operations(): assert output.next_marker == "marker123" -@patch("aws_durable_functions_sdk_python.lambda_service.boto3") +@patch("aws_durable_execution_sdk_python.lambda_service.boto3") def test_lambda_client_initialize_from_endpoint_and_region(mock_boto3): """Test LambdaClient.initialize_from_endpoint_and_region method.""" mock_client = Mock() @@ -795,7 +795,7 @@ def test_lambda_client_initialize_from_endpoint_and_region(mock_boto3): "os.environ", {"LOCAL_RUNNER_ENDPOINT": "http://test:5000", "LOCAL_RUNNER_REGION": "us-west-1"}, ) -@patch("aws_durable_functions_sdk_python.lambda_service.boto3") +@patch("aws_durable_execution_sdk_python.lambda_service.boto3") def test_lambda_client_initialize_local_runner_client(mock_boto3): """Test LambdaClient.initialize_local_runner_client method.""" mock_client = Mock() @@ -813,7 +813,7 @@ def test_lambda_client_initialize_local_runner_client(mock_boto3): "os.environ", {"DEX_ENDPOINT": "https://lambda.test.com", "DEX_REGION": "eu-west-1"} ) @patch( - "aws_durable_functions_sdk_python.lambda_service.LambdaClient.initialize_from_endpoint_and_region" + "aws_durable_execution_sdk_python.lambda_service.LambdaClient.initialize_from_endpoint_and_region" ) def test_lambda_client_initialize_from_env(mock_init): """Test LambdaClient.initialize_from_env method.""" @@ -1496,7 +1496,7 @@ def test_operation_update_to_dict_without_sub_type(): # Additional tests for LambdaClient factory methods with environment variables @patch.dict("os.environ", {}, clear=True) -@patch("aws_durable_functions_sdk_python.lambda_service.boto3") +@patch("aws_durable_execution_sdk_python.lambda_service.boto3") def test_lambda_client_initialize_local_runner_client_defaults(mock_boto3): """Test LambdaClient.initialize_local_runner_client with default environment values.""" mock_client = Mock() @@ -1514,7 +1514,7 @@ def test_lambda_client_initialize_local_runner_client_defaults(mock_boto3): @patch.dict("os.environ", {}, clear=True) @patch( - "aws_durable_functions_sdk_python.lambda_service.LambdaClient.initialize_from_endpoint_and_region" + "aws_durable_execution_sdk_python.lambda_service.LambdaClient.initialize_from_endpoint_and_region" ) def test_lambda_client_initialize_from_env_defaults(mock_init): """Test LambdaClient.initialize_from_env with default environment values.""" diff --git a/tests/logger_test.py b/tests/logger_test.py index 011aed3..d3b76aa 100644 --- a/tests/logger_test.py +++ b/tests/logger_test.py @@ -3,8 +3,8 @@ from collections.abc import Mapping from unittest.mock import Mock -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.logger import Logger, LoggerInterface, LogInfo +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.logger import Logger, LoggerInterface, LogInfo class PowertoolsLoggerStub: diff --git a/tests/operation/callback_test.py b/tests/operation/callback_test.py index 633efeb..6b59a10 100644 --- a/tests/operation/callback_test.py +++ b/tests/operation/callback_test.py @@ -4,10 +4,10 @@ import pytest -from aws_durable_functions_sdk_python.config import CallbackConfig -from aws_durable_functions_sdk_python.exceptions import FatalError -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.config import CallbackConfig +from aws_durable_execution_sdk_python.exceptions import FatalError +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( CallbackDetails, CallbackOptions, Operation, @@ -17,12 +17,12 @@ OperationType, OperationUpdate, ) -from aws_durable_functions_sdk_python.operation.callback import ( +from aws_durable_execution_sdk_python.operation.callback import ( create_callback_handler, wait_for_callback_handler, ) -from aws_durable_functions_sdk_python.state import CheckpointedResult, ExecutionState -from aws_durable_functions_sdk_python.types import DurableContext, StepContext +from aws_durable_execution_sdk_python.state import CheckpointedResult, ExecutionState +from aws_durable_execution_sdk_python.types import DurableContext, StepContext # region create_callback_handler @@ -945,7 +945,7 @@ def test_callback_name_variations(): mock_context.reset_mock() -@patch("aws_durable_functions_sdk_python.operation.callback.OperationUpdate") +@patch("aws_durable_execution_sdk_python.operation.callback.OperationUpdate") def test_callback_operation_update_creation(mock_operation_update): """Test that OperationUpdate.create_callback is called with correct parameters.""" mock_state = Mock(spec=ExecutionState) diff --git a/tests/operation/child_test.py b/tests/operation/child_test.py index 45f2955..e284518 100644 --- a/tests/operation/child_test.py +++ b/tests/operation/child_test.py @@ -5,17 +5,17 @@ import pytest -from aws_durable_functions_sdk_python.config import ChildConfig -from aws_durable_functions_sdk_python.exceptions import CallableRuntimeError, FatalError -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.config import ChildConfig +from aws_durable_execution_sdk_python.exceptions import CallableRuntimeError, FatalError +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( ErrorObject, OperationAction, OperationSubType, OperationType, ) -from aws_durable_functions_sdk_python.operation.child import child_handler -from aws_durable_functions_sdk_python.state import ExecutionState +from aws_durable_execution_sdk_python.operation.child import child_handler +from aws_durable_execution_sdk_python.state import ExecutionState from tests.serdes_test import CustomDictSerDes diff --git a/tests/operation/map_test.py b/tests/operation/map_test.py index 1fec946..f61472e 100644 --- a/tests/operation/map_test.py +++ b/tests/operation/map_test.py @@ -2,10 +2,10 @@ from unittest.mock import Mock, patch -from aws_durable_functions_sdk_python.concurrency import BatchResult, Executable -from aws_durable_functions_sdk_python.config import CompletionConfig, MapConfig -from aws_durable_functions_sdk_python.lambda_service import OperationSubType -from aws_durable_functions_sdk_python.operation.map import MapExecutor, map_handler +from aws_durable_execution_sdk_python.concurrency import BatchResult, Executable +from aws_durable_execution_sdk_python.config import CompletionConfig, MapConfig +from aws_durable_execution_sdk_python.lambda_service import OperationSubType +from aws_durable_execution_sdk_python.operation.map import MapExecutor, map_handler def test_map_executor_init(): @@ -57,7 +57,7 @@ def callable_func(ctx, item, idx, items): assert executor.items == items -@patch("aws_durable_functions_sdk_python.operation.map.logger") +@patch("aws_durable_execution_sdk_python.operation.map.logger") def test_map_executor_execute_item(mock_logger): """Test MapExecutor.execute_item method with logging.""" items = ["hello", "world"] diff --git a/tests/operation/parallel_test.py b/tests/operation/parallel_test.py index 90ad7dc..c8e4416 100644 --- a/tests/operation/parallel_test.py +++ b/tests/operation/parallel_test.py @@ -4,14 +4,14 @@ import pytest -from aws_durable_functions_sdk_python.concurrency import BatchResult, Executable -from aws_durable_functions_sdk_python.config import CompletionConfig, ParallelConfig -from aws_durable_functions_sdk_python.lambda_service import OperationSubType -from aws_durable_functions_sdk_python.operation.parallel import ( +from aws_durable_execution_sdk_python.concurrency import BatchResult, Executable +from aws_durable_execution_sdk_python.config import CompletionConfig, ParallelConfig +from aws_durable_execution_sdk_python.lambda_service import OperationSubType +from aws_durable_execution_sdk_python.operation.parallel import ( ParallelExecutor, parallel_handler, ) -from aws_durable_functions_sdk_python.state import ExecutionState +from aws_durable_execution_sdk_python.state import ExecutionState def test_parallel_executor_init(): @@ -235,7 +235,7 @@ def mock_run_in_child_context(callable_func, name, child_config): def test_parallel_executor_inheritance(): """Test that ParallelExecutor properly inherits from ConcurrentExecutor.""" - from aws_durable_functions_sdk_python.concurrency import ConcurrentExecutor + from aws_durable_execution_sdk_python.concurrency import ConcurrentExecutor executables = [Executable(index=0, func=lambda x: x)] executor = ParallelExecutor( diff --git a/tests/operation/step_test.py b/tests/operation/step_test.py index 70c1731..1b5c2fd 100644 --- a/tests/operation/step_test.py +++ b/tests/operation/step_test.py @@ -5,19 +5,19 @@ import pytest -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( RetryDecision, StepConfig, StepSemantics, ) -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, FatalError, StepInterruptedError, SuspendExecution, ) -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( ErrorObject, Operation, OperationAction, @@ -26,9 +26,9 @@ OperationType, StepDetails, ) -from aws_durable_functions_sdk_python.logger import Logger -from aws_durable_functions_sdk_python.operation.step import step_handler -from aws_durable_functions_sdk_python.state import CheckpointedResult, ExecutionState +from aws_durable_execution_sdk_python.logger import Logger +from aws_durable_execution_sdk_python.operation.step import step_handler +from aws_durable_execution_sdk_python.state import CheckpointedResult, ExecutionState from tests.serdes_test import CustomDictSerDes @@ -404,7 +404,7 @@ def test_step_handler_retry_with_existing_attempts(): assert call_args[1] == 3 # retry_attempt + 1 -@patch("aws_durable_functions_sdk_python.operation.step.retry_handler") +@patch("aws_durable_execution_sdk_python.operation.step.retry_handler") def test_step_handler_retry_handler_no_exception(mock_retry_handler): """Test step_handler when retry_handler doesn't raise an exception.""" mock_state = Mock(spec=ExecutionState) diff --git a/tests/operation/wait_for_condition_test.py b/tests/operation/wait_for_condition_test.py index e38246d..8f51fbe 100644 --- a/tests/operation/wait_for_condition_test.py +++ b/tests/operation/wait_for_condition_test.py @@ -5,28 +5,28 @@ import pytest -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( WaitForConditionConfig, WaitForConditionDecision, ) -from aws_durable_functions_sdk_python.exceptions import ( +from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, SuspendExecution, ) -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( ErrorObject, Operation, OperationStatus, OperationType, StepDetails, ) -from aws_durable_functions_sdk_python.logger import Logger, LogInfo -from aws_durable_functions_sdk_python.operation.wait_for_condition import ( +from aws_durable_execution_sdk_python.logger import Logger, LogInfo +from aws_durable_execution_sdk_python.operation.wait_for_condition import ( wait_for_condition_handler, ) -from aws_durable_functions_sdk_python.state import CheckpointedResult, ExecutionState -from aws_durable_functions_sdk_python.types import WaitForConditionCheckContext +from aws_durable_execution_sdk_python.state import CheckpointedResult, ExecutionState +from aws_durable_execution_sdk_python.types import WaitForConditionCheckContext from tests.serdes_test import CustomDictSerDes diff --git a/tests/operation/wait_test.py b/tests/operation/wait_test.py index 0305cca..63df635 100644 --- a/tests/operation/wait_test.py +++ b/tests/operation/wait_test.py @@ -4,17 +4,17 @@ import pytest -from aws_durable_functions_sdk_python.exceptions import SuspendExecution -from aws_durable_functions_sdk_python.identifier import OperationIdentifier -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.exceptions import SuspendExecution +from aws_durable_execution_sdk_python.identifier import OperationIdentifier +from aws_durable_execution_sdk_python.lambda_service import ( OperationAction, OperationSubType, OperationType, OperationUpdate, WaitOptions, ) -from aws_durable_functions_sdk_python.operation.wait import wait_handler -from aws_durable_functions_sdk_python.state import CheckpointedResult, ExecutionState +from aws_durable_execution_sdk_python.operation.wait import wait_handler +from aws_durable_execution_sdk_python.state import CheckpointedResult, ExecutionState def test_wait_handler_already_completed(): diff --git a/tests/serdes_test.py b/tests/serdes_test.py index 2cafc67..2a83324 100644 --- a/tests/serdes_test.py +++ b/tests/serdes_test.py @@ -3,8 +3,8 @@ import pytest -from aws_durable_functions_sdk_python.exceptions import FatalError -from aws_durable_functions_sdk_python.serdes import ( +from aws_durable_execution_sdk_python.exceptions import FatalError +from aws_durable_execution_sdk_python.serdes import ( SerDes, SerDesContext, deserialize, diff --git a/tests/state_test.py b/tests/state_test.py index 50537f0..e17aca6 100644 --- a/tests/state_test.py +++ b/tests/state_test.py @@ -4,8 +4,8 @@ import pytest -from aws_durable_functions_sdk_python.exceptions import DurableExecutionsError -from aws_durable_functions_sdk_python.lambda_service import ( +from aws_durable_execution_sdk_python.exceptions import DurableExecutionsError +from aws_durable_execution_sdk_python.lambda_service import ( CallbackDetails, CheckpointOutput, CheckpointUpdatedExecutionState, @@ -20,7 +20,7 @@ StateOutput, StepDetails, ) -from aws_durable_functions_sdk_python.state import CheckpointedResult, ExecutionState +from aws_durable_execution_sdk_python.state import CheckpointedResult, ExecutionState def test_checkpointed_result_create_from_operation_step(): diff --git a/tests/threading_test.py b/tests/threading_test.py index 1cb4b34..67847f8 100644 --- a/tests/threading_test.py +++ b/tests/threading_test.py @@ -5,8 +5,8 @@ import pytest -from aws_durable_functions_sdk_python.exceptions import OrderedLockError -from aws_durable_functions_sdk_python.threading import OrderedCounter, OrderedLock +from aws_durable_execution_sdk_python.exceptions import OrderedLockError +from aws_durable_execution_sdk_python.threading import OrderedCounter, OrderedLock # region OrderedLock diff --git a/tests/types_test.py b/tests/types_test.py index 5d39f21..7dd7e46 100644 --- a/tests/types_test.py +++ b/tests/types_test.py @@ -2,7 +2,7 @@ from unittest.mock import Mock -from aws_durable_functions_sdk_python.config import ( +from aws_durable_execution_sdk_python.config import ( BatchedInput, CallbackConfig, ChildConfig, @@ -10,7 +10,7 @@ ParallelConfig, StepConfig, ) -from aws_durable_functions_sdk_python.types import Callback, DurableContext +from aws_durable_execution_sdk_python.types import Callback, DurableContext def test_callback_protocol():