From d206044abba9c61557cb41ee1484af2159bb3401 Mon Sep 17 00:00:00 2001 From: Drew Pearce <drew@caffdev.com> Date: Fri, 24 May 2024 16:37:11 -0400 Subject: [PATCH] Cast floats to decimal.Decimal for dynamodb put --- CHANGELOG.md | 4 ++++ abnosql/plugins/table/dynamodb.py | 1 + abnosql/version.py | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c7adf10..7ab2bc4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,10 @@ Changelog ========= +## [v0.0.26] - 2024-05-24 + +- Cast floats to decimal.Decimal for dynamodb put + ## [v0.0.25] - 2024-05-21 - Azure Cosmos update fix diff --git a/abnosql/plugins/table/dynamodb.py b/abnosql/plugins/table/dynamodb.py index 60c4719..669ee26 100644 --- a/abnosql/plugins/table/dynamodb.py +++ b/abnosql/plugins/table/dynamodb.py @@ -197,6 +197,7 @@ def put_item( audit_user: t.Optional[str] = None ) -> t.Dict: item, _ = put_item_pre(self, item, update, audit_user) + item = json.loads(json.dumps(item), parse_float=Decimal) # do update if update is True: diff --git a/abnosql/version.py b/abnosql/version.py index bad0140..e585376 100644 --- a/abnosql/version.py +++ b/abnosql/version.py @@ -1,4 +1,4 @@ -__version__ = '0.0.25' +__version__ = '0.0.26' if __name__ == '__main__':