localstack-core 4.2.1.dev70__py3-none-any.whl → 4.2.1.dev71__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.
@@ -3579,8 +3579,10 @@ class PostResponse(TypedDict, total=False):
3579
3579
  ETagHeader: Optional[ETag]
3580
3580
  ChecksumCRC32: Optional[ChecksumCRC32]
3581
3581
  ChecksumCRC32C: Optional[ChecksumCRC32C]
3582
+ ChecksumCRC64NVME: Optional[ChecksumCRC64NVME]
3582
3583
  ChecksumSHA1: Optional[ChecksumSHA1]
3583
3584
  ChecksumSHA256: Optional[ChecksumSHA256]
3585
+ ChecksumType: Optional[ChecksumType]
3584
3586
  ServerSideEncryption: Optional[ServerSideEncryption]
3585
3587
  VersionId: Optional[ObjectVersionId]
3586
3588
  SSECustomerAlgorithm: Optional[SSECustomerAlgorithm]
@@ -540,6 +540,12 @@
540
540
  "location": "header",
541
541
  "locationName": "x-amz-checksum-crc32c"
542
542
  },
543
+ "ChecksumCRC64NVME":{
544
+ "shape":"ChecksumCRC64NVME",
545
+ "documentation":"<p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. The <code>CRC64NVME</code> checksum is always a full object checksum. For more information, see <a href=\"https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html\">Checking object integrity in the Amazon S3 User Guide</a>.</p>",
546
+ "location":"header",
547
+ "locationName":"x-amz-checksum-crc64nvme"
548
+ },
543
549
  "ChecksumSHA1": {
544
550
  "shape": "ChecksumSHA1",
545
551
  "documentation": "<p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. With multipart uploads, this may not be a checksum value of the object. For more information about how checksums are calculated with multipart uploads, see <a href=\"https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums\"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>",
@@ -552,6 +558,12 @@
552
558
  "location": "header",
553
559
  "locationName": "x-amz-checksum-sha256"
554
560
  },
561
+ "ChecksumType":{
562
+ "shape":"ChecksumType",
563
+ "documentation":"<p>This header specifies the checksum type of the object, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header as a data integrity check to verify that the checksum type that is received is the same checksum that was specified. If the checksum type doesn’t match the checksum type that was specified for the object during the <code>CreateMultipartUpload</code> request, it’ll result in a <code>BadDigest</code> error. For more information, see Checking object integrity in the Amazon S3 User Guide. </p>",
564
+ "location":"header",
565
+ "locationName":"x-amz-checksum-type"
566
+ },
555
567
  "ServerSideEncryption": {
556
568
  "shape": "ServerSideEncryption",
557
569
  "documentation": "<p>If you specified server-side encryption either with an Amazon Web Services KMS key or Amazon S3-managed encryption key in your PUT request, the response includes this header. It confirms the encryption algorithm that Amazon S3 used to encrypt the object.</p>",
@@ -310,7 +310,7 @@ class S3Object:
310
310
  self.etag = etag
311
311
  self.size = size
312
312
  self.expires = expires
313
- self.checksum_algorithm = checksum_algorithm
313
+ self.checksum_algorithm = checksum_algorithm or ChecksumAlgorithm.CRC64NVME
314
314
  self.checksum_value = checksum_value
315
315
  self.checksum_type = checksum_type
316
316
  self.encryption = encryption
@@ -429,6 +429,7 @@ class S3Multipart:
429
429
  upload_id: MultipartUploadId
430
430
  checksum_value: Optional[str]
431
431
  checksum_type: Optional[ChecksumType]
432
+ checksum_algorithm: ChecksumAlgorithm
432
433
  initiated: datetime
433
434
  precondition: bool
434
435
 
@@ -463,6 +464,7 @@ class S3Multipart:
463
464
  self.tagging = tagging
464
465
  self.checksum_value = None
465
466
  self.checksum_type = checksum_type
467
+ self.checksum_algorithm = checksum_algorithm
466
468
  self.precondition = precondition
467
469
  self.object = S3Object(
468
470
  key=key,
@@ -490,13 +492,13 @@ class S3Multipart:
490
492
  ):
491
493
  last_part_index = len(parts) - 1
492
494
  object_etag = hashlib.md5(usedforsecurity=False)
493
- has_checksum = self.object.checksum_algorithm is not None
495
+ has_checksum = self.checksum_algorithm is not None
494
496
  checksum_hash = None
495
497
  if has_checksum:
496
- if self.object.checksum_type == ChecksumType.COMPOSITE:
497
- checksum_hash = get_s3_checksum(self.object.checksum_algorithm)
498
+ if self.checksum_type == ChecksumType.COMPOSITE:
499
+ checksum_hash = get_s3_checksum(self.checksum_algorithm)
498
500
  else:
499
- checksum_hash = CombinedCrcHash(self.object.checksum_algorithm)
501
+ checksum_hash = CombinedCrcHash(self.checksum_algorithm)
500
502
 
501
503
  pos = 0
502
504
  parts_map = {}
@@ -520,7 +522,7 @@ class S3Multipart:
520
522
  )
521
523
 
522
524
  if has_checksum:
523
- checksum_key = f"Checksum{self.object.checksum_algorithm.upper()}"
525
+ checksum_key = f"Checksum{self.checksum_algorithm.upper()}"
524
526
  if not (part_checksum := part.get(checksum_key)):
525
527
  if self.checksum_type == ChecksumType.COMPOSITE:
526
528
  # weird case, they still try to validate a different checksum type than the multipart
@@ -532,7 +534,7 @@ class S3Multipart:
532
534
  )
533
535
 
534
536
  raise InvalidRequest(
535
- f"The upload was created using a {self.object.checksum_algorithm.lower()} checksum. "
537
+ f"The upload was created using a {self.checksum_algorithm.lower()} checksum. "
536
538
  f"The complete request must include the checksum for each part. "
537
539
  f"It was missing for part {part_number} in the request."
538
540
  )
@@ -584,7 +586,7 @@ class S3Multipart:
584
586
  checksum_value = f"{checksum_value}-{len(parts)}"
585
587
 
586
588
  elif self.checksum_type == ChecksumType.FULL_OBJECT:
587
- if validation_checksum != checksum_value:
589
+ if validation_checksum and validation_checksum != checksum_value:
588
590
  raise BadDigest(
589
591
  f"The {self.object.checksum_algorithm.lower()} you specified did not match the calculated checksum."
590
592
  )
@@ -786,7 +786,9 @@ class S3Provider(S3Api, ServiceLifecycleHook):
786
786
  s3_stored_object.write(body)
787
787
 
788
788
  if s3_object.checksum_algorithm:
789
- if not validate_checksum_value(s3_object.checksum_value, checksum_algorithm):
789
+ if not s3_object.checksum_value:
790
+ s3_object.checksum_value = s3_stored_object.checksum
791
+ elif not validate_checksum_value(s3_object.checksum_value, checksum_algorithm):
790
792
  self._storage_backend.remove(bucket_name, s3_object)
