@autorest/python 6.27.4 → 6.28.0
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 +200 -33
- package/generator/build/lib/pygen/codegen/models/combined_type.py +8 -5
- package/generator/build/lib/pygen/codegen/models/constant_type.py +2 -3
- package/generator/build/lib/pygen/codegen/models/credential_types.py +2 -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 +66 -29
- package/generator/build/lib/pygen/codegen/models/operation_group.py +56 -11
- package/generator/build/lib/pygen/codegen/models/paging_operation.py +9 -6
- 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 +7 -7
- 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 +219 -244
- package/generator/build/lib/pygen/codegen/serializers/base_serializer.py +19 -1
- package/generator/build/lib/pygen/codegen/serializers/builder_serializer.py +53 -35
- 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 +63 -23
- package/generator/build/lib/pygen/codegen/serializers/operation_groups_serializer.py +19 -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/operations_folder_init.py.jinja2 +2 -4
- 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 +200 -33
- package/generator/pygen/codegen/models/combined_type.py +8 -5
- package/generator/pygen/codegen/models/constant_type.py +2 -3
- package/generator/pygen/codegen/models/credential_types.py +2 -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 +66 -29
- package/generator/pygen/codegen/models/operation_group.py +56 -11
- package/generator/pygen/codegen/models/paging_operation.py +9 -6
- 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 +7 -7
- 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 +219 -244
- package/generator/pygen/codegen/serializers/base_serializer.py +19 -1
- package/generator/pygen/codegen/serializers/builder_serializer.py +53 -35
- 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 +63 -23
- package/generator/pygen/codegen/serializers/operation_groups_serializer.py +19 -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/operations_folder_init.py.jinja2 +2 -4
- 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 %}
|
|
@@ -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()
|
|
@@ -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.0",
|
|
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.
|
|
22
|
+
"@typespec/http-client-python": "~0.6.2",
|
|
23
23
|
"@autorest/system-requirements": "~1.0.2",
|
|
24
24
|
"fs-extra": "~11.2.0",
|
|
25
25
|
"tsx": "~4.19.1"
|
|
Binary file
|