Skip to content

Commit aa4e698

Browse files
[http-client-python] Update mypy and pyright (#5498)
autorest.python PR: Azure/autorest.python#2989
1 parent 930ac13 commit aa4e698

File tree

6 files changed

+21
-16
lines changed

6 files changed

+21
-16
lines changed

packages/http-client-python/generator/dev_requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
-e ./generator
2-
pyright==1.1.389
2+
pyright==1.1.391
33
pylint==3.2.7
44
tox==4.16.0
5-
mypy==1.13.0
5+
mypy==1.14.1
66
colorama==0.4.6
77
debugpy==1.8.2
88
pytest==8.3.2

packages/http-client-python/generator/pygen/codegen/models/base_builder.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
Union,
1515
TYPE_CHECKING,
1616
cast,
17+
Sequence,
1718
)
1819
from abc import abstractmethod
1920

@@ -39,7 +40,7 @@
3940
from .request_builder import RequestBuilder
4041

4142

42-
OverloadListType = TypeVar("OverloadListType", bound=Union[List["Operation"], List["RequestBuilder"]])
43+
OverloadListType = TypeVar("OverloadListType", bound=Union[Sequence["Operation"], Sequence["RequestBuilder"]])
4344

4445
_LOGGER = logging.getLogger(__name__)
4546

packages/http-client-python/generator/pygen/codegen/models/operation.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
Generic,
1414
TypeVar,
1515
cast,
16+
Sequence,
1617
)
1718

1819
from .request_builder_parameter import RequestBuilderParameter
@@ -54,7 +55,7 @@ def is_internal(target: Optional[BaseType]) -> bool:
5455

5556

5657
class OperationBase( # pylint: disable=too-many-public-methods,too-many-instance-attributes
57-
Generic[ResponseType], BaseBuilder[ParameterList, List["Operation"]]
58+
Generic[ResponseType], BaseBuilder[ParameterList, Sequence["Operation"]]
5859
):
5960
def __init__(
6061
self,
@@ -67,7 +68,7 @@ def __init__(
6768
responses: List[ResponseType],
6869
exceptions: List[Response],
6970
*,
70-
overloads: Optional[List["Operation"]] = None,
71+
overloads: Optional[Sequence["Operation"]] = None,
7172
) -> None:
7273
super().__init__(
7374
code_model=code_model,
@@ -77,7 +78,7 @@ def __init__(
7778
parameters=parameters,
7879
overloads=overloads,
7980
)
80-
self.overloads: List["Operation"] = overloads or []
81+
self.overloads: Sequence["Operation"] = overloads or []
8182
self.responses = responses
8283
self.request_builder = request_builder
8384
self.deprecated = False
@@ -465,7 +466,9 @@ def from_yaml(
465466
responses = [cast(ResponseType, get_response(r, code_model)) for r in yaml_data["responses"]]
466467
exceptions = [Response.from_yaml(e, code_model) for e in yaml_data["exceptions"]]
467468
parameter_list = ParameterList.from_yaml(yaml_data, code_model)
468-
overloads = [cls.from_yaml(overload, code_model, client) for overload in yaml_data.get("overloads", [])]
469+
overloads = [
470+
cast(Operation, cls.from_yaml(overload, code_model, client)) for overload in yaml_data.get("overloads", [])
471+
]
469472

470473
return cls(
471474
yaml_data=yaml_data,

packages/http-client-python/generator/pygen/codegen/models/request_builder.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,12 @@
77
Any,
88
Callable,
99
Dict,
10-
List,
1110
TypeVar,
1211
TYPE_CHECKING,
1312
Union,
1413
Optional,
14+
Sequence,
15+
cast,
1516
)
1617
from abc import abstractmethod
1718

@@ -34,7 +35,7 @@
3435
)
3536

3637

37-
class RequestBuilderBase(BaseBuilder[ParameterListType, List["RequestBuilder"]]):
38+
class RequestBuilderBase(BaseBuilder[ParameterListType, Sequence["RequestBuilder"]]):
3839
def __init__(
3940
self,
4041
yaml_data: Dict[str, Any],
@@ -43,7 +44,7 @@ def __init__(
4344
name: str,
4445
parameters: ParameterListType,
4546
*,
46-
overloads: Optional[List["RequestBuilder"]] = None,
47+
overloads: Optional[Sequence["RequestBuilder"]] = None,
4748
) -> None:
4849
super().__init__(
4950
code_model=code_model,
@@ -53,7 +54,7 @@ def __init__(
5354
parameters=parameters,
5455
overloads=overloads,
5556
)
56-
self.overloads: List["RequestBuilder"] = overloads or []
57+
self.overloads: Sequence["RequestBuilder"] = overloads or []
5758
self.url: str = yaml_data["url"]
5859
self.method: str = yaml_data["method"]
5960
self.want_tracing = False
@@ -154,7 +155,7 @@ def from_yaml(
154155
# So add operation group name is effective method
155156

156157
overloads = [
157-
RequestBuilder.from_yaml(rb_yaml_data, code_model, client)
158+
cast(RequestBuilder, RequestBuilder.from_yaml(rb_yaml_data, code_model, client))
158159
for rb_yaml_data in yaml_data.get("overloads", [])
159160
]
160161
parameter_list = cls.parameter_list_type()(yaml_data, code_model)

packages/http-client-python/generator/test/azure/requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ pytest
66
pytest-asyncio==0.14.0;python_full_version>="3.5.2"
77
azure-core==1.30.0
88
azure-mgmt-core==1.3.2
9-
pyright==1.1.389
9+
pyright==1.1.391
1010
pylint==3.2.7
1111
tox==4.18.1
12-
mypy==1.13.0
12+
mypy==1.14.1
1313

1414
# only for azure
1515
-e ./generated/azure-client-generator-core-access

packages/http-client-python/generator/test/unbranded/requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ aiohttp;python_full_version>="3.5.2"
44
requests==2.32.2
55
pytest
66
pytest-asyncio==0.14.0;python_full_version>="3.5.2"
7-
pyright==1.1.389
7+
pyright==1.1.391
88
pylint==3.2.7
99
tox==4.18.1
10-
mypy==1.13.0
10+
mypy==1.14.1
1111

1212

1313
# common test case

0 commit comments

Comments
 (0)