Skip to content

[AutoPR @azure-arm-confidentialledger]-generated-from-SDK Generation - JS-6376391#38752

Open
azure-sdk wants to merge 3 commits into
mainfrom
sdkauto/@azure-arm-confidentialledger-6376391
Open

[AutoPR @azure-arm-confidentialledger]-generated-from-SDK Generation - JS-6376391#38752
azure-sdk wants to merge 3 commits into
mainfrom
sdkauto/@azure-arm-confidentialledger-6376391

Conversation

@azure-sdk
Copy link
Copy Markdown
Collaborator

Configurations: 'specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/ConfidentialLedger/tspconfig.yaml', API Version: 2026-02-23, SDK Release Type: beta, and CommitSHA: '5844a51fbf0a1dcc72001ce84dd2078f0f01a2d9' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6376391 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.

…crosoft.ConfidentialLedger/ConfidentialLedger/tspconfig.yaml', API Version: 2026-02-23, SDK Release Type: beta, and CommitSHA: '5844a51fbf0a1dcc72001ce84dd2078f0f01a2d9' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6376391 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
@github-actions github-actions Bot added the Mgmt This issue is related to a management-plane library. label Jun 1, 2026
@v-jiaodi v-jiaodi marked this pull request as ready for review June 1, 2026 06:19
Copilot AI review requested due to automatic review settings June 1, 2026 06:19
@v-jiaodi v-jiaodi added refresh PR for SDK refresh mgmt-review-needed labels Jun 1, 2026
@github-actions github-actions Bot added mgmt-review-in-progress Management SDK review is in progress and removed mgmt-review-needed labels Jun 1, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 1, 2026

Next Steps to Merge

Only failed checks and required actions are listed below.

  • ⏳ js - pullrequest (Build Analyze): still running.
  • ⏳ js - pullrequest (Build Build): still running.
  • ⏳ js - pullrequest (Build generate_job_matrix): still running.
  • ⏳ js - pullrequest (🔒 SDLSources SDL Sources Analysis (self)): still running.

@github-actions github-actions Bot added mgmt-review-added Management SDK review completed and removed mgmt-review-in-progress Management SDK review is in progress labels Jun 1, 2026
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No API design issues found. The public API surface for @azure/arm-confidentialledger v2.0.0-beta.1 looks clean: package version is consistent across package.json, confidentialLedgerContext.ts, and CHANGELOG.md; no alpha versions present; the 2026-02-23 api-version is new; naming follows conventions; no type-safety concerns were found.

📊 Structured Report
{"agent":"mgmt-reviewer","pr":38752,"summary":"clean","findings":[]}

Benchmarked by Management Release Assistant

@v-jiaodi
Copy link
Copy Markdown
Member

v-jiaodi commented Jun 1, 2026

Note

This analysis was generated by AI. Please review the classifications and root causes for accuracy.

Breaking Change Analysis: @azure/arm-confidentialledger 2.0.0-beta.1

Old SDK (1.2.0) New SDK (PR)
Generator Swagger / AutoRest TypeSpec / emitter
API Version 2022-05-13 2026-02-23
Package Version 1.2.0 2.0.0-beta.1

Spec References:

Note: The API version upgraded from 2022-05-13 to 2026-02-23. The new version adds several properties and operations (listed in Features Added), but all 5 breaking changes are caused by the TypeSpec migration, not by API behavioral changes. The old swagger defined custom base models (Resource, ResourceLocation, Tags); the new TypeSpec-generated swagger uses ARM common TrackedResource via $ref to common-types/resource-management/v3/types.json.


Type 2: TypeSpec / Emitter Migration -- 5 items

Root Cause Sub-Type Count Accepted
TypeSpec uses ARM common TrackedResource instead of custom ResourceLocation and Tags base models Conversion 2
location optionality changed from optional to required due to ARM common TrackedResource adoption Conversion 1
Collection wrapper types internalized by TypeSpec emitter; operations return PagedAsyncIterableIterator<T> directly Emitter 2

