django-lambda-tasks 0.1.2__tar.gz → 0.1.3__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 (76) hide show
  1. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/PKG-INFO +1 -1
  2. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/models.py +7 -2
  3. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/pyproject.toml +1 -1
  4. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.github/workflows/ci.yml +0 -0
  5. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.github/workflows/release.yml +0 -0
  6. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.gitignore +0 -0
  7. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/deferred-task-enqueue/.config.kiro +0 -0
  8. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/deferred-task-enqueue/design.md +0 -0
  9. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/deferred-task-enqueue/requirements.md +0 -0
  10. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/deferred-task-enqueue/tasks.md +0 -0
  11. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/eager-mode-example-app/.config.kiro +0 -0
  12. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/eager-mode-example-app/design.md +0 -0
  13. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/eager-mode-example-app/requirements.md +0 -0
  14. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/eager-mode-example-app/tasks.md +0 -0
  15. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/ignore-errors-decorator-option/.config.kiro +0 -0
  16. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/ignore-errors-decorator-option/design.md +0 -0
  17. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/ignore-errors-decorator-option/requirements.md +0 -0
  18. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/ignore-errors-decorator-option/tasks.md +0 -0
  19. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/import-string-task-resolution/.config.kiro +0 -0
  20. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/import-string-task-resolution/design.md +0 -0
  21. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/import-string-task-resolution/requirements.md +0 -0
  22. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/import-string-task-resolution/tasks.md +0 -0
  23. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks/.config.kiro +0 -0
  24. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks/design.md +0 -0
  25. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks/requirements.md +0 -0
  26. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks/tasks.md +0 -0
  27. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks-bugfix/.config.kiro +0 -0
  28. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks-bugfix/bugfix.md +0 -0
  29. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks-bugfix/design.md +0 -0
  30. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/rse-background-tasks-bugfix/tasks.md +0 -0
  31. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/task-retry/.config.kiro +0 -0
  32. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/task-retry/design.md +0 -0
  33. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/task-retry/requirements.md +0 -0
  34. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/specs/task-retry/tasks.md +0 -0
  35. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/steering/product.md +0 -0
  36. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/steering/structure.md +0 -0
  37. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.kiro/steering/tech.md +0 -0
  38. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.pre-commit-config.yaml +0 -0
  39. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/.vscode/settings.json +0 -0
  40. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/README.md +0 -0
  41. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/README.md +0 -0
  42. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_app/__init__.py +0 -0
  43. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_app/apps.py +0 -0
  44. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_app/tasks.py +0 -0
  45. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_app/urls.py +0 -0
  46. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_app/views.py +0 -0
  47. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_project/__init__.py +0 -0
  48. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_project/settings.py +0 -0
  49. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_project/urls.py +0 -0
  50. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/example_project/wsgi.py +0 -0
  51. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/example/manage.py +0 -0
  52. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/__init__.py +0 -0
  53. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/admin.py +0 -0
  54. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/apps.py +0 -0
  55. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/decorators.py +0 -0
  56. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/handler.py +0 -0
  57. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/logging.py +0 -0
  58. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/migrations/0001_initial.py +0 -0
  59. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/migrations/__init__.py +0 -0
  60. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/secret_loader.py +0 -0
  61. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/settings.py +0 -0
  62. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/lambda_tasks/timeouts.py +0 -0
  63. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/conftest.py +0 -0
  64. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/settings.py +0 -0
  65. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_admin.py +0 -0
  66. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_decorator.py +0 -0
  67. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_decorators.py +0 -0
  68. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_deferred_enqueue.py +0 -0
  69. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_handler.py +0 -0
  70. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_kwargs_only.py +0 -0
  71. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_logging.py +0 -0
  72. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_models.py +0 -0
  73. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_secret_loader.py +0 -0
  74. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_serializer.py +0 -0
  75. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_settings.py +0 -0
  76. {django_lambda_tasks-0.1.2 → django_lambda_tasks-0.1.3}/tests/test_timeouts.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: django-lambda-tasks
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: Run async tasks in a lambda function
5
5
  Requires-Python: >=3.10
6
6
  Requires-Dist: boto3
@@ -3,6 +3,7 @@
3
3
  import random
4
4
  import traceback
5
5
  import uuid
6
+ from typing import Any
6
7
 
7
8
  import boto3
8
9
  from django.core.exceptions import ImproperlyConfigured
@@ -10,7 +11,7 @@ from django.db import models, transaction
10
11
  from django.db.models import Q
11
12
  from django.utils.module_loading import import_string
12
13
  from django.utils.timezone import now
13
- from pydantic import BaseModel, ConfigDict, Field
14
+ from pydantic import BaseModel, ConfigDict, Field, TypeAdapter
14
15
 
15
16
  from lambda_tasks.logging import task_logger
16
17
  from lambda_tasks.settings import LambdaTasksSettings
@@ -74,6 +75,10 @@ class SQSLambdaTaskMessage(BaseModel):
74
75
  kwargs: dict
75
76
  n_retries: int = Field(default=0, ge=0)
76
77
 
78
+ @classmethod
79
+ def _dump_python(cls, *, data: Any) -> Any:
80
+ return TypeAdapter(Any).dump_python(data, mode="json")
81
+
77
82
  def execute_immediately(self, *, message_id: str) -> None:
78
83
  """Execute a background task described.
79
84
 
@@ -106,7 +111,7 @@ class SQSLambdaTaskMessage(BaseModel):
106
111
  pk=message_id,
107
112
  defaults={
108
113
  "task_name": self.task_name,
109
- "kwargs": self.kwargs,
114
+ "kwargs": self._dump_python(data=self.kwargs),
110
115
  "n_retries": self.n_retries,
111
116
  "status": TaskRecord.TaskStatus.RUNNING,
112
117
  "start_time": now(),
@@ -7,7 +7,7 @@ packages = ["lambda_tasks"]
7
7
 
8
8
  [project]
9
9
  name = "django-lambda-tasks"
10
- version = "0.1.2"
10
+ version = "0.1.3"
11
11
  description = "Run async tasks in a lambda function"
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.10"