From 779721b55980bc400f9603768339191e6d42a224 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 6 Feb 2026 04:22:57 +0000 Subject: [PATCH 1/7] Initial plan From 1b8e6bd8c5a254b763e8df68de8d680a4a6dbf84 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 6 Feb 2026 04:26:26 +0000 Subject: [PATCH 2/7] Bump Node.js dependencies and prepare for patch release 0.38.8 Co-authored-by: weidongxu-microsoft <53292327+weidongxu-microsoft@users.noreply.github.com> --- core | 2 +- typespec-extension/changelog.md | 6 ++ typespec-extension/package-lock.json | 12 +-- typespec-extension/package.json | 4 +- typespec-tests/package.json | 2 +- .../ClientInitializationTests.java | 73 +++++++++++++++++++ 6 files changed, 89 insertions(+), 10 deletions(-) create mode 100644 typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java diff --git a/core b/core index 2bee42b359..c512396789 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 2bee42b359c1adb03a902465f30157393b5055ca +Subproject commit c51239678988c1189ec649703843e3a715d38272 diff --git a/typespec-extension/changelog.md b/typespec-extension/changelog.md index 9f38589ba3..f4420154d6 100644 --- a/typespec-extension/changelog.md +++ b/typespec-extension/changelog.md @@ -1,5 +1,11 @@ # Release History +## 0.38.8 (2026-02-06) + +Compatible with compiler 1.8.0. + +- Updated package dependencies to the latest versions. + ## 0.38.7 (2026-02-01) Compatible with compiler 1.8.0. diff --git a/typespec-extension/package-lock.json b/typespec-extension/package-lock.json index 0ab20abb71..34877665e0 100644 --- a/typespec-extension/package-lock.json +++ b/typespec-extension/package-lock.json @@ -1,12 +1,12 @@ { "name": "@azure-tools/typespec-java", - "version": "0.38.7", + "version": "0.38.8", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@azure-tools/typespec-java", - "version": "0.38.7", + "version": "0.38.8", "license": "MIT", "dependencies": { "@autorest/codemodel": "~4.20.1", @@ -24,7 +24,7 @@ "@microsoft/api-extractor": "^7.56.2", "@types/js-yaml": "~4.0.9", "@types/lodash": "~4.17.23", - "@types/node": "~25.2.0", + "@types/node": "~25.2.1", "@typescript-eslint/eslint-plugin": "~8.54.0", "@typescript-eslint/parser": "~8.54.0", "@typespec/compiler": "1.8.0", @@ -2478,9 +2478,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "25.2.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.0.tgz", - "integrity": "sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w==", + "version": "25.2.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.1.tgz", + "integrity": "sha512-CPrnr8voK8vC6eEtyRzvMpgp3VyVRhgclonE7qYi6P9sXwYb59ucfrnmFBTaP0yUi8Gk4yZg/LlTJULGxvTNsg==", "dev": true, "license": "MIT", "peer": true, diff --git a/typespec-extension/package.json b/typespec-extension/package.json index b85bd4be5c..2b1fe1dafe 100644 --- a/typespec-extension/package.json +++ b/typespec-extension/package.json @@ -1,6 +1,6 @@ { "name": "@azure-tools/typespec-java", - "version": "0.38.7", + "version": "0.38.8", "description": "TypeSpec library for emitting Java client from the TypeSpec REST protocol binding", "keywords": [ "TypeSpec" @@ -77,7 +77,7 @@ "@microsoft/api-extractor": "^7.56.2", "@types/js-yaml": "~4.0.9", "@types/lodash": "~4.17.23", - "@types/node": "~25.2.0", + "@types/node": "~25.2.1", "@typescript-eslint/eslint-plugin": "~8.54.0", "@typescript-eslint/parser": "~8.54.0", "@typespec/compiler": "1.8.0", diff --git a/typespec-tests/package.json b/typespec-tests/package.json index d676562850..652b88e515 100644 --- a/typespec-tests/package.json +++ b/typespec-tests/package.json @@ -13,7 +13,7 @@ "@typespec/spector": "0.1.0-alpha.22", "@typespec/http-specs": "0.1.0-alpha.31", "@azure-tools/azure-http-specs": "0.1.0-alpha.36", - "@azure-tools/typespec-java": "file:/../typespec-extension/azure-tools-typespec-java-0.38.7.tgz" + "@azure-tools/typespec-java": "file:/../typespec-extension/azure-tools-typespec-java-0.38.8.tgz" }, "devDependencies": { "@typespec/prettier-plugin-typespec": "^1.8.0", diff --git a/typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java b/typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java new file mode 100644 index 0000000000..7e8a8ea25a --- /dev/null +++ b/typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java @@ -0,0 +1,73 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +package azure.clientgenerator.core.clientinitialization; + +import azure.clientgenerator.core.clientinitialization.models.Input; +import azure.clientgenerator.core.clientinitialization.models.WithBodyRequest; +import azure.clientgenerator.core.clientinitialization.parentclient.ChildClient; +import azure.clientgenerator.core.clientinitialization.parentclient.ChildClientBuilder; +import azure.clientgenerator.core.clientinitialization.parentclient.ParentClient; +import azure.clientgenerator.core.clientinitialization.parentclient.ParentClientBuilder; +import org.junit.jupiter.api.Test; + +public final class ClientInitializationTests { + + private static final String TEST_NAME = "test-name-value"; + private static final String TEST_ID = "test-id"; + private static final Input TEST_BODY = new Input("test-name"); + private static final String TEST_REGION = "us-west"; + private static final String TEST_BLOB = "sample-blob"; + + @Test + public void testHeader() { + HeaderParamClient client = new HeaderParamClientBuilder().name(TEST_NAME).buildClient(); + client.withQuery(TEST_ID); + client.withBody(TEST_BODY); + } + + @Test + public void testPath() { + PathParamClient client = new PathParamClientBuilder().blobName(TEST_BLOB).buildClient(); + client.withQuery("text"); + client.getStandalone(); + client.deleteStandalone(); + } + + @Test + public void testMixed() { + MixedParamsClient client = new MixedParamsClientBuilder().name(TEST_NAME).buildClient(); + client.withQuery(TEST_REGION, TEST_ID); + client.withBody(TEST_REGION, new WithBodyRequest("test-name")); + } + + @Test + public void testMultiple() { + MultipleParamsClient client + = new MultipleParamsClientBuilder().name(TEST_NAME).region(TEST_REGION).buildClient(); + client.withQuery(TEST_ID); + client.withBody(TEST_BODY); + } + + @Test + public void testParamAlias() { + ParamAliasClient client = new ParamAliasClientBuilder().blobName(TEST_BLOB).buildClient(); + client.withOriginalName(); + client.withAliasedName(); + } + + @Test + public void testChildClient() { + // ChildClient via ParentClient + ParentClient parentClient = new ParentClientBuilder().buildClient(); + ChildClient childClient = parentClient.getChildClient(TEST_BLOB); + + childClient.getStandalone(); + childClient.deleteStandalone(); + + // ChildClient via ChildClientBuilder + childClient = new ChildClientBuilder().blobName(TEST_BLOB).buildClient(); + + childClient.withQuery("text"); + } +} From dbc5523e913940ab463f8909ddcec0f40677518f Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 6 Feb 2026 12:29:29 +0800 Subject: [PATCH 3/7] core on branch --- core | 2 +- .../ClientInitializationTests.java | 73 ------------------- 2 files changed, 1 insertion(+), 74 deletions(-) delete mode 100644 typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java diff --git a/core b/core index c512396789..1f2a57e0fc 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit c51239678988c1189ec649703843e3a715d38272 +Subproject commit 1f2a57e0fc2d960f360b662c6efd83a9b93e7091 diff --git a/typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java b/typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java deleted file mode 100644 index 7e8a8ea25a..0000000000 --- a/typespec-tests/src/test/java/azure/clientgenerator/core/clientinitialization/ClientInitializationTests.java +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -package azure.clientgenerator.core.clientinitialization; - -import azure.clientgenerator.core.clientinitialization.models.Input; -import azure.clientgenerator.core.clientinitialization.models.WithBodyRequest; -import azure.clientgenerator.core.clientinitialization.parentclient.ChildClient; -import azure.clientgenerator.core.clientinitialization.parentclient.ChildClientBuilder; -import azure.clientgenerator.core.clientinitialization.parentclient.ParentClient; -import azure.clientgenerator.core.clientinitialization.parentclient.ParentClientBuilder; -import org.junit.jupiter.api.Test; - -public final class ClientInitializationTests { - - private static final String TEST_NAME = "test-name-value"; - private static final String TEST_ID = "test-id"; - private static final Input TEST_BODY = new Input("test-name"); - private static final String TEST_REGION = "us-west"; - private static final String TEST_BLOB = "sample-blob"; - - @Test - public void testHeader() { - HeaderParamClient client = new HeaderParamClientBuilder().name(TEST_NAME).buildClient(); - client.withQuery(TEST_ID); - client.withBody(TEST_BODY); - } - - @Test - public void testPath() { - PathParamClient client = new PathParamClientBuilder().blobName(TEST_BLOB).buildClient(); - client.withQuery("text"); - client.getStandalone(); - client.deleteStandalone(); - } - - @Test - public void testMixed() { - MixedParamsClient client = new MixedParamsClientBuilder().name(TEST_NAME).buildClient(); - client.withQuery(TEST_REGION, TEST_ID); - client.withBody(TEST_REGION, new WithBodyRequest("test-name")); - } - - @Test - public void testMultiple() { - MultipleParamsClient client - = new MultipleParamsClientBuilder().name(TEST_NAME).region(TEST_REGION).buildClient(); - client.withQuery(TEST_ID); - client.withBody(TEST_BODY); - } - - @Test - public void testParamAlias() { - ParamAliasClient client = new ParamAliasClientBuilder().blobName(TEST_BLOB).buildClient(); - client.withOriginalName(); - client.withAliasedName(); - } - - @Test - public void testChildClient() { - // ChildClient via ParentClient - ParentClient parentClient = new ParentClientBuilder().buildClient(); - ChildClient childClient = parentClient.getChildClient(TEST_BLOB); - - childClient.getStandalone(); - childClient.deleteStandalone(); - - // ChildClient via ChildClientBuilder - childClient = new ChildClientBuilder().blobName(TEST_BLOB).buildClient(); - - childClient.withQuery("text"); - } -} From 8a3283a0b1de553d3311a2ed0fb3afc4338582cb Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 6 Feb 2026 12:31:24 +0800 Subject: [PATCH 4/7] Update changelog.md --- typespec-extension/changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typespec-extension/changelog.md b/typespec-extension/changelog.md index f4420154d6..4cbb1c430a 100644 --- a/typespec-extension/changelog.md +++ b/typespec-extension/changelog.md @@ -4,7 +4,7 @@ Compatible with compiler 1.8.0. -- Updated package dependencies to the latest versions. +- Supported TypeSpec.Http.File as operation request body and response body. ## 0.38.7 (2026-02-01) From 3c9116cbddf387ccea574784f7f4d314eda4ab1f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 6 Feb 2026 04:34:00 +0000 Subject: [PATCH 5/7] Change version from 0.38.8 to 0.39.0 for minor release Co-authored-by: weidongxu-microsoft <53292327+weidongxu-microsoft@users.noreply.github.com> --- typespec-extension/changelog.md | 2 +- typespec-extension/package-lock.json | 4 ++-- typespec-extension/package.json | 2 +- typespec-tests/package.json | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/typespec-extension/changelog.md b/typespec-extension/changelog.md index 4cbb1c430a..0fbb89a388 100644 --- a/typespec-extension/changelog.md +++ b/typespec-extension/changelog.md @@ -1,6 +1,6 @@ # Release History -## 0.38.8 (2026-02-06) +## 0.39.0 (2026-02-06) Compatible with compiler 1.8.0. diff --git a/typespec-extension/package-lock.json b/typespec-extension/package-lock.json index 34877665e0..5f3ef6bab7 100644 --- a/typespec-extension/package-lock.json +++ b/typespec-extension/package-lock.json @@ -1,12 +1,12 @@ { "name": "@azure-tools/typespec-java", - "version": "0.38.8", + "version": "0.39.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@azure-tools/typespec-java", - "version": "0.38.8", + "version": "0.39.0", "license": "MIT", "dependencies": { "@autorest/codemodel": "~4.20.1", diff --git a/typespec-extension/package.json b/typespec-extension/package.json index 2b1fe1dafe..d84a7f6c9a 100644 --- a/typespec-extension/package.json +++ b/typespec-extension/package.json @@ -1,6 +1,6 @@ { "name": "@azure-tools/typespec-java", - "version": "0.38.8", + "version": "0.39.0", "description": "TypeSpec library for emitting Java client from the TypeSpec REST protocol binding", "keywords": [ "TypeSpec" diff --git a/typespec-tests/package.json b/typespec-tests/package.json index 652b88e515..d0f72a7a2e 100644 --- a/typespec-tests/package.json +++ b/typespec-tests/package.json @@ -13,7 +13,7 @@ "@typespec/spector": "0.1.0-alpha.22", "@typespec/http-specs": "0.1.0-alpha.31", "@azure-tools/azure-http-specs": "0.1.0-alpha.36", - "@azure-tools/typespec-java": "file:/../typespec-extension/azure-tools-typespec-java-0.38.8.tgz" + "@azure-tools/typespec-java": "file:/../typespec-extension/azure-tools-typespec-java-0.39.0.tgz" }, "devDependencies": { "@typespec/prettier-plugin-typespec": "^1.8.0", From 02015ba5c5e9a4718471d9619dbee10eb3b85300 Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 6 Feb 2026 13:12:55 +0800 Subject: [PATCH 6/7] update core --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index 1f2a57e0fc..ac65cd3d6c 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 1f2a57e0fc2d960f360b662c6efd83a9b93e7091 +Subproject commit ac65cd3d6c00018ea8c0c3d3060e0b10dba96079 From 2590e3eabdd448f50342f5fc7d1d6443ae8283c7 Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 6 Feb 2026 14:49:08 +0800 Subject: [PATCH 7/7] core on main --- core | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core b/core index ac65cd3d6c..4d31f6e11a 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit ac65cd3d6c00018ea8c0c3d3060e0b10dba96079 +Subproject commit 4d31f6e11a0320676d7e654d338ca5e5a9cd4103