791
793
  raise InvalidRequest(
792
794
  f"Value for x-amz-checksum-{s3_object.checksum_algorithm.lower()} header is invalid."
@@ -1066,6 +1068,9 @@ class S3Provider(S3Api, ServiceLifecycleHook):
1066
1068
  if checksum_algorithm := s3_object.checksum_algorithm:
1067
1069
  if (request.get("ChecksumMode") or "").upper() == "ENABLED":
1068
1070
  response[f"Checksum{checksum_algorithm.upper()}"] = s3_object.checksum_value
1071
+ response["ChecksumType"] = getattr(
1072
+ s3_object, "checksum_type", ChecksumType.FULL_OBJECT
1073
+ )
1069
1074
 
1070
1075
  if s3_object.parts and request.get("PartNumber"):
1071
1076
  response["PartsCount"] = len(s3_object.parts)
@@ -1091,6 +1096,7 @@ class S3Provider(S3Api, ServiceLifecycleHook):
1091
1096
 
1092
1097
  if range_data:
1093
1098
  response["ContentLength"] = range_data.content_length
1099
+ response["ContentRange"] = range_data.content_range
1094
1100
  response["StatusCode"] = 206
1095
1101
 
1096
1102
  add_encryption_to_response(response, s3_object=s3_object)
@@ -1470,6 +1476,7 @@ class S3Provider(S3Api, ServiceLifecycleHook):
1470
1476
  acl = get_access_control_policy_for_new_resource_request(
1471
1477
  request, owner=dest_s3_bucket.owner
1472
1478
  )
1479
+ checksum_algorithm = request.get("ChecksumAlgorithm")
1473
1480
 
1474
1481
  s3_object = S3Object(
1475
1482
  key=dest_key,
@@ -1479,7 +1486,7 @@ class S3Provider(S3Api, ServiceLifecycleHook):
1479
1486
  expires=request.get("Expires"),
1480
1487
  user_metadata=user_metadata,
1481
1488
  system_metadata=system_metadata,
1482
- checksum_algorithm=request.get("ChecksumAlgorithm") or src_s3_object.checksum_algorithm,
1489
+ checksum_algorithm=checksum_algorithm or src_s3_object.checksum_algorithm,
1483
1490
  encryption=encryption_parameters.encryption,
1484
1491
  kms_key_id=encryption_parameters.kms_key_id,
1485
1492
  bucket_key_enabled=request.get(
@@ -2175,6 +2182,10 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2175
2182
  owner=s3_bucket.owner,
2176
2183
  precondition=object_exists_for_precondition_write(s3_bucket, key),
2177
2184
  )
2185
+ # it seems if there is SSE-C on the multipart, AWS S3 will override the default Checksum behavior (but not on
2186
+ # PutObject)
2187
+ if sse_c_key_md5:
2188
+ s3_multipart.object.checksum_algorithm = None
2178
2189
 
2179
2190
  s3_bucket.multiparts[s3_multipart.id] = s3_multipart
2180
2191
 
@@ -2286,7 +2297,10 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2286
2297
  decoded_content_length = int(headers.get("x-amz-decoded-content-length", 0))
2287
2298
  body = AwsChunkedDecoder(body, decoded_content_length, s3_part)
2288
2299
 
2289
- if s3_part.checksum_algorithm != s3_multipart.object.checksum_algorithm:
2300
+ if (
2301
+ s3_multipart.checksum_algorithm
2302
+ and s3_part.checksum_algorithm != s3_multipart.checksum_algorithm
2303
+ ):
2290
2304
  error_req_checksum = checksum_algorithm.lower() if checksum_algorithm else "null"
2291
2305
  error_mp_checksum = (
2292
2306
  s3_multipart.object.checksum_algorithm.lower()
@@ -2525,7 +2539,7 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2525
2539
  UploadId=upload_id,
2526
2540
  )
2527
2541
 
2528
- mpu_checksum_algorithm = s3_multipart.object.checksum_algorithm
2542
+ mpu_checksum_algorithm = s3_multipart.checksum_algorithm
2529
2543
  mpu_checksum_type = getattr(s3_multipart, "checksum_type", None)
2530
2544
 
2531
2545
  if checksum_type and checksum_type != mpu_checksum_type:
@@ -2555,24 +2569,36 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2555
2569
  s3_multipart.complete_multipart(
2556
2570
  parts, mpu_size=mpu_object_size, validation_checksum=checksum_value
2557
2571
  )
2572
+ if mpu_checksum_algorithm and (
2573
+ (
2574
+ checksum_value
2575
+ and mpu_checksum_type == ChecksumType.FULL_OBJECT
2576
+ and not checksum_type
2577
+ )
2578
+ or any(
2579
+ checksum_value
2580
+ for checksum_type, checksum_value in checksum_map.items()
2581
+ if checksum_type != checksum_algorithm
2582
+ )
2583
+ ):
2584
+ # this is not ideal, but this validation comes last... after the validation of individual parts
2585
+ s3_multipart.object.parts.clear()
2586
+ raise BadDigest(
2587
+ f"The {mpu_checksum_algorithm.lower()} you specified did not match the calculated checksum."
2588
+ )
2558
2589
  else:
2559
2590
  s3_multipart.complete_multipart(parts)
2560
2591
 
2561
- if (
2562
- mpu_checksum_algorithm
2563
- and not checksum_type
2564
- and mpu_checksum_type == ChecksumType.FULL_OBJECT
2565
- ):
2566
- # this is not ideal, but this validation comes last... after the validation of individual parts
2567
- s3_multipart.object.parts.clear()
2568
- raise BadDigest(
2569
- f"The {mpu_checksum_algorithm.lower()} you specified did not match the calculated checksum."
2570
- )
2571
-
2572
2592
  stored_multipart = self._storage_backend.get_multipart(bucket, s3_multipart)
2573
2593
  stored_multipart.complete_multipart(
2574
2594
  [s3_multipart.parts.get(part_number) for part_number in parts_numbers]
2575
2595
  )
2596
+ if not s3_multipart.checksum_algorithm and s3_multipart.object.checksum_algorithm:
2597
+ with self._storage_backend.open(
2598
+ bucket, s3_multipart.object, mode="r"
2599
+ ) as s3_stored_object:
2600
+ s3_multipart.object.checksum_value = s3_stored_object.checksum
2601
+ s3_multipart.object.checksum_type = ChecksumType.FULL_OBJECT
2576
2602
 
2577
2603
  s3_object = s3_multipart.object
2578
2604
 
@@ -2599,9 +2625,11 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2599
2625
  if s3_object.version_id:
2600
2626
  response["VersionId"] = s3_object.version_id
2601
2627
 
2602
- if s3_object.checksum_algorithm:
2628
+ # it seems AWS is not returning checksum related fields if the object has KMS encryption ¯\_(ツ)_/¯
2629
+ # but it still generates them, and they can be retrieved with regular GetObject and such operations
2630
+ if s3_object.checksum_algorithm and not s3_object.kms_key_id:
2603
2631
  response[f"Checksum{s3_object.checksum_algorithm.upper()}"] = s3_object.checksum_value
2604
- response["ChecksumType"] = mpu_checksum_type
2632
+ response["ChecksumType"] = s3_object.checksum_type
2605
2633
 
2606
2634
  if s3_object.expiration:
2607
2635
  response["Expiration"] = s3_object.expiration # TODO: properly parse the datetime
@@ -2691,7 +2719,7 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2691
2719
  PartNumber=part_number,
2692
2720
  Size=part.size,
2693
2721
  )
2694
- if s3_multipart.object.checksum_algorithm:
2722
+ if s3_multipart.checksum_algorithm:
2695
2723
  part_item[f"Checksum{part.checksum_algorithm.upper()}"] = part.checksum_value
2696
2724
 
2697
2725
  parts.append(part_item)
@@ -2720,7 +2748,7 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2720
2748
 
2721
2749
  if part_number_marker:
2722
2750
  response["PartNumberMarker"] = part_number_marker
2723
- if s3_multipart.object.checksum_algorithm:
2751
+ if s3_multipart.checksum_algorithm:
2724
2752
  response["ChecksumAlgorithm"] = s3_multipart.object.checksum_algorithm
2725
2753
  response["ChecksumType"] = getattr(s3_multipart, "checksum_type", None)
2726
2754
 
@@ -2820,8 +2848,8 @@ class S3Provider(S3Api, ServiceLifecycleHook):
2820
2848
  Owner=multipart.initiator, # TODO: check the difference
2821
2849
  Initiator=multipart.initiator,
2822
2850
  )
2823
- if multipart.object.checksum_algorithm:
2824
- multipart_upload["ChecksumAlgorithm"] = multipart.object.checksum_algorithm
2851
+ if multipart.checksum_algorithm:
2852
+ multipart_upload["ChecksumAlgorithm"] = multipart.checksum_algorithm
2825
2853
  multipart_upload["ChecksumType"] = getattr(multipart, "checksum_type", None)
2826
2854
 
2827
2855
  uploads.append(multipart_upload)
@@ -4288,7 +4316,10 @@ class S3Provider(S3Api, ServiceLifecycleHook):
4288
4316
  with self._storage_backend.open(bucket, s3_object, mode="w") as s3_stored_object:
4289
4317
  s3_stored_object.write(stream)
4290
4318
 
4291
- if checksum_algorithm and s3_object.checksum_value != s3_stored_object.checksum:
4319
+ if not s3_object.checksum_value:
4320
+ s3_object.checksum_value = s3_stored_object.checksum
4321
+
4322
+ elif checksum_algorithm and s3_object.checksum_value != s3_stored_object.checksum:
4292
4323
  self._storage_backend.remove(bucket, s3_object)
