localstack-core 4.10.1.dev7__py3-none-any.whl → 4.10.1.dev42__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.
Files changed (77) hide show
  1. localstack/aws/api/acm/__init__.py +122 -122
  2. localstack/aws/api/apigateway/__init__.py +560 -559
  3. localstack/aws/api/cloudcontrol/__init__.py +63 -63
  4. localstack/aws/api/cloudformation/__init__.py +1040 -969
  5. localstack/aws/api/cloudwatch/__init__.py +375 -375
  6. localstack/aws/api/config/__init__.py +784 -786
  7. localstack/aws/api/dynamodb/__init__.py +753 -759
  8. localstack/aws/api/dynamodbstreams/__init__.py +74 -74
  9. localstack/aws/api/ec2/__init__.py +8901 -8818
  10. localstack/aws/api/es/__init__.py +453 -453
  11. localstack/aws/api/events/__init__.py +552 -552
  12. localstack/aws/api/firehose/__init__.py +541 -543
  13. localstack/aws/api/iam/__init__.py +639 -572
  14. localstack/aws/api/kinesis/__init__.py +235 -147
  15. localstack/aws/api/kms/__init__.py +340 -336
  16. localstack/aws/api/lambda_/__init__.py +574 -573
  17. localstack/aws/api/logs/__init__.py +676 -675
  18. localstack/aws/api/opensearch/__init__.py +814 -785
  19. localstack/aws/api/pipes/__init__.py +336 -336
  20. localstack/aws/api/redshift/__init__.py +1188 -1166
  21. localstack/aws/api/resource_groups/__init__.py +175 -175
  22. localstack/aws/api/resourcegroupstaggingapi/__init__.py +67 -67
  23. localstack/aws/api/route53/__init__.py +254 -254
  24. localstack/aws/api/route53resolver/__init__.py +396 -396
  25. localstack/aws/api/s3/__init__.py +1350 -1349
  26. localstack/aws/api/s3control/__init__.py +594 -594
  27. localstack/aws/api/scheduler/__init__.py +118 -118
  28. localstack/aws/api/secretsmanager/__init__.py +193 -193
  29. localstack/aws/api/ses/__init__.py +227 -227
  30. localstack/aws/api/sns/__init__.py +115 -115
  31. localstack/aws/api/sqs/__init__.py +100 -100
  32. localstack/aws/api/ssm/__init__.py +1977 -1971
  33. localstack/aws/api/stepfunctions/__init__.py +323 -323
  34. localstack/aws/api/sts/__init__.py +90 -66
  35. localstack/aws/api/support/__init__.py +112 -112
  36. localstack/aws/api/swf/__init__.py +378 -386
  37. localstack/aws/api/transcribe/__init__.py +425 -425
  38. localstack/aws/handlers/service.py +11 -1
  39. localstack/aws/protocol/parser.py +1 -1
  40. localstack/aws/scaffold.py +15 -17
  41. localstack/cli/localstack.py +6 -1
  42. localstack/dev/kubernetes/__main__.py +38 -3
  43. localstack/services/apigateway/helpers.py +5 -9
  44. localstack/services/apigateway/legacy/provider.py +32 -9
  45. localstack/services/apigateway/patches.py +0 -9
  46. localstack/services/cloudformation/provider.py +2 -2
  47. localstack/services/cloudformation/v2/provider.py +6 -6
  48. localstack/services/kinesis/packages.py +1 -1
  49. localstack/services/kms/models.py +34 -4
  50. localstack/services/kms/provider.py +93 -16
  51. localstack/services/lambda_/api_utils.py +3 -1
  52. localstack/services/lambda_/packages.py +1 -1
  53. localstack/services/lambda_/provider.py +1 -1
  54. localstack/services/lambda_/runtimes.py +8 -3
  55. localstack/services/logs/provider.py +36 -19
  56. localstack/services/s3/provider.py +1 -1
  57. localstack/services/sns/v2/models.py +24 -1
  58. localstack/services/sns/v2/provider.py +144 -12
  59. localstack/services/sns/v2/utils.py +8 -0
  60. localstack/services/sqs/models.py +37 -10
  61. localstack/testing/snapshots/transformer_utility.py +2 -0
  62. localstack/testing/testselection/matching.py +0 -1
  63. localstack/utils/aws/client_types.py +0 -8
  64. localstack/utils/catalog/catalog_loader.py +111 -3
  65. localstack/utils/crypto.py +109 -0
  66. localstack/version.py +2 -2
  67. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.10.1.dev42.dist-info}/METADATA +6 -5
  68. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.10.1.dev42.dist-info}/RECORD +76 -76
  69. localstack_core-4.10.1.dev42.dist-info/plux.json +1 -0
  70. localstack_core-4.10.1.dev7.dist-info/plux.json +0 -1
  71. {localstack_core-4.10.1.dev7.data → localstack_core-4.10.1.dev42.data}/scripts/localstack +0 -0
  72. {localstack_core-4.10.1.dev7.data → localstack_core-4.10.1.dev42.data}/scripts/localstack-supervisor +0 -0
  73. {localstack_core-4.10.1.dev7.data → localstack_core-4.10.1.dev42.data}/scripts/localstack.bat +0 -0
  74. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.10.1.dev42.dist-info}/WHEEL +0 -0
  75. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.10.1.dev42.dist-info}/entry_points.txt +0 -0
  76. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.10.1.dev42.dist-info}/licenses/LICENSE.txt +0 -0
  77. {localstack_core-4.10.1.dev7.dist-info → localstack_core-4.10.1.dev42.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  from datetime import datetime
2
2
  from enum import StrEnum
3
- from typing import Dict, List, Optional, TypedDict
3
+ from typing import TypedDict
4
4
 
5
5
  from localstack.aws.api import RequestContext, ServiceException, ServiceRequest, handler
6
6
 
@@ -87,52 +87,52 @@ class TrimmedDataAccessException(ServiceException):
87
87
 
88
88
 
89
89
  class AttributeValue(TypedDict, total=False):
90
- S: Optional["StringAttributeValue"]
91
- N: Optional["NumberAttributeValue"]
92
- B: Optional["BinaryAttributeValue"]
93
- SS: Optional["StringSetAttributeValue"]
94
- NS: Optional["NumberSetAttributeValue"]
95
- BS: Optional["BinarySetAttributeValue"]
96
- M: Optional["MapAttributeValue"]
97
- L: Optional["ListAttributeValue"]
98
- NULL: Optional["NullAttributeValue"]
99
- BOOL: Optional["BooleanAttributeValue"]
100
-
101
-
102
- ListAttributeValue = List[AttributeValue]
103
- MapAttributeValue = Dict[AttributeName, AttributeValue]
90
+ S: "StringAttributeValue | None"
91
+ N: "NumberAttributeValue | None"
92
+ B: "BinaryAttributeValue | None"
93
+ SS: "StringSetAttributeValue | None"
94
+ NS: "NumberSetAttributeValue | None"
95
+ BS: "BinarySetAttributeValue | None"
96
+ M: "MapAttributeValue | None"
97
+ L: "ListAttributeValue | None"
98
+ NULL: "NullAttributeValue | None"
99
+ BOOL: "BooleanAttributeValue | None"
100
+
101
+
102
+ ListAttributeValue = list[AttributeValue]
103
+ MapAttributeValue = dict[AttributeName, AttributeValue]
104
104
  BinaryAttributeValue = bytes
105
- BinarySetAttributeValue = List[BinaryAttributeValue]
106
- NumberSetAttributeValue = List[NumberAttributeValue]
107
- StringSetAttributeValue = List[StringAttributeValue]
108
- AttributeMap = Dict[AttributeName, AttributeValue]
105
+ BinarySetAttributeValue = list[BinaryAttributeValue]
106
+ NumberSetAttributeValue = list[NumberAttributeValue]
107
+ StringSetAttributeValue = list[StringAttributeValue]
108
+ AttributeMap = dict[AttributeName, AttributeValue]
109
109
  Date = datetime
110
110
 
111
111
 
112
112
  class ShardFilter(TypedDict, total=False):
113
- Type: Optional[ShardFilterType]
114
- ShardId: Optional[ShardId]
113
+ Type: ShardFilterType | None
114
+ ShardId: ShardId | None
115
115
 
116
116
 
117
117
  class DescribeStreamInput(ServiceRequest):
118
118
  StreamArn: StreamArn
119
- Limit: Optional[PositiveIntegerObject]
120
- ExclusiveStartShardId: Optional[ShardId]
121
- ShardFilter: Optional[ShardFilter]
119
+ Limit: PositiveIntegerObject | None
120
+ ExclusiveStartShardId: ShardId | None
121
+ ShardFilter: ShardFilter | None
122
122
 
123
123
 
124
124
  class SequenceNumberRange(TypedDict, total=False):
125
- StartingSequenceNumber: Optional[SequenceNumber]
126
- EndingSequenceNumber: Optional[SequenceNumber]
125
+ StartingSequenceNumber: SequenceNumber | None
126
+ EndingSequenceNumber: SequenceNumber | None
127
127
 
128
128
 
129
129
  class Shard(TypedDict, total=False):
130
- ShardId: Optional[ShardId]
131
- SequenceNumberRange: Optional[SequenceNumberRange]
132
- ParentShardId: Optional[ShardId]
130
+ ShardId: ShardId | None
131
+ SequenceNumberRange: SequenceNumberRange | None
132
+ ParentShardId: ShardId | None
133
133
 
134
134
 
135
- ShardDescriptionList = List[Shard]
135
+ ShardDescriptionList = list[Shard]
136
136
 
137
137
 
138
138
  class KeySchemaElement(TypedDict, total=False):
@@ -140,100 +140,100 @@ class KeySchemaElement(TypedDict, total=False):
140
140
  KeyType: KeyType
141
141
 
142
142
 
143
- KeySchema = List[KeySchemaElement]
143
+ KeySchema = list[KeySchemaElement]
144
144
 
145
145
 
146
146
  class StreamDescription(TypedDict, total=False):
147
- StreamArn: Optional[StreamArn]
148
- StreamLabel: Optional[String]
149
- StreamStatus: Optional[StreamStatus]
150
- StreamViewType: Optional[StreamViewType]
151
- CreationRequestDateTime: Optional[Date]
152
- TableName: Optional[TableName]
153
- KeySchema: Optional[KeySchema]
154
- Shards: Optional[ShardDescriptionList]
155
- LastEvaluatedShardId: Optional[ShardId]
147
+ StreamArn: StreamArn | None
148
+ StreamLabel: String | None
149
+ StreamStatus: StreamStatus | None
150
+ StreamViewType: StreamViewType | None
151
+ CreationRequestDateTime: Date | None
152
+ TableName: TableName | None
153
+ KeySchema: KeySchema | None
154
+ Shards: ShardDescriptionList | None
155
+ LastEvaluatedShardId: ShardId | None
156
156
 
157
157
 
158
158
  class DescribeStreamOutput(TypedDict, total=False):
159
- StreamDescription: Optional[StreamDescription]
159
+ StreamDescription: StreamDescription | None
160
160
 
161
161
 
162
162
  class GetRecordsInput(ServiceRequest):
163
163
  ShardIterator: ShardIterator
164
- Limit: Optional[PositiveIntegerObject]
164
+ Limit: PositiveIntegerObject | None
165
165
 
166
166
 
167
167
  class Identity(TypedDict, total=False):
168
- PrincipalId: Optional[String]
169
- Type: Optional[String]
168
+ PrincipalId: String | None
169
+ Type: String | None
170
170
 
171
171
 
172
172
  PositiveLongObject = int
173
173
 
174
174
 
175
175
  class StreamRecord(TypedDict, total=False):
176
- ApproximateCreationDateTime: Optional[Date]
177
- Keys: Optional[AttributeMap]
178
- NewImage: Optional[AttributeMap]
179
- OldImage: Optional[AttributeMap]
180
- SequenceNumber: Optional[SequenceNumber]
181
- SizeBytes: Optional[PositiveLongObject]
182
- StreamViewType: Optional[StreamViewType]
176
+ ApproximateCreationDateTime: Date | None
177
+ Keys: AttributeMap | None
178
+ NewImage: AttributeMap | None
179
+ OldImage: AttributeMap | None
180
+ SequenceNumber: SequenceNumber | None
181
+ SizeBytes: PositiveLongObject | None
182
+ StreamViewType: StreamViewType | None
183
183
 
184
184
 
185
185
  class Record(TypedDict, total=False):
186
- eventID: Optional[String]
187
- eventName: Optional[OperationType]
188
- eventVersion: Optional[String]
189
- eventSource: Optional[String]
190
- awsRegion: Optional[String]
191
- dynamodb: Optional[StreamRecord]
192
- userIdentity: Optional[Identity]
186
+ eventID: String | None
187
+ eventName: OperationType | None
188
+ eventVersion: String | None
189
+ eventSource: String | None
190
+ awsRegion: String | None
191
+ dynamodb: StreamRecord | None
192
+ userIdentity: Identity | None
193
193
 
194
194
 
195
- RecordList = List[Record]
195
+ RecordList = list[Record]
196
196
 
197
197
 
198
198
  class GetRecordsOutput(TypedDict, total=False):
199
- Records: Optional[RecordList]
200
- NextShardIterator: Optional[ShardIterator]
199
+ Records: RecordList | None
200
+ NextShardIterator: ShardIterator | None
201
201
 
202
202
 
203
203
  class GetShardIteratorInput(ServiceRequest):
204
204
  StreamArn: StreamArn
205
205
  ShardId: ShardId
206
206
  ShardIteratorType: ShardIteratorType
207
- SequenceNumber: Optional[SequenceNumber]
207
+ SequenceNumber: SequenceNumber | None
208
208
 
209
209
 
210
210
  class GetShardIteratorOutput(TypedDict, total=False):
211
- ShardIterator: Optional[ShardIterator]
211
+ ShardIterator: ShardIterator | None
212
212
 
213
213
 
214
214
  class ListStreamsInput(ServiceRequest):
215
- TableName: Optional[TableName]
216
- Limit: Optional[PositiveIntegerObject]
217
- ExclusiveStartStreamArn: Optional[StreamArn]
215
+ TableName: TableName | None
216
+ Limit: PositiveIntegerObject | None
217
+ ExclusiveStartStreamArn: StreamArn | None
218
218
 
219
219
 
220
220
  class Stream(TypedDict, total=False):
221
- StreamArn: Optional[StreamArn]
222
- TableName: Optional[TableName]
223
- StreamLabel: Optional[String]
221
+ StreamArn: StreamArn | None
222
+ TableName: TableName | None
223
+ StreamLabel: String | None
224
224
 
225
225
 
226
- StreamList = List[Stream]
226
+ StreamList = list[Stream]
227
227
 
228
228
 
229
229
  class ListStreamsOutput(TypedDict, total=False):
230
- Streams: Optional[StreamList]
231
- LastEvaluatedStreamArn: Optional[StreamArn]
230
+ Streams: StreamList | None
231
+ LastEvaluatedStreamArn: StreamArn | None
232
232
 
233
233
 
234
234
  class DynamodbstreamsApi:
235
- service = "dynamodbstreams"
236
- version = "2012-08-10"
235
+ service: str = "dynamodbstreams"
236
+ version: str = "2012-08-10"
237
237
 
238
238
  @handler("DescribeStream")
239
239
  def describe_stream(