@autorest/python 6.9.3 → 6.9.5
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/autorest/_utils.py +35 -20
- package/autorest/codegen/__init__.py +252 -133
- package/autorest/codegen/_utils.py +2 -2
- package/autorest/codegen/models/__init__.py +7 -7
- package/autorest/codegen/models/base.py +6 -4
- package/autorest/codegen/models/client.py +34 -28
- package/autorest/codegen/models/combined_type.py +1 -1
- package/autorest/codegen/models/constant_type.py +1 -1
- package/autorest/codegen/models/credential_types.py +33 -23
- package/autorest/codegen/models/dictionary_type.py +1 -1
- package/autorest/codegen/models/enum_type.py +2 -2
- package/autorest/codegen/models/imports.py +77 -8
- package/autorest/codegen/models/list_type.py +1 -1
- package/autorest/codegen/models/lro_operation.py +5 -2
- package/autorest/codegen/models/model_type.py +1 -1
- package/autorest/codegen/models/operation.py +26 -18
- package/autorest/codegen/models/operation_group.py +2 -2
- package/autorest/codegen/models/paging_operation.py +13 -5
- package/autorest/codegen/models/parameter.py +1 -1
- package/autorest/codegen/models/primitive_types.py +27 -28
- package/autorest/codegen/models/property.py +3 -1
- package/autorest/codegen/models/request_builder.py +11 -10
- package/autorest/codegen/models/response.py +26 -14
- package/autorest/codegen/serializers/__init__.py +5 -0
- package/autorest/codegen/serializers/base_serializer.py +21 -0
- package/autorest/codegen/serializers/builder_serializer.py +39 -22
- package/autorest/codegen/serializers/client_serializer.py +20 -5
- package/autorest/codegen/serializers/enum_serializer.py +5 -8
- package/autorest/codegen/serializers/general_serializer.py +22 -27
- package/autorest/codegen/serializers/model_serializer.py +8 -10
- package/autorest/codegen/serializers/operation_groups_serializer.py +4 -5
- package/autorest/codegen/serializers/patch_serializer.py +4 -8
- package/autorest/codegen/serializers/request_builders_serializer.py +4 -4
- package/autorest/codegen/serializers/sample_serializer.py +11 -9
- package/autorest/codegen/serializers/types_serializer.py +3 -8
- package/autorest/codegen/templates/config.py.jinja2 +3 -1
- package/autorest/codegen/templates/enum_container.py.jinja2 +1 -1
- package/autorest/codegen/templates/model_base.py.jinja2 +5 -5
- package/autorest/codegen/templates/packaging_templates/LICENSE.jinja2 +1 -1
- package/autorest/codegen/templates/packaging_templates/README.md.jinja2 +3 -1
- package/autorest/codegen/templates/packaging_templates/setup.py.jinja2 +7 -3
- package/autorest/codegen/templates/serialization.py.jinja2 +17 -18
- package/autorest/jsonrpc/server.py +5 -1
- package/autorest/m4reformatter/__init__.py +1 -1
- package/autorest/multiapi/models/imports.py +18 -16
- package/autorest/multiapi/serializers/__init__.py +4 -1
- package/autorest/preprocess/__init__.py +1 -9
- package/package.json +1 -1
|
@@ -41,7 +41,7 @@ def get_body_parameter(yaml_data: Dict[str, Any]) -> Dict[str, Any]:
|
|
|
41
41
|
def get_azure_key_credential(key: str) -> Dict[str, Any]:
|
|
42
42
|
retval = {
|
|
43
43
|
"type": KEY_TYPE,
|
|
44
|
-
"policy": {"type": "
|
|
44
|
+
"policy": {"type": "KeyCredentialPolicy", "key": key},
|
|
45
45
|
}
|
|
46
46
|
update_type(retval)
|
|
47
47
|
return retval
|
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
# license information.
|
|
5
5
|
# --------------------------------------------------------------------------
|
|
6
6
|
from enum import Enum
|
|
7
|
-
from typing import Dict, Optional, Set, Union, Tuple
|
|
7
|
+
from typing import Dict, Optional, Set, Union, Tuple, cast
|
|
8
8
|
from ..utils import convert_list_to_tuple
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class ImportType(str, Enum):
|
|
12
12
|
STDLIB = "stdlib"
|
|
13
13
|
THIRDPARTY = "thirdparty"
|
|
14
|
-
|
|
14
|
+
SDKCORE = "sdkcore"
|
|
15
15
|
LOCAL = "local"
|
|
16
16
|
BYVERSION = "by_version"
|
|
17
17
|
|
|
@@ -108,21 +108,23 @@ class FileImport:
|
|
|
108
108
|
] = None,
|
|
109
109
|
typing_section: TypingSection = TypingSection.REGULAR,
|
|
110
110
|
) -> None:
|
|
111
|
-
name_input
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
Tuple[
|
|
111
|
+
name_input = cast(
|
|
112
|
+
Optional[
|
|
113
|
+
Union[
|
|
115
114
|
str,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
115
|
+
Tuple[
|
|
116
|
+
str,
|
|
117
|
+
str,
|
|
118
|
+
],
|
|
119
|
+
Tuple[
|
|
120
|
+
str,
|
|
121
|
+
Optional[str],
|
|
122
|
+
Tuple[Tuple[Tuple[int, int], str, Optional[str]]],
|
|
123
|
+
],
|
|
124
|
+
]
|
|
125
|
+
],
|
|
126
|
+
convert_list_to_tuple(name_import),
|
|
127
|
+
)
|
|
126
128
|
self._imports.setdefault(typing_section, {}).setdefault(
|
|
127
129
|
import_type, {}
|
|
128
130
|
).setdefault(from_section, set()).add(name_input)
|
|
@@ -149,7 +149,10 @@ class MultiAPISerializer(ReaderAndWriter): # pylint: disable=abstract-method
|
|
|
149
149
|
)
|
|
150
150
|
self.write_file(
|
|
151
151
|
Path("_serialization.py"),
|
|
152
|
-
codegen_env.get_template("serialization.py.jinja2").render(
|
|
152
|
+
codegen_env.get_template("serialization.py.jinja2").render(
|
|
153
|
+
import_core_exceptions="azure.core.exceptions",
|
|
154
|
+
import_core_serialization="azure.core.serialization",
|
|
155
|
+
),
|
|
153
156
|
)
|
|
154
157
|
|
|
155
158
|
|
|
@@ -160,10 +160,6 @@ def update_operation_group_class_name(
|
|
|
160
160
|
|
|
161
161
|
def update_paging_response(yaml_data: Dict[str, Any]) -> None:
|
|
162
162
|
yaml_data["discriminator"] = "paging"
|
|
163
|
-
yaml_data["pagerSync"] = yaml_data.get("pagerSync") or "azure.core.paging.ItemPaged"
|
|
164
|
-
yaml_data["pagerAsync"] = (
|
|
165
|
-
yaml_data.get("pagerAsync") or "azure.core.async_paging.AsyncItemPaged"
|
|
166
|
-
)
|
|
167
163
|
|
|
168
164
|
|
|
169
165
|
HEADERS_HIDE_IN_METHOD = (
|
|
@@ -184,7 +180,7 @@ HEADERS_CONVERT_IN_METHOD = {
|
|
|
184
180
|
"wireName": "match-condition",
|
|
185
181
|
"description": "The match condition to use upon the etag.",
|
|
186
182
|
"type": {
|
|
187
|
-
"type": "
|
|
183
|
+
"type": "sdkcore",
|
|
188
184
|
"name": "MatchConditions",
|
|
189
185
|
},
|
|
190
186
|
},
|
|
@@ -489,10 +485,6 @@ class PreProcessPlugin(YamlUpdatePlugin): # pylint: disable=abstract-method
|
|
|
489
485
|
item_type: Optional[Dict[str, Any]] = None,
|
|
490
486
|
) -> None:
|
|
491
487
|
self.update_operation(code_model, yaml_data, is_overload=is_overload)
|
|
492
|
-
if not yaml_data.get("pagerSync"):
|
|
493
|
-
yaml_data["pagerSync"] = "azure.core.paging.ItemPaged"
|
|
494
|
-
if not yaml_data.get("pagerAsync"):
|
|
495
|
-
yaml_data["pagerAsync"] = "azure.core.async_paging.AsyncItemPaged"
|
|
496
488
|
item_type = item_type or yaml_data["itemType"]["elementType"]
|
|
497
489
|
if yaml_data.get("nextOperation"):
|
|
498
490
|
yaml_data["nextOperation"]["groupName"] = self.pad_reserved_words(
|