From 58e8531c0214f468bade7fae87de99799e47081e Mon Sep 17 00:00:00 2001 From: iscai-msft Date: Thu, 28 Aug 2025 16:44:24 -0400 Subject: [PATCH 1/3] add imports for readonly / constant props in msrest --- .../pygen/codegen/serializers/model_serializer.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py b/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py index ce4ef1b9d63..905e8f85061 100644 --- a/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py +++ b/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py @@ -158,6 +158,16 @@ def imports(self) -> FileImport: called_by_property=True, ) ) + for prop in model.properties: + if prop.readonly or prop.constant: + # it will be defined in the __init__ so we need to import it + file_import.merge( + prop.imports( + serialize_namespace=self.serialize_namespace, + serialize_namespace_type=NamespaceType.MODEL, + called_by_property=True, + ) + ) return file_import From 35fd81e7b39b704f6df0c1bf0b4bf94179a749b2 Mon Sep 17 00:00:00 2001 From: iscai-msft Date: Thu, 28 Aug 2025 16:45:00 -0400 Subject: [PATCH 2/3] add changeset --- ...thon-msrestDatetimeImportReadonly-2025-7-28-16-44-51.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .chronus/changes/python-msrestDatetimeImportReadonly-2025-7-28-16-44-51.md diff --git a/.chronus/changes/python-msrestDatetimeImportReadonly-2025-7-28-16-44-51.md b/.chronus/changes/python-msrestDatetimeImportReadonly-2025-7-28-16-44-51.md new file mode 100644 index 00000000000..b03ebec24e1 --- /dev/null +++ b/.chronus/changes/python-msrestDatetimeImportReadonly-2025-7-28-16-44-51.md @@ -0,0 +1,7 @@ +--- +changeKind: fix +packages: + - "@typespec/http-client-python" +--- + +Add imports for readonly and constant props for msrest model generation \ No newline at end of file From 0af7466feb038a97b626eb350a07044ea35ac783 Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Tue, 2 Sep 2025 12:55:52 +0800 Subject: [PATCH 3/3] Update model_serializer.py --- .../generator/pygen/codegen/serializers/model_serializer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py b/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py index 905e8f85061..99535c3c945 100644 --- a/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py +++ b/packages/http-client-python/generator/pygen/codegen/serializers/model_serializer.py @@ -159,7 +159,7 @@ def imports(self) -> FileImport: ) ) for prop in model.properties: - if prop.readonly or prop.constant: + if prop.readonly: # it will be defined in the __init__ so we need to import it file_import.merge( prop.imports(