From f442b75c019c270b966f52ac24a55aafe63ec462 Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Mon, 30 Sep 2024 16:24:16 +0800 Subject: [PATCH] [http-client-python] Fix lint issues (#4571) - Add changelog - Fix lint issues --- packages/http-client-python/CHANGELOG.md | 17 +++++++++++++++++ .../generator/pygen/codegen/models/client.py | 2 ++ .../pygen/codegen/templates/model_dpg.py.jinja2 | 2 +- .../pygen/codegen/templates/vendor.py.jinja2 | 3 ++- packages/http-client-python/package-lock.json | 4 ++-- packages/http-client-python/package.json | 2 +- 6 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 packages/http-client-python/CHANGELOG.md diff --git a/packages/http-client-python/CHANGELOG.md b/packages/http-client-python/CHANGELOG.md new file mode 100644 index 0000000000..9370dc7887 --- /dev/null +++ b/packages/http-client-python/CHANGELOG.md @@ -0,0 +1,17 @@ +# Change Log - @typespec/http-client-python + +## 0.2.0 + +### Bug Fixes + +- Fix lint issues + +### Features + +- Removed usage for some deprecated function of `@azure-tools/typespec-client-generator-core` + +## 0.1.0 + +### Features + +- Initial release diff --git a/packages/http-client-python/generator/pygen/codegen/models/client.py b/packages/http-client-python/generator/pygen/codegen/models/client.py index 71caea2572..0a82dd390d 100644 --- a/packages/http-client-python/generator/pygen/codegen/models/client.py +++ b/packages/http-client-python/generator/pygen/codegen/models/client.py @@ -156,6 +156,8 @@ def pylint_disable(self) -> str: retval = add_to_pylint_disable(retval, "client-accepts-api-version-keyword") if len(self.operation_groups) > 6: retval = add_to_pylint_disable(retval, "too-many-instance-attributes") + if len(self.name) > NAME_LENGTH_LIMIT: + retval = add_to_pylint_disable(retval, "name-too-long") return retval @property diff --git a/packages/http-client-python/generator/pygen/codegen/templates/model_dpg.py.jinja2 b/packages/http-client-python/generator/pygen/codegen/templates/model_dpg.py.jinja2 index 3640d213d8..33ca1a37f1 100644 --- a/packages/http-client-python/generator/pygen/codegen/templates/model_dpg.py.jinja2 +++ b/packages/http-client-python/generator/pygen/codegen/templates/model_dpg.py.jinja2 @@ -70,7 +70,7 @@ {% endif %} {% set initialize_properties = serializer.initialize_properties(model) %} {% if serializer.need_init(model) or initialize_properties %} - def __init__(self, *args: Any, **kwargs: Any) -> None:{{ serializer.pylint_disable(model) }} + def __init__(self, *args: Any, **kwargs: Any) -> None:{{ '# pylint: disable=useless-super-delegation' if not initialize_properties else '' }} {% for line in serializer.super_call(model) %} {{ line }} {% endfor %} diff --git a/packages/http-client-python/generator/pygen/codegen/templates/vendor.py.jinja2 b/packages/http-client-python/generator/pygen/codegen/templates/vendor.py.jinja2 index 58c77ec932..512e3f2a17 100644 --- a/packages/http-client-python/generator/pygen/codegen/templates/vendor.py.jinja2 +++ b/packages/http-client-python/generator/pygen/codegen/templates/vendor.py.jinja2 @@ -5,7 +5,8 @@ {% if code_model.need_mixin_abc %} {% for client in clients | selectattr("has_mixin") %} -class {{ client.name }}MixinABC( +{% set pylint_disable = "# pylint: disable=name-too-long" if (client.name | length) + ("MixinABC" | length) > 40 else "" %} +class {{ client.name }}MixinABC( {{ pylint_disable }} ABC ): """DO NOT use this class. It is for internal typing use only.""" diff --git a/packages/http-client-python/package-lock.json b/packages/http-client-python/package-lock.json index 5f50181f8b..cb0af58351 100644 --- a/packages/http-client-python/package-lock.json +++ b/packages/http-client-python/package-lock.json @@ -1,12 +1,12 @@ { "name": "@typespec/http-client-python", - "version": "0.1.0", + "version": "0.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@typespec/http-client-python", - "version": "0.1.0", + "version": "0.2.0", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/packages/http-client-python/package.json b/packages/http-client-python/package.json index 59939027c3..de8d72ce18 100644 --- a/packages/http-client-python/package.json +++ b/packages/http-client-python/package.json @@ -1,6 +1,6 @@ { "name": "@typespec/http-client-python", - "version": "0.1.0", + "version": "0.2.0", "author": "Microsoft Corporation", "description": "TypeSpec emitter for Python SDKs", "homepage": "https://typespec.io",