aws-durable-execution-sdk-python-testing 1.0.0.post2__tar.gz → 1.1.0__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 (52) hide show
  1. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/PKG-INFO +5 -2
  2. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/README.md +3 -0
  3. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/__about__.py +1 -1
  4. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/cli.py +2 -7
  5. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/invoker.py +3 -5
  6. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/runner.py +7 -24
  7. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/serialization.py +2 -12
  8. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/pyproject.toml +3 -3
  9. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/.gitignore +0 -0
  10. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/LICENSE +0 -0
  11. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/NOTICE +0 -0
  12. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/__init__.py +0 -0
  13. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/__init__.py +0 -0
  14. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processor.py +0 -0
  15. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/__init__.py +0 -0
  16. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/base.py +0 -0
  17. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/callback.py +0 -0
  18. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/context.py +0 -0
  19. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/execution.py +0 -0
  20. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/step.py +0 -0
  21. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/processors/wait.py +0 -0
  22. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/transformer.py +0 -0
  23. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/__init__.py +0 -0
  24. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/checkpoint.py +0 -0
  25. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/__init__.py +0 -0
  26. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/callback.py +0 -0
  27. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/context.py +0 -0
  28. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/execution.py +0 -0
  29. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/invoke.py +0 -0
  30. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/step.py +0 -0
  31. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/operations/wait.py +0 -0
  32. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/checkpoint/validators/transitions.py +0 -0
  33. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/client.py +0 -0
  34. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/exceptions.py +0 -0
  35. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/execution.py +0 -0
  36. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/executor.py +0 -0
  37. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/model.py +0 -0
  38. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/observer.py +0 -0
  39. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/py.typed +0 -0
  40. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/scheduler.py +0 -0
  41. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/stores/__init__.py +0 -0
  42. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/stores/base.py +0 -0
  43. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/stores/filesystem.py +0 -0
  44. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/stores/memory.py +0 -0
  45. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/stores/sqlite.py +0 -0
  46. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/token.py +0 -0
  47. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/__init__.py +0 -0
  48. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/errors.py +0 -0
  49. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/handlers.py +0 -0
  50. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/models.py +0 -0
  51. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/routes.py +0 -0
  52. {aws_durable_execution_sdk_python_testing-1.0.0.post2 → aws_durable_execution_sdk_python_testing-1.1.0}/aws_durable_execution_sdk_python_testing/web/server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aws-durable-execution-sdk-python-testing
3
- Version: 1.0.0.post2
3
+ Version: 1.1.0
4
4
  Summary: AWS Durable Execution Testing SDK for Python
5
5
  Project-URL: Documentation, https://github.com/aws/aws-durable-execution-sdk-python-testing#readme
6
6
  Project-URL: Issues, https://github.com/aws/aws-durable-execution-sdk-python-testing/issues
@@ -19,7 +19,7 @@ Classifier: Programming Language :: Python :: Implementation :: CPython
19
19
  Classifier: Programming Language :: Python :: Implementation :: PyPy
20
20
  Requires-Python: >=3.11
21
21
  Requires-Dist: aws-durable-execution-sdk-python>=1.0.0
22
- Requires-Dist: boto3>=1.40.30
22
+ Requires-Dist: boto3>=1.42.1
23
23
  Requires-Dist: requests>=2.25.0
24
24
  Description-Content-Type: text/markdown
25
25
 
