From c9fa1507519c6d22b7b95e217aeb19a9adea9757 Mon Sep 17 00:00:00 2001 From: AutoPrFromHttpClientPython Date: Fri, 13 Feb 2026 13:12:40 +0000 Subject: [PATCH 1/4] Update dependencies --- packages/autorest.python/package.json | 2 +- packages/typespec-python/package.json | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/autorest.python/package.json b/packages/autorest.python/package.json index 14b0d311f9..471d3f19fb 100644 --- a/packages/autorest.python/package.json +++ b/packages/autorest.python/package.json @@ -29,7 +29,7 @@ }, "homepage": "https://github.com/Azure/autorest.python/blob/main/README.md", "dependencies": { - "@typespec/http-client-python": "https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz", + "@typespec/http-client-python": "https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz", "@autorest/system-requirements": "~1.0.2", "fs-extra": "~11.2.0", "tsx": "~4.19.1" diff --git a/packages/typespec-python/package.json b/packages/typespec-python/package.json index f97c2d36da..f3b3f4734e 100644 --- a/packages/typespec-python/package.json +++ b/packages/typespec-python/package.json @@ -61,13 +61,13 @@ "@azure-tools/typespec-azure-resource-manager": ">=0.65.0 <1.0.0", "@azure-tools/typespec-autorest": ">=0.65.0 <1.0.0", "@azure-tools/typespec-azure-rulesets": ">=0.65.0 <1.0.0", - "@azure-tools/typespec-client-generator-core": ">=0.65.0 <1.0.0" + "@azure-tools/typespec-client-generator-core": ">=0.65.1 <1.0.0" }, "dependencies": { "js-yaml": "~4.1.0", "semver": "~7.6.2", "tsx": "~4.19.1", - "@typespec/http-client-python": "https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz", + "@typespec/http-client-python": "https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz", "fs-extra": "~11.2.0" }, "devDependencies": { @@ -85,8 +85,8 @@ "@azure-tools/typespec-azure-core": "~0.65.0", "@azure-tools/typespec-azure-rulesets": "~0.65.0", "@azure-tools/typespec-autorest": "~0.65.0", - "@azure-tools/typespec-client-generator-core": "~0.65.0", - "@azure-tools/azure-http-specs": "0.1.0-alpha.37", + "@azure-tools/typespec-client-generator-core": "~0.65.1", + "@azure-tools/azure-http-specs": "0.1.0-alpha.38-dev.2", "@typespec/http-specs": "0.1.0-alpha.32", "@typespec/spector": "0.1.0-alpha.23", "@typespec/spec-api": "0.1.0-alpha.12", From 9b13b2f0cb33fdda80881726d96cc5c3b811bd7b Mon Sep 17 00:00:00 2001 From: AutoPrFromHttpClientPython Date: Fri, 13 Feb 2026 13:12:43 +0000 Subject: [PATCH 2/4] Add changelog --- .../add-relative-nextlink-page-test-2026-2-11-12-8-10.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .chronus/changes/add-relative-nextlink-page-test-2026-2-11-12-8-10.md diff --git a/.chronus/changes/add-relative-nextlink-page-test-2026-2-11-12-8-10.md b/.chronus/changes/add-relative-nextlink-page-test-2026-2-11-12-8-10.md new file mode 100644 index 0000000000..3f2cc10da8 --- /dev/null +++ b/.chronus/changes/add-relative-nextlink-page-test-2026-2-11-12-8-10.md @@ -0,0 +1,8 @@ +--- +changeKind: internal +packages: + - "@autorest/python" + - "@azure-tools/typespec-python" +--- + +Add mock API test for Azure Core Page `withRelativeNextLink` scenario. From e35facd654d389ce852dc5fdf0897d7f38c81db1 Mon Sep 17 00:00:00 2001 From: AutoPrFromHttpClientPython Date: Fri, 13 Feb 2026 13:13:45 +0000 Subject: [PATCH 3/4] Update dependencies (2026-02-13 13:13:45) --- pnpm-lock.yaml | 62 +++++++++++++++++++++++++------------------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a5fc93b9a3..d9d49fb03c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -60,8 +60,8 @@ importers: specifier: ~1.0.2 version: 1.0.2 '@typespec/http-client-python': - specifier: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz - version: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz(imki3conzhsv6pqb4tzhmokgcm) + specifier: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz + version: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz(w4lu7gyoy3loqeooqkj6pxlpzi) fs-extra: specifier: ~11.2.0 version: 11.2.0 @@ -82,8 +82,8 @@ importers: packages/typespec-python: dependencies: '@typespec/http-client-python': - specifier: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz - version: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz(imki3conzhsv6pqb4tzhmokgcm) + specifier: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz + version: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz(w4lu7gyoy3loqeooqkj6pxlpzi) fs-extra: specifier: ~11.2.0 version: 11.2.0 @@ -98,11 +98,11 @@ importers: version: 4.19.3 devDependencies: '@azure-tools/azure-http-specs': - specifier: 0.1.0-alpha.37 - version: 0.1.0-alpha.37(pmbxugvpxx3ebmcjamtkekejhy) + specifier: 0.1.0-alpha.38-dev.2 + version: 0.1.0-alpha.38-dev.2(pmbxugvpxx3ebmcjamtkekejhy) '@azure-tools/typespec-autorest': specifier: ~0.65.0 - version: 0.65.0(zp5kfl4ix7wo46g52er3lyo6ji) + version: 0.65.0(tcuc4cp7gxhmvfmnlm6x2mdq7u) '@azure-tools/typespec-azure-core': specifier: ~0.65.0 version: 0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))) @@ -111,10 +111,10 @@ importers: version: 0.65.0(6kwvlecb3nievrl3dwgv4qbila) '@azure-tools/typespec-azure-rulesets': specifier: ~0.65.0 - version: 0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(6kwvlecb3nievrl3dwgv4qbila))(@azure-tools/typespec-client-generator-core@0.65.0(dtwxhuiakzy5nblawfr64qy7nq))(@typespec/compiler@1.9.0(@types/node@24.1.0)) + version: 0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(6kwvlecb3nievrl3dwgv4qbila))(@azure-tools/typespec-client-generator-core@0.65.1(dtwxhuiakzy5nblawfr64qy7nq))(@typespec/compiler@1.9.0(@types/node@24.1.0)) '@azure-tools/typespec-client-generator-core': - specifier: ~0.65.0 - version: 0.65.0(dtwxhuiakzy5nblawfr64qy7nq) + specifier: ~0.65.1 + version: 0.65.1(dtwxhuiakzy5nblawfr64qy7nq) '@types/fs-extra': specifier: 11.0.4 version: 11.0.4 @@ -209,16 +209,16 @@ packages: resolution: {integrity: sha512-T21naRb6JDdjjn2s/zwr9iCIv/9jviL/PRtiWAhi+3UA2WKH2wrId2VqJa4uVD7iEV8BLkuGgFmMkaMBG26hFw==} engines: {node: '>=12.0.0'} - '@azure-tools/azure-http-specs@0.1.0-alpha.37': - resolution: {integrity: sha512-oMo0f14FGn2pg4epJQM7W86W6PNTIgtFUCmBGNUXUcffaZIMnzreR9M488ynyuAP4lbsOiu0uFcE2skDXip2Eg==} + '@azure-tools/azure-http-specs@0.1.0-alpha.38-dev.2': + resolution: {integrity: sha512-rrxSHv70c5d9ZZQRN1xZ849/vzAFM7uHEkpjSNtKBBkx/6/2J2arSiltk4OP6xE/lqHPVPeANzbYQsL4b4wNZw==} engines: {node: '>=20.0.0'} peerDependencies: - '@azure-tools/typespec-azure-core': ^0.65.0 + '@azure-tools/typespec-azure-core': ^0.65.0 || >=0.66.0-dev <0.66.0 '@typespec/compiler': ^1.9.0 '@typespec/http': ^1.9.0 - '@typespec/rest': ^0.79.0 - '@typespec/versioning': ^0.79.0 - '@typespec/xml': ^0.79.0 + '@typespec/rest': ^0.79.0 || >=0.80.0-dev <0.80.0 + '@typespec/versioning': ^0.79.0 || >=0.80.0-dev <0.80.0 + '@typespec/xml': ^0.79.0 || >=0.80.0-dev <0.80.0 '@azure-tools/typespec-autorest@0.65.0': resolution: {integrity: sha512-R8pZt7rYdA2Hr3nck93OGapkQZe3MSzoYq4PgRtsGDHcvA5Qp7RBQMF/tP5DEcFWDDm+unoQeDpbD02POb/LTA==} @@ -265,8 +265,8 @@ packages: '@azure-tools/typespec-client-generator-core': ^0.65.0 '@typespec/compiler': ^1.9.0 - '@azure-tools/typespec-client-generator-core@0.65.0': - resolution: {integrity: sha512-+g6+xB967chLQlukt2nKSCNUagg99MySrdFkY6Izu0z32Wq6ba/FI9IbqBDRTBGFveX+fxS39Xn/xCbtU3nTRg==} + '@azure-tools/typespec-client-generator-core@0.65.1': + resolution: {integrity: sha512-LvZYs0O4AprZRh3SLB8bU5DYmUlEb7zeWcvPKPLjTQB/cmQXMtmMNbLDkfgCwI/iHfRfEgeQGLqjGaNAe/a9iQ==} engines: {node: '>=20.0.0'} peerDependencies: '@azure-tools/typespec-azure-core': ^0.65.0 @@ -1748,8 +1748,8 @@ packages: peerDependencies: '@typespec/compiler': ^1.9.0 - '@typespec/http-client-python@https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz': - resolution: {tarball: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz} + '@typespec/http-client-python@https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz': + resolution: {tarball: https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz} version: 0.27.1 engines: {node: '>=20.0.0'} peerDependencies: @@ -1757,7 +1757,7 @@ packages: '@azure-tools/typespec-azure-core': '>=0.65.0 <1.0.0' '@azure-tools/typespec-azure-resource-manager': '>=0.65.0 <1.0.0' '@azure-tools/typespec-azure-rulesets': '>=0.65.0 <1.0.0' - '@azure-tools/typespec-client-generator-core': '>=0.65.0 <1.0.0' + '@azure-tools/typespec-client-generator-core': '>=0.65.1 <1.0.0' '@typespec/compiler': ^1.9.0 '@typespec/events': '>=0.79.0 <1.0.0' '@typespec/http': ^1.9.0 @@ -4983,7 +4983,7 @@ snapshots: command-exists: 1.2.9 semver: 7.6.3 - '@azure-tools/azure-http-specs@0.1.0-alpha.37(pmbxugvpxx3ebmcjamtkekejhy)': + '@azure-tools/azure-http-specs@0.1.0-alpha.38-dev.2(pmbxugvpxx3ebmcjamtkekejhy)': dependencies: '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))) '@typespec/compiler': 1.9.0(@types/node@24.1.0) @@ -4998,11 +4998,11 @@ snapshots: - '@typespec/streams' - supports-color - '@azure-tools/typespec-autorest@0.65.0(zp5kfl4ix7wo46g52er3lyo6ji)': + '@azure-tools/typespec-autorest@0.65.0(tcuc4cp7gxhmvfmnlm6x2mdq7u)': dependencies: '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))) '@azure-tools/typespec-azure-resource-manager': 0.65.0(6kwvlecb3nievrl3dwgv4qbila) - '@azure-tools/typespec-client-generator-core': 0.65.0(dtwxhuiakzy5nblawfr64qy7nq) + '@azure-tools/typespec-client-generator-core': 0.65.1(dtwxhuiakzy5nblawfr64qy7nq) '@typespec/compiler': 1.9.0(@types/node@24.1.0) '@typespec/http': 1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))) '@typespec/openapi': 1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0)))) @@ -5028,14 +5028,14 @@ snapshots: change-case: 5.4.4 pluralize: 8.0.0 - '@azure-tools/typespec-azure-rulesets@0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(6kwvlecb3nievrl3dwgv4qbila))(@azure-tools/typespec-client-generator-core@0.65.0(dtwxhuiakzy5nblawfr64qy7nq))(@typespec/compiler@1.9.0(@types/node@24.1.0))': + '@azure-tools/typespec-azure-rulesets@0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(6kwvlecb3nievrl3dwgv4qbila))(@azure-tools/typespec-client-generator-core@0.65.1(dtwxhuiakzy5nblawfr64qy7nq))(@typespec/compiler@1.9.0(@types/node@24.1.0))': dependencies: '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))) '@azure-tools/typespec-azure-resource-manager': 0.65.0(6kwvlecb3nievrl3dwgv4qbila) - '@azure-tools/typespec-client-generator-core': 0.65.0(dtwxhuiakzy5nblawfr64qy7nq) + '@azure-tools/typespec-client-generator-core': 0.65.1(dtwxhuiakzy5nblawfr64qy7nq) '@typespec/compiler': 1.9.0(@types/node@24.1.0) - '@azure-tools/typespec-client-generator-core@0.65.0(dtwxhuiakzy5nblawfr64qy7nq)': + '@azure-tools/typespec-client-generator-core@0.65.1(dtwxhuiakzy5nblawfr64qy7nq)': dependencies: '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))) '@typespec/compiler': 1.9.0(@types/node@24.1.0) @@ -6639,13 +6639,13 @@ snapshots: dependencies: '@typespec/compiler': 1.9.0(@types/node@24.1.0) - '@typespec/http-client-python@https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODAwNi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz(imki3conzhsv6pqb4tzhmokgcm)': + '@typespec/http-client-python@https://artprodcus3.artifacts.visualstudio.com/A0fb41ef4-5012-48a9-bf39-4ee3de03ee35/29ec6040-b234-4e31-b139-33dc4287b756/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2F6dXJlLXNkay9wcm9qZWN0SWQvMjllYzYwNDAtYjIzNC00ZTMxLWIxMzktMzNkYzQyODdiNzU2L2J1aWxkSWQvNTg3ODQwMi9hcnRpZmFjdE5hbWUvYnVpbGRfYXJ0aWZhY3RzX3B5dGhvbg2/content?format=file&subPath=%2Fpackages%2Ftypespec-http-client-python-0.27.1.tgz(w4lu7gyoy3loqeooqkj6pxlpzi)': dependencies: - '@azure-tools/typespec-autorest': 0.65.0(zp5kfl4ix7wo46g52er3lyo6ji) + '@azure-tools/typespec-autorest': 0.65.0(tcuc4cp7gxhmvfmnlm6x2mdq7u) '@azure-tools/typespec-azure-core': 0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))) '@azure-tools/typespec-azure-resource-manager': 0.65.0(6kwvlecb3nievrl3dwgv4qbila) - '@azure-tools/typespec-azure-rulesets': 0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(6kwvlecb3nievrl3dwgv4qbila))(@azure-tools/typespec-client-generator-core@0.65.0(dtwxhuiakzy5nblawfr64qy7nq))(@typespec/compiler@1.9.0(@types/node@24.1.0)) - '@azure-tools/typespec-client-generator-core': 0.65.0(dtwxhuiakzy5nblawfr64qy7nq) + '@azure-tools/typespec-azure-rulesets': 0.65.0(@azure-tools/typespec-azure-core@0.65.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))(@typespec/rest@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/http@1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))))))(@azure-tools/typespec-azure-resource-manager@0.65.0(6kwvlecb3nievrl3dwgv4qbila))(@azure-tools/typespec-client-generator-core@0.65.1(dtwxhuiakzy5nblawfr64qy7nq))(@typespec/compiler@1.9.0(@types/node@24.1.0)) + '@azure-tools/typespec-client-generator-core': 0.65.1(dtwxhuiakzy5nblawfr64qy7nq) '@typespec/compiler': 1.9.0(@types/node@24.1.0) '@typespec/events': 0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0)) '@typespec/http': 1.9.0(@typespec/compiler@1.9.0(@types/node@24.1.0))(@typespec/streams@0.79.0(@typespec/compiler@1.9.0(@types/node@24.1.0))) From ec5b716f4d163da3eba2087c33f466c05a3f9117 Mon Sep 17 00:00:00 2001 From: AutoPrFromHttpClientPython Date: Fri, 13 Feb 2026 13:19:09 +0000 Subject: [PATCH 4/4] Regenerate for typespec-python (2026-02-13 13:19:09) --- .../azure-core-page/apiview-properties.json | 4 +- .../generated_tests/test_page.py | 9 ++ .../generated_tests/test_page_async.py | 9 ++ .../core/page/aio/operations/_operations.py | 82 ++++++++++++++++ .../azure/core/page/operations/_operations.py | 95 +++++++++++++++++++ 5 files changed, 198 insertions(+), 1 deletion(-) diff --git a/packages/typespec-python/test/azure/generated/azure-core-page/apiview-properties.json b/packages/typespec-python/test/azure/generated/azure-core-page/apiview-properties.json index f598ae9cf5..59c7f7af80 100644 --- a/packages/typespec-python/test/azure/generated/azure-core-page/apiview-properties.json +++ b/packages/typespec-python/test/azure/generated/azure-core-page/apiview-properties.json @@ -18,6 +18,8 @@ "specs.azure.core.page.PageClient.list_with_custom_page_model": "_Specs_.Azure.Core.Page.listWithCustomPageModel", "specs.azure.core.page.aio.PageClient.list_with_custom_page_model": "_Specs_.Azure.Core.Page.listWithCustomPageModel", "specs.azure.core.page.PageClient.with_parameterized_next_link": "_Specs_.Azure.Core.Page.withParameterizedNextLink", - "specs.azure.core.page.aio.PageClient.with_parameterized_next_link": "_Specs_.Azure.Core.Page.withParameterizedNextLink" + "specs.azure.core.page.aio.PageClient.with_parameterized_next_link": "_Specs_.Azure.Core.Page.withParameterizedNextLink", + "specs.azure.core.page.PageClient.with_relative_next_link": "_Specs_.Azure.Core.Page.withRelativeNextLink", + "specs.azure.core.page.aio.PageClient.with_relative_next_link": "_Specs_.Azure.Core.Page.withRelativeNextLink" } } \ No newline at end of file diff --git a/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page.py b/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page.py index d5d0ff8efd..7434d9a329 100644 --- a/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page.py +++ b/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page.py @@ -51,3 +51,12 @@ def test_with_parameterized_next_link(self, page_endpoint): result = [r for r in response] # please add some check logic here by yourself # ... + + @PagePreparer() + @recorded_by_proxy + def test_with_relative_next_link(self, page_endpoint): + client = self.create_client(endpoint=page_endpoint) + response = client.with_relative_next_link() + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page_async.py b/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page_async.py index 070af41026..edd438b203 100644 --- a/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page_async.py +++ b/packages/typespec-python/test/azure/generated/azure-core-page/generated_tests/test_page_async.py @@ -52,3 +52,12 @@ async def test_with_parameterized_next_link(self, page_endpoint): result = [r async for r in response] # please add some check logic here by yourself # ... + + @PagePreparer() + @recorded_by_proxy_async + async def test_with_relative_next_link(self, page_endpoint): + client = self.create_async_client(endpoint=page_endpoint) + response = client.with_relative_next_link() + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/aio/operations/_operations.py b/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/aio/operations/_operations.py index 46e2f8f03a..0d0940749c 100644 --- a/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/aio/operations/_operations.py +++ b/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/aio/operations/_operations.py @@ -36,6 +36,7 @@ build_page_list_with_page_request, build_page_list_with_parameters_request, build_page_with_parameterized_next_link_request, + build_page_with_relative_next_link_request, build_two_models_as_page_item_list_first_item_request, build_two_models_as_page_item_list_second_item_request, ) @@ -666,3 +667,84 @@ async def get_next(next_link=None): return pipeline_response return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def with_relative_next_link(self, **kwargs: Any) -> AsyncItemPaged["_models.User"]: + """List with relative nextLink URL that requires endpoint resolution. + + :return: An iterator like instance of User + :rtype: ~azure.core.async_paging.AsyncItemPaged[~specs.azure.core.page.models.User] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[list[_models.User]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_page_with_relative_next_link_request( + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.endpoint", self._config.endpoint, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.endpoint", self._config.endpoint, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize(list[_models.User], deserialized.get("value", [])) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # type: ignore # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + raise HttpResponseError(response=response) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) diff --git a/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/operations/_operations.py b/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/operations/_operations.py index f8f784c877..e295609d87 100644 --- a/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/operations/_operations.py +++ b/packages/typespec-python/test/azure/generated/azure-core-page/specs/azure/core/page/operations/_operations.py @@ -168,6 +168,20 @@ def build_page_with_parameterized_next_link_request( # pylint: disable=name-too return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) +def build_page_with_relative_next_link_request(**kwargs: Any) -> HttpRequest: # pylint: disable=name-too-long + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/azure/core/page/with-relative-next-link" + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, headers=_headers, **kwargs) + + class TwoModelsAsPageItemOperations: """ .. warning:: @@ -786,3 +800,84 @@ def get_next(next_link=None): return pipeline_response return ItemPaged(get_next, extract_data) + + @distributed_trace + def with_relative_next_link(self, **kwargs: Any) -> ItemPaged["_models.User"]: + """List with relative nextLink URL that requires endpoint resolution. + + :return: An iterator like instance of User + :rtype: ~azure.core.paging.ItemPaged[~specs.azure.core.page.models.User] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[list[_models.User]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_page_with_relative_next_link_request( + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.endpoint", self._config.endpoint, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.endpoint", self._config.endpoint, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize(list[_models.User], deserialized.get("value", [])) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + raise HttpResponseError(response=response) + + return pipeline_response + + return ItemPaged(get_next, extract_data)