clear-skies-aws 2.0.14__py3-none-any.whl → 2.0.16__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.
- {clear_skies_aws-2.0.14.dist-info → clear_skies_aws-2.0.16.dist-info}/METADATA +2 -2
- {clear_skies_aws-2.0.14.dist-info → clear_skies_aws-2.0.16.dist-info}/RECORD +8 -8
- clearskies_aws/backends/backend.py +1 -1
- clearskies_aws/backends/dynamo_db_condition_parser.py +2 -2
- clearskies_aws/backends/dynamo_db_parti_ql_backend.py +17 -3
- clearskies_aws/secrets/parameter_store.py +1 -1
- {clear_skies_aws-2.0.14.dist-info → clear_skies_aws-2.0.16.dist-info}/WHEEL +0 -0
- {clear_skies_aws-2.0.14.dist-info → clear_skies_aws-2.0.16.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: clear-skies-aws
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.16
|
|
4
4
|
Summary: clearskies bindings for working in AWS
|
|
5
5
|
Project-URL: Repository, https://github.com/clearskies-py/clearskies-aws
|
|
6
6
|
Project-URL: Issues, https://github.com/clearskies-py/clearskies-aws/issues
|
|
@@ -17,7 +17,7 @@ Classifier: Programming Language :: Python :: 3
|
|
|
17
17
|
Requires-Python: <4.0,>=3.11
|
|
18
18
|
Requires-Dist: awslambdaric>=3.1.1
|
|
19
19
|
Requires-Dist: boto3<2.0.0,>=1.26.148
|
|
20
|
-
Requires-Dist: clear-skies<3.0.0,>=2.0.
|
|
20
|
+
Requires-Dist: clear-skies<3.0.0,>=2.0.42
|
|
21
21
|
Requires-Dist: jinja2>=3.1.6
|
|
22
22
|
Requires-Dist: types-boto3[dynamodb,secretsmanager,ses,sns,sqs,ssm,stepfunctions]<2.0.0,>=1.38.13
|
|
23
23
|
Provides-Extra: akeyless
|
|
@@ -7,10 +7,10 @@ clearskies_aws/actions/sns.py,sha256=YS1TbEwtU-0lDbjG2HyTBs2J-ML5OL3ModAiGTMeK-c
|
|
|
7
7
|
clearskies_aws/actions/sqs.py,sha256=r0z8njU87n09UgAq3l34JuNIbaBE85D_z8IE6ciIs9Q,3359
|
|
8
8
|
clearskies_aws/actions/step_function.py,sha256=Y6tGbQJIAD_IwV9ohwYfuv3vqtryTwpFTNGUFgdj_DQ,2689
|
|
9
9
|
clearskies_aws/backends/__init__.py,sha256=lmjWPoLN7Ebmdj3Pv5X1tJDcRWN3PsR8aGG9nDcqOrs,635
|
|
10
|
-
clearskies_aws/backends/backend.py,sha256=
|
|
10
|
+
clearskies_aws/backends/backend.py,sha256=_aOvI_7LaFJALuz5BKuGC_ievFtXwrVsY0MuND9wJDA,4199
|
|
11
11
|
clearskies_aws/backends/dynamo_db_backend.py,sha256=0KfAow5pUXpiBg0rRWtG3j48mpHUtJP9q-C2FfpBeqA,29411
|
|
12
|
-
clearskies_aws/backends/dynamo_db_condition_parser.py,sha256=
|
|
13
|
-
clearskies_aws/backends/dynamo_db_parti_ql_backend.py,sha256=
|
|
12
|
+
clearskies_aws/backends/dynamo_db_condition_parser.py,sha256=1EDYj1pJikfGxoU-zvc2Q6VKVjTEqBl-V1r3fPm7_CM,12636
|
|
13
|
+
clearskies_aws/backends/dynamo_db_parti_ql_backend.py,sha256=tTlECSYc3qQpy68ABXkEeKoJuom5IKPhWceyQ5kE_7U,46505
|
|
14
14
|
clearskies_aws/backends/sqs_backend.py,sha256=uOGi8UeqBsReTDdaCA2X-V4lo4pXpyTsaz1WHHetPYQ,2238
|
|
15
15
|
clearskies_aws/configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
16
|
clearskies_aws/contexts/__init__.py,sha256=kHru0DK5wpu8Lgx2umVPwqQz5rYRvA50Brnw8HxPgfU,819
|
|
@@ -55,12 +55,12 @@ clearskies_aws/mocks/actions/step_function.py,sha256=ENEVy8Ai3vPymbQre5aWa5z2McB
|
|
|
55
55
|
clearskies_aws/models/__init__.py,sha256=tAU5cPGRSzSClNVRCBxzwlBq6eZO8fftuI3bG1jEyVQ,87
|
|
56
56
|
clearskies_aws/models/web_socket_connection_model.py,sha256=5M1qfQHKuWMYPUDkwT48QPo2ROey7koizvWLfapsfow,7492
|
|
57
57
|
clearskies_aws/secrets/__init__.py,sha256=5QWfe6IyHdAyfOJVZJ52qM5hTkw1siMJ6q6YW95-Jl8,345
|
|
58
|
-
clearskies_aws/secrets/parameter_store.py,sha256=
|
|
58
|
+
clearskies_aws/secrets/parameter_store.py,sha256=gSmJZkG5ThfGyEG3dSYDTZyfOIOIgCHqx-f1AkRC6D0,7395
|
|
59
59
|
clearskies_aws/secrets/secrets.py,sha256=P30Yx0pkxjPnwCNw8ixoUu--4B7EEsg6gpOlazrk4Oc,956
|
|
60
60
|
clearskies_aws/secrets/secrets_manager.py,sha256=VhqKw4W65y3RRoFt9Ws5g7Q8nv2ACqkDYwxwgRpU-sk,7026
|
|
61
61
|
clearskies_aws/secrets/cache_storage/__init__.py,sha256=A6_rUn95NQjJu_VDDNQ1mDDNye18QYGGhXM66orGnb8,255
|
|
62
62
|
clearskies_aws/secrets/cache_storage/parameter_store_cache.py,sha256=KXGZ5ITni0HunoQhGLK4puvsTxhiwXccnS8RORjwSIw,4036
|
|
63
|
-
clear_skies_aws-2.0.
|
|
64
|
-
clear_skies_aws-2.0.
|
|
65
|
-
clear_skies_aws-2.0.
|
|
66
|
-
clear_skies_aws-2.0.
|
|
63
|
+
clear_skies_aws-2.0.16.dist-info/METADATA,sha256=rMauYfqg1CuPGXx--pcs5xltpts-f_Wrguebbzyj9LM,9077
|
|
64
|
+
clear_skies_aws-2.0.16.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
65
|
+
clear_skies_aws-2.0.16.dist-info/licenses/LICENSE,sha256=MkEX8JF8kZxdyBpTTcB0YTd-xZpWnHvbRlw-pQh8u58,1069
|
|
66
|
+
clear_skies_aws-2.0.16.dist-info/RECORD,,
|
|
@@ -17,7 +17,7 @@ from clearskies.query.result import (
|
|
|
17
17
|
from clearskies_aws.di.inject import boto3
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
class Backend(clearskies.
|
|
20
|
+
class Backend(clearskies.backends.Backend, clearskies.di.InjectableProperties):
|
|
21
21
|
"""
|
|
22
22
|
Connect models to their data since 2020.
|
|
23
23
|
|
|
@@ -7,7 +7,7 @@ import logging
|
|
|
7
7
|
from decimal import Decimal, DecimalException
|
|
8
8
|
from typing import Any
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
import clearskies
|
|
11
11
|
|
|
12
12
|
# Ensure AttributeValueTypeDef is imported from the correct boto3 types package
|
|
13
13
|
# This is crucial for the "ideal fix".
|
|
@@ -16,7 +16,7 @@ from types_boto3_dynamodb.type_defs import AttributeValueTypeDef
|
|
|
16
16
|
logger = logging.getLogger(__name__)
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
class DynamoDBConditionParser(
|
|
19
|
+
class DynamoDBConditionParser(clearskies.Configurable):
|
|
20
20
|
"""
|
|
21
21
|
Parses string conditions into a structured format suitable for DynamoDB PartiQL queries.
|
|
22
22
|
|
|
@@ -119,7 +119,6 @@ class DynamoDBPartiQLBackend(CursorBackend):
|
|
|
119
119
|
The count() method uses native DynamoDB Query/Scan operations for accuracy.
|
|
120
120
|
"""
|
|
121
121
|
|
|
122
|
-
_cursor: DynamoDBPartiQLCursor
|
|
123
122
|
_allowed_configs: list[str] = [
|
|
124
123
|
"table_name",
|
|
125
124
|
"wheres",
|
|
@@ -134,9 +133,24 @@ class DynamoDBPartiQLBackend(CursorBackend):
|
|
|
134
133
|
]
|
|
135
134
|
_required_configs: list[str] = ["table_name"]
|
|
136
135
|
|
|
137
|
-
def __init__(
|
|
136
|
+
def __init__(
|
|
137
|
+
self,
|
|
138
|
+
cursor_dependency_name: str = "dynamo_db_parti_ql_cursor",
|
|
139
|
+
table_prefix: str = "",
|
|
140
|
+
can_create: bool | None = None,
|
|
141
|
+
can_update: bool | None = None,
|
|
142
|
+
can_delete: bool | None = None,
|
|
143
|
+
can_query: bool | None = None,
|
|
144
|
+
) -> None:
|
|
138
145
|
"""Initialize the DynamoDBPartiQLBackend."""
|
|
139
|
-
super().__init__(
|
|
146
|
+
super().__init__(
|
|
147
|
+
cursor_dependency_name=cursor_dependency_name,
|
|
148
|
+
table_prefix=table_prefix,
|
|
149
|
+
can_create=can_create,
|
|
150
|
+
can_update=can_update,
|
|
151
|
+
can_delete=can_delete,
|
|
152
|
+
can_query=can_query,
|
|
153
|
+
)
|
|
140
154
|
self.condition_parser: DynamoDBConditionParser = DynamoDBConditionParser()
|
|
141
155
|
self._table_descriptions_cache: dict[str, dict[str, Any]] = {}
|
|
142
156
|
|
|
@@ -110,7 +110,7 @@ class ParameterStore(secrets.Secrets[SSMClient]):
|
|
|
110
110
|
result = self.boto3_client.get_parameter(Name=sanitized_path, WithDecryption=True)
|
|
111
111
|
except ClientError as e:
|
|
112
112
|
error = e.response.get("Error", {})
|
|
113
|
-
if error.get("Code") == "
|
|
113
|
+
if error.get("Code") == "ParameterNotFound":
|
|
114
114
|
if silent_if_not_found:
|
|
115
115
|
return None
|
|
116
116
|
raise NotFound(f"Could not find secret '{path}' in parameter store")
|
|
File without changes
|
|
File without changes
|