Details

  1. Removed Interface ConfidentialLedgerList -- Emitter ✅

    Collection wrapper type ConfidentialLedgerList { nextLink, value } is present in both old swagger (Layer A, 2022-05-13) and new TypeSpec-generated swagger (Layer C, 2026-02-23). AutoRest exposed it as a separate interface; TypeSpec emitter internalizes paging wrappers and returns PagedAsyncIterableIterator<ConfidentialLedger> directly.

  2. Removed Interface ResourceLocation -- Conversion ✅

    Old swagger defined ResourceLocation { location?: string } as a custom base model for ConfidentialLedger (via allOf). New TypeSpec-generated swagger replaces the three-way allOf [Resource, ResourceLocation, Tags] with a single allOf [TrackedResource] referencing the ARM common type. ResourceLocation no longer exists in the new swagger definitions. Root cause: TypeSpec uses ARM common type hierarchy.

  3. Removed Interface ResourceProviderOperationList -- Emitter ✅

    Same as row 1. Collection wrapper type ResourceProviderOperationList { nextLink, value } is present in both Layer A and Layer C swagger. TypeSpec emitter internalizes it; Operations.list returns PagedAsyncIterableIterator<ResourceProviderOperationDefinition> directly.

  4. Removed Interface Tags -- Conversion ✅

    Same as row 2. Old swagger defined Tags { tags?: {...} } as a custom base model. New swagger uses ARM common TrackedResource which includes tags directly. Tags no longer exists in the new swagger definitions.

  5. Parameter location of interface ConfidentialLedger is now required -- Conversion ✅

    Cascading from row 2: old ResourceLocation.location was optional (location?: string). New ARM common TrackedResource.location is required (location: string). The optionality change is a direct consequence of adopting ARM common types, which correctly model location as required for tracked resources.


Total: 5 (Type 2: TypeSpec/Emitter Migration) breaking changes

Type 2 breakdown: 3 items from TypeSpec conversion, 2 items from emitter differences.


Methodology

This analysis uses a four-layer comparison model:

  • Layer A (old original swagger at commit ac155b9, API version 2022-05-13): The swagger files used to generate the old AutoRest SDK (v1.2.0)
  • Layer C (TypeSpec-generated swagger at commit 5844a51, API version 2026-02-23): The swagger generated by TypeSpec autorest emitter
  • Layer D (SDK api.md): The public API surface of the old (v1.2.0) and new (v2.0.0-beta.1) SDKs

Classification was determined by comparing swagger definitions between Layer A and Layer C:

  • Conversion (Type 2a): Swagger definitions structurally differ -- old swagger defined custom base models (Resource, ResourceLocation, Tags) locally, while new swagger references ARM common TrackedResource from common-types/resource-management/v3/types.json
  • Emitter (Type 2b): Swagger definitions are structurally equivalent (e.g., ConfidentialLedgerList and ResourceProviderOperationList exist in both Layer A and Layer C) but the TypeSpec emitter generates different TypeScript code (internalizes paging wrappers)

Although the API version upgraded from 2022-05-13 to 2026-02-23, all 5 breaking changes trace to TypeSpec migration artifacts, not to API behavioral changes. The API version upgrade introduces new features (operations, properties) but no breaking behavioral changes.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This AutoPR updates @azure/arm-confidentialledger from the Confidential Ledger TypeSpec configuration in azure-rest-api-specs (API version 2026-02-23), moving the package to the newer @azure-rest/core-client-based (RLC) structure and refreshing docs/samples and supporting repo configuration for a 2.0.0-beta.1 release.

