@autorest/python 6.27.4 → 6.28.1
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.
- package/generator/build/lib/pygen/black.py +3 -3
- package/generator/build/lib/pygen/codegen/__init__.py +2 -0
- package/generator/build/lib/pygen/codegen/_utils.py +4 -0
- package/generator/build/lib/pygen/codegen/models/base.py +2 -3
- package/generator/build/lib/pygen/codegen/models/base_builder.py +5 -3
- package/generator/build/lib/pygen/codegen/models/client.py +28 -19
- package/generator/build/lib/pygen/codegen/models/code_model.py +204 -33
- package/generator/build/lib/pygen/codegen/models/combined_type.py +12 -8
- package/generator/build/lib/pygen/codegen/models/constant_type.py +2 -3
- package/generator/build/lib/pygen/codegen/models/credential_types.py +6 -3
- package/generator/build/lib/pygen/codegen/models/dictionary_type.py +2 -3
- package/generator/build/lib/pygen/codegen/models/enum_type.py +47 -24
- package/generator/build/lib/pygen/codegen/models/imports.py +14 -12
- package/generator/build/lib/pygen/codegen/models/list_type.py +2 -3
- package/generator/build/lib/pygen/codegen/models/lro_operation.py +8 -4
- package/generator/build/lib/pygen/codegen/models/lro_paging_operation.py +2 -2
- package/generator/build/lib/pygen/codegen/models/model_type.py +34 -19
- package/generator/build/lib/pygen/codegen/models/operation.py +74 -31
- package/generator/build/lib/pygen/codegen/models/operation_group.py +82 -12
- package/generator/build/lib/pygen/codegen/models/paging_operation.py +10 -7
- package/generator/build/lib/pygen/codegen/models/parameter.py +10 -10
- package/generator/build/lib/pygen/codegen/models/parameter_list.py +7 -7
- package/generator/build/lib/pygen/codegen/models/primitive_types.py +23 -43
- package/generator/build/lib/pygen/codegen/models/property.py +9 -9
- package/generator/build/lib/pygen/codegen/models/request_builder.py +9 -15
- package/generator/build/lib/pygen/codegen/models/response.py +6 -8
- package/generator/build/lib/pygen/codegen/models/utils.py +11 -0
- package/generator/build/lib/pygen/codegen/serializers/__init__.py +228 -243
- package/generator/build/lib/pygen/codegen/serializers/base_serializer.py +19 -1
- package/generator/build/lib/pygen/codegen/serializers/builder_serializer.py +58 -36
- package/generator/build/lib/pygen/codegen/serializers/client_serializer.py +9 -5
- package/generator/build/lib/pygen/codegen/serializers/enum_serializer.py +17 -3
- package/generator/build/lib/pygen/codegen/serializers/general_serializer.py +26 -14
- package/generator/build/lib/pygen/codegen/serializers/metadata_serializer.py +26 -8
- package/generator/build/lib/pygen/codegen/serializers/model_init_serializer.py +9 -4
- package/generator/build/lib/pygen/codegen/serializers/model_serializer.py +65 -24
- package/generator/build/lib/pygen/codegen/serializers/operation_groups_serializer.py +20 -16
- package/generator/build/lib/pygen/codegen/serializers/operations_init_serializer.py +5 -10
- package/generator/build/lib/pygen/codegen/serializers/parameter_serializer.py +10 -7
- package/generator/build/lib/pygen/codegen/serializers/request_builders_serializer.py +10 -1
- package/generator/build/lib/pygen/codegen/serializers/sample_serializer.py +7 -10
- package/generator/build/lib/pygen/codegen/serializers/test_serializer.py +24 -28
- package/generator/build/lib/pygen/codegen/serializers/types_serializer.py +6 -1
- package/generator/build/lib/pygen/codegen/serializers/utils.py +1 -15
- package/generator/build/lib/pygen/codegen/templates/client_container.py.jinja2 +1 -1
- package/generator/build/lib/pygen/codegen/templates/config_container.py.jinja2 +1 -1
- package/generator/build/lib/pygen/codegen/templates/enum_container.py.jinja2 +1 -1
- package/generator/build/lib/pygen/codegen/templates/init.py.jinja2 +1 -1
- package/generator/build/lib/pygen/codegen/templates/model_container.py.jinja2 +1 -1
- package/generator/build/lib/pygen/codegen/templates/operation_group.py.jinja2 +4 -4
- package/generator/build/lib/pygen/codegen/templates/operation_groups_container.py.jinja2 +2 -0
- package/generator/build/lib/pygen/codegen/templates/operations_folder_init.py.jinja2 +2 -4
- package/generator/build/lib/pygen/codegen/templates/serialization.py.jinja2 +2 -68
- package/generator/build/lib/pygen/codegen/templates/test.py.jinja2 +3 -3
- package/generator/build/lib/pygen/codegen/templates/testpreparer.py.jinja2 +2 -2
- package/generator/build/lib/pygen/codegen/templates/vendor.py.jinja2 +4 -4
- package/generator/build/lib/pygen/preprocess/__init__.py +0 -4
- package/generator/component-detection-pip-report.json +2 -2
- package/generator/dev_requirements.txt +2 -2
- package/generator/dist/pygen-0.1.0-py3-none-any.whl +0 -0
- package/generator/pygen/black.py +3 -3
- package/generator/pygen/codegen/__init__.py +2 -0
- package/generator/pygen/codegen/_utils.py +4 -0
- package/generator/pygen/codegen/models/base.py +2 -3
- package/generator/pygen/codegen/models/base_builder.py +5 -3
- package/generator/pygen/codegen/models/client.py +28 -19
- package/generator/pygen/codegen/models/code_model.py +204 -33
- package/generator/pygen/codegen/models/combined_type.py +12 -8
- package/generator/pygen/codegen/models/constant_type.py +2 -3
- package/generator/pygen/codegen/models/credential_types.py +6 -3
- package/generator/pygen/codegen/models/dictionary_type.py +2 -3
- package/generator/pygen/codegen/models/enum_type.py +47 -24
- package/generator/pygen/codegen/models/imports.py +14 -12
- package/generator/pygen/codegen/models/list_type.py +2 -3
- package/generator/pygen/codegen/models/lro_operation.py +8 -4
- package/generator/pygen/codegen/models/lro_paging_operation.py +2 -2
- package/generator/pygen/codegen/models/model_type.py +34 -19
- package/generator/pygen/codegen/models/operation.py +74 -31
- package/generator/pygen/codegen/models/operation_group.py +82 -12
- package/generator/pygen/codegen/models/paging_operation.py +10 -7
- package/generator/pygen/codegen/models/parameter.py +10 -10
- package/generator/pygen/codegen/models/parameter_list.py +7 -7
- package/generator/pygen/codegen/models/primitive_types.py +23 -43
- package/generator/pygen/codegen/models/property.py +9 -9
- package/generator/pygen/codegen/models/request_builder.py +9 -15
- package/generator/pygen/codegen/models/response.py +6 -8
- package/generator/pygen/codegen/models/utils.py +11 -0
- package/generator/pygen/codegen/serializers/__init__.py +228 -243
- package/generator/pygen/codegen/serializers/base_serializer.py +19 -1
- package/generator/pygen/codegen/serializers/builder_serializer.py +58 -36
- package/generator/pygen/codegen/serializers/client_serializer.py +9 -5
- package/generator/pygen/codegen/serializers/enum_serializer.py +17 -3
- package/generator/pygen/codegen/serializers/general_serializer.py +26 -14
- package/generator/pygen/codegen/serializers/metadata_serializer.py +26 -8
- package/generator/pygen/codegen/serializers/model_init_serializer.py +9 -4
- package/generator/pygen/codegen/serializers/model_serializer.py +65 -24
- package/generator/pygen/codegen/serializers/operation_groups_serializer.py +20 -16
- package/generator/pygen/codegen/serializers/operations_init_serializer.py +5 -10
- package/generator/pygen/codegen/serializers/parameter_serializer.py +10 -7
- package/generator/pygen/codegen/serializers/request_builders_serializer.py +10 -1
- package/generator/pygen/codegen/serializers/sample_serializer.py +7 -10
- package/generator/pygen/codegen/serializers/test_serializer.py +24 -28
- package/generator/pygen/codegen/serializers/types_serializer.py +6 -1
- package/generator/pygen/codegen/serializers/utils.py +1 -15
- package/generator/pygen/codegen/templates/client_container.py.jinja2 +1 -1
- package/generator/pygen/codegen/templates/config_container.py.jinja2 +1 -1
- package/generator/pygen/codegen/templates/enum_container.py.jinja2 +1 -1
- package/generator/pygen/codegen/templates/init.py.jinja2 +1 -1
- package/generator/pygen/codegen/templates/model_container.py.jinja2 +1 -1
- package/generator/pygen/codegen/templates/operation_group.py.jinja2 +4 -4
- package/generator/pygen/codegen/templates/operation_groups_container.py.jinja2 +2 -0
- package/generator/pygen/codegen/templates/operations_folder_init.py.jinja2 +2 -4
- package/generator/pygen/codegen/templates/serialization.py.jinja2 +2 -68
- package/generator/pygen/codegen/templates/test.py.jinja2 +3 -3
- package/generator/pygen/codegen/templates/testpreparer.py.jinja2 +2 -2
- package/generator/pygen/codegen/templates/vendor.py.jinja2 +4 -4
- package/generator/pygen/preprocess/__init__.py +0 -4
- package/generator/pygen.egg-info/PKG-INFO +10 -1
- package/package.json +2 -2
- package/scripts/__pycache__/venvtools.cpython-310.pyc +0 -0
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
from enum import Enum
|
|
6
6
|
from {{ code_model.core_library }}{{ "" if code_model.is_azure_flavor else ".utils" }} import CaseInsensitiveEnumMeta
|
|
7
7
|
|
|
8
|
-
{% for enum in
|
|
8
|
+
{% for enum in enums | sort %}
|
|
9
9
|
{% include "enum.py.jinja2" %}
|
|
10
10
|
{% endfor %}
|
|
@@ -8,7 +8,7 @@ from .{{ client.filename }} import {{ client.name }} # type: ignore
|
|
|
8
8
|
{% endfor %}
|
|
9
9
|
{% endif %}
|
|
10
10
|
{% if not async_mode and code_model.options['package_version']%}
|
|
11
|
-
from ._version import VERSION
|
|
11
|
+
from {{ code_model.get_relative_import_path(serialize_namespace, module_name="_version") }} import VERSION
|
|
12
12
|
|
|
13
13
|
__version__ = VERSION
|
|
14
14
|
{% endif %}
|
|
@@ -31,10 +31,10 @@ class {{ operation_group.class_name }}: {{ operation_group.pylint_disable() }}
|
|
|
31
31
|
{% endif %}
|
|
32
32
|
def __init__(self, *args, **kwargs){{ return_none_type_annotation }}:
|
|
33
33
|
input_args = list(args)
|
|
34
|
-
self._client = input_args.pop(0) if input_args else kwargs.pop("client")
|
|
35
|
-
self._config = input_args.pop(0) if input_args else kwargs.pop("config")
|
|
36
|
-
self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
|
|
37
|
-
self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
|
|
34
|
+
self._client: {{ 'Async' if async_mode else ''}}PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client")
|
|
35
|
+
self._config: {{ operation_group.client.name }}Configuration = input_args.pop(0) if input_args else kwargs.pop("config")
|
|
36
|
+
self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer")
|
|
37
|
+
self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer")
|
|
38
38
|
{% if code_model.options["multiapi"] %}
|
|
39
39
|
self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version")
|
|
40
40
|
{% endif %}
|
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
{{ imports }}
|
|
7
7
|
{{ unset }}
|
|
8
8
|
{% if code_model.options["builders_visibility"] == "embedded" and not async_mode %}
|
|
9
|
+
{% if need_declare_serializer %}
|
|
9
10
|
{{ op_tools.declare_serializer(code_model) }}
|
|
11
|
+
{% endif %}
|
|
10
12
|
{% for operation_group in operation_groups %}
|
|
11
13
|
{% for request_builder in get_request_builders(operation_group) %}
|
|
12
14
|
|
|
@@ -7,11 +7,9 @@
|
|
|
7
7
|
{{ op_tools.serialize(operation_group_imports()) }}
|
|
8
8
|
{{ keywords.patch_imports() }}
|
|
9
9
|
__all__ = [
|
|
10
|
-
|
|
11
|
-
{% for operation_group in client.operation_groups %}
|
|
10
|
+
{% for operation_group in operation_groups %}
|
|
12
11
|
'{{ operation_group.class_name }}',
|
|
13
|
-
|
|
14
|
-
{% endfor %}
|
|
12
|
+
{% endfor %}
|
|
15
13
|
]
|
|
16
14
|
{{ keywords.extend_all }}
|
|
17
15
|
_patch_sdk()
|
|
@@ -184,73 +184,7 @@ try:
|
|
|
184
184
|
except NameError:
|
|
185
185
|
_long_type = int
|
|
186
186
|
|
|
187
|
-
|
|
188
|
-
class UTC(datetime.tzinfo):
|
|
189
|
-
"""Time Zone info for handling UTC"""
|
|
190
|
-
|
|
191
|
-
def utcoffset(self, dt):
|
|
192
|
-
"""UTF offset for UTC is 0.
|
|
193
|
-
|
|
194
|
-
:param datetime.datetime dt: The datetime
|
|
195
|
-
:returns: The offset
|
|
196
|
-
:rtype: datetime.timedelta
|
|
197
|
-
"""
|
|
198
|
-
return datetime.timedelta(0)
|
|
199
|
-
|
|
200
|
-
def tzname(self, dt):
|
|
201
|
-
"""Timestamp representation.
|
|
202
|
-
|
|
203
|
-
:param datetime.datetime dt: The datetime
|
|
204
|
-
:returns: The timestamp representation
|
|
205
|
-
:rtype: str
|
|
206
|
-
"""
|
|
207
|
-
return "Z"
|
|
208
|
-
|
|
209
|
-
def dst(self, dt):
|
|
210
|
-
"""No daylight saving for UTC.
|
|
211
|
-
|
|
212
|
-
:param datetime.datetime dt: The datetime
|
|
213
|
-
:returns: The daylight saving time
|
|
214
|
-
:rtype: datetime.timedelta
|
|
215
|
-
"""
|
|
216
|
-
return datetime.timedelta(hours=1)
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
try:
|
|
220
|
-
from datetime import timezone as _FixedOffset # type: ignore
|
|
221
|
-
except ImportError: # Python 2.7
|
|
222
|
-
|
|
223
|
-
class _FixedOffset(datetime.tzinfo): # type: ignore
|
|
224
|
-
"""Fixed offset in minutes east from UTC.
|
|
225
|
-
Copy/pasted from Python doc
|
|
226
|
-
:param datetime.timedelta offset: offset in timedelta format
|
|
227
|
-
"""
|
|
228
|
-
|
|
229
|
-
def __init__(self, offset) -> None:
|
|
230
|
-
self.__offset = offset
|
|
231
|
-
|
|
232
|
-
def utcoffset(self, dt):
|
|
233
|
-
return self.__offset
|
|
234
|
-
|
|
235
|
-
def tzname(self, dt):
|
|
236
|
-
return str(self.__offset.total_seconds() / 3600)
|
|
237
|
-
|
|
238
|
-
def __repr__(self):
|
|
239
|
-
return "<FixedOffset {}>".format(self.tzname(None))
|
|
240
|
-
|
|
241
|
-
def dst(self, dt):
|
|
242
|
-
return datetime.timedelta(0)
|
|
243
|
-
|
|
244
|
-
def __getinitargs__(self):
|
|
245
|
-
return (self.__offset,)
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
try:
|
|
249
|
-
from datetime import timezone
|
|
250
|
-
|
|
251
|
-
TZ_UTC = timezone.utc
|
|
252
|
-
except ImportError:
|
|
253
|
-
TZ_UTC = UTC() # type: ignore
|
|
187
|
+
TZ_UTC = datetime.timezone.utc
|
|
254
188
|
|
|
255
189
|
_FLATTEN = re.compile(r"(?<!\\)\.")
|
|
256
190
|
|
|
@@ -2050,7 +1984,7 @@ class Deserializer:
|
|
|
2050
1984
|
try:
|
|
2051
1985
|
parsed_date = email.utils.parsedate_tz(attr) # type: ignore
|
|
2052
1986
|
date_obj = datetime.datetime(
|
|
2053
|
-
*parsed_date[:6], tzinfo=
|
|
1987
|
+
*parsed_date[:6], tzinfo=datetime.timezone(datetime.timedelta(minutes=(parsed_date[9] or 0) / 60))
|
|
2054
1988
|
)
|
|
2055
1989
|
if not date_obj.tzinfo:
|
|
2056
1990
|
date_obj = date_obj.astimezone(tz=TZ_UTC)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{% set prefix_lower = test.prefix|lower %}
|
|
2
2
|
{% set client_var = "self.client" if code_model.options["azure_arm"] else "client" %}
|
|
3
|
-
{% set async = "async " if test.
|
|
4
|
-
{% set async_suffix = "_async" if test.
|
|
3
|
+
{% set async = "async " if test.async_mode else "" %}
|
|
4
|
+
{% set async_suffix = "_async" if test.async_mode else "" %}
|
|
5
5
|
# coding=utf-8
|
|
6
6
|
{{ code_model.options['license_header'] }}
|
|
7
7
|
import pytest
|
|
@@ -15,7 +15,7 @@ AZURE_LOCATION = "eastus"
|
|
|
15
15
|
class {{ test.test_class_name }}({{ test.base_test_class_name }}):
|
|
16
16
|
{% if code_model.options["azure_arm"] %}
|
|
17
17
|
def setup_method(self, method):
|
|
18
|
-
{% if test.
|
|
18
|
+
{% if test.async_mode %}
|
|
19
19
|
self.client = self.create_mgmt_client({{ test.client_name }}, is_async=True)
|
|
20
20
|
{% else %}
|
|
21
21
|
self.client = self.create_mgmt_client({{ test.client_name }})
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
{{ imports }}
|
|
4
4
|
|
|
5
5
|
{% for test_name in test_names %}
|
|
6
|
-
{% set extra_async = ", is_async=True" if test_name.
|
|
6
|
+
{% set extra_async = ", is_async=True" if test_name.async_mode else ""%}
|
|
7
7
|
{% set prefix_lower = test_name.prefix|lower %}
|
|
8
8
|
class {{ test_name.base_test_class_name }}(AzureRecordedTestCase):
|
|
9
9
|
|
|
@@ -15,7 +15,7 @@ class {{ test_name.base_test_class_name }}(AzureRecordedTestCase):
|
|
|
15
15
|
endpoint=endpoint,
|
|
16
16
|
)
|
|
17
17
|
|
|
18
|
-
{% if not test_name.
|
|
18
|
+
{% if not test_name.async_mode %}
|
|
19
19
|
{{ test_name.preparer_name }} = functools.partial(
|
|
20
20
|
PowerShellPreparer,
|
|
21
21
|
"{{ prefix_lower }}",
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
{{ imports }}
|
|
5
5
|
|
|
6
|
-
{% if code_model.
|
|
6
|
+
{% if code_model.need_vendored_mixin(client_namespace) %}
|
|
7
7
|
{% for client in clients | selectattr("has_mixin") %}
|
|
8
8
|
{% set pylint_disable = "# pylint: disable=name-too-long" if (client.name | length) + ("MixinABC" | length) > 40 else "" %}
|
|
9
9
|
class {{ client.name }}MixinABC( {{ pylint_disable }}
|
|
@@ -16,7 +16,7 @@ class {{ client.name }}MixinABC( {{ pylint_disable }}
|
|
|
16
16
|
_deserialize: "Deserializer"
|
|
17
17
|
{% endfor %}
|
|
18
18
|
{% endif %}
|
|
19
|
-
{% if code_model.
|
|
19
|
+
{% if code_model.need_vendored_abstract(client_namespace) %}
|
|
20
20
|
|
|
21
21
|
def raise_if_not_implemented(cls, abstract_methods):
|
|
22
22
|
not_implemented = [f for f in abstract_methods if not callable(getattr(cls, f, None))]
|
|
@@ -27,7 +27,7 @@ def raise_if_not_implemented(cls, abstract_methods):
|
|
|
27
27
|
)
|
|
28
28
|
{% endif %}
|
|
29
29
|
|
|
30
|
-
{% if code_model.
|
|
30
|
+
{% if code_model.need_vendored_etag(client_namespace) %}
|
|
31
31
|
def quote_etag(etag: Optional[str]) -> Optional[str]:
|
|
32
32
|
if not etag or etag == "*":
|
|
33
33
|
return etag
|
|
@@ -57,7 +57,7 @@ def prep_if_none_match(etag: Optional[str], match_condition: Optional[MatchCondi
|
|
|
57
57
|
return "*"
|
|
58
58
|
return None
|
|
59
59
|
{% endif %}
|
|
60
|
-
{% if code_model.
|
|
60
|
+
{% if code_model.need_vendored_form_data(async_mode, client_namespace) %}
|
|
61
61
|
# file-like tuple could be `(filename, IO (or bytes))` or `(filename, IO (or bytes), content_type)`
|
|
62
62
|
FileContent = Union[str, bytes, IO[str], IO[bytes]]
|
|
63
63
|
|
|
@@ -501,10 +501,6 @@ class PreProcessPlugin(YamlUpdatePlugin):
|
|
|
501
501
|
for client in yaml_data["clients"]:
|
|
502
502
|
self.update_client(client)
|
|
503
503
|
self.update_operation_groups(yaml_data, client)
|
|
504
|
-
for clients in yaml_data["subnamespaceToClients"].values():
|
|
505
|
-
for client in clients:
|
|
506
|
-
self.update_client(client)
|
|
507
|
-
self.update_operation_groups(yaml_data, client)
|
|
508
504
|
if yaml_data.get("namespace"):
|
|
509
505
|
yaml_data["namespace"] = pad_builtin_namespaces(yaml_data["namespace"])
|
|
510
506
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: pygen
|
|
3
3
|
Version: 0.1.0
|
|
4
4
|
Summary: Core Library for Python Generation
|
|
@@ -24,5 +24,14 @@ Requires-Dist: m2r2==0.3.3.post2
|
|
|
24
24
|
Requires-Dist: PyYAML==6.0.1
|
|
25
25
|
Requires-Dist: tomli==2.0.1
|
|
26
26
|
Requires-Dist: setuptools==69.5.1
|
|
27
|
+
Dynamic: author
|
|
28
|
+
Dynamic: author-email
|
|
29
|
+
Dynamic: classifier
|
|
30
|
+
Dynamic: description
|
|
31
|
+
Dynamic: description-content-type
|
|
32
|
+
Dynamic: home-page
|
|
33
|
+
Dynamic: license
|
|
34
|
+
Dynamic: requires-dist
|
|
35
|
+
Dynamic: summary
|
|
27
36
|
|
|
28
37
|
# Core Library for Python Generation
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@autorest/python",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.28.1",
|
|
4
4
|
"description": "The Python extension for generators in AutoRest.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"repository": {
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
},
|
|
20
20
|
"homepage": "https://github.com/Azure/autorest.python/blob/main/README.md",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@typespec/http-client-python": "~0.5
|
|
22
|
+
"@typespec/http-client-python": "~0.6.5",
|
|
23
23
|
"@autorest/system-requirements": "~1.0.2",
|
|
24
24
|
"fs-extra": "~11.2.0",
|
|
25
25
|
"tsx": "~4.19.1"
|
|
Binary file
|