@@ -28,6 +28,9 @@ Description-Content-Type: text/markdown
28
28
  [![PyPI - Version](https://img.shields.io/pypi/v/aws-durable-execution-sdk-python-testing.svg)](https://pypi.org/project/aws-durable-execution-sdk-python-testing)
29
29
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/aws-durable-execution-sdk-python-testing.svg)](https://pypi.org/project/aws-durable-execution-sdk-python-testing)
30
30
 
31
+
32
+ [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/aws/aws-durable-execution-sdk-python-testing/badge)](https://scorecard.dev/viewer/?uri=github.com/aws/aws-durable-execution-sdk-python-testing)
33
+
31
34
  -----
32
35
 
33
36
  ## Table of Contents
@@ -3,6 +3,9 @@
3
3
  [![PyPI - Version](https://img.shields.io/pypi/v/aws-durable-execution-sdk-python-testing.svg)](https://pypi.org/project/aws-durable-execution-sdk-python-testing)
4
4
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/aws-durable-execution-sdk-python-testing.svg)](https://pypi.org/project/aws-durable-execution-sdk-python-testing)
5
5
 
6
+
7
+ [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/aws/aws-durable-execution-sdk-python-testing/badge)](https://scorecard.dev/viewer/?uri=github.com/aws/aws-durable-execution-sdk-python-testing)
8
+
6
9
  -----
7
10
 
8
11
  ## Table of Contents
@@ -1,4 +1,4 @@
1
1
  # SPDX-FileCopyrightText: 2025-present Amazon.com, Inc. or its affiliates.
2
2
  #
3
3
  # SPDX-License-Identifier: Apache-2.0
4
- __version__ = "1.0.0.post2"
4
+ __version__ = "1.1.0"
@@ -458,7 +458,7 @@ class CliApp:
458
458
  def _create_boto3_client(
459
459
  self, endpoint_url: str | None = None, region_name: str | None = None
460
460
  ) -> Any:
461
- """Create boto3 client for lambdainternal service.
461
+ """Create boto3 client for Lambda service.
462
462
 
463
463
  Args:
464
464
  endpoint_url: Optional endpoint URL override
@@ -471,18 +471,13 @@ class CliApp:
471
471
  Exception: If client creation fails
472
472
  """
473
473
  try:
474
- # Set up AWS data path for boto models
475
- package_path = os.path.dirname(aws_durable_execution_sdk_python.__file__)
476
- data_path = f"{package_path}/botocore/data"
477
- os.environ["AWS_DATA_PATH"] = data_path
478
-
479
474
  # Use provided values or fall back to config
480
475
  final_endpoint = endpoint_url or self.config.local_runner_endpoint
481
476
  final_region = region_name or self.config.local_runner_region
482
477
 
483
478
  # Create client with local endpoint - no AWS access keys required
484
479
  return boto3.client(
485
- "lambdainternal",
480
+ "lambda",
486
481
  endpoint_url=final_endpoint,
487
482
  region_name=final_region,
488
483
  )
@@ -136,9 +136,7 @@ class LambdaInvoker(Invoker):
136
136
  def create(endpoint_url: str, region_name: str) -> LambdaInvoker:
137
137
  """Create with the boto lambda client."""
138
138
  invoker = LambdaInvoker(
139
- boto3.client(
140
- "lambdainternal", endpoint_url=endpoint_url, region_name=region_name
141
- )
139
+ boto3.client("lambda", endpoint_url=endpoint_url, region_name=region_name)
142
140
  )
143
141
  invoker._current_endpoint = endpoint_url
144
142
  invoker._endpoint_clients[endpoint_url] = invoker.lambda_client
@@ -150,7 +148,7 @@ class LambdaInvoker(Invoker):
150
148
  with self._lock:
151
149
  if endpoint_url not in self._endpoint_clients:
152
150
  self._endpoint_clients[endpoint_url] = boto3.client(
153
- "lambdainternal", endpoint_url=endpoint_url, region_name=region_name
151
+ "lambda", endpoint_url=endpoint_url, region_name=region_name
154
152
  )
155
153
  self.lambda_client = self._endpoint_clients[endpoint_url]
156
154
  self._current_endpoint = endpoint_url
@@ -166,7 +164,7 @@ class LambdaInvoker(Invoker):
166
164
  if lambda_endpoint:
167
165
  if lambda_endpoint not in self._endpoint_clients:
168
166
  self._endpoint_clients[lambda_endpoint] = boto3.client(
169
- "lambdainternal",
167
+ "lambda",
170
168
  endpoint_url=lambda_endpoint,
171
169
  region_name=region_name or "us-east-1",
172
170
  )
@@ -698,10 +698,7 @@ class DurableFunctionTestRunner:
698
698
 
699
699
  # Timeout reached
700
700
  elapsed = time.time() - start_time
701
- msg = (
702
- f"Callback did not available within {timeout}s "
703
- f"(elapsed: {elapsed:.1f}s."
704
- )
701
+ msg = f"Callback did not available within {timeout}s (elapsed: {elapsed:.1f}s."
705
702
  raise TimeoutError(msg)
706
703
 
707
704
 
@@ -850,26 +847,20 @@ class WebRunner:
850
847
  self._executor = None
851
848
 
852
849
  def _create_boto3_client(self) -> Any:
853
- """Create boto3 client for lambdainternal service.
850
+ """Create boto3 client for Lambda service.
854
851
 
855
- Configures AWS data path and creates a boto3 client with the
856
- local runner endpoint and region from configuration.
852
+ Creates a boto3 client with the local runner endpoint and region from configuration.
857
853
 
858
854
  Returns:
859
- Configured boto3 client for lambdainternal service
855
+ Configured boto3 client for Lambda service
860
856
 
861
857
  Raises:
862
858
  Exception: If client creation fails - exceptions propagate naturally
863
859
  for CLI to handle as general Exception
864
860
  """
865
- # Set up AWS data path for boto models
866
- package_path = os.path.dirname(aws_durable_execution_sdk_python.__file__)
867
- data_path = f"{package_path}/botocore/data"
868
- os.environ["AWS_DATA_PATH"] = data_path
869
-
870
861
  # Create client with Lambda endpoint configuration
871
862
  return boto3.client(
872
- "lambdainternal",
863
+ "lambda",
873
864
  endpoint_url=self._config.lambda_endpoint,
874
865
  region_name=self._config.local_runner_region,
875
866
  )
@@ -904,14 +895,9 @@ class DurableFunctionCloudTestRunner:
904
895
  self.lambda_endpoint = lambda_endpoint
905
896
  self.poll_interval = poll_interval
906
897
 
907
- # Set up AWS data path for custom boto models (durable execution fields)
908
- package_path = os.path.dirname(aws_durable_execution_sdk_python.__file__)
909
- data_path = f"{package_path}/botocore/data"
910
- os.environ["AWS_DATA_PATH"] = data_path
911
-
912
898
  client_config = boto3.session.Config(parameter_validation=False)
913
899
  self.lambda_client = boto3.client(
914
- "lambdainternal",
900
+ "lambda",
915
901
  endpoint_url=lambda_endpoint,
916
902
  region_name=region,
917
903
  config=client_config,
@@ -1154,10 +1140,7 @@ class DurableFunctionCloudTestRunner:
1154
1140
 
1155
1141
  # Timeout reached
1156
1142
  elapsed = time.time() - start_time
1157
- msg = (
1158
- f"Callback did not available within {timeout}s "
1159
- f"(elapsed: {elapsed:.1f}s."
1160
- )
1143
+ msg = f"Callback did not available within {timeout}s (elapsed: {elapsed:.1f}s."
1161
1144
  raise TimeoutError(msg)
1162
1145
 
1163
1146
  def _fetch_execution_history(
@@ -110,15 +110,10 @@ class AwsRestJsonSerializer:
110
110
  InvalidParameterValueException: If serializer creation fails
111
111
  """
112
112
  try:
113
- package_path = os.path.dirname(aws_durable_execution_sdk_python.__file__)
114
- data_path = f"{package_path}/botocore/data"
115
-
116
113
  # Load service model
117
- os.environ["AWS_DATA_PATH"] = data_path
118
114
  loader = botocore.loaders.Loader()
119
- loader.search_paths.append(data_path)
120
115
 
121
- raw_model = loader.load_service_model("lambdainternal", "service-2")
116
+ raw_model = loader.load_service_model("lambda", "service-2")
122
117
  service_model = ServiceModel(raw_model)
123
118
 
124
119
  # Create serializer (rest-json protocol)
@@ -190,15 +185,10 @@ class AwsRestJsonDeserializer:
190
185
  InvalidParameterValueException: If deserializer creation fails
191
186
  """
192
187
  try:
193
- package_path = os.path.dirname(aws_durable_execution_sdk_python.__file__)
194
- data_path = f"{package_path}/botocore/data"
195
-
196
188
  # Load service model
197
- os.environ["AWS_DATA_PATH"] = data_path
198
189
  loader = botocore.loaders.Loader()
199
- loader.search_paths.append(data_path)
200
190
 
201
- raw_model = loader.load_service_model("lambdainternal", "service-2")
191
+ raw_model = loader.load_service_model("lambda", "service-2")
202
192
  service_model = ServiceModel(raw_model)
203
193
 
204
194
  # Create parser (rest-json protocol)
@@ -22,7 +22,7 @@ classifiers = [
22
22
  "Programming Language :: Python :: Implementation :: PyPy",
23
23
  ]
24
24
  dependencies = [
25
- "boto3>=1.40.30",
25
+ "boto3>=1.42.1",
26
26
  "requests>=2.25.0",
27
27
  "aws_durable_execution_sdk_python>=1.0.0",
28
28
  ]
@@ -59,7 +59,7 @@ dependencies = [
59
59
  "pytest",
60
60
  "pytest-cov",
61
61
  "ruff",
62
- "aws_durable_execution_sdk_python @ {env:AWS_DURABLE_SDK_URL:git+ssh://git@github.com/aws/aws-durable-execution-sdk-python.git}",
62
+ "aws_durable_execution_sdk_python>=1.0.0",
63
63
  ]
64
64
 
65
65
  [tool.hatch.envs.test.scripts]
@@ -72,7 +72,7 @@ cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=src/aw
72
72
  dependencies = [
73
73
  "boto3",
74
74
  "PyYAML",
75
- "aws_durable_execution_sdk_python @ {env:AWS_DURABLE_SDK_URL:git+ssh://git@github.com/aws/aws-durable-execution-sdk-python.git}",
75
+ "aws_durable_execution_sdk_python>=1.0.0",
76
76
  ]
77
77
  [tool.hatch.envs.examples.scripts]
78
78
  cli = "python examples/cli.py {args}"