clear-skies-aws 1.9.11__py3-none-any.whl → 1.9.12__py3-none-any.whl

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: clear-skies-aws
3
- Version: 1.9.11
3
+ Version: 1.9.12
4
4
  Summary: clearskies bindings for working in AWS
5
5
  Home-page: https://github.com/cmancone/clearskies-aws
6
6
  License: MIT
@@ -11,6 +11,8 @@ Classifier: License :: OSI Approved :: MIT License
11
11
  Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Programming Language :: Python :: 3.10
13
13
  Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
14
16
  Provides-Extra: akeyless
15
17
  Provides-Extra: ses
16
18
  Requires-Dist: boto3 (>=1.26.148,<2.0.0)
@@ -12,7 +12,7 @@ clearskies_aws/actions/sqs_test.py,sha256=aazVN-bY6E17Pu3hDwLldj6YPirbqXjM6LfYFo
12
12
  clearskies_aws/actions/step_function.py,sha256=0Sz1CVVeKJi3IohtLnnNmhAbuxR7Gl9ic56ml0K3Qmg,2363
13
13
  clearskies_aws/actions/step_function_test.py,sha256=3xrNYFQ8fCe3CqPEnVnJsE0rIUlnnFez4rfPzphYVUU,2742
14
14
  clearskies_aws/backends/__init__.py,sha256=kS6pmMKZuWzBefO7qQu1fkFdcXo180t76-a-pPc1YX8,83
15
- clearskies_aws/backends/dynamo_db_backend.py,sha256=YCpIlDWbYfuVsYnPOUhP8M0G6uFDMu8gf3b7dLYw9B0,29333
15
+ clearskies_aws/backends/dynamo_db_backend.py,sha256=Ng8IORbYVSh6Sj-mjpret3qmdSeI1U9t3GJ1uUdaGd4,29574
16
16
  clearskies_aws/backends/dynamo_db_backend_test.py,sha256=iAT8d5lOho8Kv70up7wkLuf2VJhdR7qdJ-TxHsupjQI,13150
17
17
  clearskies_aws/backends/sqs_backend.py,sha256=hT1JCvCMU76Q4Ir7OeX8U8eAMLIu1_tMwGgaN9rpsPk,2726
18
18
  clearskies_aws/backends/sqs_backend_test.py,sha256=iCuHVVqZIR_PDGUUMZIkpir8yyJy3dcPR00AWR2N25U,1138
@@ -61,7 +61,7 @@ clearskies_aws/secrets/parameter_store_test.py,sha256=UyqKE4AZYlldj9ww5f0fR15qsV
61
61
  clearskies_aws/secrets/secrets_manager.py,sha256=jlpfAFC23EeSpm50L8B-yrXg4IROQq-M_90zzXDp_ak,3056
62
62
  clearskies_aws/secrets/secrets_manager_test.py,sha256=mlNWtDm1wWS5C8aV0vJAzZVZB82KFR6NGRAPEkLtTyk,786
63
63
  clearskies_aws/web_socket_connection_model.py,sha256=d_Au_Pu7YXBfc7_lbuI7zz4MZ8ZOOwGM0oooppEofcI,1776
64
- clear_skies_aws-1.9.11.dist-info/LICENSE,sha256=3Ehd0g3YOpCj8sqj0Xjq5qbOtjjgk9qzhhD9YjRQgOA,1053
65
- clear_skies_aws-1.9.11.dist-info/METADATA,sha256=PeznbUMEZNFuStdlMSLKopC4NXW6caxpCaUQ18F89a4,8481
66
- clear_skies_aws-1.9.11.dist-info/WHEEL,sha256=d2fvjOD7sXsVzChCqf0Ty0JbHKBaLYwDbGQDwQTnJ50,88
67
- clear_skies_aws-1.9.11.dist-info/RECORD,,
64
+ clear_skies_aws-1.9.12.dist-info/LICENSE,sha256=3Ehd0g3YOpCj8sqj0Xjq5qbOtjjgk9qzhhD9YjRQgOA,1053
65
+ clear_skies_aws-1.9.12.dist-info/METADATA,sha256=DTsEU8p27U9BlXBx4gDYYVKppP1b1bd1IE3Sv_koSlI,8583
66
+ clear_skies_aws-1.9.12.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
67
+ clear_skies_aws-1.9.12.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.7.0
2
+ Generator: poetry-core 1.9.1
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -138,6 +138,8 @@ class DynamoDBBackend(Backend):
138
138
  )
139
139
  table = self._dynamodb.Table(model.table_name())
140
140
 
141
+ data = self.excessive_type_casting(data)
142
+
141
143
  updated = table.update_item(
142
144
  Key=key,
143
145
  UpdateExpression='SET ' + ', '.join([f"#{column_name} = :{column_name}" for column_name in data.keys()]),
@@ -158,6 +160,12 @@ class DynamoDBBackend(Backend):
158
160
  table.put_item(Item=data)
159
161
  return {**data}
160
162
 
163
+ def excessive_type_casting(self, data):
164
+ for (key, value) in data.items():
165
+ if isinstance(value, float):
166
+ data[key] = Decimal(value)
167
+ return data
168
+
161
169
  def delete(self, id, model):
162
170
  table = self._dynamodb.Table(model.table_name())
163
171
  table.delete_item(Key={model.id_column_name: model.__getattr__(model.id_column_name)})