cloudpub 1.3.1__tar.gz → 1.3.3__tar.gz

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 (29) hide show
  1. {cloudpub-1.3.1/cloudpub.egg-info → cloudpub-1.3.3}/PKG-INFO +1 -1
  2. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/models/aws.py +4 -4
  3. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/models/common.py +1 -1
  4. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/models/ms_azure.py +3 -3
  5. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/ms_azure/service.py +1 -1
  6. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/ms_azure/utils.py +18 -7
  7. {cloudpub-1.3.1 → cloudpub-1.3.3/cloudpub.egg-info}/PKG-INFO +1 -1
  8. cloudpub-1.3.3/requirements.txt +166 -0
  9. {cloudpub-1.3.1 → cloudpub-1.3.3}/setup.py +1 -1
  10. cloudpub-1.3.1/requirements.txt +0 -179
  11. {cloudpub-1.3.1 → cloudpub-1.3.3}/LICENSE +0 -0
  12. {cloudpub-1.3.1 → cloudpub-1.3.3}/MANIFEST.in +0 -0
  13. {cloudpub-1.3.1 → cloudpub-1.3.3}/README.md +0 -0
  14. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/__init__.py +0 -0
  15. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/aws/__init__.py +0 -0
  16. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/aws/service.py +0 -0
  17. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/aws/utils.py +0 -0
  18. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/common.py +0 -0
  19. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/error.py +0 -0
  20. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/models/__init__.py +0 -0
  21. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/ms_azure/__init__.py +0 -0
  22. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/ms_azure/session.py +0 -0
  23. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub/utils.py +0 -0
  24. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub.egg-info/SOURCES.txt +0 -0
  25. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub.egg-info/dependency_links.txt +0 -0
  26. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub.egg-info/not-zip-safe +0 -0
  27. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub.egg-info/requires.txt +0 -0
  28. {cloudpub-1.3.1 → cloudpub-1.3.3}/cloudpub.egg-info/top_level.txt +0 -0
  29. {cloudpub-1.3.1 → cloudpub-1.3.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudpub
3
- Version: 1.3.1
3
+ Version: 1.3.3
4
4
  Summary: Services for publishing products in cloud environments
5
5
  Home-page: https://github.com/release-engineering/cloudpub
6
6
  Author: Jonathan Gangi
@@ -940,7 +940,7 @@ class ListEntitiesResponse(AttrsJSONDecodeMixin):
940
940
  """ # noqa: E501
941
941
 
942
942
  entity_summary_list: List[EntitySummary] = field(
943
- converter=lambda x: [EntitySummary.from_json(a) for a in x] if x else [], # type: ignore
943
+ converter=lambda x: [EntitySummary.from_json(a) for a in x] if x else [],
944
944
  on_setattr=NO_OP,
945
945
  metadata={"alias": "EntitySummaryList"},
946
946
  )
@@ -995,7 +995,7 @@ class ChangeSummary(AttrsJSONDecodeMixin):
995
995
  """This object contains details specific to the change type of the requested change."""
996
996
 
997
997
  error_details: List[ErrorDetail] = field(
998
- converter=lambda x: [ErrorDetail.from_json(a) for a in x] if x else [], # type: ignore
998
+ converter=lambda x: [ErrorDetail.from_json(a) for a in x] if x else [],
999
999
  on_setattr=NO_OP,
1000
1000
  metadata={"alias": "ErrorDetailList"},
1001
1001
  )
@@ -1066,7 +1066,7 @@ class DescribeChangeSetReponse(AttrsJSONDecodeMixin):
1066
1066
  """Returned if there is a failure on the change set, but that failure is not related to any of the changes in the request.""" # noqa: E501
1067
1067
 
1068
1068
  change_set: List[ChangeSummary] = field(
1069
- converter=lambda x: [ChangeSummary.from_json(a) for a in x] if x else [], # type: ignore
1069
+ converter=lambda x: [ChangeSummary.from_json(a) for a in x] if x else [],
1070
1070
  on_setattr=NO_OP,
1071
1071
  metadata={"alias": "ChangeSet"},
1072
1072
  )
@@ -1148,7 +1148,7 @@ class ListChangeSetsResponse(AttrsJSONDecodeMixin):
1148
1148
  """The describe_entity response's metadata."""
1149
1149
 
1150
1150
  change_set_list: List[ListChangeSet] = field(
1151
- converter=lambda x: [ListChangeSet.from_json(a) for a in x] if x else [], # type: ignore
1151
+ converter=lambda x: [ListChangeSet.from_json(a) for a in x] if x else [],
1152
1152
  on_setattr=NO_OP,
1153
1153
  metadata={"alias": "ChangeSetSummaryList"},
1154
1154
  )
@@ -82,7 +82,7 @@ class AttrsJSONDecodeMixin:
82
82
  json_copy = cls._preprocess_json(json_copy)
83
83
 
84
84
  args = {}
85
- cls_attr = [a.name for a in cls.__attrs_attrs__ if isinstance(a, Attribute)] # type: ignore
85
+ cls_attr = [a.name for a in cls.__attrs_attrs__ if isinstance(a, Attribute)]
86
86
  for a in cls_attr:
87
87
  args[a] = json_copy.pop(a, None)
88
88
 
@@ -662,7 +662,7 @@ class PlanSummary(AzureProductLinkedResource):
662
662
 
663
663
  gov_certifications: Optional[List[GovernmentCertification]] = field(
664
664
  metadata={"alias": "azureGovernmentCertifications", "hide_unset": True},
665
- converter=lambda x: [GovernmentCertification.from_json(a) for a in x] if x else None, # type: ignore # noqa: E501
665
+ converter=lambda x: [GovernmentCertification.from_json(a) for a in x] if x else None,
666
666
  on_setattr=NO_OP,
667
667
  )
668
668
  """Certifications for government plans."""
@@ -773,7 +773,7 @@ class VideoThumbnails(AttrsJSONDecodeMixin):
773
773
 
774
774
  image_list: List[ThumbnailURL] = field(
775
775
  metadata={"alias": "imageList"},
776
- converter=lambda x: [ThumbnailURL.from_json(a) for a in x] if x else [], # type: ignore
776
+ converter=lambda x: [ThumbnailURL.from_json(a) for a in x] if x else [],
777
777
  on_setattr=NO_OP,
778
778
  )
779
779
 
@@ -1035,7 +1035,7 @@ class ProductReseller(AzureProductLinkedResource):
1035
1035
  """
1036
1036
 
1037
1037
  audiences: List[Audience] = field(
1038
- converter=lambda x: [Audience.from_json(a) for a in x] if x else [], on_setattr=NO_OP # type: ignore # noqa: E501
1038
+ converter=lambda x: [Audience.from_json(a) for a in x] if x else [], on_setattr=NO_OP
1039
1039
  )
1040
1040
  """List of :class:`~cloudpub.models.ms_azure.Audience` for the reseller offer."""
1041
1041
 
@@ -599,7 +599,7 @@ class AzureService(BaseService[AzurePublishingMetadata]):
599
599
  product, plan = self.get_product_plan_by_name(product_name, plan_name)
600
600
  log.info(
601
601
  "Preparing to associate the image with the plan \"%s\" from product \"%s\""
602
- % (product_name, plan_name)
602
+ % (plan_name, product_name)
603
603
  )
604
604
 
605
605
  # 2. Retrieve the VM Technical configuration for the given plan
@@ -262,11 +262,16 @@ def prepare_vm_images(
262
262
  return [VMImageDefinition.from_json(json_gen1)]
263
263
 
264
264
 
265
- def _len_vm_images(disk_versions: List[DiskVersion]) -> int:
266
- count = 0
267
- for disk_version in disk_versions:
268
- count = count + len(disk_version.vm_images)
269
- return count
265
+ def _all_skus_present(old_skus: List[VMISku], disk_versions: List[DiskVersion]) -> bool:
266
+ image_types = set()
267
+ for sku in old_skus:
268
+ image_types.add(sku.image_type)
269
+
270
+ for dv in disk_versions:
271
+ for img in dv.vm_images:
272
+ if img.image_type not in image_types:
273
+ return False
274
+ return True
270
275
 
271
276
 
272
277
  def _build_skus(
@@ -281,6 +286,12 @@ def _build_skus(
281
286
  return plan_name
282
287
  return f"{plan_name}-{arch.lower()}"
283
288
 
289
+ def get_safe_security_type(image_type):
290
+ # Arches which aren't x86Gen2 (like ARM64) doesn't work well with security type
291
+ if image_type != "x64Gen2":
292
+ return None
293
+ return security_type
294
+
284
295
  sku_mapping: Dict[str, str] = {}
285
296
  # Update the SKUs for each image in DiskVersions if needed
286
297
  for disk_version in disk_versions:
@@ -301,7 +312,7 @@ def _build_skus(
301
312
 
302
313
  # Return the expected SKUs list
303
314
  res = [
304
- VMISku.from_json({"image_type": k, "id": v, "security_type": security_type})
315
+ VMISku.from_json({"image_type": k, "id": v, "security_type": get_safe_security_type(k)})
305
316
  for k, v in sku_mapping.items()
306
317
  ]
307
318
  return sorted(res, key=attrgetter("id"))
@@ -346,7 +357,7 @@ def update_skus(
346
357
 
347
358
  # If we have SKUs for each image we don't need to update them as they're already
348
359
  # properly set.
349
- if len(old_skus) == _len_vm_images(disk_versions):
360
+ if _all_skus_present(old_skus, disk_versions):
350
361
  return old_skus
351
362
 
352
363
  # Update SKUs to create the alternate gen.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudpub
3
- Version: 1.3.1
3
+ Version: 1.3.3
4
4
  Summary: Services for publishing products in cloud environments
5
5
  Home-page: https://github.com/release-engineering/cloudpub
6
6
  Author: Jonathan Gangi
@@ -0,0 +1,166 @@
1
+ #
2
+ # This file is autogenerated by pip-compile with Python 3.9
3
+ # by the following command:
4
+ #
5
+ # pip-compile --generate-hashes --output-file=requirements.txt
6
+ #
7
+ attrs==25.3.0 \
8
+ --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 \
9
+ --hash=sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b
10
+ # via cloudpub (setup.py)
11
+ boto3==1.37.37 \
12
+ --hash=sha256:752d31105a45e3e01c8c68471db14ae439990b75a35e72b591ca528e2575b28f \
13
+ --hash=sha256:d125cb11e22817f7a2581bade4bf7b75247b401888890239ceb5d3e902ccaf38
14
+ # via cloudpub (setup.py)
15
+ botocore==1.37.37 \
16
+ --hash=sha256:3eadde6fed95c4cb469cc39d1c3558528b7fa76d23e7e16d4bddc77250431a64 \
17
+ --hash=sha256:eb730ff978f47c02f0c8ed07bccdc0db6d8fa098ed32ac31bee1da0e9be480d1
18
+ # via
19
+ # boto3
20
+ # s3transfer
21
+ certifi==2025.1.31 \
22
+ --hash=sha256:3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651 \
23
+ --hash=sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe
24
+ # via requests
25
+ charset-normalizer==3.4.1 \
26
+ --hash=sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537 \
27
+ --hash=sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa \
28
+ --hash=sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a \
29
+ --hash=sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294 \
30
+ --hash=sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b \
31
+ --hash=sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd \
32
+ --hash=sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601 \
33
+ --hash=sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd \
34
+ --hash=sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4 \
35
+ --hash=sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d \
36
+ --hash=sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2 \
37
+ --hash=sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313 \
38
+ --hash=sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd \
39
+ --hash=sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa \
40
+ --hash=sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8 \
41
+ --hash=sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1 \
42
+ --hash=sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2 \
43
+ --hash=sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496 \
44
+ --hash=sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d \
45
+ --hash=sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b \
46
+ --hash=sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e \
47
+ --hash=sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a \
48
+ --hash=sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4 \
49
+ --hash=sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca \
50
+ --hash=sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78 \
51
+ --hash=sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408 \
52
+ --hash=sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5 \
53
+ --hash=sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3 \
54
+ --hash=sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f \
55
+ --hash=sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a \
56
+ --hash=sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765 \
57
+ --hash=sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6 \
58
+ --hash=sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146 \
59
+ --hash=sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6 \
60
+ --hash=sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9 \
61
+ --hash=sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd \
62
+ --hash=sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c \
63
+ --hash=sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f \
64
+ --hash=sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545 \
65
+ --hash=sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176 \
66
+ --hash=sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770 \
67
+ --hash=sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824 \
68
+ --hash=sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f \
69
+ --hash=sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf \
70
+ --hash=sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487 \
71
+ --hash=sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d \
72
+ --hash=sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd \
73
+ --hash=sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b \
74
+ --hash=sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534 \
75
+ --hash=sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f \
76
+ --hash=sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b \
77
+ --hash=sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9 \
78
+ --hash=sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd \
79
+ --hash=sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125 \
80
+ --hash=sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9 \
81
+ --hash=sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de \
82
+ --hash=sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11 \
83
+ --hash=sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d \
84
+ --hash=sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35 \
85
+ --hash=sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f \
86
+ --hash=sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda \
87
+ --hash=sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7 \
88
+ --hash=sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a \
89
+ --hash=sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971 \
90
+ --hash=sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8 \
91
+ --hash=sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41 \
92
+ --hash=sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d \
93
+ --hash=sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f \
94
+ --hash=sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757 \
95
+ --hash=sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a \
96
+ --hash=sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886 \
97
+ --hash=sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77 \
98
+ --hash=sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76 \
99
+ --hash=sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247 \
100
+ --hash=sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85 \
101
+ --hash=sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb \
102
+ --hash=sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7 \
103
+ --hash=sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e \
104
+ --hash=sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6 \
105
+ --hash=sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037 \
106
+ --hash=sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1 \
107
+ --hash=sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e \
108
+ --hash=sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807 \
109
+ --hash=sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407 \
110
+ --hash=sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c \
111
+ --hash=sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12 \
112
+ --hash=sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3 \
113
+ --hash=sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089 \
114
+ --hash=sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd \
115
+ --hash=sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e \
116
+ --hash=sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00 \
117
+ --hash=sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616
118
+ # via requests
119
+ deepdiff==8.4.2 \
120
+ --hash=sha256:5c741c0867ebc7fcb83950ad5ed958369c17f424e14dee32a11c56073f4ee92a \
121
+ --hash=sha256:7e39e5b26f3747c54f9d0e8b9b29daab670c3100166b77cc0185d5793121b099
122
+ # via cloudpub (setup.py)
123
+ idna==3.10 \
124
+ --hash=sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9 \
125
+ --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
126
+ # via requests
127
+ jmespath==1.0.1 \
128
+ --hash=sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980 \
129
+ --hash=sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe
130
+ # via
131
+ # boto3
132
+ # botocore
133
+ orderly-set==5.4.0 \
134
+ --hash=sha256:c8ff5ba824abe4eebcbbdd3f646ff3648ad0dd52239319d90056d8d30b6cccdd \
135
+ --hash=sha256:f0192a7f9ae3385b587b71688353fae491d1ca45878496eb71ea118be1623639
136
+ # via deepdiff
137
+ packaging==25.0 \
138
+ --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 \
139
+ --hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f
140
+ # via cloudpub (setup.py)
141
+ python-dateutil==2.9.0.post0 \
142
+ --hash=sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 \
143
+ --hash=sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427
144
+ # via botocore
145
+ requests==2.32.3 \
146
+ --hash=sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760 \
147
+ --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
148
+ # via cloudpub (setup.py)
149
+ s3transfer==0.11.5 \
150
+ --hash=sha256:757af0f2ac150d3c75bc4177a32355c3862a98d20447b69a0161812992fe0bd4 \
151
+ --hash=sha256:8c8aad92784779ab8688a61aefff3e28e9ebdce43142808eaa3f0b0f402f68b7
152
+ # via boto3
153
+ six==1.17.0 \
154
+ --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 \
155
+ --hash=sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81
156
+ # via python-dateutil
157
+ tenacity==9.1.2 \
158
+ --hash=sha256:1169d376c297e7de388d18b4481760d478b0e99a777cad3a9c86e556f4b697cb \
159
+ --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138
160
+ # via cloudpub (setup.py)
161
+ urllib3==1.26.20 \
162
+ --hash=sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e \
163
+ --hash=sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32
164
+ # via
165
+ # botocore
166
+ # requests
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
3
3
  setup(
4
4
  name='cloudpub',
5
5
  description='Services for publishing products in cloud environments',
6
- version='1.3.1',
6
+ version='1.3.3',
7
7
  keywords='stratosphere cloudpub cloudpublish',
8
8
  author='Jonathan Gangi',
9
9
  author_email='jgangi@redhat.com',
@@ -1,179 +0,0 @@
1
- #
2
- # This file is autogenerated by pip-compile with Python 3.9
3
- # by the following command:
4
- #
5
- # pip-compile --generate-hashes --output-file=requirements.txt
6
- #
7
- attrs==24.2.0 \
8
- --hash=sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346 \
9
- --hash=sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2
10
- # via cloudpub (setup.py)
11
- boto3==1.35.81 \
12
- --hash=sha256:742941b2424c0223d2d94a08c3485462fa7c58d816b62ca80f08e555243acee1 \
13
- --hash=sha256:d2e95fa06f095b8e0c545dd678c6269d253809b2997c30f5ce8a956c410b4e86
14
- # via cloudpub (setup.py)
15
- botocore==1.35.81 \
16
- --hash=sha256:564c2478e50179e0b766e6a87e5e0cdd35e1bc37eb375c1cf15511f5dd13600d \
17
- --hash=sha256:a7b13bbd959bf2d6f38f681676aab408be01974c46802ab997617b51399239f7
18
- # via
19
- # boto3
20
- # s3transfer
21
- certifi==2024.12.14 \
22
- --hash=sha256:1275f7a45be9464efc1173084eaa30f866fe2e47d389406136d332ed4967ec56 \
23
- --hash=sha256:b650d30f370c2b724812bee08008be0c4163b163ddaec3f2546c1caf65f191db
24
- # via requests
25
- charset-normalizer==3.4.0 \
26
- --hash=sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621 \
27
- --hash=sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6 \
28
- --hash=sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8 \
29
- --hash=sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912 \
30
- --hash=sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c \
31
- --hash=sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b \
32
- --hash=sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d \
33
- --hash=sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d \
34
- --hash=sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95 \
35
- --hash=sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e \
36
- --hash=sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565 \
37
- --hash=sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64 \
38
- --hash=sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab \
39
- --hash=sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be \
40
- --hash=sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e \
41
- --hash=sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907 \
42
- --hash=sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0 \
43
- --hash=sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2 \
44
- --hash=sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62 \
45
- --hash=sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62 \
46
- --hash=sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23 \
47
- --hash=sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc \
48
- --hash=sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284 \
49
- --hash=sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca \
50
- --hash=sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455 \
51
- --hash=sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858 \
52
- --hash=sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b \
53
- --hash=sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594 \
54
- --hash=sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc \
55
- --hash=sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db \
56
- --hash=sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b \
57
- --hash=sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea \
58
- --hash=sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6 \
59
- --hash=sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920 \
60
- --hash=sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749 \
61
- --hash=sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7 \
62
- --hash=sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd \
63
- --hash=sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99 \
64
- --hash=sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242 \
65
- --hash=sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee \
66
- --hash=sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129 \
67
- --hash=sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2 \
68
- --hash=sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51 \
69
- --hash=sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee \
70
- --hash=sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8 \
71
- --hash=sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b \
72
- --hash=sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613 \
73
- --hash=sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742 \
74
- --hash=sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe \
75
- --hash=sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3 \
76
- --hash=sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5 \
77
- --hash=sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631 \
78
- --hash=sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7 \
79
- --hash=sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15 \
80
- --hash=sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c \
81
- --hash=sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea \
82
- --hash=sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417 \
83
- --hash=sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250 \
84
- --hash=sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88 \
85
- --hash=sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca \
86
- --hash=sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa \
87
- --hash=sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99 \
88
- --hash=sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149 \
89
- --hash=sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41 \
90
- --hash=sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574 \
91
- --hash=sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0 \
92
- --hash=sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f \
93
- --hash=sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d \
94
- --hash=sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654 \
95
- --hash=sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3 \
96
- --hash=sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19 \
97
- --hash=sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90 \
98
- --hash=sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578 \
99
- --hash=sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9 \
100
- --hash=sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1 \
101
- --hash=sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51 \
102
- --hash=sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719 \
103
- --hash=sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236 \
104
- --hash=sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a \
105
- --hash=sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c \
106
- --hash=sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade \
107
- --hash=sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944 \
108
- --hash=sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc \
109
- --hash=sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6 \
110
- --hash=sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6 \
111
- --hash=sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27 \
112
- --hash=sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6 \
113
- --hash=sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2 \
114
- --hash=sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12 \
115
- --hash=sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf \
116
- --hash=sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114 \
117
- --hash=sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7 \
118
- --hash=sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf \
119
- --hash=sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d \
120
- --hash=sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b \
121
- --hash=sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed \
122
- --hash=sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03 \
123
- --hash=sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4 \
124
- --hash=sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67 \
125
- --hash=sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365 \
126
- --hash=sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a \
127
- --hash=sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748 \
128
- --hash=sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b \
129
- --hash=sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079 \
130
- --hash=sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482
131
- # via requests
132
- deepdiff==8.0.1 \
133
- --hash=sha256:245599a4586ab59bb599ca3517a9c42f3318ff600ded5e80a3432693c8ec3c4b \
134
- --hash=sha256:42e99004ce603f9a53934c634a57b04ad5900e0d8ed0abb15e635767489cbc05
135
- # via cloudpub (setup.py)
136
- idna==3.10 \
137
- --hash=sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9 \
138
- --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
139
- # via requests
140
- jmespath==1.0.1 \
141
- --hash=sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980 \
142
- --hash=sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe
143
- # via
144
- # boto3
145
- # botocore
146
- orderly-set==5.2.2 \
147
- --hash=sha256:52a18b86aaf3f5d5a498bbdb27bf3253a4e5c57ab38e5b7a56fa00115cd28448 \
148
- --hash=sha256:f7a37c95a38c01cdfe41c3ffb62925a318a2286ea0a41790c057fc802aec54da
149
- # via deepdiff
150
- packaging==24.2 \
151
- --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759 \
152
- --hash=sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f
153
- # via cloudpub (setup.py)
154
- python-dateutil==2.9.0.post0 \
155
- --hash=sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 \
156
- --hash=sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427
157
- # via botocore
158
- requests==2.32.3 \
159
- --hash=sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760 \
160
- --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
161
- # via cloudpub (setup.py)
162
- s3transfer==0.10.4 \
163
- --hash=sha256:244a76a24355363a68164241438de1b72f8781664920260c48465896b712a41e \
164
- --hash=sha256:29edc09801743c21eb5ecbc617a152df41d3c287f67b615f73e5f750583666a7
165
- # via boto3
166
- six==1.17.0 \
167
- --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 \
168
- --hash=sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81
169
- # via python-dateutil
170
- tenacity==9.0.0 \
171
- --hash=sha256:807f37ca97d62aa361264d497b0e31e92b8027044942bfa756160d908320d73b \
172
- --hash=sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539
173
- # via cloudpub (setup.py)
174
- urllib3==1.26.20 \
175
- --hash=sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e \
176
- --hash=sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32
177
- # via
178
- # botocore
179
- # requests
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes