diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0a8f66de02..5e21b64177 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -15,7 +15,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
-Fixed python generation client serailization failure str being quoted as "str"
--Fixed Issue with primitive values being stringified in python python. [#5417](https://github.com/microsoft/kiota/issues/5417)
+- Fixed an issue where when generating Go code the deserializer for unions was using `CodeClass` as a filter and not `CodeInterface`. [#4844](https://github.com/microsoft/kiota/issues/4844)
- Fixes mapping of `int16` format to the `integer` type rather than `double` when the type is `integer` or `number` [#5611](https://github.com/microsoft/kiota/issues/5611)
+- Fixes typing inconsistencies in generated code and libraries in Python [kiota-python#333](https://github.com/microsoft/kiota-python/issues/333)
## [1.19.1] - 2024-10-11
@@ -1487,5 +1489,3 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- Initial GitHub release
-
-
diff --git a/it/java/basic/pom.xml b/it/java/basic/pom.xml
index 6f1bad14e6..ae528722a1 100644
--- a/it/java/basic/pom.xml
+++ b/it/java/basic/pom.xml
@@ -15,7 +15,7 @@
UTF-8
UTF-8
- 1.1.1
+ 1.7.0
diff --git a/it/java/gh/pom.xml b/it/java/gh/pom.xml
index 4dae43e904..5087ebf3fe 100644
--- a/it/java/gh/pom.xml
+++ b/it/java/gh/pom.xml
@@ -15,7 +15,7 @@
UTF-8
UTF-8
- 1.1.1
+ 1.7.0
diff --git a/it/java/query-params/pom.xml b/it/java/query-params/pom.xml
index 6f1bad14e6..ae528722a1 100644
--- a/it/java/query-params/pom.xml
+++ b/it/java/query-params/pom.xml
@@ -15,7 +15,7 @@
UTF-8
UTF-8
- 1.1.1
+ 1.7.0
diff --git a/it/python/requirements-dev.txt b/it/python/requirements-dev.txt
index 41f6ef86bf..98c0f8e73d 100644
--- a/it/python/requirements-dev.txt
+++ b/it/python/requirements-dev.txt
@@ -30,7 +30,7 @@ lazy-object-proxy==1.10.0 ; python_version >= '3.7'
mccabe==0.7.0 ; python_version >= '3.6'
-mypy==1.12.0
+mypy==1.12.1
mypy-extensions==1.0.0 ; python_version >= '3.5'
@@ -82,7 +82,7 @@ azure-identity==1.19.0
cffi==1.17.1
-cryptography==43.0.1 ; python_version >= '3.7'
+cryptography==43.0.3 ; python_version >= '3.7'
frozenlist==1.4.1 ; python_version >= '3.7'
@@ -98,19 +98,19 @@ httpx[http2]==0.27.2
hyperframe==6.0.1 ; python_full_version >= '3.6.1'
-microsoft-kiota-abstractions==1.3.3
+microsoft-kiota-abstractions==1.4.6
-microsoft-kiota-authentication-azure==1.1.0
+microsoft-kiota-authentication-azure==1.4.6
-microsoft-kiota-http==1.3.4
+microsoft-kiota-http==1.4.6
-microsoft-kiota-serialization-json==1.3.3
+microsoft-kiota-serialization-json==1.4.6
-microsoft-kiota-serialization-text==1.0.0
+microsoft-kiota-serialization-text==1.4.6
-microsoft-kiota-serialization-form==0.1.1
+microsoft-kiota-serialization-form==1.4.6
-microsoft-kiota-serialization-multipart==0.1.0
+microsoft-kiota-serialization-multipart==1.4.6
msal==1.31.0
@@ -136,5 +136,5 @@ sniffio==1.3.1 ; python_version >= '3.7'
uritemplate==4.1.1 ; python_version >= '3.6'
-yarl==1.15.3 ; python_version >= '3.7'
+yarl==1.15.5 ; python_version >= '3.7'
diff --git a/it/typescript/package-lock.json b/it/typescript/package-lock.json
index 2473632265..51f9cc4f5c 100644
--- a/it/typescript/package-lock.json
+++ b/it/typescript/package-lock.json
@@ -9,7 +9,7 @@
"version": "0.0.1",
"license": "MIT",
"dependencies": {
- "@azure/identity": "^4.4.1",
+ "@azure/identity": "^4.5.0",
"@microsoft/kiota-abstractions": "^1.0.0-preview.68",
"@microsoft/kiota-authentication-azure": "^1.0.0-preview.63",
"@microsoft/kiota-http-fetchlibrary": "^1.0.0-preview.67",
@@ -23,11 +23,11 @@
"devDependencies": {
"@es-exec/esbuild-plugin-start": "^0.0.5",
"@stylistic/eslint-plugin-ts": "^2.9.0",
- "@types/node": "^22.7.5",
- "@typescript-eslint/eslint-plugin": "^8.9.0",
- "@typescript-eslint/parser": "^8.9.0",
+ "@types/node": "^22.7.7",
+ "@typescript-eslint/eslint-plugin": "^8.10.0",
+ "@typescript-eslint/parser": "^8.10.0",
"esbuild": "^0.24.0",
- "eslint": "^9.12.0",
+ "eslint": "^9.13.0",
"eslint-config-prettier": "^9.1.0",
"minimist": "^1.2.8",
"prettier": "^3.3.3",
@@ -44,27 +44,27 @@
}
},
"node_modules/@azure/abort-controller": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.1.0.tgz",
- "integrity": "sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==",
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz",
+ "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==",
"dependencies": {
- "tslib": "^2.2.0"
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">=12.0.0"
+ "node": ">=18.0.0"
}
},
"node_modules/@azure/core-auth": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.5.0.tgz",
- "integrity": "sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw==",
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.9.0.tgz",
+ "integrity": "sha512-FPwHpZywuyasDSLMqJ6fhbOK3TqUdviZNF8OqRGA4W5Ewib2lEEZ+pBsYcBa88B2NGO/SEnYPGhyBqNlE8ilSw==",
"dependencies": {
- "@azure/abort-controller": "^1.0.0",
- "@azure/core-util": "^1.1.0",
- "tslib": "^2.2.0"
+ "@azure/abort-controller": "^2.0.0",
+ "@azure/core-util": "^1.11.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">=14.0.0"
+ "node": ">=18.0.0"
}
},
"node_modules/@azure/core-client": {
@@ -84,24 +84,13 @@
"node": ">=18.0.0"
}
},
- "node_modules/@azure/core-client/node_modules/@azure/abort-controller": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz",
- "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
"node_modules/@azure/core-rest-pipeline": {
- "version": "1.16.0",
- "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.16.0.tgz",
- "integrity": "sha512-CeuTvsXxCUmEuxH5g/aceuSl6w2EugvNHKAtKKVdiX915EjJJxAwfzNNWZreNnbxHZ2fi0zaM6wwS23x2JVqSQ==",
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.17.0.tgz",
+ "integrity": "sha512-62Vv8nC+uPId3j86XJ0WI+sBf0jlqTqPUFCBNrGtlaUeQUIXWV/D8GE5A1d+Qx8H7OQojn2WguC8kChD6v0shA==",
"dependencies": {
"@azure/abort-controller": "^2.0.0",
- "@azure/core-auth": "^1.4.0",
+ "@azure/core-auth": "^1.8.0",
"@azure/core-tracing": "^1.0.1",
"@azure/core-util": "^1.9.0",
"@azure/logger": "^1.0.0",
@@ -113,17 +102,6 @@
"node": ">=18.0.0"
}
},
- "node_modules/@azure/core-rest-pipeline/node_modules/@azure/abort-controller": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz",
- "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
"node_modules/@azure/core-tracing": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.1.2.tgz",
@@ -136,9 +114,9 @@
}
},
"node_modules/@azure/core-util": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.9.0.tgz",
- "integrity": "sha512-AfalUQ1ZppaKuxPPMsFEUdX6GZPB3d9paR9d/TTL7Ow2De8cJaC7ibi7kWVlFAVPCYo31OcnGymc0R89DX8Oaw==",
+ "version": "1.11.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.11.0.tgz",
+ "integrity": "sha512-DxOSLua+NdpWoSqULhjDyAZTXFdP/LKkqtYuxxz1SCN289zk3OG8UOpnCQAz/tygyACBtWp/BoO72ptK7msY8g==",
"dependencies": {
"@azure/abort-controller": "^2.0.0",
"tslib": "^2.6.2"
@@ -147,31 +125,20 @@
"node": ">=18.0.0"
}
},
- "node_modules/@azure/core-util/node_modules/@azure/abort-controller": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz",
- "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==",
- "dependencies": {
- "tslib": "^2.6.2"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
"node_modules/@azure/identity": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-4.4.1.tgz",
- "integrity": "sha512-DwnG4cKFEM7S3T+9u05NstXU/HN0dk45kPOinUyNKsn5VWwpXd9sbPKEg6kgJzGbm1lMuhx9o31PVbCtM5sfBA==",
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-4.5.0.tgz",
+ "integrity": "sha512-EknvVmtBuSIic47xkOqyNabAme0RYTw52BTMz8eBgU1ysTyMrD1uOoM+JdS0J/4Yfp98IBT3osqq3BfwSaNaGQ==",
"dependencies": {
- "@azure/abort-controller": "^1.0.0",
- "@azure/core-auth": "^1.5.0",
+ "@azure/abort-controller": "^2.0.0",
+ "@azure/core-auth": "^1.9.0",
"@azure/core-client": "^1.9.2",
- "@azure/core-rest-pipeline": "^1.1.0",
+ "@azure/core-rest-pipeline": "^1.17.0",
"@azure/core-tracing": "^1.0.0",
- "@azure/core-util": "^1.3.0",
+ "@azure/core-util": "^1.11.0",
"@azure/logger": "^1.0.0",
- "@azure/msal-browser": "^3.14.0",
- "@azure/msal-node": "^2.9.2",
+ "@azure/msal-browser": "^3.26.1",
+ "@azure/msal-node": "^2.15.0",
"events": "^3.0.0",
"jws": "^4.0.0",
"open": "^8.0.0",
@@ -194,30 +161,30 @@
}
},
"node_modules/@azure/msal-browser": {
- "version": "3.19.1",
- "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.19.1.tgz",
- "integrity": "sha512-pqYP2gK0GCEa4OxtOqlS+EdFQqhXV6ZuESgSTYWq2ABXyxBVVdd5KNuqgR5SU0OwI2V1YWdFVvLDe1487dyQ0g==",
+ "version": "3.26.1",
+ "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.26.1.tgz",
+ "integrity": "sha512-y78sr9g61aCAH9fcLO1um+oHFXc1/5Ap88RIsUSuzkm0BHzFnN+PXGaQeuM1h5Qf5dTnWNOd6JqkskkMPAhh7Q==",
"dependencies": {
- "@azure/msal-common": "14.13.1"
+ "@azure/msal-common": "14.15.0"
},
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/@azure/msal-common": {
- "version": "14.13.1",
- "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.13.1.tgz",
- "integrity": "sha512-iUp3BYrsRZ4X3EiaZ2fDjNFjmtYMv9rEQd6c1op6ULn0HWk4ACvDmosL6NaBgWOhl1BAblIbd9vmB5/ilF8d4A==",
+ "version": "14.15.0",
+ "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.15.0.tgz",
+ "integrity": "sha512-ImAQHxmpMneJ/4S8BRFhjt1MZ3bppmpRPYYNyzeQPeFN288YKbb8TmmISQEbtfkQ1BPASvYZU5doIZOPBAqENQ==",
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/@azure/msal-node": {
- "version": "2.9.2",
- "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-2.9.2.tgz",
- "integrity": "sha512-8tvi6Cos3m+0KmRbPjgkySXi+UQU/QiuVRFnrxIwt5xZlEEFa69O04RTaNESGgImyBBlYbo2mfE8/U8Bbdk1WQ==",
+ "version": "2.15.0",
+ "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-2.15.0.tgz",
+ "integrity": "sha512-gVPW8YLz92ZeCibQH2QUw96odJoiM3k/ZPH3f2HxptozmH6+OnyyvKXo/Egg39HAM230akarQKHf0W74UHlh0Q==",
"dependencies": {
- "@azure/msal-common": "14.12.0",
+ "@azure/msal-common": "14.15.0",
"jsonwebtoken": "^9.0.0",
"uuid": "^8.3.0"
},
@@ -225,14 +192,6 @@
"node": ">=16"
}
},
- "node_modules/@azure/msal-node/node_modules/@azure/msal-common": {
- "version": "14.12.0",
- "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.12.0.tgz",
- "integrity": "sha512-IDDXmzfdwmDkv4SSmMEyAniJf6fDu3FJ7ncOjlxkDuT85uSnLEhZi3fGZpoR7T4XZpOMx9teM9GXBgrfJgyeBw==",
- "engines": {
- "node": ">=0.8.0"
- }
- },
"node_modules/@es-exec/esbuild-plugin-start": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/@es-exec/esbuild-plugin-start/-/esbuild-plugin-start-0.0.5.tgz",
@@ -684,9 +643,9 @@
}
},
"node_modules/@eslint/core": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz",
- "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==",
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
+ "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -716,9 +675,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "9.12.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz",
- "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==",
+ "version": "9.13.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.13.0.tgz",
+ "integrity": "sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -970,25 +929,25 @@
"dev": true
},
"node_modules/@types/node": {
- "version": "22.7.5",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz",
- "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==",
+ "version": "22.7.7",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.7.tgz",
+ "integrity": "sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==",
"dev": true,
"dependencies": {
"undici-types": "~6.19.2"
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.9.0.tgz",
- "integrity": "sha512-Y1n621OCy4m7/vTXNlCbMVp87zSd7NH0L9cXD8aIpOaNlzeWxIK4+Q19A68gSmTNRZn92UjocVUWDthGxtqHFg==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.10.0.tgz",
+ "integrity": "sha512-phuB3hoP7FFKbRXxjl+DRlQDuJqhpOnm5MmtROXyWi3uS/Xg2ZXqiQfcG2BJHiN4QKyzdOJi3NEn/qTnjUlkmQ==",
"dev": true,
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.9.0",
- "@typescript-eslint/type-utils": "8.9.0",
- "@typescript-eslint/utils": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0",
+ "@typescript-eslint/scope-manager": "8.10.0",
+ "@typescript-eslint/type-utils": "8.10.0",
+ "@typescript-eslint/utils": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -1012,15 +971,15 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.9.0.tgz",
- "integrity": "sha512-U+BLn2rqTTHnc4FL3FJjxaXptTxmf9sNftJK62XLz4+GxG3hLHm/SUNaaXP5Y4uTiuYoL5YLy4JBCJe3+t8awQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.10.0.tgz",
+ "integrity": "sha512-E24l90SxuJhytWJ0pTQydFT46Nk0Z+bsLKo/L8rtQSL93rQ6byd1V/QbDpHUTdLPOMsBCcYXZweADNCfOCmOAg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "8.9.0",
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/typescript-estree": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0",
+ "@typescript-eslint/scope-manager": "8.10.0",
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/typescript-estree": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1040,13 +999,13 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.9.0.tgz",
- "integrity": "sha512-bZu9bUud9ym1cabmOYH9S6TnbWRzpklVmwqICeOulTCZ9ue2/pczWzQvt/cGj2r2o1RdKoZbuEMalJJSYw3pHQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.10.0.tgz",
+ "integrity": "sha512-AgCaEjhfql9MDKjMUxWvH7HjLeBqMCBfIaBbzzIcBbQPZE7CPh1m6FF+L75NUMJFMLYhCywJXIDEMa3//1A0dw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0"
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1057,13 +1016,13 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.9.0.tgz",
- "integrity": "sha512-JD+/pCqlKqAk5961vxCluK+clkppHY07IbV3vett97KOV+8C6l+CPEPwpUuiMwgbOz/qrN3Ke4zzjqbT+ls+1Q==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.10.0.tgz",
+ "integrity": "sha512-PCpUOpyQSpxBn230yIcK+LeCQaXuxrgCm2Zk1S+PTIRJsEfU6nJ0TtwyH8pIwPK/vJoA+7TZtzyAJSGBz+s/dg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.9.0",
- "@typescript-eslint/utils": "8.9.0",
+ "@typescript-eslint/typescript-estree": "8.10.0",
+ "@typescript-eslint/utils": "8.10.0",
"debug": "^4.3.4",
"ts-api-utils": "^1.3.0"
},
@@ -1081,9 +1040,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.9.0.tgz",
- "integrity": "sha512-SjgkvdYyt1FAPhU9c6FiYCXrldwYYlIQLkuc+LfAhCna6ggp96ACncdtlbn8FmnG72tUkXclrDExOpEYf1nfJQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.10.0.tgz",
+ "integrity": "sha512-k/E48uzsfJCRRbGLapdZgrX52csmWJ2rcowwPvOZ8lwPUv3xW6CcFeJAXgx4uJm+Ge4+a4tFOkdYvSpxhRhg1w==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1094,13 +1053,13 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.9.0.tgz",
- "integrity": "sha512-9iJYTgKLDG6+iqegehc5+EqE6sqaee7kb8vWpmHZ86EqwDjmlqNNHeqDVqb9duh+BY6WCNHfIGvuVU3Tf9Db0g==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.10.0.tgz",
+ "integrity": "sha512-3OE0nlcOHaMvQ8Xu5gAfME3/tWVDpb/HxtpUZ1WeOAksZ/h/gwrBzCklaGzwZT97/lBbbxJ16dMA98JMEngW4w==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0",
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -1146,15 +1105,15 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.9.0.tgz",
- "integrity": "sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.10.0.tgz",
+ "integrity": "sha512-Oq4uZ7JFr9d1ZunE/QKy5egcDRXT/FrS2z/nlxzPua2VHFtmMvFNDvpq1m/hq0ra+T52aUezfcjGRIB7vNJF9w==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.9.0",
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/typescript-estree": "8.9.0"
+ "@typescript-eslint/scope-manager": "8.10.0",
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/typescript-estree": "8.10.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1168,12 +1127,12 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.9.0.tgz",
- "integrity": "sha512-Ht4y38ubk4L5/U8xKUBfKNYGmvKvA1CANoxiTRMM+tOLk3lbF3DvzZCxJCRSE+2GdCMSh6zq9VZJc3asc1XuAA==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.10.0.tgz",
+ "integrity": "sha512-k8nekgqwr7FadWk548Lfph6V3r9OVqjzAIVskE7orMZR23cGJjAOVazsZSJW+ElyjfTM4wx/1g88Mi70DDtG9A==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "8.9.0",
+ "@typescript-eslint/types": "8.10.0",
"eslint-visitor-keys": "^3.4.3"
},
"engines": {
@@ -1666,17 +1625,17 @@
}
},
"node_modules/eslint": {
- "version": "9.12.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz",
- "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==",
+ "version": "9.13.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.13.0.tgz",
+ "integrity": "sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.11.0",
"@eslint/config-array": "^0.18.0",
- "@eslint/core": "^0.6.0",
+ "@eslint/core": "^0.7.0",
"@eslint/eslintrc": "^3.1.0",
- "@eslint/js": "9.12.0",
+ "@eslint/js": "9.13.0",
"@eslint/plugin-kit": "^0.2.0",
"@humanfs/node": "^0.16.5",
"@humanwhocodes/module-importer": "^1.0.1",
diff --git a/it/typescript/package.json b/it/typescript/package.json
index 242740e15e..bbbc5ec12d 100644
--- a/it/typescript/package.json
+++ b/it/typescript/package.json
@@ -20,18 +20,18 @@
"devDependencies": {
"@es-exec/esbuild-plugin-start": "^0.0.5",
"@stylistic/eslint-plugin-ts": "^2.9.0",
- "@types/node": "^22.7.5",
- "@typescript-eslint/eslint-plugin": "^8.9.0",
- "@typescript-eslint/parser": "^8.9.0",
+ "@types/node": "^22.7.7",
+ "@typescript-eslint/eslint-plugin": "^8.10.0",
+ "@typescript-eslint/parser": "^8.10.0",
"esbuild": "^0.24.0",
- "eslint": "^9.12.0",
+ "eslint": "^9.13.0",
"eslint-config-prettier": "^9.1.0",
"minimist": "^1.2.8",
"prettier": "^3.3.3",
"typescript": "^4.9.5"
},
"dependencies": {
- "@azure/identity": "^4.4.1",
+ "@azure/identity": "^4.5.0",
"@microsoft/kiota-abstractions": "^1.0.0-preview.68",
"@microsoft/kiota-authentication-azure": "^1.0.0-preview.63",
"@microsoft/kiota-http-fetchlibrary": "^1.0.0-preview.67",
diff --git a/src/Kiota.Builder/Kiota.Builder.csproj b/src/Kiota.Builder/Kiota.Builder.csproj
index 3f54277d82..ea837be278 100644
--- a/src/Kiota.Builder/Kiota.Builder.csproj
+++ b/src/Kiota.Builder/Kiota.Builder.csproj
@@ -47,7 +47,7 @@
-
+
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/src/Kiota.Builder/Writers/Go/CodeMethodWriter.cs b/src/Kiota.Builder/Writers/Go/CodeMethodWriter.cs
index 8a50297c80..59a288062b 100644
--- a/src/Kiota.Builder/Writers/Go/CodeMethodWriter.cs
+++ b/src/Kiota.Builder/Writers/Go/CodeMethodWriter.cs
@@ -632,7 +632,7 @@ private static void WriteDeserializerBodyForUnionModel(CodeMethod method, CodeCl
var otherPropGetters = parentClass
.GetPropertiesOfKind(CodePropertyKind.Custom)
.Where(static x => !x.ExistsInBaseType && x.Getter != null)
- .Where(static x => x.Type is CodeType propertyType && !propertyType.IsCollection && propertyType.TypeDefinition is CodeClass)
+ .Where(static x => x.Type is CodeType propertyType && !propertyType.IsCollection && propertyType.TypeDefinition is CodeInterface)
.OrderBy(static x => x, CodePropertyTypeForwardComparer)
.ThenBy(static x => x.Name)
.Select(static x => x.Getter!.Name.ToFirstCharacterUpperCase())
diff --git a/src/Kiota.Builder/Writers/Python/CodeMethodWriter.cs b/src/Kiota.Builder/Writers/Python/CodeMethodWriter.cs
index 4b635fc9c7..47fed1af54 100644
--- a/src/Kiota.Builder/Writers/Python/CodeMethodWriter.cs
+++ b/src/Kiota.Builder/Writers/Python/CodeMethodWriter.cs
@@ -22,6 +22,7 @@ public override void WriteCodeElement(CodeMethod codeElement, LanguageWriter wri
if (codeElement.Parent is not CodeClass parentClass) throw new InvalidOperationException("the parent of a method should be a class");
var returnType = conventions.GetTypeString(codeElement.ReturnType, codeElement, true, writer);
+ var returnTypeIsEnum = codeElement.ReturnType is CodeType { TypeDefinition: CodeEnum };
var isVoid = NoneKeyword.Equals(returnType, StringComparison.OrdinalIgnoreCase);
if (parentClass.IsOfKind(CodeClassKind.Model) && (codeElement.IsOfKind(CodeMethodKind.Setter) || codeElement.IsOfKind(CodeMethodKind.Getter) || codeElement.IsOfKind(CodeMethodKind.Constructor)))
{
@@ -79,7 +80,7 @@ public override void WriteCodeElement(CodeMethod codeElement, LanguageWriter wri
writer.CloseBlock(string.Empty);
break;
case CodeMethodKind.RequestExecutor:
- WriteRequestExecutorBody(codeElement, requestParams, parentClass, isVoid, returnType, writer);
+ WriteRequestExecutorBody(codeElement, requestParams, parentClass, isVoid, returnType, writer, returnTypeIsEnum);
writer.CloseBlock(string.Empty);
break;
case CodeMethodKind.Getter:
@@ -212,9 +213,10 @@ private void WriteFactoryMethodBody(CodeMethod codeElement, CodeClass parentClas
if (parentClass.DiscriminatorInformation.ShouldWriteParseNodeCheck && !parentClass.DiscriminatorInformation.ShouldWriteDiscriminatorForIntersectionType)
{
writer.StartBlock("try:");
- writer.WriteLine($"{DiscriminatorMappingVarName} = {parseNodeParameter.Name}.get_child_node(\"{parentClass.DiscriminatorInformation.DiscriminatorPropertyName}\").get_str_value()");
+ writer.WriteLine($"child_node = {parseNodeParameter.Name}.get_child_node(\"{parentClass.DiscriminatorInformation.DiscriminatorPropertyName}\")");
+ writer.WriteLine($"{DiscriminatorMappingVarName} = child_node.get_str_value() if child_node else {NoneKeyword}");
writer.DecreaseIndent();
- writer.StartBlock($"except AttributeError:");
+ writer.StartBlock("except AttributeError:");
writer.WriteLine($"{DiscriminatorMappingVarName} = {NoneKeyword}");
writer.DecreaseIndent();
}
@@ -527,11 +529,12 @@ private void WriteDeserializerBodyForIntersectionModel(CodeClass parentClass, La
.OrderBy(static x => x)
.ToArray();
var propertiesNamesAsConditions = propertiesNames
- .Select(static x => $"{x}")
- .Aggregate(static (x, y) => $"self.{x} or self.{y}");
+ .Select(static x => $"self.{x}")
+ .Aggregate(static (x, y) => $"{x} or {y}");
writer.StartBlock($"if {propertiesNamesAsConditions}:");
var propertiesNamesAsArgument = propertiesNames
- .Aggregate(static (x, y) => $"self.{x}, self.{y}");
+ .Select(static x => $"self.{x}")
+ .Aggregate(static (x, y) => $"{x}, {y}");
writer.WriteLine($"return ParseNodeHelper.merge_deserializers_for_intersection_wrapper({propertiesNamesAsArgument})");
writer.DecreaseIndent();
}
@@ -556,7 +559,8 @@ private void WriteDeserializerBodyForInheritedModel(bool inherits, CodeMethod co
}
writer.WriteLine("return fields");
}
- private void WriteRequestExecutorBody(CodeMethod codeElement, RequestParams requestParams, CodeClass parentClass, bool isVoid, string returnType, LanguageWriter writer)
+ private void WriteRequestExecutorBody(CodeMethod codeElement, RequestParams requestParams, CodeClass parentClass,
+ bool isVoid, string returnType, LanguageWriter writer, bool isEnum)
{
if (codeElement.HttpMethod == null) throw new InvalidOperationException("http method cannot be null");
@@ -578,8 +582,8 @@ private void WriteRequestExecutorBody(CodeMethod codeElement, RequestParams requ
writer.WriteLine(")");
var isStream = conventions.StreamTypeName.Equals(returnType, StringComparison.OrdinalIgnoreCase);
var returnTypeWithoutCollectionSymbol = GetReturnTypeWithoutCollectionSymbol(codeElement, returnType);
- var genericTypeForSendMethod = GetSendRequestMethodName(isVoid, isStream, codeElement.ReturnType.IsCollection, returnTypeWithoutCollectionSymbol);
- var newFactoryParameter = GetTypeFactory(isVoid, isStream, returnTypeWithoutCollectionSymbol);
+ var genericTypeForSendMethod = GetSendRequestMethodName(isVoid, isStream, codeElement.ReturnType.IsCollection, returnTypeWithoutCollectionSymbol, isEnum);
+ var newFactoryParameter = GetTypeFactory(isVoid, isStream, returnTypeWithoutCollectionSymbol, isEnum);
var errorMappingVarName = NoneKeyword;
if (codeElement.ErrorMappings.Any())
{
@@ -695,7 +699,8 @@ private void WriteSerializerBodyForIntersectionModel(CodeClass parentClass, Lang
var propertiesNames = complexProperties
.Select(static x => x.Name)
.OrderBy(static x => x, StringComparer.OrdinalIgnoreCase)
- .Aggregate(static (x, y) => $"self.{x}, self.{y}");
+ .Select(static x => $"self.{x}")
+ .Aggregate(static (x, y) => $"{x}, {y}");
writer.WriteLine($"writer.{GetSerializationMethodName(complexProperties[0].Type)}({NoneKeyword}, {propertiesNames})");
if (includeElse)
{
@@ -803,23 +808,24 @@ private string GetSerializationMethodName(CodeTypeBase propType)
_ => "write_object_value",
};
}
- private string GetTypeFactory(bool isVoid, bool isStream, string returnType)
+ private string GetTypeFactory(bool isVoid, bool isStream, string returnType, bool isEnum)
{
if (isVoid) return string.Empty;
if (isStream || conventions.IsPrimitiveType(returnType)) return $" {returnType},";
return $" {returnType},";
}
- private string GetSendRequestMethodName(bool isVoid, bool isStream, bool isCollection, string returnType)
+ private string GetSendRequestMethodName(bool isVoid, bool isStream, bool isCollection, string returnType,
+ bool isEnum)
{
if (isVoid) return "send_no_response_content_async";
if (isCollection)
{
- if (conventions.IsPrimitiveType(returnType)) return "send_collection_of_primitive_async";
- return $"send_collection_async";
+ if (conventions.IsPrimitiveType(returnType) || isEnum) return "send_collection_of_primitive_async";
+ return "send_collection_async";
}
- if (isStream || conventions.IsPrimitiveType(returnType)) return "send_primitive_async";
+ if (isStream || conventions.IsPrimitiveType(returnType) || isEnum) return "send_primitive_async";
return "send_async";
}
private void UpdateRequestInformationFromRequestBody(CodeMethod codeElement, RequestParams requestParams, CodeProperty requestAdapterProperty, LanguageWriter writer)
diff --git a/src/Kiota.Builder/Writers/Python/CodePropertyWriter.cs b/src/Kiota.Builder/Writers/Python/CodePropertyWriter.cs
index 7439f123bf..d2e9e5a0d1 100644
--- a/src/Kiota.Builder/Writers/Python/CodePropertyWriter.cs
+++ b/src/Kiota.Builder/Writers/Python/CodePropertyWriter.cs
@@ -45,7 +45,7 @@ public override void WriteCodeElement(CodeProperty codeElement, LanguageWriter w
break;
case CodePropertyKind.ErrorMessageOverride when parentClass.IsErrorDefinition:
writer.WriteLine("@property");
- writer.StartBlock($"def {codeElement.Name}(self) -> {codeElement.Type.Name}:");
+ writer.StartBlock($"def {codeElement.Name}(self) -> Optional[{codeElement.Type.Name}]:");
conventions.WriteLongDescription(codeElement, writer);
if (parentClass.GetPrimaryMessageCodePath(static x => x.Name.ToFirstCharacterLowerCase(),
static x => x.Name.ToSnakeCase()) is string primaryMessageCodePath &&
diff --git a/tests/Kiota.Builder.Tests/Writers/Go/CodeMethodWriterTests.cs b/tests/Kiota.Builder.Tests/Writers/Go/CodeMethodWriterTests.cs
index 771c815782..885af77aae 100644
--- a/tests/Kiota.Builder.Tests/Writers/Go/CodeMethodWriterTests.cs
+++ b/tests/Kiota.Builder.Tests/Writers/Go/CodeMethodWriterTests.cs
@@ -291,16 +291,20 @@ private void AddSerializationBackingStoreMethods()
}
private CodeClass AddUnionTypeWrapper()
{
- var complexType1 = root.AddClass(new CodeClass
+ var complexType1 = root.AddInterface(new CodeInterface
{
Name = "ComplexType1",
- Kind = CodeClassKind.Model,
+ Kind = CodeInterfaceKind.Model,
+ OriginalClass = new CodeClass { Name = "ComplexType1", Kind = CodeClassKind.Model }
}).First();
- var complexType2 = root.AddClass(new CodeClass
+
+ var complexType2 = root.AddInterface(new CodeInterface
{
Name = "ComplexType2",
- Kind = CodeClassKind.Model,
+ Kind = CodeInterfaceKind.Model,
+ OriginalClass = new CodeClass { Name = "ComplexType2", Kind = CodeClassKind.Model }
}).First();
+
var unionTypeWrapper = root.AddClass(new CodeClass
{
Name = "UnionTypeWrapper",
diff --git a/tests/Kiota.Builder.Tests/Writers/Python/CodeMethodWriterTests.cs b/tests/Kiota.Builder.Tests/Writers/Python/CodeMethodWriterTests.cs
index 64184e1b3a..5cf1e0b2c4 100644
--- a/tests/Kiota.Builder.Tests/Writers/Python/CodeMethodWriterTests.cs
+++ b/tests/Kiota.Builder.Tests/Writers/Python/CodeMethodWriterTests.cs
@@ -1170,7 +1170,8 @@ public void WritesModelFactoryBodyForInheritedModels()
writer.Write(method);
var result = tw.ToString();
Assert.Contains("try:", result);
- Assert.Contains("mapping_value = parse_node.get_child_node(\"@odata.type\").get_str_value()", result);
+ Assert.Contains("child_node = parse_node.get_child_node(\"@odata.type\")", result);
+ Assert.Contains("mapping_value = child_node.get_str_value() if child_node else None", result);
Assert.Contains("except AttributeError:", result);
Assert.Contains("mapping_value = None", result);
Assert.Contains("if mapping_value and mapping_value.casefold() == \"ns.childclass\".casefold()", result);
@@ -1205,7 +1206,8 @@ public void WritesModelFactoryBodyForUnionModels()
writer.Write(factoryMethod);
var result = tw.ToString();
Assert.Contains("try:", result);
- Assert.Contains("mapping_value = parse_node.get_child_node(\"@odata.type\").get_str_value()", result);
+ Assert.Contains("child_node = parse_node.get_child_node(\"@odata.type\")", result);
+ Assert.Contains("mapping_value = child_node.get_str_value() if child_node else None", result);
Assert.Contains("except AttributeError:", result);
Assert.Contains("mapping_value = None", result);
Assert.Contains("result = UnionTypeWrapper()", result);
diff --git a/vscode/microsoft-kiota/package-lock.json b/vscode/microsoft-kiota/package-lock.json
index 69a2ef4cb7..f304238d4d 100644
--- a/vscode/microsoft-kiota/package-lock.json
+++ b/vscode/microsoft-kiota/package-lock.json
@@ -22,10 +22,10 @@
"@types/mocha": "^10.0.9",
"@types/node": "22.x",
"@types/vscode": "^1.94.0",
- "@typescript-eslint/eslint-plugin": "^8.9.0",
- "@typescript-eslint/parser": "^8.9.0",
+ "@typescript-eslint/eslint-plugin": "^8.10.0",
+ "@typescript-eslint/parser": "^8.10.0",
"@vscode/test-electron": "^2.4.1",
- "eslint": "^9.12.0",
+ "eslint": "^9.13.0",
"glob": "^11.0.0",
"mocha": "^10.7.3",
"ts-loader": "^9.5.1",
@@ -94,9 +94,9 @@
}
},
"node_modules/@eslint/core": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz",
- "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==",
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
+ "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -126,9 +126,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "9.12.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz",
- "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==",
+ "version": "9.13.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.13.0.tgz",
+ "integrity": "sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -553,9 +553,9 @@
"dev": true
},
"node_modules/@types/node": {
- "version": "22.7.5",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz",
- "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==",
+ "version": "22.7.7",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.7.tgz",
+ "integrity": "sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==",
"dev": true,
"dependencies": {
"undici-types": "~6.19.2"
@@ -568,16 +568,16 @@
"dev": true
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.9.0.tgz",
- "integrity": "sha512-Y1n621OCy4m7/vTXNlCbMVp87zSd7NH0L9cXD8aIpOaNlzeWxIK4+Q19A68gSmTNRZn92UjocVUWDthGxtqHFg==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.10.0.tgz",
+ "integrity": "sha512-phuB3hoP7FFKbRXxjl+DRlQDuJqhpOnm5MmtROXyWi3uS/Xg2ZXqiQfcG2BJHiN4QKyzdOJi3NEn/qTnjUlkmQ==",
"dev": true,
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.9.0",
- "@typescript-eslint/type-utils": "8.9.0",
- "@typescript-eslint/utils": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0",
+ "@typescript-eslint/scope-manager": "8.10.0",
+ "@typescript-eslint/type-utils": "8.10.0",
+ "@typescript-eslint/utils": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -601,15 +601,15 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.9.0.tgz",
- "integrity": "sha512-U+BLn2rqTTHnc4FL3FJjxaXptTxmf9sNftJK62XLz4+GxG3hLHm/SUNaaXP5Y4uTiuYoL5YLy4JBCJe3+t8awQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.10.0.tgz",
+ "integrity": "sha512-E24l90SxuJhytWJ0pTQydFT46Nk0Z+bsLKo/L8rtQSL93rQ6byd1V/QbDpHUTdLPOMsBCcYXZweADNCfOCmOAg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "8.9.0",
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/typescript-estree": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0",
+ "@typescript-eslint/scope-manager": "8.10.0",
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/typescript-estree": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0",
"debug": "^4.3.4"
},
"engines": {
@@ -629,13 +629,13 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.9.0.tgz",
- "integrity": "sha512-bZu9bUud9ym1cabmOYH9S6TnbWRzpklVmwqICeOulTCZ9ue2/pczWzQvt/cGj2r2o1RdKoZbuEMalJJSYw3pHQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.10.0.tgz",
+ "integrity": "sha512-AgCaEjhfql9MDKjMUxWvH7HjLeBqMCBfIaBbzzIcBbQPZE7CPh1m6FF+L75NUMJFMLYhCywJXIDEMa3//1A0dw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0"
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -646,13 +646,13 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.9.0.tgz",
- "integrity": "sha512-JD+/pCqlKqAk5961vxCluK+clkppHY07IbV3vett97KOV+8C6l+CPEPwpUuiMwgbOz/qrN3Ke4zzjqbT+ls+1Q==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.10.0.tgz",
+ "integrity": "sha512-PCpUOpyQSpxBn230yIcK+LeCQaXuxrgCm2Zk1S+PTIRJsEfU6nJ0TtwyH8pIwPK/vJoA+7TZtzyAJSGBz+s/dg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.9.0",
- "@typescript-eslint/utils": "8.9.0",
+ "@typescript-eslint/typescript-estree": "8.10.0",
+ "@typescript-eslint/utils": "8.10.0",
"debug": "^4.3.4",
"ts-api-utils": "^1.3.0"
},
@@ -670,9 +670,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.9.0.tgz",
- "integrity": "sha512-SjgkvdYyt1FAPhU9c6FiYCXrldwYYlIQLkuc+LfAhCna6ggp96ACncdtlbn8FmnG72tUkXclrDExOpEYf1nfJQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.10.0.tgz",
+ "integrity": "sha512-k/E48uzsfJCRRbGLapdZgrX52csmWJ2rcowwPvOZ8lwPUv3xW6CcFeJAXgx4uJm+Ge4+a4tFOkdYvSpxhRhg1w==",
"dev": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -683,13 +683,13 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.9.0.tgz",
- "integrity": "sha512-9iJYTgKLDG6+iqegehc5+EqE6sqaee7kb8vWpmHZ86EqwDjmlqNNHeqDVqb9duh+BY6WCNHfIGvuVU3Tf9Db0g==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.10.0.tgz",
+ "integrity": "sha512-3OE0nlcOHaMvQ8Xu5gAfME3/tWVDpb/HxtpUZ1WeOAksZ/h/gwrBzCklaGzwZT97/lBbbxJ16dMA98JMEngW4w==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/visitor-keys": "8.9.0",
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/visitor-keys": "8.10.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -735,15 +735,15 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.9.0.tgz",
- "integrity": "sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.10.0.tgz",
+ "integrity": "sha512-Oq4uZ7JFr9d1ZunE/QKy5egcDRXT/FrS2z/nlxzPua2VHFtmMvFNDvpq1m/hq0ra+T52aUezfcjGRIB7vNJF9w==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.9.0",
- "@typescript-eslint/types": "8.9.0",
- "@typescript-eslint/typescript-estree": "8.9.0"
+ "@typescript-eslint/scope-manager": "8.10.0",
+ "@typescript-eslint/types": "8.10.0",
+ "@typescript-eslint/typescript-estree": "8.10.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -757,12 +757,12 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.9.0.tgz",
- "integrity": "sha512-Ht4y38ubk4L5/U8xKUBfKNYGmvKvA1CANoxiTRMM+tOLk3lbF3DvzZCxJCRSE+2GdCMSh6zq9VZJc3asc1XuAA==",
+ "version": "8.10.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.10.0.tgz",
+ "integrity": "sha512-k8nekgqwr7FadWk548Lfph6V3r9OVqjzAIVskE7orMZR23cGJjAOVazsZSJW+ElyjfTM4wx/1g88Mi70DDtG9A==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "8.9.0",
+ "@typescript-eslint/types": "8.10.0",
"eslint-visitor-keys": "^3.4.3"
},
"engines": {
@@ -1796,17 +1796,17 @@
}
},
"node_modules/eslint": {
- "version": "9.12.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz",
- "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==",
+ "version": "9.13.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.13.0.tgz",
+ "integrity": "sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.11.0",
"@eslint/config-array": "^0.18.0",
- "@eslint/core": "^0.6.0",
+ "@eslint/core": "^0.7.0",
"@eslint/eslintrc": "^3.1.0",
- "@eslint/js": "9.12.0",
+ "@eslint/js": "9.13.0",
"@eslint/plugin-kit": "^0.2.0",
"@humanfs/node": "^0.16.5",
"@humanwhocodes/module-importer": "^1.0.1",
diff --git a/vscode/microsoft-kiota/package.json b/vscode/microsoft-kiota/package.json
index 7277bf59dc..6c450d066a 100644
--- a/vscode/microsoft-kiota/package.json
+++ b/vscode/microsoft-kiota/package.json
@@ -471,10 +471,10 @@
"@types/mocha": "^10.0.9",
"@types/node": "22.x",
"@types/vscode": "^1.94.0",
- "@typescript-eslint/eslint-plugin": "^8.9.0",
- "@typescript-eslint/parser": "^8.9.0",
+ "@typescript-eslint/eslint-plugin": "^8.10.0",
+ "@typescript-eslint/parser": "^8.10.0",
"@vscode/test-electron": "^2.4.1",
- "eslint": "^9.12.0",
+ "eslint": "^9.13.0",
"glob": "^11.0.0",
"mocha": "^10.7.3",
"ts-loader": "^9.5.1",
diff --git a/vscode/microsoft-kiota/src/commands/openApidescription/searchOrOpenApiDescriptionCommand.ts b/vscode/microsoft-kiota/src/commands/openApidescription/searchOrOpenApiDescriptionCommand.ts
index 7e58aca26b..a701f233b7 100644
--- a/vscode/microsoft-kiota/src/commands/openApidescription/searchOrOpenApiDescriptionCommand.ts
+++ b/vscode/microsoft-kiota/src/commands/openApidescription/searchOrOpenApiDescriptionCommand.ts
@@ -64,5 +64,6 @@ export class SearchOrOpenApiDescriptionCommand extends Command {
if (config.descriptionPath) {
await openTreeViewWithProgress(() => this._openApiTreeProvider.setDescriptionUrl(config.descriptionPath!));
}
+ await vscode.window.showInformationMessage(vscode.l10n.t('You can now select the required endpoints from {0}', this._openApiTreeProvider.apiTitle!));
}
}
diff --git a/vscode/microsoft-kiota/src/providers/openApiTreeProvider.ts b/vscode/microsoft-kiota/src/providers/openApiTreeProvider.ts
index 7f8cdc81d0..8e212c92bc 100644
--- a/vscode/microsoft-kiota/src/providers/openApiTreeProvider.ts
+++ b/vscode/microsoft-kiota/src/providers/openApiTreeProvider.ts
@@ -350,7 +350,6 @@ export class OpenApiTreeProvider implements vscode.TreeDataProvider