awscli 1.35.24__py3-none-any.whl → 1.36.1__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.
Potentially problematic release.
This version of awscli might be problematic. Click here for more details.
- awscli/__init__.py +1 -1
- awscli/paramfile.py +2 -2
- awscli/shorthand.py +29 -5
- {awscli-1.35.24.dist-info → awscli-1.36.1.dist-info}/METADATA +2 -2
- {awscli-1.35.24.dist-info → awscli-1.36.1.dist-info}/RECORD +13 -13
- {awscli-1.35.24.data → awscli-1.36.1.data}/scripts/aws +0 -0
- {awscli-1.35.24.data → awscli-1.36.1.data}/scripts/aws.cmd +0 -0
- {awscli-1.35.24.data → awscli-1.36.1.data}/scripts/aws_bash_completer +0 -0
- {awscli-1.35.24.data → awscli-1.36.1.data}/scripts/aws_completer +0 -0
- {awscli-1.35.24.data → awscli-1.36.1.data}/scripts/aws_zsh_completer.sh +0 -0
- {awscli-1.35.24.dist-info → awscli-1.36.1.dist-info}/LICENSE.txt +0 -0
- {awscli-1.35.24.dist-info → awscli-1.36.1.dist-info}/WHEEL +0 -0
- {awscli-1.35.24.dist-info → awscli-1.36.1.dist-info}/top_level.txt +0 -0
awscli/__init__.py
CHANGED
awscli/paramfile.py
CHANGED
|
@@ -18,7 +18,7 @@ from botocore.awsrequest import AWSRequest
|
|
|
18
18
|
from botocore.exceptions import ProfileNotFound
|
|
19
19
|
from botocore.httpsession import URLLib3Session
|
|
20
20
|
|
|
21
|
-
from awscli
|
|
21
|
+
from awscli import argprocess
|
|
22
22
|
from awscli.compat import compat_open
|
|
23
23
|
|
|
24
24
|
logger = logging.getLogger(__name__)
|
|
@@ -183,7 +183,7 @@ class URIArgumentHandler:
|
|
|
183
183
|
try:
|
|
184
184
|
return get_paramfile(value, self._prefixes)
|
|
185
185
|
except ResourceLoadingError as e:
|
|
186
|
-
raise ParamError(param.cli_name, str(e))
|
|
186
|
+
raise argprocess.ParamError(param.cli_name, str(e))
|
|
187
187
|
|
|
188
188
|
|
|
189
189
|
def get_paramfile(path, cases):
|
awscli/shorthand.py
CHANGED
|
@@ -42,6 +42,7 @@ necessary to maintain backwards compatibility. This is done in the
|
|
|
42
42
|
import re
|
|
43
43
|
import string
|
|
44
44
|
|
|
45
|
+
from awscli.paramfile import LOCAL_PREFIX_MAP, get_paramfile
|
|
45
46
|
from awscli.utils import is_document_type
|
|
46
47
|
|
|
47
48
|
_EOF = object()
|
|
@@ -160,6 +161,7 @@ class ShorthandParser:
|
|
|
160
161
|
"""
|
|
161
162
|
self._input_value = value
|
|
162
163
|
self._index = 0
|
|
164
|
+
self._should_resolve_paramfiles = False
|
|
163
165
|
return self._parameter()
|
|
164
166
|
|
|
165
167
|
def _parameter(self):
|
|
@@ -182,8 +184,15 @@ class ShorthandParser:
|
|
|
182
184
|
return params
|
|
183
185
|
|
|
184
186
|
def _keyval(self):
|
|
185
|
-
# keyval = key "=" [values]
|
|
187
|
+
# keyval = key "=" [values] / key "@=" [file-optional-values]
|
|
188
|
+
# file-optional-values = file://value / fileb://value / value
|
|
186
189
|
key = self._key()
|
|
190
|
+
self._should_resolve_paramfiles = False
|
|
191
|
+
try:
|
|
192
|
+
self._expect('@', consume_whitespace=True)
|
|
193
|
+
self._should_resolve_paramfiles = True
|
|
194
|
+
except ShorthandParseSyntaxError:
|
|
195
|
+
pass
|
|
187
196
|
self._expect('=', consume_whitespace=True)
|
|
188
197
|
values = self._values()
|
|
189
198
|
return key, values
|
|
@@ -261,7 +270,8 @@ class ShorthandParser:
|
|
|
261
270
|
result = self._FIRST_VALUE.match(self._input_value[self._index :])
|
|
262
271
|
if result is not None:
|
|
263
272
|
consumed = self._consume_matched_regex(result)
|
|
264
|
-
|
|
273
|
+
processed = consumed.replace('\\,', ',').rstrip()
|
|
274
|
+
return self._resolve_paramfiles(processed) if self._should_resolve_paramfiles else processed
|
|
265
275
|
return ''
|
|
266
276
|
|
|
267
277
|
def _explicit_list(self):
|
|
@@ -292,6 +302,12 @@ class ShorthandParser:
|
|
|
292
302
|
keyvals = {}
|
|
293
303
|
while self._current() != '}':
|
|
294
304
|
key = self._key()
|
|
305
|
+
self._should_resolve_paramfiles = False
|
|
306
|
+
try:
|
|
307
|
+
self._expect('@', consume_whitespace=True)
|
|
308
|
+
self._should_resolve_paramfiles = True
|
|
309
|
+
except ShorthandParseSyntaxError:
|
|
310
|
+
pass
|
|
295
311
|
self._expect('=', consume_whitespace=True)
|
|
296
312
|
v = self._explicit_values()
|
|
297
313
|
self._consume_whitespace()
|
|
@@ -314,7 +330,8 @@ class ShorthandParser:
|
|
|
314
330
|
# single-quoted-value = %x27 *(val-escaped-single) %x27
|
|
315
331
|
# val-escaped-single = %x20-26 / %x28-7F / escaped-escape /
|
|
316
332
|
# (escape single-quote)
|
|
317
|
-
|
|
333
|
+
processed = self._consume_quoted(self._SINGLE_QUOTED, escaped_char="'")
|
|
334
|
+
return self._resolve_paramfiles(processed) if self._should_resolve_paramfiles else processed
|
|
318
335
|
|
|
319
336
|
def _consume_quoted(self, regex, escaped_char=None):
|
|
320
337
|
value = self._must_consume_regex(regex)[1:-1]
|
|
@@ -324,7 +341,8 @@ class ShorthandParser:
|
|
|
324
341
|
return value
|
|
325
342
|
|
|
326
343
|
def _double_quoted_value(self):
|
|
327
|
-
|
|
344
|
+
processed = self._consume_quoted(self._DOUBLE_QUOTED, escaped_char='"')
|
|
345
|
+
return self._resolve_paramfiles(processed) if self._should_resolve_paramfiles else processed
|
|
328
346
|
|
|
329
347
|
def _second_value(self):
|
|
330
348
|
if self._current() == "'":
|
|
@@ -333,7 +351,13 @@ class ShorthandParser:
|
|
|
333
351
|
return self._double_quoted_value()
|
|
334
352
|
else:
|
|
335
353
|
consumed = self._must_consume_regex(self._SECOND_VALUE)
|
|
336
|
-
|
|
354
|
+
processed = consumed.replace('\\,', ',').rstrip()
|
|
355
|
+
return self._resolve_paramfiles(processed) if self._should_resolve_paramfiles else processed
|
|
356
|
+
|
|
357
|
+
def _resolve_paramfiles(self, val):
|
|
358
|
+
if (paramfile := get_paramfile(val, LOCAL_PREFIX_MAP)) is not None:
|
|
359
|
+
return paramfile
|
|
360
|
+
return val
|
|
337
361
|
|
|
338
362
|
def _expect(self, char, consume_whitespace=False):
|
|
339
363
|
if consume_whitespace:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: awscli
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.36.1
|
|
4
4
|
Summary: Universal Command Line Environment for AWS.
|
|
5
5
|
Home-page: http://aws.amazon.com/cli/
|
|
6
6
|
Author: Amazon Web Services
|
|
@@ -23,7 +23,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
23
23
|
Classifier: Programming Language :: Python :: 3.12
|
|
24
24
|
Requires-Python: >= 3.8
|
|
25
25
|
License-File: LICENSE.txt
|
|
26
|
-
Requires-Dist: botocore (==1.35.
|
|
26
|
+
Requires-Dist: botocore (==1.35.60)
|
|
27
27
|
Requires-Dist: docutils (<0.17,>=0.10)
|
|
28
28
|
Requires-Dist: s3transfer (<0.11.0,>=0.10.0)
|
|
29
29
|
Requires-Dist: PyYAML (<6.1,>=3.10)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
awscli/__init__.py,sha256=
|
|
1
|
+
awscli/__init__.py,sha256=fdQ8T8fbLcD9rRScqWSRVV9zOvtcVMUlD6D6ElEjw4E,1533
|
|
2
2
|
awscli/__main__.py,sha256=iBjOg0tBxNlhzTi_tyc1G0SMGBvHMVvBJzX3JqYaooY,662
|
|
3
3
|
awscli/alias.py,sha256=Us9pvP8Zplbr1W4N3rE5gxicWLqlRG3l_9VPskxafgs,11313
|
|
4
4
|
awscli/argparser.py,sha256=3Pxx-vWytdV985Y6MIl9DeutUXyehIvACIs_PDby8GI,7650
|
|
@@ -13,10 +13,10 @@ awscli/errorhandler.py,sha256=2bIBZrKvFICKAhoD180Cx7rRX608pG9RHsmlAcRb0wc,3139
|
|
|
13
13
|
awscli/formatter.py,sha256=EI_dUo5uGf2YxWg5js4un_cksF5h58KuvOkkmptuu4o,10951
|
|
14
14
|
awscli/handlers.py,sha256=1EohF1cebRLI0OhVgggFgV65tz4iWIyie_eyufLpkBU,10786
|
|
15
15
|
awscli/help.py,sha256=-u2OtAdW9X8891FBA70xUC5Ky9lhjiWgtbh4hm-DoW8,14205
|
|
16
|
-
awscli/paramfile.py,sha256=
|
|
16
|
+
awscli/paramfile.py,sha256=Am_eFAIvtH4dMlWdUzMXY0IGEiZyGZ5knXyJBTIs5vM,10885
|
|
17
17
|
awscli/plugin.py,sha256=B3wgRerhgFK1v-QQeASYv2VNLSa9oMuD4X_hcLSescI,2265
|
|
18
18
|
awscli/schema.py,sha256=vNFkuE2BsgeqesRTWRhuSU341eqiKuMF5QAJvClyaKw,6394
|
|
19
|
-
awscli/shorthand.py,sha256=
|
|
19
|
+
awscli/shorthand.py,sha256=ziXUkFyJGcDG8dMQzDMgdUSpZpe88gGBRk5Skkg60W4,18379
|
|
20
20
|
awscli/table.py,sha256=VCyPjNHK4wO_-KKRz7zvuuNp2RLHb6DUPVbPdueji3w,15459
|
|
21
21
|
awscli/testutils.py,sha256=qIC9pOiY-aOhVQyn3CIAeEFjIQ3NAnxozKPJMLRY4Ec,36901
|
|
22
22
|
awscli/text.py,sha256=pr40cSMkGWZ5n-VXMcEKCo1xO5bK3nUbDK3WLwy2HFE,4177
|
|
@@ -5953,13 +5953,13 @@ awscli/topics/return-codes.rst,sha256=d9lpNFZwD75IiYcDEADQzu-4QiR8P28UPHkrNwPV5J
|
|
|
5953
5953
|
awscli/topics/s3-config.rst,sha256=FwwCczTylrSLwELuDQ-VA8sCI7ruwV9PEJJrqxjUeG0,11502
|
|
5954
5954
|
awscli/topics/s3-faq.rst,sha256=sS5jKHF_7X5eiGwpUg7aTqQt2zCRN-m_xXOcE0Bme0Q,1899
|
|
5955
5955
|
awscli/topics/topic-tags.json,sha256=6lUSrs3FKCZNRSQMnjcXNgWyRNGjZIeur1988a4IO5o,1577
|
|
5956
|
-
awscli-1.
|
|
5957
|
-
awscli-1.
|
|
5958
|
-
awscli-1.
|
|
5959
|
-
awscli-1.
|
|
5960
|
-
awscli-1.
|
|
5961
|
-
awscli-1.
|
|
5962
|
-
awscli-1.
|
|
5963
|
-
awscli-1.
|
|
5964
|
-
awscli-1.
|
|
5965
|
-
awscli-1.
|
|
5956
|
+
awscli-1.36.1.data/scripts/aws,sha256=r24FExgs0-JjILTQ3XZAqXBYE4SV6UMTtALkLGAj86g,805
|
|
5957
|
+
awscli-1.36.1.data/scripts/aws.cmd,sha256=s46DkC6LNgX63CIkzxxbPnFMJ6DRDBkvc88GnWa8Pvg,1432
|
|
5958
|
+
awscli-1.36.1.data/scripts/aws_bash_completer,sha256=RRpoEGJRagRzyHZKZZOwpltuVYv2EoiZsdXhmyWPZ54,204
|
|
5959
|
+
awscli-1.36.1.data/scripts/aws_completer,sha256=oC9kuMDlWE47dWk_4xjPde2PQvN-M0vND0J4YSLabVQ,1126
|
|
5960
|
+
awscli-1.36.1.data/scripts/aws_zsh_completer.sh,sha256=Qm6Z8ejNAMzpJjaT0pzqxbSDT2zxdmzVe5haRA7qLoc,1808
|
|
5961
|
+
awscli-1.36.1.dist-info/LICENSE.txt,sha256=o5XhFlwu0OK_BBrijlKCRa7dQAm36UrUB3gCV_cEr8E,549
|
|
5962
|
+
awscli-1.36.1.dist-info/METADATA,sha256=UfWWtMv6ujgJJAJoWIsS1MCslS2OqPXNRmCnovkd54s,11330
|
|
5963
|
+
awscli-1.36.1.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
|
5964
|
+
awscli-1.36.1.dist-info/top_level.txt,sha256=vt9wXFr1_nGYK6abhJgt6zY3fULe4JSZedm_5XOM9S0,7
|
|
5965
|
+
awscli-1.36.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|