localstack-core 4.13.2.dev80__py3-none-any.whl → 4.13.2.dev82__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.
@@ -813,6 +813,9 @@ class SqsProvider(SqsApi, ServiceLifecycleHook):
813
813
  queue_name, context.region, context.account_id, attributes, tags
814
814
  )
815
815
 
816
+ if tags:
817
+ self._tag_queue(queue, tags)
818
+
816
819
  LOG.debug("creating queue key=%s attributes=%s tags=%s", queue_name, attributes, tags)
817
820
 
818
821
  store.queues[queue_name] = queue
@@ -938,6 +941,7 @@ class SqsProvider(SqsApi, ServiceLifecycleHook):
938
941
  store.queues[queue.name].shutdown()
939
942
  del store.queues[queue.name]
940
943
  store.deleted[queue.name] = time.time()
944
+ self._remove_all_queue_tags(queue)
941
945
 
942
946
  def get_queue_attributes(
943
947
  self,
@@ -1486,27 +1490,20 @@ class SqsProvider(SqsApi, ServiceLifecycleHook):
1486
1490
 
1487
1491
  def tag_queue(self, context: RequestContext, queue_url: String, tags: TagMap, **kwargs) -> None:
1488
1492
  queue = self._resolve_queue(context, queue_url=queue_url)
1489
-
1490
- if not tags:
1491
- return
1492
-
1493
- for k, v in tags.items():
1494
- queue.tags[k] = v
1493
+ self._tag_queue(queue, tags)
1495
1494
 
1496
1495
  def list_queue_tags(
1497
1496
  self, context: RequestContext, queue_url: String, **kwargs
1498
1497
  ) -> ListQueueTagsResult:
1499
1498
  queue = self._resolve_queue(context, queue_url=queue_url)
1500
- return ListQueueTagsResult(Tags=(queue.tags if queue.tags else None))
1499
+ tags = self._get_queue_tags(queue)
1500
+ return ListQueueTagsResult(Tags=tags if tags else None)
1501
1501
 
1502
1502
  def untag_queue(
1503
1503
  self, context: RequestContext, queue_url: String, tag_keys: TagKeyList, **kwargs
1504
1504
  ) -> None:
1505
1505
  queue = self._resolve_queue(context, queue_url=queue_url)
1506
-
1507
- for k in tag_keys:
1508
- if k in queue.tags:
1509
- del queue.tags[k]
1506
+ self._untag_queue(queue, tag_keys)
1510
1507
 
1511
1508
  def add_permission(
1512
1509
  self,
@@ -1644,6 +1641,29 @@ class SqsProvider(SqsApi, ServiceLifecycleHook):
1644
1641
  self._cloudwatch_publish_worker.stop()
1645
1642
  self._cloudwatch_dispatcher.shutdown()
1646
1643
 
1644
+ @staticmethod
1645
+ def _get_queue_tags(queue: SqsQueue) -> TagMap:
1646
+ return queue.tags
1647
+
1648
+ @staticmethod
1649
+ def _tag_queue(queue: SqsQueue, tags: TagMap) -> None:
1650
+ if not tags:
1651
+ return
1652
+
1653
+ for k, v in tags.items():
1654
+ queue.tags[k] = v
1655
+
1656
+ @staticmethod
1657
+ def _untag_queue(queue: SqsQueue, tag_keys: TagKeyList) -> None:
1658
+ for k in tag_keys:
1659
+ if k in queue.tags:
1660
+ del queue.tags[k]
1661
+
1662
+ @staticmethod
1663
+ def _remove_all_queue_tags(queue: SqsQueue) -> None:
1664
+ # Nothing required as tags are stored on the queue resource. Overwritten in Pro.
1665
+ return None
1666
+
1647
1667
 
1648
1668
  def resolve_queue_location(
1649
1669
  context: RequestContext, queue_name: str | None = None, queue_url: str | None = None
localstack/version.py CHANGED
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '4.13.2.dev80'
32
- __version_tuple__ = version_tuple = (4, 13, 2, 'dev80')
31
+ __version__ = version = '4.13.2.dev82'
32
+ __version_tuple__ = version_tuple = (4, 13, 2, 'dev82')
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: localstack-core
3
- Version: 4.13.2.dev80
3
+ Version: 4.13.2.dev82
4
4
  Summary: The core library and runtime of LocalStack
5
5
  Author-email: LocalStack Contributors <info@localstack.cloud>
6
6
  License-Expression: Apache-2.0
@@ -4,7 +4,7 @@ localstack/deprecations.py,sha256=-3IYgCd6LEC3PjO7hbr3Dg-p0PIS6phjmv1qZnj1uo0,15
4
4
  localstack/openapi.yaml,sha256=jFUzv-NKkJttxb8HRrmKiNYOmJD-zVfPxG3DDMrRwfg,30865
5
5
  localstack/plugins.py,sha256=BIJC9dlo0WbP7lLKkCiGtd_2q5oeqiHZohvoRTcejXM,2457
6
6
  localstack/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- localstack/version.py,sha256=uv0-1pmMy4LNKWY5z_cuzIutTOpmuJ7Ug4oOI4Y6BzI,721
7
+ localstack/version.py,sha256=IqoTpaxQZHOuVd6LS9fndU2qhcOfIVCsbw6rfabOvC4,721
8
8
  localstack/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  localstack/aws/accounts.py,sha256=102zpGowOxo0S6UGMpfjw14QW7WCLVAGsnFK5xFMLoo,3043
10
10
  localstack/aws/app.py,sha256=n9bJCfJRuMz_gLGAH430c3bIQXgUXeWO5NPfcdL2MV8,5145
@@ -765,7 +765,7 @@ localstack/services/sqs/constants.py,sha256=gD3DdhEa1gVv4vmc12pCd44BLcH4BZ8h6W0t
765
765
  localstack/services/sqs/developer_api.py,sha256=fNQNMqCkDyvobRm8g4-ErXjSYQ4O-myYobXA_RneC9o,8004
766
766
  localstack/services/sqs/exceptions.py,sha256=aMmTD1Mex37NKndt6_hpj_d0JAZeN3eX0g7r8BlNO7M,570
767
767
  localstack/services/sqs/models.py,sha256=SmoQy82KGYEaOxD1t1YhO6zRG4l7ttOvqurnKqMavLw,53720
768
- localstack/services/sqs/provider.py,sha256=S80rgzQiX2THXM7sgDksg2lCriHlw7mH1svX4Xc8zmA,65870
768
+ localstack/services/sqs/provider.py,sha256=oR44BEhh9XRXooTGslBvF0MrEHGAVFHzp6KTzRDmgUs,66539
769
769
  localstack/services/sqs/query_api.py,sha256=5elf1kDdWlUuH5FJzhs8vWdiB85fziYvFsbivuN5OQQ,8655
770
770
  localstack/services/sqs/queue.py,sha256=6iDnFagdMYDApSpZCLG8gtb6n8tf7icwH9Y9bJiT3kI,1786
771
771
  localstack/services/sqs/utils.py,sha256=L8i7g7FxAlP1RyvFOk_N_NNNO-M8HVYQku-QcqoOVKI,10773
@@ -1311,10 +1311,10 @@ localstack/utils/server/tcp_proxy.py,sha256=y2NJAmvftTiAYsLU_8qe4W5LGqwUw21i90Pu
1311
1311
  localstack/utils/xray/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1312
1312
  localstack/utils/xray/trace_header.py,sha256=ahXk9eonq7LpeENwlqUEPj3jDOCiVRixhntQuxNor-Q,6209
1313
1313
  localstack/utils/xray/traceid.py,sha256=GKO-R2sMMjlrH2UaLPXlQlZ6flbE7ZKb6IZMtMu_M5U,1110
1314
- localstack_core-4.13.2.dev80.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
1315
- localstack_core-4.13.2.dev80.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
1316
- localstack_core-4.13.2.dev80.dist-info/METADATA,sha256=-ASw5EgOT5hcegsJbK28cBdwPWd0vtfx5Lqy7UTX9-I,5867
1317
- localstack_core-4.13.2.dev80.dist-info/WHEEL,sha256=YCfwYGOYMi5Jhw2fU4yNgwErybb2IX5PEwBKV4ZbdBo,91
1318
- localstack_core-4.13.2.dev80.dist-info/entry_points.txt,sha256=59aAnn8KVHWAHkMg2dOgmgYtRZ-xTX9T4UiIchWgK6k,20975
1319
- localstack_core-4.13.2.dev80.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
1320
- localstack_core-4.13.2.dev80.dist-info/RECORD,,
1314
+ localstack_core-4.13.2.dev82.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
1315
+ localstack_core-4.13.2.dev82.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
1316
+ localstack_core-4.13.2.dev82.dist-info/METADATA,sha256=Zkv67pWR1aeLWSTNtVCKtxPW6G-kx5UVg9-qPU7Azh8,5867
1317
+ localstack_core-4.13.2.dev82.dist-info/WHEEL,sha256=YCfwYGOYMi5Jhw2fU4yNgwErybb2IX5PEwBKV4ZbdBo,91
1318
+ localstack_core-4.13.2.dev82.dist-info/entry_points.txt,sha256=59aAnn8KVHWAHkMg2dOgmgYtRZ-xTX9T4UiIchWgK6k,20975
1319
+ localstack_core-4.13.2.dev82.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
1320
+ localstack_core-4.13.2.dev82.dist-info/RECORD,,