async-lambda-unstable 0.4.6__tar.gz → 0.4.7__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 (34) hide show
  1. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/PKG-INFO +1 -1
  2. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/__init__.py +1 -1
  3. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/controller.py +2 -1
  4. async-lambda-unstable-0.4.7/async_lambda/payload_encoder.py +11 -0
  5. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda_unstable.egg-info/PKG-INFO +1 -1
  6. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda_unstable.egg-info/SOURCES.txt +1 -0
  7. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/README.md +0 -0
  8. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/build_config.py +0 -0
  9. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/cli.py +0 -0
  10. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/client.py +0 -0
  11. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/config.py +0 -0
  12. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/defer.py +0 -0
  13. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/env.py +0 -0
  14. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/middleware.py +0 -0
  15. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/__init__.py +0 -0
  16. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/case_insensitive_dict.py +0 -0
  17. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/__init__.py +0 -0
  18. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/api_event.py +0 -0
  19. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/base_event.py +0 -0
  20. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/dynamodb_event.py +0 -0
  21. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/managed_sqs_event.py +0 -0
  22. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/scheduled_event.py +0 -0
  23. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/events/unmanaged_sqs_event.py +0 -0
  24. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/mock/mock_context.py +0 -0
  25. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/mock/mock_event.py +0 -0
  26. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/models/task.py +0 -0
  27. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/py.typed +0 -0
  28. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda/util.py +0 -0
  29. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda_unstable.egg-info/dependency_links.txt +0 -0
  30. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda_unstable.egg-info/entry_points.txt +0 -0
  31. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda_unstable.egg-info/requires.txt +0 -0
  32. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/async_lambda_unstable.egg-info/top_level.txt +0 -0
  33. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/pyproject.toml +0 -0
  34. {async-lambda-unstable-0.4.6 → async-lambda-unstable-0.4.7}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: async-lambda-unstable
3
- Version: 0.4.6
3
+ Version: 0.4.7
4
4
  Summary: A framework for creating AWS Lambda Async Workflows. - Unstable Branch
5
5
  Author-email: "Nuclei, Inc" <engineering@nuclei.ai>
6
6
  Description-Content-Type: text/markdown
@@ -14,4 +14,4 @@ from .models.events.managed_sqs_event import ManagedSQSEvent as ManagedSQSEvent
14
14
  from .models.events.scheduled_event import ScheduledEvent as ScheduledEvent
15
15
  from .models.events.unmanaged_sqs_event import UnmanagedSQSEvent as UnmanagedSQSEvent
16
16
 
17
- __version__ = "0.4.6"
17
+ __version__ = "0.4.7"
@@ -21,6 +21,7 @@ from .models.events.unmanaged_sqs_event import UnmanagedSQSEvent
21
21
  from .models.mock.mock_context import MockLambdaContext
22
22
  from .models.mock.mock_event import MockSQSLambdaEvent
23
23
  from .models.task import AsyncLambdaTask, TaskTriggerType
24
+ from .payload_encoder import PayloadEncoder
24
25
  from .util import make_cf_tags
25
26
 
26
27
  logger = logging.getLogger(__name__)
@@ -392,7 +393,7 @@ class AsyncLambdaController:
392
393
  "destination_task_id": destination_task_id,
393
394
  "invocation_id": invocation_id,
394
395
  }
395
- serialized_payload = json.dumps(payload)
396
+ serialized_payload = json.dumps(payload, cls=PayloadEncoder)
396
397
  payload_size = len(serialized_payload.encode())
397
398
  if payload_size < 250_000: # we need to double encode to be sure
398
399
  payload_size = len(json.dumps(serialized_payload).encode())
@@ -0,0 +1,11 @@
1
+ import json
2
+ from typing import Any, Union
3
+ from uuid import UUID
4
+
5
+
6
+ class PayloadEncoder(json.JSONEncoder):
7
+ def default(self, obj) -> Union[str, Any]:
8
+ if isinstance(obj, UUID):
9
+ return str(obj)
10
+
11
+ return super().default(obj)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: async-lambda-unstable
3
- Version: 0.4.6
3
+ Version: 0.4.7
4
4
  Summary: A framework for creating AWS Lambda Async Workflows. - Unstable Branch
5
5
  Author-email: "Nuclei, Inc" <engineering@nuclei.ai>
6
6
  Description-Content-Type: text/markdown
@@ -9,6 +9,7 @@ async_lambda/controller.py
9
9
  async_lambda/defer.py
10
10
  async_lambda/env.py
11
11
  async_lambda/middleware.py
12
+ async_lambda/payload_encoder.py
12
13
  async_lambda/py.typed
13
14
  async_lambda/util.py
14
15
  async_lambda/models/__init__.py