4293
4324
  raise InvalidRequest(
4294
4325
  f"Value for x-amz-checksum-{checksum_algorithm.lower()} header is invalid."
@@ -4334,7 +4365,8 @@ class S3Provider(S3Api, ServiceLifecycleHook):
4334
4365
  response["VersionId"] = s3_object.version_id
4335
4366
 
4336
4367
  if s3_object.checksum_algorithm:
4337
- response[f"Checksum{checksum_algorithm.upper()}"] = s3_object.checksum_value
4368
+ response[f"Checksum{s3_object.checksum_algorithm.upper()}"] = s3_object.checksum_value
4369
+ response["ChecksumType"] = ChecksumType.FULL_OBJECT
4338
4370
 
4339
4371
  if s3_bucket.lifecycle_rules:
4340
4372
  if expiration_header := self._get_expiration_header(
localstack/version.py CHANGED
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '4.2.1.dev70'
21
- __version_tuple__ = version_tuple = (4, 2, 1, 'dev70')
20
+ __version__ = version = '4.2.1.dev71'
21
+ __version_tuple__ = version_tuple = (4, 2, 1, 'dev71')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: localstack-core
3
- Version: 4.2.1.dev70
3
+ Version: 4.2.1.dev71
4
4
  Summary: The core library and runtime of LocalStack
5
5
  Author-email: LocalStack Contributors <info@localstack.cloud>
6
6
  Project-URL: Homepage, https://localstack.cloud
@@ -3,7 +3,7 @@ localstack/constants.py,sha256=bBh6djh4x37MrS8az8LizX_APMZ56XdtJHCnZdOnmeg,6867
3
3
  localstack/deprecations.py,sha256=t3zeaZaHhKYM8snP1wRZhpvAy6MbB12Vqv5hK78bwJ0,15162
4
4
  localstack/openapi.yaml,sha256=B803NmpwsxG8PHpHrdZYBrUYjnrRh7B_JX0XuNynuFs,30237
5
5
  localstack/plugins.py,sha256=BIJC9dlo0WbP7lLKkCiGtd_2q5oeqiHZohvoRTcejXM,2457
6
- localstack/version.py,sha256=Z5Ty7WH1CSnuIHkl4H1h5WzKUOaId-2uX8EU7tLXhBA,526
6
+ localstack/version.py,sha256=n6e4kml5QTwUXeG91MDbHOD8RXIQ7XXkpBKVK-RfXmU,526
7
7
  localstack/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  localstack/aws/accounts.py,sha256=102zpGowOxo0S6UGMpfjw14QW7WCLVAGsnFK5xFMLoo,3043
9
9
  localstack/aws/app.py,sha256=n9bJCfJRuMz_gLGAH430c3bIQXgUXeWO5NPfcdL2MV8,5145
@@ -17,7 +17,7 @@ localstack/aws/mocking.py,sha256=Hjo_g8vOSwaqYqZLfuedsj50ds9w0B0pvGnLB1mw9gw,137
17
17
  localstack/aws/patches.py,sha256=WIv-N71s6qzlVhnv9BO85Lpi9rGreNROUcSlmq9lrCw,1867
18
18
  localstack/aws/scaffold.py,sha256=CfozcYdZoQB8RzAzdmdTAXfodZ_mc-Z_rUq41yzT7Bs,20084
19
19
  localstack/aws/skeleton.py,sha256=o8ULp5UNSw4ssJzF8f-B4-wIzkIXGunvF8L41dhrkNc,8200
20
- localstack/aws/spec-patches.json,sha256=J22gjQ3vj3L7zWMBxTLmwkzGL1W0uuUG8ZoIshSObwM,41097
20
+ localstack/aws/spec-patches.json,sha256=9zIgusH52V72SmOaRHTlWcu4aX5GEb2SzX1U9EL7SpU,42563
21
21
  localstack/aws/spec.py,sha256=C9i0xdK6naFrTz80O8chgqqv2NBFKIVpM-8bDzCgLCg,14233
22
22
  localstack/aws/api/__init__.py,sha256=JspwCauxfTTdLNVAr7AkQaPu1lELdBQ1miB9B9sndOo,297
23
23
  localstack/aws/api/core.py,sha256=TDLYXrv3coZAW_Lv2UaqKqHnE_cufP3aDstjaHbFasw,6336
@@ -45,7 +45,7 @@ localstack/aws/api/resource_groups/__init__.py,sha256=H3pCHqBPqYo6xZv5Fl_D5zysdi
45
45
  localstack/aws/api/resourcegroupstaggingapi/__init__.py,sha256=dd6ALIXvx-upFiNwPcUh2z3o6BIS3QQeA6muY_sYtcE,8660
46
46
  localstack/aws/api/route53/__init__.py,sha256=McURVw730tDIhC3P2gvN_npDS-u6qRiXll7fMPxgLcQ,70249
47
47
  localstack/aws/api/route53resolver/__init__.py,sha256=FE-qMvF9jGzkHkehM3I0PGeQxfvo9AY9r01ZrJZCeaQ,59895
48
- localstack/aws/api/s3/__init__.py,sha256=-Q8F_QmO_Uo719dzFgfNPeKOoC52SMFPPQbz5WlaJZA,153259
48
+ localstack/aws/api/s3/__init__.py,sha256=-cOQEkj288KBrLt3QVS5IxnZv9pNdN2l8loHrRspmQY,153351
49
49
  localstack/aws/api/s3control/__init__.py,sha256=OdMlB5vrBwTnOkXqqKRRW59fmDY_uU0O2oDCMBC3wdI,91575
50
50
  localstack/aws/api/scheduler/__init__.py,sha256=GLuwphVHkUAzKwj8Pw6TZ1tiFyafL19nhknSTS8R1js,15554
51
51
  localstack/aws/api/secretsmanager/__init__.py,sha256=5dunc0wMBtVn7gwz4Fu4TkE6aaEfJHqNp5zpaorFElY,23577
@@ -674,10 +674,10 @@ localstack/services/s3/codec.py,sha256=l3nt8G7W8i7DiVGNy8jUMsCV69QI_eqovjbKYY7yE
674
674
  localstack/services/s3/constants.py,sha256=8Pmp5K_EK4OUQ5GChIR7n9Rzf3iHRp2ecKSAPI__Ytc,3866
675
675
  localstack/services/s3/cors.py,sha256=KQCdda-sLrx8RleQ7jh3PsxzTrmCparx4JIZl7nYsTk,13320
676
676
  localstack/services/s3/exceptions.py,sha256=IkR3gfyNTNvXjBo9ElgHBjtjYzFL7hLJceGEEFKrz_U,1757
677
- localstack/services/s3/models.py,sha256=nAkien22NaPZ4ZewAdN23n-llwZWciOy9bXfscEPhFo,30289
677
+ localstack/services/s3/models.py,sha256=NZmgCms0fV0js6QG21ucUno73x2unvJJlNW4YnUT_c0,30397
678
678
  localstack/services/s3/notifications.py,sha256=_VYS4IAx9SxoF0Xwe6rnzhv4DkSctSiU4xmKqXGHm1M,32219
679
679
  localstack/services/s3/presigned_url.py,sha256=8ZdnCd1ntU1zx8prkx0VJVg7QQowYrQjOfZ4axKsuh4,39142
680
- localstack/services/s3/provider.py,sha256=9-vJCBpv3JdGfa059tICRyNPSfNlJnnXj6VWYz6wa90,183063
680
+ localstack/services/s3/provider.py,sha256=Ej2sdu3nhLNsFPv46m2fJ994WKa5Oy2KgeL5OYRM3Wg,184841
681
681
  localstack/services/s3/utils.py,sha256=AmUXoBDKaBjdd_7r9XhmjnzSC6bhOaMOsE330RDVB2A,39198
682
682
  localstack/services/s3/validation.py,sha256=wz5Emgkf8a8LuPW8sOu51OkH5CFytNtvnr7Gjd2FQog,19968
683
683
  localstack/services/s3/website_hosting.py,sha256=hjwKAYOR_xNkml5c7naQW_iK_Vy2RGpRXBZL-vCmUb4,16627
@@ -1266,13 +1266,13 @@ localstack/utils/server/tcp_proxy.py,sha256=rR6d5jR0ozDvIlpHiqW0cfyY9a2fRGdOzyA8
1266
1266
  localstack/utils/xray/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1267
1267
  localstack/utils/xray/trace_header.py,sha256=ahXk9eonq7LpeENwlqUEPj3jDOCiVRixhntQuxNor-Q,6209
1268
1268
  localstack/utils/xray/traceid.py,sha256=SQSsMV2rhbTNK6ceIoozZYuGU7Fg687EXcgqxoDl1Fw,1106
1269
- localstack_core-4.2.1.dev70.data/scripts/localstack,sha256=WyL11vp5CkuP79iIR-L8XT7Cj8nvmxX7XRAgxhbmXNE,529
1270
- localstack_core-4.2.1.dev70.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
1271
- localstack_core-4.2.1.dev70.data/scripts/localstack.bat,sha256=tlzZTXtveHkMX_s_fa7VDfvdNdS8iVpEz2ER3uk9B_c,29
1272
- localstack_core-4.2.1.dev70.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
1273
- localstack_core-4.2.1.dev70.dist-info/METADATA,sha256=Xy6_qI4soXdPdo2EpCT00vWBgC9xRikGCowThpzSDtI,5502
1274
- localstack_core-4.2.1.dev70.dist-info/WHEEL,sha256=tTnHoFhvKQHCh4jz3yCn0WPTYIy7wXx3CJtJ7SJGV7c,91
1275
- localstack_core-4.2.1.dev70.dist-info/entry_points.txt,sha256=UqGFR0MPKa2sfresdqiCpqBZuWyRxCb3UG77oPVMzVA,20564
1276
- localstack_core-4.2.1.dev70.dist-info/plux.json,sha256=2tk9RetYYY3S7Lv9AfAtKYg1VcW38tf229iQ4Jzj9IM,20786
1277
- localstack_core-4.2.1.dev70.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
1278
- localstack_core-4.2.1.dev70.dist-info/RECORD,,
1269
+ localstack_core-4.2.1.dev71.data/scripts/localstack,sha256=WyL11vp5CkuP79iIR-L8XT7Cj8nvmxX7XRAgxhbmXNE,529
1270
+ localstack_core-4.2.1.dev71.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
1271
+ localstack_core-4.2.1.dev71.data/scripts/localstack.bat,sha256=tlzZTXtveHkMX_s_fa7VDfvdNdS8iVpEz2ER3uk9B_c,29
1272
+ localstack_core-4.2.1.dev71.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
1273
+ localstack_core-4.2.1.dev71.dist-info/METADATA,sha256=-376BE2BL7UawkngFsPzlQq5i4xcZ4-U_3yH18laJ0I,5502
1274
+ localstack_core-4.2.1.dev71.dist-info/WHEEL,sha256=tTnHoFhvKQHCh4jz3yCn0WPTYIy7wXx3CJtJ7SJGV7c,91
1275
+ localstack_core-4.2.1.dev71.dist-info/entry_points.txt,sha256=UqGFR0MPKa2sfresdqiCpqBZuWyRxCb3UG77oPVMzVA,20564
1276
+ localstack_core-4.2.1.dev71.dist-info/plux.json,sha256=EaF17XE05-SzqoxOynvIYXfUNkucmPf_23L0d1Up7yo,20786
1277
+ localstack_core-4.2.1.dev71.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
1278
+ localstack_core-4.2.1.dev71.dist-info/RECORD,,
@@ -0,0 +1 @@
1
+ {"localstack.cloudformation.resource_providers": ["AWS::SecretsManager::Secret=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secret_plugin:SecretsManagerSecretProviderPlugin", "AWS::Redshift::Cluster=localstack.services.redshift.resource_providers.aws_redshift_cluster_plugin:RedshiftClusterProviderPlugin", "AWS::Scheduler::Schedule=localstack.services.scheduler.resource_providers.aws_scheduler_schedule_plugin:SchedulerScheduleProviderPlugin", "AWS::CloudFormation::WaitCondition=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitcondition_plugin:CloudFormationWaitConditionProviderPlugin", "AWS::SNS::Topic=localstack.services.sns.resource_providers.aws_sns_topic_plugin:SNSTopicProviderPlugin", "AWS::ApiGateway::UsagePlanKey=localstack.services.apigateway.resource_providers.aws_apigateway_usageplankey_plugin:ApiGatewayUsagePlanKeyProviderPlugin", "AWS::OpenSearchService::Domain=localstack.services.opensearch.resource_providers.aws_opensearchservice_domain_plugin:OpenSearchServiceDomainProviderPlugin", "AWS::SecretsManager::RotationSchedule=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_rotationschedule_plugin:SecretsManagerRotationScheduleProviderPlugin", "AWS::IAM::ServerCertificate=localstack.services.iam.resource_providers.aws_iam_servercertificate_plugin:IAMServerCertificateProviderPlugin", "AWS::Events::ApiDestination=localstack.services.events.resource_providers.aws_events_apidestination_plugin:EventsApiDestinationProviderPlugin", "AWS::EC2::KeyPair=localstack.services.ec2.resource_providers.aws_ec2_keypair_plugin:EC2KeyPairProviderPlugin", "AWS::ApiGateway::Account=localstack.services.apigateway.resource_providers.aws_apigateway_account_plugin:ApiGatewayAccountProviderPlugin", "AWS::ApiGateway::GatewayResponse=localstack.services.apigateway.resource_providers.aws_apigateway_gatewayresponse_plugin:ApiGatewayGatewayResponseProviderPlugin", "AWS::Events::Rule=localstack.services.events.resource_providers.aws_events_rule_plugin:EventsRuleProviderPlugin", "AWS::SNS::Subscription=localstack.services.sns.resource_providers.aws_sns_subscription_plugin:SNSSubscriptionProviderPlugin", "AWS::Lambda::EventInvokeConfig=localstack.services.lambda_.resource_providers.aws_lambda_eventinvokeconfig_plugin:LambdaEventInvokeConfigProviderPlugin", "AWS::Lambda::Function=localstack.services.lambda_.resource_providers.aws_lambda_function_plugin:LambdaFunctionProviderPlugin", "AWS::Events::Connection=localstack.services.events.resource_providers.aws_events_connection_plugin:EventsConnectionProviderPlugin", "AWS::IAM::ServiceLinkedRole=localstack.services.iam.resource_providers.aws_iam_servicelinkedrole_plugin:IAMServiceLinkedRoleProviderPlugin", "AWS::Scheduler::ScheduleGroup=localstack.services.scheduler.resource_providers.aws_scheduler_schedulegroup_plugin:SchedulerScheduleGroupProviderPlugin", "AWS::CloudWatch::CompositeAlarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_compositealarm_plugin:CloudWatchCompositeAlarmProviderPlugin", "AWS::EC2::RouteTable=localstack.services.ec2.resource_providers.aws_ec2_routetable_plugin:EC2RouteTableProviderPlugin", "AWS::EC2::Subnet=localstack.services.ec2.resource_providers.aws_ec2_subnet_plugin:EC2SubnetProviderPlugin", "AWS::SSM::MaintenanceWindow=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindow_plugin:SSMMaintenanceWindowProviderPlugin", "AWS::SecretsManager::SecretTargetAttachment=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secrettargetattachment_plugin:SecretsManagerSecretTargetAttachmentProviderPlugin", "AWS::StepFunctions::Activity=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_activity_plugin:StepFunctionsActivityProviderPlugin", "AWS::ApiGateway::BasePathMapping=localstack.services.apigateway.resource_providers.aws_apigateway_basepathmapping_plugin:ApiGatewayBasePathMappingProviderPlugin", "AWS::ApiGateway::Model=localstack.services.apigateway.resource_providers.aws_apigateway_model_plugin:ApiGatewayModelProviderPlugin", "AWS::EC2::SubnetRouteTableAssociation=localstack.services.ec2.resource_providers.aws_ec2_subnetroutetableassociation_plugin:EC2SubnetRouteTableAssociationProviderPlugin", "AWS::EC2::NetworkAcl=localstack.services.ec2.resource_providers.aws_ec2_networkacl_plugin:EC2NetworkAclProviderPlugin", "AWS::Kinesis::Stream=localstack.services.kinesis.resource_providers.aws_kinesis_stream_plugin:KinesisStreamProviderPlugin", "AWS::EC2::NatGateway=localstack.services.ec2.resource_providers.aws_ec2_natgateway_plugin:EC2NatGatewayProviderPlugin", "AWS::ApiGateway::RequestValidator=localstack.services.apigateway.resource_providers.aws_apigateway_requestvalidator_plugin:ApiGatewayRequestValidatorProviderPlugin", "AWS::ECR::Repository=localstack.services.ecr.resource_providers.aws_ecr_repository_plugin:ECRRepositoryProviderPlugin", "AWS::StepFunctions::StateMachine=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_statemachine_plugin:StepFunctionsStateMachineProviderPlugin", "AWS::ApiGateway::Stage=localstack.services.apigateway.resource_providers.aws_apigateway_stage_plugin:ApiGatewayStageProviderPlugin", "AWS::ApiGateway::RestApi=localstack.services.apigateway.resource_providers.aws_apigateway_restapi_plugin:ApiGatewayRestApiProviderPlugin", "AWS::SSM::Parameter=localstack.services.ssm.resource_providers.aws_ssm_parameter_plugin:SSMParameterProviderPlugin", "AWS::CDK::Metadata=localstack.services.cdk.resource_providers.cdk_metadata_plugin:LambdaAliasProviderPlugin", "AWS::Lambda::Alias=localstack.services.lambda_.resource_providers.lambda_alias_plugin:LambdaAliasProviderPlugin", "AWS::IAM::User=localstack.services.iam.resource_providers.aws_iam_user_plugin:IAMUserProviderPlugin", "AWS::CloudWatch::Alarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_alarm_plugin:CloudWatchAlarmProviderPlugin", "AWS::SSM::MaintenanceWindowTarget=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtarget_plugin:SSMMaintenanceWindowTargetProviderPlugin", "AWS::EC2::Route=localstack.services.ec2.resource_providers.aws_ec2_route_plugin:EC2RouteProviderPlugin", "AWS::IAM::ManagedPolicy=localstack.services.iam.resource_providers.aws_iam_managedpolicy_plugin:IAMManagedPolicyProviderPlugin", "AWS::CloudFormation::WaitConditionHandle=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitconditionhandle_plugin:CloudFormationWaitConditionHandleProviderPlugin", "AWS::CloudFormation::Stack=localstack.services.cloudformation.resource_providers.aws_cloudformation_stack_plugin:CloudFormationStackProviderPlugin", "AWS::SNS::TopicPolicy=localstack.services.sns.resource_providers.aws_sns_topicpolicy_plugin:SNSTopicPolicyProviderPlugin", "AWS::ApiGateway::Resource=localstack.services.apigateway.resource_providers.aws_apigateway_resource_plugin:ApiGatewayResourceProviderPlugin", "AWS::CloudFormation::Macro=localstack.services.cloudformation.resource_providers.aws_cloudformation_macro_plugin:CloudFormationMacroProviderPlugin", "AWS::IAM::InstanceProfile=localstack.services.iam.resource_providers.aws_iam_instanceprofile_plugin:IAMInstanceProfileProviderPlugin", "AWS::Logs::LogStream=localstack.services.logs.resource_providers.aws_logs_logstream_plugin:LogsLogStreamProviderPlugin", "AWS::EC2::SecurityGroup=localstack.services.ec2.resource_providers.aws_ec2_securitygroup_plugin:EC2SecurityGroupProviderPlugin", "AWS::IAM::AccessKey=localstack.services.iam.resource_providers.aws_iam_accesskey_plugin:IAMAccessKeyProviderPlugin", "AWS::Events::EventBus=localstack.services.events.resource_providers.aws_events_eventbus_plugin:EventsEventBusProviderPlugin", "AWS::Elasticsearch::Domain=localstack.services.opensearch.resource_providers.aws_elasticsearch_domain_plugin:ElasticsearchDomainProviderPlugin", "AWS::EC2::VPCGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_vpcgatewayattachment_plugin:EC2VPCGatewayAttachmentProviderPlugin", "AWS::Lambda::Version=localstack.services.lambda_.resource_providers.aws_lambda_version_plugin:LambdaVersionProviderPlugin", "AWS::DynamoDB::GlobalTable=localstack.services.dynamodb.resource_providers.aws_dynamodb_globaltable_plugin:DynamoDBGlobalTableProviderPlugin", "AWS::IAM::Group=localstack.services.iam.resource_providers.aws_iam_group_plugin:IAMGroupProviderPlugin", "AWS::Lambda::Url=localstack.services.lambda_.resource_providers.aws_lambda_url_plugin:LambdaUrlProviderPlugin", "AWS::EC2::TransitGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_transitgatewayattachment_plugin:EC2TransitGatewayAttachmentProviderPlugin", "AWS::SecretsManager::ResourcePolicy=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_resourcepolicy_plugin:SecretsManagerResourcePolicyProviderPlugin", "AWS::EC2::InternetGateway=localstack.services.ec2.resource_providers.aws_ec2_internetgateway_plugin:EC2InternetGatewayProviderPlugin", "AWS::SSM::MaintenanceWindowTask=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtask_plugin:SSMMaintenanceWindowTaskProviderPlugin", "AWS::EC2::VPC=localstack.services.ec2.resource_providers.aws_ec2_vpc_plugin:EC2VPCProviderPlugin", "AWS::Route53::RecordSet=localstack.services.route53.resource_providers.aws_route53_recordset_plugin:Route53RecordSetProviderPlugin", "AWS::ResourceGroups::Group=localstack.services.resource_groups.resource_providers.aws_resourcegroups_group_plugin:ResourceGroupsGroupProviderPlugin", "AWS::Lambda::EventSourceMapping=localstack.services.lambda_.resource_providers.aws_lambda_eventsourcemapping_plugin:LambdaEventSourceMappingProviderPlugin", "AWS::CertificateManager::Certificate=localstack.services.certificatemanager.resource_providers.aws_certificatemanager_certificate_plugin:CertificateManagerCertificateProviderPlugin", "AWS::Lambda::LayerVersionPermission=localstack.services.lambda_.resource_providers.aws_lambda_layerversionpermission_plugin:LambdaLayerVersionPermissionProviderPlugin", "AWS::Lambda::CodeSigningConfig=localstack.services.lambda_.resource_providers.aws_lambda_codesigningconfig_plugin:LambdaCodeSigningConfigProviderPlugin", "AWS::ApiGateway::DomainName=localstack.services.apigateway.resource_providers.aws_apigateway_domainname_plugin:ApiGatewayDomainNameProviderPlugin", "AWS::S3::BucketPolicy=localstack.services.s3.resource_providers.aws_s3_bucketpolicy_plugin:S3BucketPolicyProviderPlugin", "AWS::SSM::PatchBaseline=localstack.services.ssm.resource_providers.aws_ssm_patchbaseline_plugin:SSMPatchBaselineProviderPlugin", "AWS::ApiGateway::Deployment=localstack.services.apigateway.resource_providers.aws_apigateway_deployment_plugin:ApiGatewayDeploymentProviderPlugin", "AWS::EC2::Instance=localstack.services.ec2.resource_providers.aws_ec2_instance_plugin:EC2InstanceProviderPlugin", "AWS::KMS::Alias=localstack.services.kms.resource_providers.aws_kms_alias_plugin:KMSAliasProviderPlugin", "AWS::Kinesis::StreamConsumer=localstack.services.kinesis.resource_providers.aws_kinesis_streamconsumer_plugin:KinesisStreamConsumerProviderPlugin", "AWS::IAM::Policy=localstack.services.iam.resource_providers.aws_iam_policy_plugin:IAMPolicyProviderPlugin", "AWS::S3::Bucket=localstack.services.s3.resource_providers.aws_s3_bucket_plugin:S3BucketProviderPlugin", "AWS::SES::EmailIdentity=localstack.services.ses.resource_providers.aws_ses_emailidentity_plugin:SESEmailIdentityProviderPlugin", "AWS::Lambda::LayerVersion=localstack.services.lambda_.resource_providers.aws_lambda_layerversion_plugin:LambdaLayerVersionProviderPlugin", "AWS::SQS::Queue=localstack.services.sqs.resource_providers.aws_sqs_queue_plugin:SQSQueueProviderPlugin", "AWS::EC2::DHCPOptions=localstack.services.ec2.resource_providers.aws_ec2_dhcpoptions_plugin:EC2DHCPOptionsProviderPlugin", "AWS::ApiGateway::ApiKey=localstack.services.apigateway.resource_providers.aws_apigateway_apikey_plugin:ApiGatewayApiKeyProviderPlugin", "AWS::Logs::LogGroup=localstack.services.logs.resource_providers.aws_logs_loggroup_plugin:LogsLogGroupProviderPlugin", "AWS::Lambda::Permission=localstack.services.lambda_.resource_providers.aws_lambda_permission_plugin:LambdaPermissionProviderPlugin", "AWS::EC2::TransitGateway=localstack.services.ec2.resource_providers.aws_ec2_transitgateway_plugin:EC2TransitGatewayProviderPlugin", "AWS::ApiGateway::UsagePlan=localstack.services.apigateway.resource_providers.aws_apigateway_usageplan_plugin:ApiGatewayUsagePlanProviderPlugin", "AWS::KMS::Key=localstack.services.kms.resource_providers.aws_kms_key_plugin:KMSKeyProviderPlugin", "AWS::KinesisFirehose::DeliveryStream=localstack.services.kinesisfirehose.resource_providers.aws_kinesisfirehose_deliverystream_plugin:KinesisFirehoseDeliveryStreamProviderPlugin", "AWS::DynamoDB::Table=localstack.services.dynamodb.resource_providers.aws_dynamodb_table_plugin:DynamoDBTableProviderPlugin", "AWS::ApiGateway::Method=localstack.services.apigateway.resource_providers.aws_apigateway_method_plugin:ApiGatewayMethodProviderPlugin", "AWS::Events::EventBusPolicy=localstack.services.events.resource_providers.aws_events_eventbuspolicy_plugin:EventsEventBusPolicyProviderPlugin", "AWS::SQS::QueuePolicy=localstack.services.sqs.resource_providers.aws_sqs_queuepolicy_plugin:SQSQueuePolicyProviderPlugin", "AWS::Route53::HealthCheck=localstack.services.route53.resource_providers.aws_route53_healthcheck_plugin:Route53HealthCheckProviderPlugin", "AWS::EC2::PrefixList=localstack.services.ec2.resource_providers.aws_ec2_prefixlist_plugin:EC2PrefixListProviderPlugin", "AWS::Logs::SubscriptionFilter=localstack.services.logs.resource_providers.aws_logs_subscriptionfilter_plugin:LogsSubscriptionFilterProviderPlugin", "AWS::EC2::VPCEndpoint=localstack.services.ec2.resource_providers.aws_ec2_vpcendpoint_plugin:EC2VPCEndpointProviderPlugin", "AWS::IAM::Role=localstack.services.iam.resource_providers.aws_iam_role_plugin:IAMRoleProviderPlugin"], "localstack.hooks.configure_localstack_container": ["_mount_machine_file=localstack.utils.analytics.metadata:_mount_machine_file"], "localstack.hooks.prepare_host": ["prepare_host_machine_id=localstack.utils.analytics.metadata:prepare_host_machine_id"], "localstack.packages": ["opensearch/community=localstack.services.opensearch.plugins:opensearch_package", "vosk/community=localstack.services.transcribe.plugins:vosk_package", "elasticsearch/community=localstack.services.es.plugins:elasticsearch_package", "jpype-jsonata/community=localstack.services.stepfunctions.plugins:jpype_jsonata_package", "ffmpeg/community=localstack.packages.plugins:ffmpeg_package", "java/community=localstack.packages.plugins:java_package", "terraform/community=localstack.packages.plugins:terraform_package", "lambda-java-libs/community=localstack.services.lambda_.plugins:lambda_java_libs", "lambda-runtime/community=localstack.services.lambda_.plugins:lambda_runtime_package", "dynamodb-local/community=localstack.services.dynamodb.plugins:dynamodb_local_package", "kinesis-mock/community=localstack.services.kinesis.plugins:kinesismock_package"], "localstack.hooks.on_infra_start": ["register_swagger_endpoints=localstack.http.resources.swagger.plugins:register_swagger_endpoints", "register_cloudformation_deploy_ui=localstack.services.cloudformation.plugins:register_cloudformation_deploy_ui", "_run_init_scripts_on_start=localstack.runtime.init:_run_init_scripts_on_start", "delete_cached_certificate=localstack.plugins:delete_cached_certificate", "deprecation_warnings=localstack.plugins:deprecation_warnings", "conditionally_enable_debugger=localstack.dev.debugger.plugins:conditionally_enable_debugger", "_publish_config_as_analytics_event=localstack.runtime.analytics:_publish_config_as_analytics_event", "_publish_container_info=localstack.runtime.analytics:_publish_container_info", "register_custom_endpoints=localstack.services.lambda_.plugins:register_custom_endpoints", "validate_configuration=localstack.services.lambda_.plugins:validate_configuration", "apply_aws_runtime_patches=localstack.aws.patches:apply_aws_runtime_patches", "setup_dns_configuration_on_host=localstack.dns.plugins:setup_dns_configuration_on_host", "start_dns_server=localstack.dns.plugins:start_dns_server", "apply_runtime_patches=localstack.runtime.patches:apply_runtime_patches", "_patch_botocore_endpoint_in_memory=localstack.aws.client:_patch_botocore_endpoint_in_memory", "_patch_botocore_json_parser=localstack.aws.client:_patch_botocore_json_parser", "_patch_cbor2=localstack.aws.client:_patch_cbor2"], "localstack.init.runner": ["py=localstack.runtime.init:PythonScriptRunner", "sh=localstack.runtime.init:ShellScriptRunner"], "localstack.hooks.on_infra_ready": ["_run_init_scripts_on_ready=localstack.runtime.init:_run_init_scripts_on_ready"], "localstack.hooks.on_infra_shutdown": ["_run_init_scripts_on_shutdown=localstack.runtime.init:_run_init_scripts_on_shutdown", "aggregate_and_send=localstack.utils.analytics.usage:aggregate_and_send", "remove_custom_endpoints=localstack.services.lambda_.plugins:remove_custom_endpoints", "publish_metrics=localstack.utils.analytics.metrics:publish_metrics", "stop_server=localstack.dns.plugins:stop_server", "run_on_after_service_shutdown_handlers=localstack.runtime.shutdown:run_on_after_service_shutdown_handlers", "run_shutdown_handlers=localstack.runtime.shutdown:run_shutdown_handlers", "shutdown_services=localstack.runtime.shutdown:shutdown_services"], "localstack.openapi.spec": ["localstack=localstack.plugins:CoreOASPlugin"], "localstack.runtime.components": ["aws=localstack.aws.components:AwsComponents"], "localstack.lambda.runtime_executor": ["docker=localstack.services.lambda_.invocation.plugins:DockerRuntimeExecutorPlugin"], "localstack.aws.provider": ["acm:default=localstack.services.providers:acm", "apigateway:default=localstack.services.providers:apigateway", "apigateway:legacy=localstack.services.providers:apigateway_legacy", "apigateway:next_gen=localstack.services.providers:apigateway_next_gen", "config:default=localstack.services.providers:awsconfig", "cloudformation:default=localstack.services.providers:cloudformation", "cloudformation:engine-v2=localstack.services.providers:cloudformation_v2", "cloudwatch:default=localstack.services.providers:cloudwatch", "cloudwatch:v1=localstack.services.providers:cloudwatch_v1", "cloudwatch:v2=localstack.services.providers:cloudwatch_v2", "dynamodb:default=localstack.services.providers:dynamodb", "dynamodb:v2=localstack.services.providers:dynamodb_v2", "dynamodbstreams:default=localstack.services.providers:dynamodbstreams", "dynamodbstreams:v2=localstack.services.providers:dynamodbstreams_v2", "ec2:default=localstack.services.providers:ec2", "es:default=localstack.services.providers:es", "events:default=localstack.services.providers:events", "events:legacy=localstack.services.providers:events_legacy", "events:v1=localstack.services.providers:events_v1", "events:v2=localstack.services.providers:events_v2", "firehose:default=localstack.services.providers:firehose", "iam:default=localstack.services.providers:iam", "kinesis:default=localstack.services.providers:kinesis", "kms:default=localstack.services.providers:kms", "lambda:default=localstack.services.providers:lambda_", "lambda:asf=localstack.services.providers:lambda_asf", "lambda:v2=localstack.services.providers:lambda_v2", "logs:default=localstack.services.providers:logs", "opensearch:default=localstack.services.providers:opensearch", "redshift:default=localstack.services.providers:redshift", "resource-groups:default=localstack.services.providers:resource_groups", "resourcegroupstaggingapi:default=localstack.services.providers:resourcegroupstaggingapi", "route53:default=localstack.services.providers:route53", "route53resolver:default=localstack.services.providers:route53resolver", "s3:default=localstack.services.providers:s3", "s3control:default=localstack.services.providers:s3control", "scheduler:default=localstack.services.providers:scheduler", "secretsmanager:default=localstack.services.providers:secretsmanager", "ses:default=localstack.services.providers:ses", "sns:default=localstack.services.providers:sns", "sqs:default=localstack.services.providers:sqs", "ssm:default=localstack.services.providers:ssm", "stepfunctions:default=localstack.services.providers:stepfunctions", "stepfunctions:v2=localstack.services.providers:stepfunctions_v2", "sts:default=localstack.services.providers:sts", "support:default=localstack.services.providers:support", "swf:default=localstack.services.providers:swf", "transcribe:default=localstack.services.providers:transcribe"], "localstack.runtime.server": ["hypercorn=localstack.runtime.server.plugins:HypercornRuntimeServerPlugin", "twisted=localstack.runtime.server.plugins:TwistedRuntimeServerPlugin"]}
@@ -1 +0,0 @@
1
- {"localstack.cloudformation.resource_providers": ["AWS::CloudWatch::Alarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_alarm_plugin:CloudWatchAlarmProviderPlugin", "AWS::Lambda::Alias=localstack.services.lambda_.resource_providers.lambda_alias_plugin:LambdaAliasProviderPlugin", "AWS::ECR::Repository=localstack.services.ecr.resource_providers.aws_ecr_repository_plugin:ECRRepositoryProviderPlugin", "AWS::IAM::User=localstack.services.iam.resource_providers.aws_iam_user_plugin:IAMUserProviderPlugin", "AWS::SSM::Parameter=localstack.services.ssm.resource_providers.aws_ssm_parameter_plugin:SSMParameterProviderPlugin", "AWS::EC2::InternetGateway=localstack.services.ec2.resource_providers.aws_ec2_internetgateway_plugin:EC2InternetGatewayProviderPlugin", "AWS::Events::ApiDestination=localstack.services.events.resource_providers.aws_events_apidestination_plugin:EventsApiDestinationProviderPlugin", "AWS::Logs::SubscriptionFilter=localstack.services.logs.resource_providers.aws_logs_subscriptionfilter_plugin:LogsSubscriptionFilterProviderPlugin", "AWS::ApiGateway::Resource=localstack.services.apigateway.resource_providers.aws_apigateway_resource_plugin:ApiGatewayResourceProviderPlugin", "AWS::EC2::SecurityGroup=localstack.services.ec2.resource_providers.aws_ec2_securitygroup_plugin:EC2SecurityGroupProviderPlugin", "AWS::Route53::RecordSet=localstack.services.route53.resource_providers.aws_route53_recordset_plugin:Route53RecordSetProviderPlugin", "AWS::EC2::TransitGateway=localstack.services.ec2.resource_providers.aws_ec2_transitgateway_plugin:EC2TransitGatewayProviderPlugin", "AWS::SecretsManager::RotationSchedule=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_rotationschedule_plugin:SecretsManagerRotationScheduleProviderPlugin", "AWS::ApiGateway::Account=localstack.services.apigateway.resource_providers.aws_apigateway_account_plugin:ApiGatewayAccountProviderPlugin", "AWS::EC2::VPCEndpoint=localstack.services.ec2.resource_providers.aws_ec2_vpcendpoint_plugin:EC2VPCEndpointProviderPlugin", "AWS::ResourceGroups::Group=localstack.services.resource_groups.resource_providers.aws_resourcegroups_group_plugin:ResourceGroupsGroupProviderPlugin", "AWS::SecretsManager::Secret=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secret_plugin:SecretsManagerSecretProviderPlugin", "AWS::Logs::LogStream=localstack.services.logs.resource_providers.aws_logs_logstream_plugin:LogsLogStreamProviderPlugin", "AWS::IAM::Group=localstack.services.iam.resource_providers.aws_iam_group_plugin:IAMGroupProviderPlugin", "AWS::CloudFormation::Macro=localstack.services.cloudformation.resource_providers.aws_cloudformation_macro_plugin:CloudFormationMacroProviderPlugin", "AWS::ApiGateway::Method=localstack.services.apigateway.resource_providers.aws_apigateway_method_plugin:ApiGatewayMethodProviderPlugin", "AWS::Redshift::Cluster=localstack.services.redshift.resource_providers.aws_redshift_cluster_plugin:RedshiftClusterProviderPlugin", "AWS::IAM::ManagedPolicy=localstack.services.iam.resource_providers.aws_iam_managedpolicy_plugin:IAMManagedPolicyProviderPlugin", "AWS::EC2::NatGateway=localstack.services.ec2.resource_providers.aws_ec2_natgateway_plugin:EC2NatGatewayProviderPlugin", "AWS::KMS::Key=localstack.services.kms.resource_providers.aws_kms_key_plugin:KMSKeyProviderPlugin", "AWS::SQS::QueuePolicy=localstack.services.sqs.resource_providers.aws_sqs_queuepolicy_plugin:SQSQueuePolicyProviderPlugin", "AWS::CertificateManager::Certificate=localstack.services.certificatemanager.resource_providers.aws_certificatemanager_certificate_plugin:CertificateManagerCertificateProviderPlugin", "AWS::Elasticsearch::Domain=localstack.services.opensearch.resource_providers.aws_elasticsearch_domain_plugin:ElasticsearchDomainProviderPlugin", "AWS::EC2::PrefixList=localstack.services.ec2.resource_providers.aws_ec2_prefixlist_plugin:EC2PrefixListProviderPlugin", "AWS::OpenSearchService::Domain=localstack.services.opensearch.resource_providers.aws_opensearchservice_domain_plugin:OpenSearchServiceDomainProviderPlugin", "AWS::CloudFormation::WaitConditionHandle=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitconditionhandle_plugin:CloudFormationWaitConditionHandleProviderPlugin", "AWS::ApiGateway::ApiKey=localstack.services.apigateway.resource_providers.aws_apigateway_apikey_plugin:ApiGatewayApiKeyProviderPlugin", "AWS::IAM::ServiceLinkedRole=localstack.services.iam.resource_providers.aws_iam_servicelinkedrole_plugin:IAMServiceLinkedRoleProviderPlugin", "AWS::Events::Connection=localstack.services.events.resource_providers.aws_events_connection_plugin:EventsConnectionProviderPlugin", "AWS::EC2::TransitGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_transitgatewayattachment_plugin:EC2TransitGatewayAttachmentProviderPlugin", "AWS::ApiGateway::DomainName=localstack.services.apigateway.resource_providers.aws_apigateway_domainname_plugin:ApiGatewayDomainNameProviderPlugin", "AWS::IAM::InstanceProfile=localstack.services.iam.resource_providers.aws_iam_instanceprofile_plugin:IAMInstanceProfileProviderPlugin", "AWS::SNS::TopicPolicy=localstack.services.sns.resource_providers.aws_sns_topicpolicy_plugin:SNSTopicPolicyProviderPlugin", "AWS::IAM::Policy=localstack.services.iam.resource_providers.aws_iam_policy_plugin:IAMPolicyProviderPlugin", "AWS::Lambda::Version=localstack.services.lambda_.resource_providers.aws_lambda_version_plugin:LambdaVersionProviderPlugin", "AWS::DynamoDB::GlobalTable=localstack.services.dynamodb.resource_providers.aws_dynamodb_globaltable_plugin:DynamoDBGlobalTableProviderPlugin", "AWS::S3::BucketPolicy=localstack.services.s3.resource_providers.aws_s3_bucketpolicy_plugin:S3BucketPolicyProviderPlugin", "AWS::SNS::Subscription=localstack.services.sns.resource_providers.aws_sns_subscription_plugin:SNSSubscriptionProviderPlugin", "AWS::Lambda::Permission=localstack.services.lambda_.resource_providers.aws_lambda_permission_plugin:LambdaPermissionProviderPlugin", "AWS::SQS::Queue=localstack.services.sqs.resource_providers.aws_sqs_queue_plugin:SQSQueueProviderPlugin", "AWS::CloudFormation::WaitCondition=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitcondition_plugin:CloudFormationWaitConditionProviderPlugin", "AWS::SSM::MaintenanceWindowTarget=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtarget_plugin:SSMMaintenanceWindowTargetProviderPlugin", "AWS::EC2::VPCGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_vpcgatewayattachment_plugin:EC2VPCGatewayAttachmentProviderPlugin", "AWS::Scheduler::Schedule=localstack.services.scheduler.resource_providers.aws_scheduler_schedule_plugin:SchedulerScheduleProviderPlugin", "AWS::Lambda::Function=localstack.services.lambda_.resource_providers.aws_lambda_function_plugin:LambdaFunctionProviderPlugin", "AWS::Scheduler::ScheduleGroup=localstack.services.scheduler.resource_providers.aws_scheduler_schedulegroup_plugin:SchedulerScheduleGroupProviderPlugin", "AWS::ApiGateway::Deployment=localstack.services.apigateway.resource_providers.aws_apigateway_deployment_plugin:ApiGatewayDeploymentProviderPlugin", "AWS::ApiGateway::Model=localstack.services.apigateway.resource_providers.aws_apigateway_model_plugin:ApiGatewayModelProviderPlugin", "AWS::Kinesis::Stream=localstack.services.kinesis.resource_providers.aws_kinesis_stream_plugin:KinesisStreamProviderPlugin", "AWS::SNS::Topic=localstack.services.sns.resource_providers.aws_sns_topic_plugin:SNSTopicProviderPlugin", "AWS::EC2::Subnet=localstack.services.ec2.resource_providers.aws_ec2_subnet_plugin:EC2SubnetProviderPlugin", "AWS::IAM::Role=localstack.services.iam.resource_providers.aws_iam_role_plugin:IAMRoleProviderPlugin", "AWS::SSM::MaintenanceWindow=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindow_plugin:SSMMaintenanceWindowProviderPlugin", "AWS::SES::EmailIdentity=localstack.services.ses.resource_providers.aws_ses_emailidentity_plugin:SESEmailIdentityProviderPlugin", "AWS::Lambda::EventSourceMapping=localstack.services.lambda_.resource_providers.aws_lambda_eventsourcemapping_plugin:LambdaEventSourceMappingProviderPlugin", "AWS::ApiGateway::UsagePlanKey=localstack.services.apigateway.resource_providers.aws_apigateway_usageplankey_plugin:ApiGatewayUsagePlanKeyProviderPlugin", "AWS::KinesisFirehose::DeliveryStream=localstack.services.kinesisfirehose.resource_providers.aws_kinesisfirehose_deliverystream_plugin:KinesisFirehoseDeliveryStreamProviderPlugin", "AWS::SecretsManager::ResourcePolicy=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_resourcepolicy_plugin:SecretsManagerResourcePolicyProviderPlugin", "AWS::IAM::AccessKey=localstack.services.iam.resource_providers.aws_iam_accesskey_plugin:IAMAccessKeyProviderPlugin", "AWS::StepFunctions::StateMachine=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_statemachine_plugin:StepFunctionsStateMachineProviderPlugin", "AWS::Events::EventBus=localstack.services.events.resource_providers.aws_events_eventbus_plugin:EventsEventBusProviderPlugin", "AWS::Lambda::CodeSigningConfig=localstack.services.lambda_.resource_providers.aws_lambda_codesigningconfig_plugin:LambdaCodeSigningConfigProviderPlugin", "AWS::Kinesis::StreamConsumer=localstack.services.kinesis.resource_providers.aws_kinesis_streamconsumer_plugin:KinesisStreamConsumerProviderPlugin", "AWS::EC2::RouteTable=localstack.services.ec2.resource_providers.aws_ec2_routetable_plugin:EC2RouteTableProviderPlugin", "AWS::StepFunctions::Activity=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_activity_plugin:StepFunctionsActivityProviderPlugin", "AWS::Lambda::LayerVersionPermission=localstack.services.lambda_.resource_providers.aws_lambda_layerversionpermission_plugin:LambdaLayerVersionPermissionProviderPlugin", "AWS::Logs::LogGroup=localstack.services.logs.resource_providers.aws_logs_loggroup_plugin:LogsLogGroupProviderPlugin", "AWS::EC2::NetworkAcl=localstack.services.ec2.resource_providers.aws_ec2_networkacl_plugin:EC2NetworkAclProviderPlugin", "AWS::SSM::MaintenanceWindowTask=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtask_plugin:SSMMaintenanceWindowTaskProviderPlugin", "AWS::Route53::HealthCheck=localstack.services.route53.resource_providers.aws_route53_healthcheck_plugin:Route53HealthCheckProviderPlugin", "AWS::SecretsManager::SecretTargetAttachment=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secrettargetattachment_plugin:SecretsManagerSecretTargetAttachmentProviderPlugin", "AWS::KMS::Alias=localstack.services.kms.resource_providers.aws_kms_alias_plugin:KMSAliasProviderPlugin", "AWS::ApiGateway::BasePathMapping=localstack.services.apigateway.resource_providers.aws_apigateway_basepathmapping_plugin:ApiGatewayBasePathMappingProviderPlugin", "AWS::ApiGateway::RestApi=localstack.services.apigateway.resource_providers.aws_apigateway_restapi_plugin:ApiGatewayRestApiProviderPlugin", "AWS::CloudWatch::CompositeAlarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_compositealarm_plugin:CloudWatchCompositeAlarmProviderPlugin", "AWS::Events::Rule=localstack.services.events.resource_providers.aws_events_rule_plugin:EventsRuleProviderPlugin", "AWS::EC2::SubnetRouteTableAssociation=localstack.services.ec2.resource_providers.aws_ec2_subnetroutetableassociation_plugin:EC2SubnetRouteTableAssociationProviderPlugin", "AWS::EC2::Instance=localstack.services.ec2.resource_providers.aws_ec2_instance_plugin:EC2InstanceProviderPlugin", "AWS::EC2::VPC=localstack.services.ec2.resource_providers.aws_ec2_vpc_plugin:EC2VPCProviderPlugin", "AWS::CDK::Metadata=localstack.services.cdk.resource_providers.cdk_metadata_plugin:LambdaAliasProviderPlugin", "AWS::Lambda::EventInvokeConfig=localstack.services.lambda_.resource_providers.aws_lambda_eventinvokeconfig_plugin:LambdaEventInvokeConfigProviderPlugin", "AWS::Lambda::LayerVersion=localstack.services.lambda_.resource_providers.aws_lambda_layerversion_plugin:LambdaLayerVersionProviderPlugin", "AWS::SSM::PatchBaseline=localstack.services.ssm.resource_providers.aws_ssm_patchbaseline_plugin:SSMPatchBaselineProviderPlugin", "AWS::IAM::ServerCertificate=localstack.services.iam.resource_providers.aws_iam_servercertificate_plugin:IAMServerCertificateProviderPlugin", "AWS::ApiGateway::Stage=localstack.services.apigateway.resource_providers.aws_apigateway_stage_plugin:ApiGatewayStageProviderPlugin", "AWS::Lambda::Url=localstack.services.lambda_.resource_providers.aws_lambda_url_plugin:LambdaUrlProviderPlugin", "AWS::CloudFormation::Stack=localstack.services.cloudformation.resource_providers.aws_cloudformation_stack_plugin:CloudFormationStackProviderPlugin", "AWS::Events::EventBusPolicy=localstack.services.events.resource_providers.aws_events_eventbuspolicy_plugin:EventsEventBusPolicyProviderPlugin", "AWS::EC2::DHCPOptions=localstack.services.ec2.resource_providers.aws_ec2_dhcpoptions_plugin:EC2DHCPOptionsProviderPlugin", "AWS::EC2::Route=localstack.services.ec2.resource_providers.aws_ec2_route_plugin:EC2RouteProviderPlugin", "AWS::S3::Bucket=localstack.services.s3.resource_providers.aws_s3_bucket_plugin:S3BucketProviderPlugin", "AWS::DynamoDB::Table=localstack.services.dynamodb.resource_providers.aws_dynamodb_table_plugin:DynamoDBTableProviderPlugin", "AWS::ApiGateway::GatewayResponse=localstack.services.apigateway.resource_providers.aws_apigateway_gatewayresponse_plugin:ApiGatewayGatewayResponseProviderPlugin", "AWS::ApiGateway::RequestValidator=localstack.services.apigateway.resource_providers.aws_apigateway_requestvalidator_plugin:ApiGatewayRequestValidatorProviderPlugin", "AWS::EC2::KeyPair=localstack.services.ec2.resource_providers.aws_ec2_keypair_plugin:EC2KeyPairProviderPlugin", "AWS::ApiGateway::UsagePlan=localstack.services.apigateway.resource_providers.aws_apigateway_usageplan_plugin:ApiGatewayUsagePlanProviderPlugin"], "localstack.packages": ["elasticsearch/community=localstack.services.es.plugins:elasticsearch_package", "lambda-java-libs/community=localstack.services.lambda_.plugins:lambda_java_libs", "lambda-runtime/community=localstack.services.lambda_.plugins:lambda_runtime_package", "opensearch/community=localstack.services.opensearch.plugins:opensearch_package", "jpype-jsonata/community=localstack.services.stepfunctions.plugins:jpype_jsonata_package", "kinesis-mock/community=localstack.services.kinesis.plugins:kinesismock_package", "ffmpeg/community=localstack.packages.plugins:ffmpeg_package", "java/community=localstack.packages.plugins:java_package", "terraform/community=localstack.packages.plugins:terraform_package", "dynamodb-local/community=localstack.services.dynamodb.plugins:dynamodb_local_package", "vosk/community=localstack.services.transcribe.plugins:vosk_package"], "localstack.hooks.on_infra_start": ["apply_aws_runtime_patches=localstack.aws.patches:apply_aws_runtime_patches", "conditionally_enable_debugger=localstack.dev.debugger.plugins:conditionally_enable_debugger", "_run_init_scripts_on_start=localstack.runtime.init:_run_init_scripts_on_start", "register_custom_endpoints=localstack.services.lambda_.plugins:register_custom_endpoints", "validate_configuration=localstack.services.lambda_.plugins:validate_configuration", "delete_cached_certificate=localstack.plugins:delete_cached_certificate", "deprecation_warnings=localstack.plugins:deprecation_warnings", "register_swagger_endpoints=localstack.http.resources.swagger.plugins:register_swagger_endpoints", "_publish_config_as_analytics_event=localstack.runtime.analytics:_publish_config_as_analytics_event", "_publish_container_info=localstack.runtime.analytics:_publish_container_info", "_patch_botocore_endpoint_in_memory=localstack.aws.client:_patch_botocore_endpoint_in_memory", "_patch_botocore_json_parser=localstack.aws.client:_patch_botocore_json_parser", "_patch_cbor2=localstack.aws.client:_patch_cbor2", "setup_dns_configuration_on_host=localstack.dns.plugins:setup_dns_configuration_on_host", "start_dns_server=localstack.dns.plugins:start_dns_server", "apply_runtime_patches=localstack.runtime.patches:apply_runtime_patches", "register_cloudformation_deploy_ui=localstack.services.cloudformation.plugins:register_cloudformation_deploy_ui"], "localstack.hooks.configure_localstack_container": ["_mount_machine_file=localstack.utils.analytics.metadata:_mount_machine_file"], "localstack.hooks.prepare_host": ["prepare_host_machine_id=localstack.utils.analytics.metadata:prepare_host_machine_id"], "localstack.init.runner": ["py=localstack.runtime.init:PythonScriptRunner", "sh=localstack.runtime.init:ShellScriptRunner"], "localstack.hooks.on_infra_ready": ["_run_init_scripts_on_ready=localstack.runtime.init:_run_init_scripts_on_ready"], "localstack.hooks.on_infra_shutdown": ["_run_init_scripts_on_shutdown=localstack.runtime.init:_run_init_scripts_on_shutdown", "remove_custom_endpoints=localstack.services.lambda_.plugins:remove_custom_endpoints", "publish_metrics=localstack.utils.analytics.metrics:publish_metrics", "stop_server=localstack.dns.plugins:stop_server", "aggregate_and_send=localstack.utils.analytics.usage:aggregate_and_send", "run_on_after_service_shutdown_handlers=localstack.runtime.shutdown:run_on_after_service_shutdown_handlers", "run_shutdown_handlers=localstack.runtime.shutdown:run_shutdown_handlers", "shutdown_services=localstack.runtime.shutdown:shutdown_services"], "localstack.runtime.server": ["hypercorn=localstack.runtime.server.plugins:HypercornRuntimeServerPlugin", "twisted=localstack.runtime.server.plugins:TwistedRuntimeServerPlugin"], "localstack.openapi.spec": ["localstack=localstack.plugins:CoreOASPlugin"], "localstack.aws.provider": ["acm:default=localstack.services.providers:acm", "apigateway:default=localstack.services.providers:apigateway", "apigateway:legacy=localstack.services.providers:apigateway_legacy", "apigateway:next_gen=localstack.services.providers:apigateway_next_gen", "config:default=localstack.services.providers:awsconfig", "cloudformation:default=localstack.services.providers:cloudformation", "cloudformation:engine-v2=localstack.services.providers:cloudformation_v2", "cloudwatch:default=localstack.services.providers:cloudwatch", "cloudwatch:v1=localstack.services.providers:cloudwatch_v1", "cloudwatch:v2=localstack.services.providers:cloudwatch_v2", "dynamodb:default=localstack.services.providers:dynamodb", "dynamodb:v2=localstack.services.providers:dynamodb_v2", "dynamodbstreams:default=localstack.services.providers:dynamodbstreams", "dynamodbstreams:v2=localstack.services.providers:dynamodbstreams_v2", "ec2:default=localstack.services.providers:ec2", "es:default=localstack.services.providers:es", "events:default=localstack.services.providers:events", "events:legacy=localstack.services.providers:events_legacy", "events:v1=localstack.services.providers:events_v1", "events:v2=localstack.services.providers:events_v2", "firehose:default=localstack.services.providers:firehose", "iam:default=localstack.services.providers:iam", "kinesis:default=localstack.services.providers:kinesis", "kms:default=localstack.services.providers:kms", "lambda:default=localstack.services.providers:lambda_", "lambda:asf=localstack.services.providers:lambda_asf", "lambda:v2=localstack.services.providers:lambda_v2", "logs:default=localstack.services.providers:logs", "opensearch:default=localstack.services.providers:opensearch", "redshift:default=localstack.services.providers:redshift", "resource-groups:default=localstack.services.providers:resource_groups", "resourcegroupstaggingapi:default=localstack.services.providers:resourcegroupstaggingapi", "route53:default=localstack.services.providers:route53", "route53resolver:default=localstack.services.providers:route53resolver", "s3:default=localstack.services.providers:s3", "s3control:default=localstack.services.providers:s3control", "scheduler:default=localstack.services.providers:scheduler", "secretsmanager:default=localstack.services.providers:secretsmanager", "ses:default=localstack.services.providers:ses", "sns:default=localstack.services.providers:sns", "sqs:default=localstack.services.providers:sqs", "ssm:default=localstack.services.providers:ssm", "stepfunctions:default=localstack.services.providers:stepfunctions", "stepfunctions:v2=localstack.services.providers:stepfunctions_v2", "sts:default=localstack.services.providers:sts", "support:default=localstack.services.providers:support", "swf:default=localstack.services.providers:swf", "transcribe:default=localstack.services.providers:transcribe"], "localstack.lambda.runtime_executor": ["docker=localstack.services.lambda_.invocation.plugins:DockerRuntimeExecutorPlugin"], "localstack.runtime.components": ["aws=localstack.aws.components:AwsComponents"]}