Changes:

  • Migrates the management client implementation to the RLC pattern (src/api/*, src/classic/*, static paging/polling helpers) and updates public exports.
  • Refreshes samples (new samples/v2-beta/*, updates samples-dev/*, removes v1-beta/*) and updates README/CHANGELOG.
  • Updates repo metadata/configuration (warp config, CI yaml whitespace, CODEOWNERS label comment, lockfile, assets tag, api-extractor formatting).

Reviewed changes

Copilot reviewed 134 out of 138 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
sdk/confidentialledger/ci.mgmt.yml Whitespace-only cleanup in mgmt CI pipeline definition.
sdk/confidentialledger/arm-confidentialledger/warp.config.yml Defines warp exports/targets for the package build.
sdk/confidentialledger/arm-confidentialledger/tsp-location.yaml Records TypeSpec source location and commit for generation provenance.
sdk/confidentialledger/arm-confidentialledger/tsconfig.json Updates TS project references (adds browser test config, reorders refs).
sdk/confidentialledger/arm-confidentialledger/test/snippets.spec.ts Updates snippet headers/import formatting and client construction examples.
sdk/confidentialledger/arm-confidentialledger/src/static-helpers/simplePollerHelpers.ts Adds compatibility helper to expose a deprecated SimplePollerLike wrapper over core-lro pollers.
sdk/confidentialledger/arm-confidentialledger/src/static-helpers/pollingHelpers.ts Adds LRO polling helper built on @azure/core-lro + @azure-rest/core-client.
sdk/confidentialledger/arm-confidentialledger/src/static-helpers/cloudSettingHelpers.ts Adds cloud setting enum/type and ARM endpoint selection helper.
sdk/confidentialledger/arm-confidentialledger/src/restorePollerHelpers.ts Adds restore-from-serialized-state helper for LRO pollers.
sdk/confidentialledger/arm-confidentialledger/src/pagingHelper.ts Removes legacy paging continuation token helper (replaced by static paging helpers).
sdk/confidentialledger/arm-confidentialledger/src/operationsInterfaces/operations.ts Removes legacy autorest operation interface (superseded by RLC/classic surface).
sdk/confidentialledger/arm-confidentialledger/src/operationsInterfaces/managedCCFOperations.ts Removes legacy Managed CCF operation interface.
sdk/confidentialledger/arm-confidentialledger/src/operationsInterfaces/ledger.ts Removes legacy ledger operation interface.
sdk/confidentialledger/arm-confidentialledger/src/operationsInterfaces/index.ts Removes legacy operation interface barrel exports.
sdk/confidentialledger/arm-confidentialledger/src/operations/operations.ts Removes legacy autorest operations implementation.
sdk/confidentialledger/arm-confidentialledger/src/operations/index.ts Removes legacy operations barrel exports.
sdk/confidentialledger/arm-confidentialledger/src/models/parameters.ts Removes legacy autorest parameter mappers/constants.
sdk/confidentialledger/arm-confidentialledger/src/lroImpl.ts Removes legacy autorest LRO spec helper.
sdk/confidentialledger/arm-confidentialledger/src/logger.ts Adds package logger via createClientLogger.
sdk/confidentialledger/arm-confidentialledger/src/index.ts Reworks public exports to RLC model/api/classic and helper exports.
sdk/confidentialledger/arm-confidentialledger/src/confidentialLedgerClient.ts Replaces legacy ServiceClient-based client with RLC wrapper client.
sdk/confidentialledger/arm-confidentialledger/src/classic/operations/index.ts Adds “classic” operations group wrapper over generated RLC operations.
sdk/confidentialledger/arm-confidentialledger/src/classic/index.ts Adds classic operation group type exports.
sdk/confidentialledger/arm-confidentialledger/src/api/options.ts Adds RLC options type for checkNameAvailability.
sdk/confidentialledger/arm-confidentialledger/src/api/operations/options.ts Adds RLC options type for provider operations list.
sdk/confidentialledger/arm-confidentialledger/src/api/operations/operations.ts Adds RLC implementation for listing provider operations (paged).
sdk/confidentialledger/arm-confidentialledger/src/api/operations/index.ts Adds operations API barrel export.
sdk/confidentialledger/arm-confidentialledger/src/api/operations.ts Adds RLC implementation for checkNameAvailability.
sdk/confidentialledger/arm-confidentialledger/src/api/ledger/options.ts Adds ledger operation option types (incl. LRO polling interval fields).
sdk/confidentialledger/arm-confidentialledger/src/api/ledger/index.ts Adds ledger API barrel export.
sdk/confidentialledger/arm-confidentialledger/src/api/index.ts Adds API barrel for context creation and operation exports.
sdk/confidentialledger/arm-confidentialledger/src/api/confidentialLedgerContext.ts Adds RLC client context factory (createConfidentialLedger) and context/options types.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/tsconfig.json Adds TS build config for v2 beta TypeScript samples.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/operationsListSample.ts Adds v2 beta TS sample: list provider operations.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerUpdateSample.ts Updates TS sample for ledger update in v2 beta set.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerListBySubscriptionSample.ts Adds v2 beta TS sample: list ledgers by subscription.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerListByResourceGroupSample.ts Adds v2 beta TS sample: list ledgers by resource group.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerGetSample.ts Adds v2 beta TS sample: get ledger.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerFilesExportSample.ts Adds v2 beta TS sample: files export.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerDeleteSample.ts Adds v2 beta TS sample: delete ledger.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/ledgerCreateSample.ts Updates TS sample for ledger create in v2 beta set.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/src/checkNameAvailabilitySample.ts Adds v2 beta TS sample: check name availability.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/sample.env Adds placeholder env file for v2 beta TS samples.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/README.md Adds v2 beta TS samples README.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/typescript/package.json Adds v2 beta TS samples package manifest.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/sample.env Adds placeholder env file for v2 beta JS samples.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/README.md Adds v2 beta JS samples README.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/package.json Adds v2 beta JS samples package manifest.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/operationsListSample.js Adds v2 beta JS sample: list provider operations.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerUpdateSample.js Updates v2 beta JS sample: ledger update.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerListBySubscriptionSample.js Adds v2 beta JS sample: list by subscription.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerListByResourceGroupSample.js Adds v2 beta JS sample: list by resource group.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerGetSample.js Adds v2 beta JS sample: get ledger.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerFilesExportSample.js Adds v2 beta JS sample: files export.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerDeleteSample.js Adds v2 beta JS sample: delete ledger.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/ledgerCreateSample.js Updates v2 beta JS sample: create ledger.
sdk/confidentialledger/arm-confidentialledger/samples/v2-beta/javascript/checkNameAvailabilitySample.js Adds v2 beta JS sample: check name availability.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/tsconfig.json Removes legacy v1 beta TS samples tsconfig.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/operationsListSample.ts Removes legacy v1 beta TS sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfUpdateSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfRestoreSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfListBySubscriptionSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfListByResourceGroupSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfGetSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfDeleteSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfCreateSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/managedCcfBackupSample.ts Removes legacy v1 beta TS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/ledgerRestoreSample.ts Removes legacy v1 beta TS ledger restore sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/ledgerListBySubscriptionSample.ts Removes legacy v1 beta TS list sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/ledgerListByResourceGroupSample.ts Removes legacy v1 beta TS list sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/ledgerGetSample.ts Removes legacy v1 beta TS get sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/ledgerDeleteSample.ts Removes legacy v1 beta TS delete sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/ledgerBackupSample.ts Removes legacy v1 beta TS backup sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/src/checkNameAvailabilitySample.ts Removes legacy v1 beta TS check-name sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/typescript/README.md Removes legacy v1 beta TS samples README.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/README.md Removes legacy v1 beta JS samples README.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/operationsListSample.js Removes legacy v1 beta JS sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfUpdateSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfRestoreSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfListBySubscriptionSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfListByResourceGroupSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfGetSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfDeleteSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfCreateSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/managedCcfBackupSample.js Removes legacy v1 beta JS Managed CCF sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/ledgerRestoreSample.js Removes legacy v1 beta JS ledger restore sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/ledgerListBySubscriptionSample.js Removes legacy v1 beta JS list sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/ledgerListByResourceGroupSample.js Removes legacy v1 beta JS list sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/ledgerGetSample.js Removes legacy v1 beta JS get sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/ledgerDeleteSample.js Removes legacy v1 beta JS delete sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/ledgerBackupSample.js Removes legacy v1 beta JS backup sample.
sdk/confidentialledger/arm-confidentialledger/samples/v1-beta/javascript/checkNameAvailabilitySample.js Removes legacy v1 beta JS check-name sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/operationsListSample.ts Updates samples-dev “operations list” sample to new client surface.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfUpdateSample.ts Removes samples-dev Managed CCF update sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfRestoreSample.ts Removes samples-dev Managed CCF restore sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfListBySubscriptionSample.ts Removes samples-dev Managed CCF list-by-subscription sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfListByResourceGroupSample.ts Removes samples-dev Managed CCF list-by-resource-group sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfGetSample.ts Removes samples-dev Managed CCF get sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfDeleteSample.ts Removes samples-dev Managed CCF delete sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfCreateSample.ts Removes samples-dev Managed CCF create sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/managedCcfBackupSample.ts Removes samples-dev Managed CCF backup sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerUpdateSample.ts Updates samples-dev ledger update sample to new client surface.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerRestoreSample.ts Removes samples-dev ledger restore sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerListBySubscriptionSample.ts Updates samples-dev ledger list-by-subscription sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerListByResourceGroupSample.ts Updates samples-dev ledger list-by-resource-group sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerGetSample.ts Updates samples-dev ledger get sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerFilesExportSample.ts Adds samples-dev ledger files export sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerDeleteSample.ts Updates samples-dev ledger delete sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerCreateSample.ts Updates samples-dev ledger create sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/ledgerBackupSample.ts Removes samples-dev ledger backup sample.
sdk/confidentialledger/arm-confidentialledger/samples-dev/checkNameAvailabilitySample.ts Updates samples-dev check-name-availability sample.
sdk/confidentialledger/arm-confidentialledger/README.md Updates package README links and browser auth snippet ordering.
sdk/confidentialledger/arm-confidentialledger/metadata.json Adds generation metadata including API version and cross-language mapping.
sdk/confidentialledger/arm-confidentialledger/eslint.config.mjs Formatting tweaks to eslint config file.
sdk/confidentialledger/arm-confidentialledger/config/tspconfig.lint.json Adds a lint tsconfig for TypeSpec-related checks.
sdk/confidentialledger/arm-confidentialledger/config/tsconfig.test.node.json Adds TS path mappings for node tests to use local source imports.
sdk/confidentialledger/arm-confidentialledger/config/tsconfig.test.browser.json Adds TS path mappings for browser tests to use local source imports.
sdk/confidentialledger/arm-confidentialledger/config/tsconfig.src.esm.json Normalizes formatting of ESM tsconfig include.
sdk/confidentialledger/arm-confidentialledger/config/tsconfig.src.cjs.json Normalizes formatting of CJS tsconfig include.
sdk/confidentialledger/arm-confidentialledger/config/tsconfig.src.browser.json Normalizes formatting of browser tsconfig include.
sdk/confidentialledger/arm-confidentialledger/config/tsconfig.samples.json Normalizes formatting of samples tsconfig paths mapping.
sdk/confidentialledger/arm-confidentialledger/CHANGELOG.md Adds 2.0.0-beta.1 changelog entry describing the update and breaking changes.
sdk/confidentialledger/arm-confidentialledger/assets.json Updates assets tag pointer for recordings/artifacts.
sdk/confidentialledger/arm-confidentialledger/api-extractor.json Formats api-extractor config as single-line JSON.
sdk/confidentialledger/arm-confidentialledger/_meta.json Removes legacy autorest metadata file (superseded by TypeSpec metadata).
pnpm-lock.yaml Updates lockfile for dependency graph changes in the package.
.github/CODEOWNERS Updates PR label comment for the confidentialledger mgmt package owners.
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment on lines +44 to +47
loggingOptions: { logger: options.loggingOptions?.logger ?? logger.info },
credentials: {
scopes: options.credentials?.scopes ?? ["https://management.azure.com/.default"],
},
Comment on lines +24 to +52
constructor(credential: TokenCredential, options?: ConfidentialLedgerClientOptionalParams);
constructor(
credentials: coreAuth.TokenCredential,
credential: TokenCredential,
subscriptionId: string,
options?: ConfidentialLedgerClientOptionalParams,
);
/** Microsoft Azure Confidential Compute Ledger Managed CCF Control Plane REST API. */
constructor(
credential: TokenCredential,
subscriptionIdOrOptions?: string | ConfidentialLedgerClientOptionalParams,
options?: ConfidentialLedgerClientOptionalParams,
) {
if (credentials === undefined) {
throw new Error("'credentials' cannot be null");
}
if (subscriptionId === undefined) {
throw new Error("'subscriptionId' cannot be null");
}
let subscriptionId: string | undefined;

// Initializing default values for options
if (!options) {
options = {};
if (typeof subscriptionIdOrOptions === "string") {
subscriptionId = subscriptionIdOrOptions;
} else if (typeof subscriptionIdOrOptions === "object") {
options = subscriptionIdOrOptions;
}
const defaults: ConfidentialLedgerClientOptionalParams = {
requestContentType: "application/json; charset=utf-8",
credential: credentials,
};

const packageDetails = `azsdk-js-arm-confidentialledger/1.3.0-beta.3`;
const userAgentPrefix =
options.userAgentOptions && options.userAgentOptions.userAgentPrefix
? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
: `${packageDetails}`;

const optionsWithDefaults = {
...defaults,
options = options ?? {};
const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix;
const userAgentPrefix = prefixFromOptions
? `${prefixFromOptions} azsdk-js-client`
: `azsdk-js-client`;
this._client = createConfidentialLedger(credential, subscriptionId ?? "", {
...options,
userAgentOptions: {
userAgentPrefix,
},
endpoint:
options.endpoint ?? options.baseUri ?? "https://management.azure.com",
};
super(optionsWithDefaults);

let bearerTokenAuthenticationPolicyFound: boolean = false;
if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {
const pipelinePolicies: coreRestPipeline.PipelinePolicy[] =
options.pipeline.getOrderedPolicies();
bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(
(pipelinePolicy) =>
pipelinePolicy.name ===
coreRestPipeline.bearerTokenAuthenticationPolicyName,
);
}
if (
!options ||
!options.pipeline ||
options.pipeline.getOrderedPolicies().length == 0 ||
!bearerTokenAuthenticationPolicyFound
) {
this.pipeline.removePolicy({
name: coreRestPipeline.bearerTokenAuthenticationPolicyName,
});
this.pipeline.addPolicy(
coreRestPipeline.bearerTokenAuthenticationPolicy({
credential: credentials,
scopes:
optionsWithDefaults.credentialScopes ??
`${optionsWithDefaults.endpoint}/.default`,
challengeCallbacks: {
authorizeRequestOnChallenge:
coreClient.authorizeRequestOnClaimChallenge,
},
}),
);
}
// Parameter assignments
this.subscriptionId = subscriptionId;

// Assigning values to Constant parameters
this.$host = options.$host || "https://management.azure.com";
this.apiVersion = options.apiVersion || "2024-09-19-preview";
this.operations = new OperationsImpl(this);
this.ledger = new LedgerImpl(this);
this.managedCCFOperations = new ManagedCCFOperationsImpl(this);
this.addCustomApiVersionPolicy(options.apiVersion);
userAgentOptions: { userAgentPrefix },
});
Comment on lines 14 to 16
const credential = new DefaultAzureCredential();
const client = new ConfidentialLedgerClient(credential, subscriptionId);
const client = new ConfidentialLedgerClient(credential);
const resArray = new Array();
Comment on lines +29 to +30
Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function.

npm run build
```

3. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically.

You need [an Azure subscription][freesub] to run these sample programs.

Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function.
npm install
```

2. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically.
Comment on lines +4 to +9
import { AzureClouds, AzureSupportedClouds } from "./static-helpers/cloudSettingHelpers.js";
import {
PageSettings,
ContinuablePage,
PagedAsyncIterableIterator,
} from "./static-helpers/pagingHelpers.js";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Mgmt This issue is related to a management-plane library. mgmt-review-added Management SDK review completed refresh PR for SDK refresh

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants