diff --git a/.github/agents/dependencyUpdate.agent.md b/.github/agents/dependencyUpdate.agent.md new file mode 100644 index 000000000000..60ff25d31908 --- /dev/null +++ b/.github/agents/dependencyUpdate.agent.md @@ -0,0 +1,177 @@ +--- +name: Shared Dependency Update Agent +description: Guides the process of updating common/shared dependencies (Azure.Core, Azure.Identity, MSAL, System.Text.Json) i.e. NuGet packages in azure-powershell. Invoke this agent when you need to bump a dependency version. +--- + +You are an engineering assistant that guides Azure PowerShell contributors through dependency updates. You help determine the correct update workflow, make the necessary changes, and verify everything works. Prioritize correctness — dependency updates affect all 200+ modules. + +# Scope + +This agent covers **shared dependencies** — centrally managed assemblies listed in `src/lib/manifest.json` (e.g., Azure.Core, Azure.Identity, MSAL, System.Text.Json, System.ClientModel). + +**Module-specific dependencies** (e.g., Azure.ResourceManager.Compute) referenced only in a module's `.csproj` file are **out of scope**. However, if a module-specific dependency update also requires updating a shared dependency (e.g., a newer Azure SDK module requires a newer `Azure.Core`), the shared dependency portion follows this workflow. + +# Shared Dependency Update Workflow + +Shared dependencies are centrally managed assemblies shipped with the Az.Accounts module. On PowerShell 7+, they are loaded on-demand into a custom AssemblyLoadContext; on Windows PowerShell, they are resolved via a custom assembly resolver. Updating them requires coordinating across multiple files. + +Use the **AzDev module** (`tools/AzDev/`) for all shared dependency updates. Refer to `tools/AzDev/README.md` for full usage details. + +## Prerequisites: Set Up AzDev + +Before starting, build and import the AzDev module: + +```powershell +./tools/AzDev/build.ps1 +Import-Module ./artifacts/AzDev/AzDev.psd1 +Set-DevContext -RepoRoot (Get-Location).Path +``` + +## Step 1: Gather Requirements + +Ask the user which dependencies to **update**, **add**, or **remove**, including target versions. + +For updates, look up current versions from `src/lib/manifest.json` (source of truth for shared assemblies). Present the user with the current version and confirm the target version. + +Also check whether the package appears in these compile-time reference files (not all shared packages do): + +- **`tools/Common.Netcore.Dependencies.targets`** — search for a `` with the package name +- **`src/Accounts/Authentication/Authentication.csproj`** — search for a `` with the package name + +## Step 2: Compare Transitive Dependencies + +**MANDATORY — DO NOT SKIP THIS STEP.** Even if the user has already edited `manifest.json` with the direct package version bumps, transitive dependencies may also need updating. Skipping this step risks shipping mismatched assembly versions that cause runtime failures. + +For each package being updated, run `Compare-DevPackageDep` to get the complete list of transitive dependency changes. + +The `-TargetFramework` parameter is mandatory — look up the `TargetFramework` value from the package's entry in `manifest.json` (typically `netstandard2.0`, but some packages use `net45`, `net461`, `net462`, or `net47`). If the package is not yet in manifest.json, ask the user. + +The output is in table format and can be long — for example, upgrading Azure.Identity from 1.13.0 to 1.21.0 produces 127 rows because it recursively reports all transitive dependency changes. The same dependency may appear multiple times under different parents. + +```powershell +Compare-DevPackageDep -PackageName "Azure.Identity" -OldVersion "1.13.0" -NewVersion "1.21.0" -TargetFramework "netstandard2.0" +``` + +Review the output and determine whether any new or updated transitive dependencies also need to be added/updated in `manifest.json`: + +- **Must add to shared** if: required at runtime by a shared assembly AND not including it would cause assembly-load failures or version conflicts across modules. +- **Do not add** if: .NET or PowerShell already provides an acceptable version, or the assembly is only used at compile time. +- **Platform scoping**: Set `WindowsPowerShell` and `PowerShell7Plus` appropriately. To determine the correct value for `PowerShell7Plus`, check whether the assembly is actually bundled with PowerShell 7 (look in the PS7 installation directory, e.g., `/usr/local/microsoft/powershell/7/`). Only `System.*` assemblies that are part of the .NET NETCore.App shared framework can safely use `PowerShell7Plus: false`. Note that `Microsoft.Extensions.*` packages are **not** included in the NETCore.App framework (they are in AspNetCore.App, which PS7 does not use) — these must have `PowerShell7Plus: true`. +- **Runtime/native assets**: If the package includes native DLLs (e.g., `Microsoft.Identity.Client.NativeInterop`), set `"CopyRuntimeAssemblies": true` in manifest.json. +- **TargetFramework changes**: When bumping a package to a newer major version, verify that the `TargetFramework` in manifest.json still matches an available TFM in the new NuGet package. Newer package versions sometimes drop older TFMs (e.g., `net46` → `net462`, `net461` → `net462`). Check the package's `lib/` folder contents to confirm. If the TFM changed, update the manifest entry accordingly. + +Present the complete list of all changes (direct + transitive) to the user for confirmation before proceeding. Include: +1. Existing manifest.json packages that need version bumps +2. New packages that need to be added to manifest.json +3. Any TargetFramework changes required + +## Step 3: Update manifest.json and Run Update-DevAssembly + +### 3a. Edit manifest.json + +Edit `src/lib/manifest.json` — bump versions for existing packages, add new entries, or remove entries as needed: + +```json +{ + "PackageName": "Azure.Core", + "PackageVersion": "1.56.0", + "TargetFramework": "netstandard2.0", + "WindowsPowerShell": true, + "PowerShell7Plus": true +} +``` + +### 3b. Run Update-DevAssembly + +```powershell +Update-DevAssembly +``` + +This single command coordinates versions across the repo: +- Downloads NuGet packages for each entry in manifest.json +- Extracts the correct DLL for each target framework into `src/lib/{framework}/` +- Regenerates the `#region Generated` block in `ConditionalAssemblyProvider.cs` with correct assembly versions +- Updates `cgmanifest.json` with package metadata + +### 3c. Update compile-time references (if applicable) + +Some packages also appear in compile-time reference files — update versions there too: + +- **`tools/Common.Netcore.Dependencies.targets`**: Update the `Version` attribute if the package has a `` entry there (e.g., `Azure.Core`). +- **`src/Accounts/Authentication/Authentication.csproj`**: Update the `Version` attribute if updating Azure.Identity, Azure.Identity.Broker, or any MSAL package. + +Not all shared packages appear in these files — only update what exists. Search the files to confirm. + +### 3d. Update ChangeLog + +Add an entry under `## Upcoming Release` in `src/Accounts/Accounts/ChangeLog.md`: + +```markdown +## Upcoming Release +* Upgraded `Azure.Core` dependency from 1.54.0 to 1.56.0. +``` + +Use past tense, reference GitHub issues if applicable, avoid special characters (`@`, `$`, unescaped quotes). + +## Verification + +After making all changes, verify the build and module loading: + +1. **Build all projects**: + ```powershell + ./tools/BuildScripts/BuildModules.ps1 -Configuration Debug + ``` + +2. **Import Az.Accounts on PowerShell 7+** and verify no errors in verbose output: + ```powershell + $VerbosePreference = "Continue" + Import-Module ./artifacts/Debug/Az.Accounts/Az.Accounts.psd1 + ``` + +3. **Import Az.Accounts on Windows PowerShell 5.1** (requires Windows) and verify no errors: + ```powershell + $VerbosePreference = "Continue" + Import-Module ./artifacts/Debug/Az.Accounts/Az.Accounts.psd1 + ``` + +Both PowerShell editions must be tested because shared assemblies use different loading mechanisms on each (custom ALC on PS 7+, custom assembly resolver on PS 5.1). + +## Files Modified by This Workflow + +| File | Edit manually? | Role | +|------|---------------|------| +| `src/lib/manifest.json` | **Yes** | Source of truth for shared assemblies | +| `tools/Common.Netcore.Dependencies.targets` | **Yes** (if applicable) | Compile-time PackageReferences | +| `src/Accounts/Authentication/Authentication.csproj` | **Yes** (if applicable) | Auth package compile-time refs | +| `src/Accounts/Accounts/ChangeLog.md` | **Yes** | User-facing changelog | +| `src/Accounts/AssemblyLoading/ConditionalAssemblyProvider.cs` | **No — auto-generated** | Regenerated by `Update-DevAssembly` | +| `src/lib/cgmanifest.json` | **No — auto-generated** | Regenerated by `Update-DevAssembly` | +| `src/lib/{framework}/*.dll` | **No — auto-generated** | Downloaded/placed by `Update-DevAssembly` | + +> **Important:** Assembly version (e.g., `1.54.0.0` in ConditionalAssemblyProvider.cs) differs from NuGet package version (e.g., `1.54.0`). The AzDev tool resolves this automatically. + +# Anti-Patterns (enforce these) + +| Don't | Why | Do Instead | +|-------|-----|------------| +| Manually edit `ConditionalAssemblyProvider.cs` | The `#region Generated` block is auto-managed by `Update-DevAssembly` | Edit `manifest.json` and run `Update-DevAssembly` | +| Manually copy DLLs into `src/lib/` | Wrong version or framework causes runtime failures | Let `Update-DevAssembly` handle it | +| Update `manifest.json` without running `Update-DevAssembly` | Leaves ConditionalAssemblyProvider.cs and DLLs out of sync | Always run the tool after editing manifest.json | +| Skip `Compare-DevPackageDep` | May miss new transitive dependencies that need to become shared | **Always** compare before updating — even if the user already edited manifest.json | +| Skip `Compare-DevPackageDep` when the user pre-edited manifest.json | User edits typically only cover direct packages; transitive deps (MSAL, System.Text.Json, etc.) are often missed | Run the comparison, present findings, then update manifest.json with any additional transitive changes | +| Bump a shared dependency version in only one file | Version mismatch between manifest.json, targets, and csproj causes build or runtime errors | Check the coordination matrix above | +| Modify `NuGet.Config` | Breaks the build system's package resolution | Never modify | +| Skip static analysis | Dependency conflicts may not surface until CI | Always run `dotnet msbuild build.proj /t:StaticAnalysis` | +| Cancel build commands | Builds can take 15-45 minutes with periods of no visible progress | Wait for completion — never cancel | + +# Quality Checklist (enforce before finalizing) + +- [ ] `manifest.json` version matches the intended upgrade +- [ ] Transitive dependency comparison completed for all updated packages — no missing or outdated transitive deps +- [ ] TargetFramework values verified for all updated packages (newer versions may drop older TFMs) +- [ ] `Update-DevAssembly` ran successfully — ConditionalAssemblyProvider.cs, cgmanifest.json, and DLLs are updated +- [ ] Compile-time references updated where applicable (targets file, csproj) +- [ ] ChangeLog.md entry added under `## Upcoming Release` +- [ ] Build succeeds: `./tools/BuildScripts/BuildModules.ps1 -Configuration Debug` +- [ ] Module imports without errors on PowerShell 7+ +- [ ] Module imports without errors on Windows PowerShell 5.1 (requires Windows) diff --git a/TODO.md b/TODO.md new file mode 100644 index 000000000000..785808c2800e --- /dev/null +++ b/TODO.md @@ -0,0 +1,6 @@ +- [x] create an agent +- [x] update azure.identity and msal + - [x] address namespace conflict of types named Identity because Azure.Core pulls in namespaces of Microsoft.Identity (because of Microsoft.Identity.Client) +- [x] update other dependencies +- [ ] System.Text.Json might not be necessary for PowerShell 7+? +- [ ] Errors of "Could not load file or assembly 'Microsoft.Azure.PowerShell.AssemblyLoading, Version=5.3.3.0" during smoke test. Might be regression of parallal loading, need to investigate. diff --git a/src/Accounts/Accounts.Test/SilentReAuthByTenantCmdletTest.cs b/src/Accounts/Accounts.Test/SilentReAuthByTenantCmdletTest.cs index 1b3c0eeca518..991eecd9e6da 100644 --- a/src/Accounts/Accounts.Test/SilentReAuthByTenantCmdletTest.cs +++ b/src/Accounts/Accounts.Test/SilentReAuthByTenantCmdletTest.cs @@ -167,6 +167,7 @@ public void SilentReauthenticateFailure() // Setup InitializeSession(); var mockAzureCredentialFactory = new Mock(); +#pragma warning disable CS0618 // SharedTokenCacheCredentialOptions is obsolete; suppressed pending migration mockAzureCredentialFactory.Setup(f => f.CreateSharedTokenCacheCredentials(It.IsAny())).Returns(() => new TokenCredentialMock( (times) => { @@ -177,6 +178,7 @@ public void SilentReauthenticateFailure() throw new CredentialUnavailableException(identityExceptionMessage); } )); +#pragma warning restore CS0618 AzureSession.Instance.RegisterComponent(nameof(AzureCredentialFactory), () => mockAzureCredentialFactory.Object, true); AzureSession.Instance.ClientFactory.AddHandler(new HttpMockHandler( (times) => @@ -217,11 +219,13 @@ public void SilentReauthenticateSuccess() InitializeSession(); cmdlet.TenantId = Guid.NewGuid().ToString(); var mockAzureCredentialFactory = new Mock(); +#pragma warning disable CS0618 // SharedTokenCacheCredentialOptions is obsolete; suppressed pending migration mockAzureCredentialFactory.Setup(f => f.CreateSharedTokenCacheCredentials(It.IsAny())).Returns(() => new TokenCredentialMock( (firstTime) => { return new ValueTask(new AccessToken(fakeToken, DateTimeOffset.Now.AddHours(1))); })); +#pragma warning restore CS0618 AzureSession.Instance.RegisterComponent(nameof(AzureCredentialFactory), () => mockAzureCredentialFactory.Object, true); AzureSession.Instance.ClientFactory.AddHandler(new HttpMockHandler( @@ -276,11 +280,13 @@ public void NormalCase() InitializeSession(); cmdlet.TenantId = Guid.NewGuid().ToString(); var mockAzureCredentialFactory = new Mock(); +#pragma warning disable CS0618 // SharedTokenCacheCredentialOptions is obsolete; suppressed pending migration mockAzureCredentialFactory.Setup(f => f.CreateSharedTokenCacheCredentials(It.IsAny())).Returns(() => new TokenCredentialMock( (times) => { return new ValueTask(new AccessToken(fakeToken, DateTimeOffset.Now.AddHours(1))); })); +#pragma warning restore CS0618 AzureSession.Instance.RegisterComponent(nameof(AzureCredentialFactory), () => mockAzureCredentialFactory.Object, true); AzureSession.Instance.ClientFactory.AddHandler(new HttpMockHandler( diff --git a/src/Accounts/Accounts/ChangeLog.md b/src/Accounts/Accounts/ChangeLog.md index 64e60047fc2c..94f27390474f 100644 --- a/src/Accounts/Accounts/ChangeLog.md +++ b/src/Accounts/Accounts/ChangeLog.md @@ -19,6 +19,12 @@ --> ## Upcoming Release +* Upgraded `Azure.Core` dependency from 1.50.0 to 1.54.0. +* Upgraded `Azure.Identity` dependency from 1.13.0 to 1.21.0. +* Upgraded `Azure.Identity.Broker` dependency from 1.1.0 to 1.6.0. +* Upgraded MSAL (Microsoft Authentication Library) dependencies from 4.83.1 to 4.83.3. +* Upgraded `System.Text.Json` dependency from 8.0.6 to 10.0.3. +* Upgraded `System.ClientModel` dependency from 1.8.0 to 1.10.0. ## Version 5.4.0 * Updated the `System.Memory` dependency to v4.6.3 to support the Storage SDK update. diff --git a/src/Accounts/AssemblyLoading/ConditionalAssemblyProvider.cs b/src/Accounts/AssemblyLoading/ConditionalAssemblyProvider.cs index 42226072e226..b089d5bf7c92 100644 --- a/src/Accounts/AssemblyLoading/ConditionalAssemblyProvider.cs +++ b/src/Accounts/AssemblyLoading/ConditionalAssemblyProvider.cs @@ -43,28 +43,33 @@ public static void Initialize(string rootPath, IConditionalAssemblyContext conte // do not update this list manually, see src/lib/README.md for details #region Generated CreateAssembly("net45", "Newtonsoft.Json", "13.0.0.0").WithWindowsPowerShell(), - CreateAssembly("net46", "System.Numerics.Vectors", "4.1.4.0").WithWindowsPowerShell(), CreateAssembly("net46", "System.Xml.ReaderWriter", "4.1.0.0").WithWindowsPowerShell(), CreateAssembly("net461", "System.Reflection.DispatchProxy", "4.0.4.0").WithWindowsPowerShell(), - CreateAssembly("net461", "System.Runtime.CompilerServices.Unsafe", "6.0.0.0").WithWindowsPowerShell(), CreateAssembly("net461", "System.Security.Cryptography.ProtectedData", "4.0.3.0").WithWindowsPowerShell(), - CreateAssembly("net462", "System.Diagnostics.DiagnosticSource", "8.0.0.1").WithWindowsPowerShell(), - CreateAssembly("net462", "System.Text.Encodings.Web", "8.0.0.0").WithWindowsPowerShell(), + CreateAssembly("net462", "System.Diagnostics.DiagnosticSource", "10.0.0.3").WithWindowsPowerShell(), + CreateAssembly("net462", "System.Numerics.Vectors", "4.1.6.0").WithWindowsPowerShell(), + CreateAssembly("net462", "System.Runtime.CompilerServices.Unsafe", "6.0.3.0").WithWindowsPowerShell(), + CreateAssembly("net462", "System.Text.Encodings.Web", "10.0.0.3").WithWindowsPowerShell(), CreateAssembly("net47", "System.Security.Cryptography.Cng", "5.0.0.0").WithWindowsPowerShell(), CreateAssembly("net47", "System.ValueTuple", "4.0.3.0").WithWindowsPowerShell(), - CreateAssembly("netstandard2.0", "Azure.Core", "1.50.0.0"), - CreateAssembly("netstandard2.0", "Azure.Identity.Broker", "1.1.0.0"), - CreateAssembly("netstandard2.0", "Azure.Identity", "1.13.0.0"), - CreateAssembly("netstandard2.0", "Microsoft.Bcl.AsyncInterfaces", "8.0.0.0"), - CreateAssembly("netstandard2.0", "Microsoft.Identity.Client.Broker", "4.83.1.0"), - CreateAssembly("netstandard2.0", "Microsoft.Identity.Client", "4.83.1.0"), - CreateAssembly("netstandard2.0", "Microsoft.Identity.Client.Extensions.Msal", "4.83.1.0"), - CreateAssembly("netstandard2.0", "Microsoft.Identity.Client.NativeInterop", "0.20.2.0"), + CreateAssembly("netstandard2.0", "Azure.Core", "1.54.0.0"), + CreateAssembly("netstandard2.0", "Azure.Identity.Broker", "1.6.0.0"), + CreateAssembly("netstandard2.0", "Azure.Identity", "1.21.0.0"), + CreateAssembly("netstandard2.0", "Microsoft.Bcl.AsyncInterfaces", "10.0.0.3"), + CreateAssembly("netstandard2.0", "Microsoft.Extensions.Configuration.Abstractions", "10.0.0.0"), + CreateAssembly("netstandard2.0", "Microsoft.Extensions.DependencyInjection.Abstractions", "10.0.0.0"), + CreateAssembly("netstandard2.0", "Microsoft.Extensions.Hosting.Abstractions", "10.0.0.0"), + CreateAssembly("netstandard2.0", "Microsoft.Extensions.Logging.Abstractions", "10.0.0.0"), + CreateAssembly("netstandard2.0", "Microsoft.Identity.Client.Broker", "4.83.3.0"), + CreateAssembly("netstandard2.0", "Microsoft.Identity.Client", "4.83.3.0"), + CreateAssembly("netstandard2.0", "Microsoft.Identity.Client.Extensions.Msal", "4.83.3.0"), + CreateAssembly("netstandard2.0", "Microsoft.Identity.Client.NativeInterop", "0.20.4.0"), CreateAssembly("netstandard2.0", "Microsoft.IdentityModel.Abstractions", "8.14.0.0"), - CreateAssembly("netstandard2.0", "System.Buffers", "4.0.3.0").WithWindowsPowerShell(), - CreateAssembly("netstandard2.0", "System.ClientModel", "1.8.0.0"), + CreateAssembly("netstandard2.0", "System.Buffers", "4.0.2.0").WithWindowsPowerShell(), + CreateAssembly("netstandard2.0", "System.ClientModel", "1.10.0.0"), CreateAssembly("netstandard2.0", "System.Formats.Asn1", "8.0.0.0").WithWindowsPowerShell(), - CreateAssembly("netstandard2.0", "System.Memory.Data", "8.0.0.1"), + CreateAssembly("netstandard2.0", "System.IO.Pipelines", "10.0.0.0").WithWindowsPowerShell(), + CreateAssembly("netstandard2.0", "System.Memory.Data", "10.0.0.3"), CreateAssembly("netstandard2.0", "System.Memory", "4.0.2.0").WithWindowsPowerShell(), CreateAssembly("netstandard2.0", "System.Net.Http.WinHttpHandler", "4.0.4.0").WithWindowsPowerShell(), CreateAssembly("netstandard2.0", "System.Private.ServiceModel", "4.7.0.0").WithWindowsPowerShell(), @@ -72,7 +77,7 @@ public static void Initialize(string rootPath, IConditionalAssemblyContext conte CreateAssembly("netstandard2.0", "System.Security.Permissions", "4.0.3.0").WithWindowsPowerShell(), CreateAssembly("netstandard2.0", "System.Security.Principal.Windows", "4.1.3.0").WithWindowsPowerShell(), CreateAssembly("netstandard2.0", "System.ServiceModel.Primitives", "4.7.0.0").WithWindowsPowerShell(), - CreateAssembly("netstandard2.0", "System.Text.Json", "8.0.0.0"), + CreateAssembly("netstandard2.0", "System.Text.Json", "10.0.0.0"), CreateAssembly("netstandard2.0", "System.Threading.Tasks.Extensions", "4.2.1.0").WithWindowsPowerShell(), #endregion }; diff --git a/src/Accounts/Authentication.Test/AuthenticationFactoryConcurrencyTest.cs b/src/Accounts/Authentication.Test/AuthenticationFactoryConcurrencyTest.cs index 0e30f2e1e364..4d54a40838cb 100644 --- a/src/Accounts/Authentication.Test/AuthenticationFactoryConcurrencyTest.cs +++ b/src/Accounts/Authentication.Test/AuthenticationFactoryConcurrencyTest.cs @@ -157,10 +157,12 @@ public async Task AuthenticationFactoryShouldHandleConcurrentAuthentication() try { InitializeSession(armToken); +#pragma warning disable CS0618 // SharedTokenCacheCredential is obsolete; suppressed pending migration var mockTokenCredential = new Mock(); mockTokenCredential.Setup(f => f.GetTokenAsync(It.IsAny(), It.IsAny())) .ReturnsAsync(new AccessToken(armToken, DateTimeOffset.Now)); mockAzureCredentialFactory.Setup(f => f.CreateSharedTokenCacheCredentials(It.IsAny())).Returns(mockTokenCredential.Object); +#pragma warning restore CS0618 //var mockTokenManagedIdentityCredential = new Mock(); //mockTokenManagedIdentityCredential.Setup(f => f.GetTokenAsync(It.IsAny(), It.IsAny())) diff --git a/src/Accounts/Authentication.Test/AuthenticatorsTest/ManagedServiceIdentityAuthenticatorTests.cs b/src/Accounts/Authentication.Test/AuthenticatorsTest/ManagedServiceIdentityAuthenticatorTests.cs index f3714584da13..4233879012bb 100644 --- a/src/Accounts/Authentication.Test/AuthenticatorsTest/ManagedServiceIdentityAuthenticatorTests.cs +++ b/src/Accounts/Authentication.Test/AuthenticatorsTest/ManagedServiceIdentityAuthenticatorTests.cs @@ -57,7 +57,7 @@ public async Task UserAssignedMSI() var mockAzureCredentialFactory = new Mock(); //id must be equal to accountId mockAzureCredentialFactory.Setup(f => f.CreateManagedIdentityCredential(It.Is(id => id == accountId))) - .Returns(new ManagedIdentityCredential(accountId)); + .Returns(new ManagedIdentityCredential(ManagedIdentityId.FromUserAssignedClientId(accountId))); AzureSession.Instance.RegisterComponent(nameof(AzureCredentialFactory), () => mockAzureCredentialFactory.Object, true); var account = new AzureAccount @@ -100,7 +100,7 @@ public async Task SystemAssignedMSI() var mockAzureCredentialFactory = new Mock(); //id must be equal to null mockAzureCredentialFactory.Setup(f => f.CreateManagedIdentityCredential(It.Is(id => id == null))) - .Returns(new ManagedIdentityCredential(accountId)); + .Returns(new ManagedIdentityCredential(ManagedIdentityId.SystemAssigned)); AzureSession.Instance.RegisterComponent(nameof(AzureCredentialFactory), () => mockAzureCredentialFactory.Object, true); var account = new AzureAccount diff --git a/src/Accounts/Authentication.Test/AuthenticatorsTest/SilentAuthenticatorTests.cs b/src/Accounts/Authentication.Test/AuthenticatorsTest/SilentAuthenticatorTests.cs index 792cc081eea8..1f27529df136 100644 --- a/src/Accounts/Authentication.Test/AuthenticatorsTest/SilentAuthenticatorTests.cs +++ b/src/Accounts/Authentication.Test/AuthenticatorsTest/SilentAuthenticatorTests.cs @@ -66,7 +66,9 @@ public async Task SimpleSilentAuthenticationTest() //Setup var mockAzureCredentialFactory = new Mock(); +#pragma warning disable CS0618 // SharedTokenCacheCredentialOptions is obsolete; suppressed pending migration mockAzureCredentialFactory.Setup(f => f.CreateSharedTokenCacheCredentials(It.IsAny())).Returns(() => new TokenCredentialMock()); +#pragma warning restore CS0618 AzureSession.Instance.RegisterComponent(nameof(AzureCredentialFactory), () => mockAzureCredentialFactory.Object, true); InMemoryTokenCacheProvider cacheProvider = new InMemoryTokenCacheProvider(); diff --git a/src/Accounts/Authentication.Test/Mocks/MockManagedIdentityCredential.cs b/src/Accounts/Authentication.Test/Mocks/MockManagedIdentityCredential.cs index 9ecef068efbf..c45c54df06db 100644 --- a/src/Accounts/Authentication.Test/Mocks/MockManagedIdentityCredential.cs +++ b/src/Accounts/Authentication.Test/Mocks/MockManagedIdentityCredential.cs @@ -32,11 +32,13 @@ internal class MockManagedIdentityCredential : ManagedIdentityCredential public Func TokenFactory { get; set; } +#pragma warning disable CS0618 // ManagedIdentityCredential(string) is obsolete; suppressed pending migration to ManagedIdentityId API public MockManagedIdentityCredential(string accountId) : base(accountId) { AccountId = accountId; } +#pragma warning restore CS0618 public override ValueTask GetTokenAsync(TokenRequestContext requestContext, CancellationToken cancellationToken = default(CancellationToken)) { diff --git a/src/Accounts/Authentication/Authentication.csproj b/src/Accounts/Authentication/Authentication.csproj index 3d2d36227792..95b1fe0ea52e 100644 --- a/src/Accounts/Authentication/Authentication.csproj +++ b/src/Accounts/Authentication/Authentication.csproj @@ -12,11 +12,11 @@ - - - - - + + + + + diff --git a/src/Accounts/Authenticators/Factories/AzureCredentialFactory.cs b/src/Accounts/Authenticators/Factories/AzureCredentialFactory.cs index aaea1dcd255e..317615ae8e9c 100644 --- a/src/Accounts/Authenticators/Factories/AzureCredentialFactory.cs +++ b/src/Accounts/Authenticators/Factories/AzureCredentialFactory.cs @@ -24,7 +24,11 @@ public class AzureCredentialFactory { public virtual TokenCredential CreateManagedIdentityCredential(string clientId) { - return new ManagedIdentityCredential(clientId); + if (clientId != null) + { + return new ManagedIdentityCredential(ManagedIdentityId.FromUserAssignedClientId(clientId)); + } + return new ManagedIdentityCredential(ManagedIdentityId.SystemAssigned); } public virtual TokenCredential CreateClientSecretCredential(string tenantId, string clientId, SecureString secret, ClientSecretCredentialOptions options) @@ -42,9 +46,11 @@ public virtual TokenCredential CreateClientCertificateCredential(string tenantId return new ClientCertificateCredential(tenantId, clientId, certificatePath, options); } +#pragma warning disable CS0618 // SharedTokenCacheCredential is obsolete; suppressed pending migration to replacement API public virtual TokenCredential CreateSharedTokenCacheCredentials(SharedTokenCacheCredentialOptions options) { return new SharedTokenCacheCredential(options); } +#pragma warning restore CS0618 } } diff --git a/src/Accounts/Authenticators/SilentAuthenticator.cs b/src/Accounts/Authenticators/SilentAuthenticator.cs index 7f868fc559f8..82c0ac768c45 100644 --- a/src/Accounts/Authenticators/SilentAuthenticator.cs +++ b/src/Accounts/Authenticators/SilentAuthenticator.cs @@ -41,8 +41,10 @@ public override Task Authenticate(AuthenticationParameters paramet var tokenCacheProvider = silentParameters.TokenCacheProvider; AzureSession.Instance.TryGetComponent(nameof(AzureCredentialFactory), out AzureCredentialFactory azureCredentialFactory); +#pragma warning disable CS0618 // SharedTokenCacheCredential and related types are obsolete; suppressed pending migration to replacement API SharedTokenCacheCredentialOptions options = GetTokenCredentialOptions(silentParameters, tenantId, authority, tokenCacheProvider); var cacheCredential = azureCredentialFactory.CreateSharedTokenCacheCredentials(options); +#pragma warning restore CS0618 var requestContext = new TokenRequestContext(scopes, isCaeEnabled: true); CheckTokenCachePersistanceEnabled = () => @@ -63,6 +65,7 @@ public override Task Authenticate(AuthenticationParameters paramet silentParameters.HomeAccountId); } +#pragma warning disable CS0618 // SharedTokenCacheCredential and related types are obsolete; suppressed pending migration to replacement API private static SharedTokenCacheCredentialOptions GetTokenCredentialOptions(SilentParameters silentParameters, string tenantId, string authority, PowerShellTokenCacheProvider tokenCacheProvider) { SharedTokenCacheCredentialOptions options = AzConfigReader.IsWamEnabled(authority) @@ -81,6 +84,7 @@ private static SharedTokenCacheCredentialOptions GetTokenCredentialOptions(Silen } return options; } +#pragma warning restore CS0618 public override bool CanAuthenticate(AuthenticationParameters parameters) { diff --git a/src/Accounts/Authenticators/UsernamePasswordAuthenticator.cs b/src/Accounts/Authenticators/UsernamePasswordAuthenticator.cs index 18fee85a99bb..fe239beb4189 100644 --- a/src/Accounts/Authenticators/UsernamePasswordAuthenticator.cs +++ b/src/Accounts/Authenticators/UsernamePasswordAuthenticator.cs @@ -52,6 +52,7 @@ public override Task Authenticate(AuthenticationParameters paramet var authority = upParameters.Environment.ActiveDirectoryAuthority; var requestContext = new TokenRequestContext(scopes, isCaeEnabled: true); +#pragma warning disable CS0618 // UsernamePasswordCredential is obsolete (ROPC incompatible with MFA); suppressed for backward compatibility UsernamePasswordCredential passwordCredential; var credentialOptions = new UsernamePasswordCredentialOptions() @@ -82,6 +83,7 @@ public override Task Authenticate(AuthenticationParameters paramet { throw new InvalidOperationException(Resources.MissingPasswordAndNoCache); } +#pragma warning restore CS0618 } public override bool CanAuthenticate(AuthenticationParameters parameters) diff --git a/src/ArtifactSigning/ArtifactSigning/ArtifactSigning.csproj b/src/ArtifactSigning/ArtifactSigning/ArtifactSigning.csproj index eb2ab76a1383..26d8777336a9 100644 --- a/src/ArtifactSigning/ArtifactSigning/ArtifactSigning.csproj +++ b/src/ArtifactSigning/ArtifactSigning/ArtifactSigning.csproj @@ -26,7 +26,6 @@ - diff --git a/src/Automation/Automation/Common/AutomationPSClient.cs b/src/Automation/Automation/Common/AutomationPSClient.cs index 408d8db079eb..45b955148818 100644 --- a/src/Automation/Automation/Common/AutomationPSClient.cs +++ b/src/Automation/Automation/Common/AutomationPSClient.cs @@ -60,7 +60,7 @@ public AutomationPSClient() } /// - /// + /// /// /// public AutomationPSClient(IAzureContext context) @@ -169,7 +169,7 @@ public AutomationAccount CreateAutomationAccount(string resourceGroupName, strin if (addSystemId == true) { - accountCreateOrUpdateParameters.Identity = new Identity(null, null, ResourceIdentityType.SystemAssigned); + accountCreateOrUpdateParameters.Identity = new AutomationManagement.Models.Identity(null, null, ResourceIdentityType.SystemAssigned); } if ((userIds != null) && userIds.Any()) { @@ -185,7 +185,7 @@ public AutomationAccount CreateAutomationAccount(string resourceGroupName, strin IdType = ResourceIdentityType.SystemAssignedUserAssigned; } - accountCreateOrUpdateParameters.Identity = new Identity(null, null, IdType, userIdDict); + accountCreateOrUpdateParameters.Identity = new AutomationManagement.Models.Identity(null, null, IdType, userIdDict); } if (enableAMK == true) { @@ -253,7 +253,7 @@ public AutomationAccount UpdateAutomationAccount(string resourceGroupName, strin if (addSystemId == true) { - accountUpdateParameters.Identity = new Identity(null, null, ResourceIdentityType.SystemAssigned); + accountUpdateParameters.Identity = new AutomationManagement.Models.Identity(null, null, ResourceIdentityType.SystemAssigned); } if ((userIds != null) && userIds.Any()) { @@ -269,7 +269,7 @@ public AutomationAccount UpdateAutomationAccount(string resourceGroupName, strin IdType = ResourceIdentityType.SystemAssignedUserAssigned; } - accountUpdateParameters.Identity = new Identity(null, null, IdType, userIdDict); + accountUpdateParameters.Identity = new AutomationManagement.Models.Identity(null, null, IdType, userIdDict); } if (enableAMK == true) { @@ -374,7 +374,7 @@ public Module GetModule(string resourceGroupName, string automationAccountName, { module = this.automationManagementClient.Module.Get(resourceGroupName, automationAccountName, name); } - + return new Module(resourceGroupName, automationAccountName, module); } catch (ErrorResponseException cloudException) @@ -403,7 +403,7 @@ public IEnumerable ListModules(string resourceGroupName, string automati else { response = this.automationManagementClient.Module.ListByAutomationAccount(resourceGroupName, automationAccountName); - } + } } else { @@ -414,7 +414,7 @@ public IEnumerable ListModules(string resourceGroupName, string automati else { response = this.automationManagementClient.Module.ListByAutomationAccountNext(nextLink); - } + } } nextLink = response.NextPageLink; @@ -458,7 +458,7 @@ public Module UpdateModule(string resourceGroupName, string automationAccountNam moduleCreateOrUpdateParameters ); } - + } return this.GetModule(resourceGroupName, automationAccountName, name, IsPowerShell72Module); } @@ -486,7 +486,7 @@ public void DeleteModule(string resourceGroupName, string automationAccountName, else { this.automationManagementClient.Module.Delete(resourceGroupName, automationAccountName, name); - } + } } catch (ErrorResponseException cloudException) { @@ -1129,7 +1129,7 @@ public object GetJobStreamRecordAsPsObject(string resourceGroupName, string auto if (response == null || response.Value == null) return null; // PowerShell Workflow runbook jobs would have the below additional properties, remove them from job output - // we do not know the runbook type, remove will only remove if exists + // we do not know the runbook type, remove will only remove if exists response.Value.Remove("PSComputerName"); response.Value.Remove("PSShowComputerName"); response.Value.Remove("PSSourceJobInstanceId"); @@ -1165,7 +1165,7 @@ public object GetJobStreamRecordAsPsObject(string resourceGroupName, string auto paramValue = kvp.Value; } - // for primitive outputs, the record will be in form "value" : "primitive type value". Return the key and return the primitive type value + // for primitive outputs, the record will be in form "value" : "primitive type value". Return the key and return the primitive type value if (response.Value.Count == 1 && response.Value.ContainsKey("value")) { return paramValue; diff --git a/src/Automation/Automation/Model/AutomationAccount.cs b/src/Automation/Automation/Model/AutomationAccount.cs index 4310a1bde986..5514951c2dbe 100644 --- a/src/Automation/Automation/Model/AutomationAccount.cs +++ b/src/Automation/Automation/Model/AutomationAccount.cs @@ -62,7 +62,7 @@ public AutomationAccount(string resourceGroupName, AutomationManagement.Models.A this.Tags.Add(kvp.Key, kvp.Value); } } - + this.Plan = automationAccount.Sku != null ? automationAccount.Sku.Name : null; this.CreationTime = automationAccount.CreationTime.ToLocalTime(); this.LastModifiedTime = automationAccount.LastModifiedTime.ToLocalTime(); @@ -133,7 +133,7 @@ public AutomationAccount() /// /// Gets or sets the identity. /// - public Identity Identity { get; private set; } + public AutomationManagement.Models.Identity Identity { get; private set; } /// /// Gets or sets the encryption properties. diff --git a/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/NewAzureCognitiveServicesAccount.cs b/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/NewAzureCognitiveServicesAccount.cs index 9291e1cbc9a6..ef3bd13feeea 100644 --- a/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/NewAzureCognitiveServicesAccount.cs +++ b/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/NewAzureCognitiveServicesAccount.cs @@ -269,7 +269,7 @@ public override void ExecuteCmdlet() resourceIdentityType = ResourceIdentityType.SystemAssigned; } - createParameters.Identity = new Identity(resourceIdentityType); + createParameters.Identity = new Azure.Management.CognitiveServices.Models.Identity(resourceIdentityType); if (this.UserAssignedIdentityId != null) { createParameters.Identity.UserAssignedIdentities = new Dictionary(); @@ -294,7 +294,7 @@ public override void ExecuteCmdlet() KeyVersion = KeyVersion, KeyVaultUri = KeyVaultUri, IdentityClientId = KeyVaultIdentityClientId - }, + }, KeySource.MicrosoftKeyVault); } diff --git a/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/SetAzureCognitiveServicesAccount.cs b/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/SetAzureCognitiveServicesAccount.cs index e5a3ebb24f83..5a7af04dc4bc 100644 --- a/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/SetAzureCognitiveServicesAccount.cs +++ b/src/CognitiveServices/CognitiveServices/CognitiveServicesAccount/SetAzureCognitiveServicesAccount.cs @@ -206,7 +206,7 @@ public override void ExecuteCmdlet() { sku = new Sku(this.SkuName); } - + Dictionary tags = null; if (this.Tag != null) { @@ -259,7 +259,7 @@ public override void ExecuteCmdlet() resourceIdentityType = ResourceIdentityType.SystemAssignedUserAssigned; } - updateParameters.Identity = new Identity(resourceIdentityType); + updateParameters.Identity = new Azure.Management.CognitiveServices.Models.Identity(resourceIdentityType); if (this.UserAssignedIdentityId != null) { updateParameters.Identity.UserAssignedIdentities = new Dictionary(); diff --git a/src/CognitiveServices/CognitiveServices/Models/PSCognitiveServicesAccount.cs b/src/CognitiveServices/CognitiveServices/Models/PSCognitiveServicesAccount.cs index 90e5d1ae4057..74e4a3a1d52b 100644 --- a/src/CognitiveServices/CognitiveServices/Models/PSCognitiveServicesAccount.cs +++ b/src/CognitiveServices/CognitiveServices/Models/PSCognitiveServicesAccount.cs @@ -82,7 +82,7 @@ public PSCognitiveServicesAccount(Account cognitiveServicesAccount) public string PublicNetworkAccess { get; private set; } - public Identity Identity { get; private set; } + public Azure.Management.CognitiveServices.Models.Identity Identity { get; private set; } public Encryption Encryption { get; private set; } diff --git a/src/DataFactory/DataFactoryV1/DataFactoryV1.csproj b/src/DataFactory/DataFactoryV1/DataFactoryV1.csproj index 181e281b468a..9caa2e2c09de 100644 --- a/src/DataFactory/DataFactoryV1/DataFactoryV1.csproj +++ b/src/DataFactory/DataFactoryV1/DataFactoryV1.csproj @@ -14,9 +14,8 @@ - + - diff --git a/src/IotHub/IotHub/IotHub.csproj b/src/IotHub/IotHub/IotHub.csproj index dc8888622b54..4b2ea3084724 100644 --- a/src/IotHub/IotHub/IotHub.csproj +++ b/src/IotHub/IotHub/IotHub.csproj @@ -13,7 +13,6 @@ - diff --git a/src/KeyVault/KeyVault/KeyVault.csproj b/src/KeyVault/KeyVault/KeyVault.csproj index dd2fa52e82f1..25419acf59d6 100644 --- a/src/KeyVault/KeyVault/KeyVault.csproj +++ b/src/KeyVault/KeyVault/KeyVault.csproj @@ -18,7 +18,6 @@ - @@ -38,7 +37,7 @@ - + True diff --git a/src/OperationalInsights/OperationalInsights/Models/PSIdentity.cs b/src/OperationalInsights/OperationalInsights/Models/PSIdentity.cs index 9e1f2b31127e..9776f92fb825 100644 --- a/src/OperationalInsights/OperationalInsights/Models/PSIdentity.cs +++ b/src/OperationalInsights/OperationalInsights/Models/PSIdentity.cs @@ -25,7 +25,7 @@ public PSIdentity(string type, string principalId = default, string tenantId = d Type = string.IsNullOrEmpty(type) ? "SystemAssigned" : type; } - public PSIdentity(Identity identity) + public PSIdentity(Management.OperationalInsights.Models.Identity identity) { this.PrincipalId = identity.PrincipalId; this.TenantId = identity.TenantId; @@ -51,9 +51,9 @@ public IdentityType getIdentityType() } } - public Identity GetIdentity() + public Management.OperationalInsights.Models.Identity GetIdentity() { - return new Identity(this.getIdentityType(), this.PrincipalId, this.TenantId); + return new Management.OperationalInsights.Models.Identity(this.getIdentityType(), this.PrincipalId, this.TenantId); } } } diff --git a/src/RecoveryServices/RecoveryServices/RecoveryServices.csproj b/src/RecoveryServices/RecoveryServices/RecoveryServices.csproj index a698c7acf56c..c368fad1d051 100644 --- a/src/RecoveryServices/RecoveryServices/RecoveryServices.csproj +++ b/src/RecoveryServices/RecoveryServices/RecoveryServices.csproj @@ -10,14 +10,10 @@ $(LegacyAssemblyPrefix)$(PsModuleName) - - - - - + diff --git a/src/Resources/ResourceManager/SdkModels/Resources/PSResource.cs b/src/Resources/ResourceManager/SdkModels/Resources/PSResource.cs index 14ebf0f3435b..a6886824d065 100644 --- a/src/Resources/ResourceManager/SdkModels/Resources/PSResource.cs +++ b/src/Resources/ResourceManager/SdkModels/Resources/PSResource.cs @@ -32,7 +32,7 @@ public class PSResource public string Id { get; set; } - public Identity Identity { get; set; } + public Microsoft.Azure.Management.ResourceManager.Models.Identity Identity { get; set; } public string Kind { get; set; } @@ -77,7 +77,7 @@ public string TagsTable public string ETag { get; set; } - private PSResource(string id, string name, string kind, string location, string type, Identity identity, PSObject properties, Plan plan, Sku sku, IDictionary tags) + private PSResource(string id, string name, string kind, string location, string type, Microsoft.Azure.Management.ResourceManager.Models.Identity identity, PSObject properties, Plan plan, Sku sku, IDictionary tags) { this.ResourceId = id; this.Id = id; @@ -128,7 +128,7 @@ public PSResource(Resource resource): this( resource.Kind, resource.Location, string.IsNullOrEmpty(resource.Id) ? null : ResourceIdUtility.GetResourceType(resource.Id), - resource.Identity == null ? null : new Identity(resource.Identity.PrincipalId, resource.Identity.TenantId), + resource.Identity == null ? null : new Microsoft.Azure.Management.ResourceManager.Models.Identity(resource.Identity.PrincipalId, resource.Identity.TenantId), resource.Properties?.ToPsObject(), resource.Plan == null ? null : new Plan { diff --git a/src/Resources/Resources/Resources.csproj b/src/Resources/Resources/Resources.csproj index eb4eefda8d32..04956b48b43a 100644 --- a/src/Resources/Resources/Resources.csproj +++ b/src/Resources/Resources/Resources.csproj @@ -18,7 +18,6 @@ - diff --git a/src/Search/Search/Models/PSIdentity.cs b/src/Search/Search/Models/PSIdentity.cs index bdb2c1816fd8..bdce90a25f44 100644 --- a/src/Search/Search/Models/PSIdentity.cs +++ b/src/Search/Search/Models/PSIdentity.cs @@ -26,7 +26,7 @@ public class PSIdentity [Ps1Xml(Label = "Type", Target = ViewControl.List, Position = 0)] public PSIdentityType Type { get; set; } - public static explicit operator PSIdentity(Identity v) + public static explicit operator PSIdentity(Azure.Management.Search.Models.Identity v) { PSIdentityType? identityType = v?.Type.ParsePSIdentityType(); @@ -45,12 +45,12 @@ public static explicit operator PSIdentity(Identity v) } } - public static explicit operator Identity(PSIdentity v) + public static explicit operator Azure.Management.Search.Models.Identity(PSIdentity v) { string identityType = v?.Type.ToString(); if (identityType != null) { - return new Identity( + return new Azure.Management.Search.Models.Identity( type: identityType, principalId: v?.PrincipalId, tenantId: v?.TenantId); diff --git a/src/Search/Search/SearchService/NewSearchServiceCommand.cs b/src/Search/Search/SearchService/NewSearchServiceCommand.cs index f3a5ecff5ef8..ceb15ca64497 100644 --- a/src/Search/Search/SearchService/NewSearchServiceCommand.cs +++ b/src/Search/Search/SearchService/NewSearchServiceCommand.cs @@ -191,7 +191,7 @@ public override void ExecuteCmdlet() partitionCount: PartitionCount, hostingMode: (HostingMode?)HostingMode, publicNetworkAccess: publicNetworkAccess, - identity: (Identity)identity, + identity: (Azure.Management.Search.Models.Identity)identity, networkRuleSet: networkRuleSet, disableLocalAuth: DisableLocalAuth, authOptions: (DataPlaneAuthOptions)authOptions, diff --git a/src/Search/Search/SearchService/SetSearchServiceCommand.cs b/src/Search/Search/SearchService/SetSearchServiceCommand.cs index b05e01144418..70e870b87613 100644 --- a/src/Search/Search/SearchService/SetSearchServiceCommand.cs +++ b/src/Search/Search/SearchService/SetSearchServiceCommand.cs @@ -194,7 +194,7 @@ public override void ExecuteCmdlet() // Update the properties passed in (treating nulls as no change to be consistent) NetworkRuleSet = networkRuleSet ?? service.NetworkRuleSet, PublicNetworkAccess = publicNetworkAccess ?? service.PublicNetworkAccess, - Identity = (Identity)identity ?? service.Identity, + Identity = (Azure.Management.Search.Models.Identity)identity ?? service.Identity, PartitionCount = PartitionCount, ReplicaCount = ReplicaCount, diff --git a/src/Storage/Storage.Management/Models/PSStorageAccount.cs b/src/Storage/Storage.Management/Models/PSStorageAccount.cs index 9d8894c30c67..f16acb0ccade 100644 --- a/src/Storage/Storage.Management/Models/PSStorageAccount.cs +++ b/src/Storage/Storage.Management/Models/PSStorageAccount.cs @@ -81,7 +81,7 @@ public PSStorageAccount(StorageModels.StorageAccount storageAccount) this.ZonePlacementPolicy = storageAccount.Placement is null ? null : storageAccount.Placement.ZonePlacementPolicy; this.GeoPriorityReplicationStatus = storageAccount.GeoPriorityReplicationStatus is null ? null : new PSGeoPriorityReplicationStatus(storageAccount.GeoPriorityReplicationStatus); } - public bool? AllowCrossTenantReplication { get; set; } + public bool? AllowCrossTenantReplication { get; set; } public PSKeyCreationTime KeyCreationTime { get; set; } public KeyPolicy KeyPolicy { get; } @@ -113,7 +113,7 @@ public PSStorageAccount(StorageModels.StorageAccount storageAccount) public PSCustomDomain CustomDomain { get; set; } - public Identity Identity { get; set; } + public StorageModels.Identity Identity { get; set; } public DateTime? LastGeoFailoverTime { get; set; } diff --git a/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccount.cs b/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccount.cs index 0302a6d05dc6..3c3c7193c056 100644 --- a/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccount.cs +++ b/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccount.cs @@ -42,7 +42,7 @@ public class NewAzureStorageAccountCommand : StorageAccountBaseCmdlet /// /// Set AzureActiveDirectoryKerberosForFile parameter set name /// - private const string AzureActiveDirectoryKerberosForFileParameterSet = "AzureActiveDirectoryKerberosForFile"; + private const string AzureActiveDirectoryKerberosForFileParameterSet = "AzureActiveDirectoryKerberosForFile"; [Parameter( Position = 0, @@ -455,8 +455,8 @@ public bool EnableSmbOAuth public SwitchParameter AsJob { get; set; } [Parameter(Mandatory = false, HelpMessage = "Set the Encryption KeyType for Table. -Account, Table will be encrypted with account-scoped encryption key. -Service, Table will always be encrypted with Service-Managed keys. The default value is Service.")] - [ValidateSet(StorageModels.KeyType.Service, - StorageModels.KeyType.Account, + [ValidateSet(StorageModels.KeyType.Service, + StorageModels.KeyType.Account, IgnoreCase = true)] public string EncryptionKeyTypeForTable { get; set; } @@ -647,7 +647,7 @@ public int ImmutabilityPeriod public string AllowedCopyScope { get; set; } [Parameter( - Mandatory = false, + Mandatory = false, HelpMessage = "Specify the type of endpoint. Set this to AzureDNSZone to create a large number of accounts in a single subscription, " + "which creates accounts in an Azure DNS Zone and the endpoint URL will have an alphanumeric DNS Zone identifier. Possible values include: 'Standard', 'AzureDnsZone'.")] [PSArgumentCompleter("Standard", "AzureDnsZone")] @@ -730,7 +730,7 @@ public override void ExecuteCmdlet() if (AssignIdentity.IsPresent || this.UserAssignedIdentityId != null || this.IdentityType != null) { - createParameters.Identity = new Identity() { Type = StorageModels.IdentityType.SystemAssigned }; + createParameters.Identity = new StorageModels.Identity() { Type = StorageModels.IdentityType.SystemAssigned }; if (this.IdentityType != null) { createParameters.Identity.Type = GetIdentityTypeString(this.IdentityType); @@ -770,7 +770,7 @@ public override void ExecuteCmdlet() || string.IsNullOrEmpty(this.ActiveDirectoryAzureStorageSid) ) { - throw new System.ArgumentNullException("ActiveDirectoryDomainName, ActiveDirectoryNetBiosDomainName, ActiveDirectoryForestName, ActiveDirectoryDomainGuid, ActiveDirectoryDomainSid, ActiveDirectoryAzureStorageSid", + throw new System.ArgumentNullException("ActiveDirectoryDomainName, ActiveDirectoryNetBiosDomainName, ActiveDirectoryForestName, ActiveDirectoryDomainGuid, ActiveDirectoryDomainSid, ActiveDirectoryAzureStorageSid", "To enable ActiveDirectoryDomainServicesForFile, user must specify all of: ActiveDirectoryDomainName, ActiveDirectoryNetBiosDomainName, ActiveDirectoryForestName, ActiveDirectoryDomainGuid, ActiveDirectoryDomainSid, ActiveDirectoryAzureStorageSid."); } createParameters.AzureFilesIdentityBasedAuthentication.DirectoryServiceOptions = DirectoryServiceOptions.AD; @@ -863,12 +863,12 @@ public override void ExecuteCmdlet() { if ((this.KeyVaultUri != null && this.KeyName == null) || (this.KeyVaultUri == null && this.KeyName != null)) { - throw new ArgumentException("KeyVaultUri and KeyName must be specify together"); + throw new ArgumentException("KeyVaultUri and KeyName must be specify together"); } if (this.KeyVersion != null && (this.KeyVaultUri == null || this.KeyName == null)) { - throw new ArgumentException("KeyVersion can only be specified when specify KeyVaultUri and KeyName together.", "KeyVersion"); + throw new ArgumentException("KeyVersion can only be specified when specify KeyVaultUri and KeyName together.", "KeyVersion"); } if ((this.KeyVaultUserAssignedIdentityId != null || this.KeyVaultFederatedClientId != null) && (this.KeyVaultUri == null || this.KeyName == null)) @@ -951,7 +951,7 @@ public override void ExecuteCmdlet() { SasExpirationAction = ExpirationAction.Log; } - else if (String.Equals(SasExpirationAction, ExpirationAction.Block, StringComparison.OrdinalIgnoreCase)) + else if (String.Equals(SasExpirationAction, ExpirationAction.Block, StringComparison.OrdinalIgnoreCase)) { SasExpirationAction = ExpirationAction.Block; } diff --git a/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccount.cs b/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccount.cs index 813fe3a32c98..b697f741bcf5 100644 --- a/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccount.cs +++ b/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccount.cs @@ -280,7 +280,7 @@ public bool PublishMicrosoftEndpoint } } private bool? publishMicrosoftEndpoint = null; - + [Parameter( Mandatory = false, HelpMessage = "Indicates whether internet routing storage endpoints are to be published")] @@ -453,7 +453,7 @@ public string MinimumTlsVersion minimumTlsVersion = value; } } - private string minimumTlsVersion = null; + private string minimumTlsVersion = null; [Parameter( Mandatory = false, @@ -650,7 +650,7 @@ public override void ExecuteCmdlet() { if(!this.force && this.OriginStorageAccountProperties.Kind == Kind.Storage) { - shouldContinueMessage = "Upgrading a General Purpose v1 storage account to a general-purpose v2 account is free. You may specify the desired account tier during the upgrade process. If an account tier is not specified on upgrade, the default account tier of the upgraded account will be Hot. " + + shouldContinueMessage = "Upgrading a General Purpose v1 storage account to a general-purpose v2 account is free. You may specify the desired account tier during the upgrade process. If an account tier is not specified on upgrade, the default account tier of the upgraded account will be Hot. " + "However, changing the storage access tier after the upgrade may result in changes to your bill so it is recommended to specify the new account tier during upgrade. See (http://go.microsoft.com/fwlink/?LinkId=786482) to learn more."; } else if (!this.force && this.OriginStorageAccountProperties.Kind == Kind.BlobStorage) @@ -709,7 +709,7 @@ public override void ExecuteCmdlet() if (AssignIdentity.IsPresent || this.UserAssignedIdentityId != null || this.IdentityType != null) { - updateParameters.Identity = new Identity() { Type = StorageModels.IdentityType.SystemAssigned }; + updateParameters.Identity = new StorageModels.Identity() { Type = StorageModels.IdentityType.SystemAssigned }; if (this.IdentityType != null) { updateParameters.Identity.Type = GetIdentityTypeString(this.IdentityType); @@ -750,7 +750,7 @@ public override void ExecuteCmdlet() updateParameters.Encryption.EncryptionIdentity.EncryptionFederatedIdentityClientId = this.KeyVaultFederatedClientId; } } - + if (NetworkRuleSet != null) { updateParameters.NetworkRuleSet = PSNetworkRuleSet.ParseStorageNetworkRule(NetworkRuleSet); @@ -946,7 +946,7 @@ public override void ExecuteCmdlet() updateParameters.AllowBlobPublicAccess = this.allowBlobPublicAccess; } if (this.RoutingChoice != null || this.publishMicrosoftEndpoint != null || this.publishInternetEndpoint != null) - { + { updateParameters.RoutingPreference = new RoutingPreference(this.RoutingChoice, this.publishMicrosoftEndpoint, this.publishInternetEndpoint); } if (allowSharedKeyAccess != null) @@ -962,8 +962,8 @@ public override void ExecuteCmdlet() // If user not set action, and the account not already has the action value, Set the default action to Log to be aligned as before PSH release. if (SasExpirationAction == null) { - SasExpirationAction = (this.OriginStorageAccountProperties.SasPolicy != null && this.OriginStorageAccountProperties.SasPolicy.ExpirationAction != null) - ? this.OriginStorageAccountProperties.SasPolicy.ExpirationAction + SasExpirationAction = (this.OriginStorageAccountProperties.SasPolicy != null && this.OriginStorageAccountProperties.SasPolicy.ExpirationAction != null) + ? this.OriginStorageAccountProperties.SasPolicy.ExpirationAction : ExpirationAction.Log; } else diff --git a/src/lib/cgmanifest.json b/src/lib/cgmanifest.json index 8264842f899e..18493a43a195 100644 --- a/src/lib/cgmanifest.json +++ b/src/lib/cgmanifest.json @@ -15,8 +15,8 @@ "component": { "type": "nuget", "nuget": { - "name": "System.Numerics.Vectors", - "version": "4.5.0" + "name": "System.Xml.ReaderWriter", + "version": "4.3.0" } } }, @@ -24,8 +24,8 @@ "component": { "type": "nuget", "nuget": { - "name": "System.Xml.ReaderWriter", - "version": "4.3.0" + "name": "System.Reflection.DispatchProxy", + "version": "4.5.0" } } }, @@ -33,7 +33,7 @@ "component": { "type": "nuget", "nuget": { - "name": "System.Reflection.DispatchProxy", + "name": "System.Security.Cryptography.ProtectedData", "version": "4.5.0" } } @@ -42,8 +42,8 @@ "component": { "type": "nuget", "nuget": { - "name": "System.Runtime.CompilerServices.Unsafe", - "version": "6.0.0" + "name": "System.Diagnostics.DiagnosticSource", + "version": "10.0.3" } } }, @@ -51,8 +51,8 @@ "component": { "type": "nuget", "nuget": { - "name": "System.Security.Cryptography.ProtectedData", - "version": "4.5.0" + "name": "System.Numerics.Vectors", + "version": "4.6.1" } } }, @@ -60,8 +60,8 @@ "component": { "type": "nuget", "nuget": { - "name": "System.Diagnostics.DiagnosticSource", - "version": "8.0.1" + "name": "System.Runtime.CompilerServices.Unsafe", + "version": "6.1.2" } } }, @@ -70,7 +70,7 @@ "type": "nuget", "nuget": { "name": "System.Text.Encodings.Web", - "version": "8.0.0" + "version": "10.0.3" } } }, @@ -97,7 +97,7 @@ "type": "nuget", "nuget": { "name": "Azure.Core", - "version": "1.50.0" + "version": "1.54.0" } } }, @@ -106,7 +106,7 @@ "type": "nuget", "nuget": { "name": "Azure.Identity.Broker", - "version": "1.1.0" + "version": "1.6.0" } } }, @@ -115,7 +115,7 @@ "type": "nuget", "nuget": { "name": "Azure.Identity", - "version": "1.13.0" + "version": "1.21.0" } } }, @@ -124,7 +124,43 @@ "type": "nuget", "nuget": { "name": "Microsoft.Bcl.AsyncInterfaces", - "version": "8.0.0" + "version": "10.0.3" + } + } + }, + { + "component": { + "type": "nuget", + "nuget": { + "name": "Microsoft.Extensions.Configuration.Abstractions", + "version": "10.0.3" + } + } + }, + { + "component": { + "type": "nuget", + "nuget": { + "name": "Microsoft.Extensions.DependencyInjection.Abstractions", + "version": "10.0.3" + } + } + }, + { + "component": { + "type": "nuget", + "nuget": { + "name": "Microsoft.Extensions.Hosting.Abstractions", + "version": "10.0.3" + } + } + }, + { + "component": { + "type": "nuget", + "nuget": { + "name": "Microsoft.Extensions.Logging.Abstractions", + "version": "10.0.3" } } }, @@ -133,7 +169,7 @@ "type": "nuget", "nuget": { "name": "Microsoft.Identity.Client.Broker", - "version": "4.83.1" + "version": "4.83.3" } } }, @@ -142,7 +178,7 @@ "type": "nuget", "nuget": { "name": "Microsoft.Identity.Client", - "version": "4.83.1" + "version": "4.83.3" } } }, @@ -151,7 +187,7 @@ "type": "nuget", "nuget": { "name": "Microsoft.Identity.Client.Extensions.Msal", - "version": "4.83.1" + "version": "4.83.3" } } }, @@ -160,7 +196,7 @@ "type": "nuget", "nuget": { "name": "Microsoft.Identity.Client.NativeInterop", - "version": "0.20.2" + "version": "0.20.4" } } }, @@ -178,7 +214,7 @@ "type": "nuget", "nuget": { "name": "System.Buffers", - "version": "4.5.1" + "version": "4.6.1" } } }, @@ -187,7 +223,7 @@ "type": "nuget", "nuget": { "name": "System.ClientModel", - "version": "1.8.0" + "version": "1.10.0" } } }, @@ -200,12 +236,21 @@ } } }, + { + "component": { + "type": "nuget", + "nuget": { + "name": "System.IO.Pipelines", + "version": "10.0.3" + } + } + }, { "component": { "type": "nuget", "nuget": { "name": "System.Memory.Data", - "version": "8.0.1" + "version": "10.0.3" } } }, @@ -277,7 +322,7 @@ "type": "nuget", "nuget": { "name": "System.Text.Json", - "version": "8.0.6" + "version": "10.0.3" } } }, @@ -286,7 +331,7 @@ "type": "nuget", "nuget": { "name": "System.Threading.Tasks.Extensions", - "version": "4.6.0" + "version": "4.6.3" } } } diff --git a/src/lib/manifest.json b/src/lib/manifest.json index 1a7994b0800b..7ec2fb44fe2f 100644 --- a/src/lib/manifest.json +++ b/src/lib/manifest.json @@ -1,61 +1,89 @@ [ { "PackageName": "Azure.Core", - "PackageVersion": "1.50.0", + "PackageVersion": "1.54.0", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Azure.Identity", - "PackageVersion": "1.13.0", + "PackageVersion": "1.21.0", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Azure.Identity.Broker", - "PackageVersion": "1.1.0", + "PackageVersion": "1.6.0", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Microsoft.Bcl.AsyncInterfaces", - "PackageVersion": "8.0.0", + "PackageVersion": "10.0.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Microsoft.Identity.Client", - "PackageVersion": "4.83.1", + "PackageVersion": "4.83.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Microsoft.Identity.Client.Extensions.Msal", - "PackageVersion": "4.83.1", + "PackageVersion": "4.83.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Microsoft.Identity.Client.Broker", - "PackageVersion": "4.83.1", + "PackageVersion": "4.83.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "Microsoft.Identity.Client.NativeInterop", - "PackageVersion": "0.20.2", + "PackageVersion": "0.20.4", "TargetFramework": "netstandard2.0", "CopyRuntimeAssemblies": true, "WindowsPowerShell": true, "PowerShell7Plus": true }, + { + "PackageName": "Microsoft.Extensions.Configuration.Abstractions", + "PackageVersion": "10.0.3", + "TargetFramework": "netstandard2.0", + "WindowsPowerShell": true, + "PowerShell7Plus": true + }, + { + "PackageName": "Microsoft.Extensions.DependencyInjection.Abstractions", + "PackageVersion": "10.0.3", + "TargetFramework": "netstandard2.0", + "WindowsPowerShell": true, + "PowerShell7Plus": true + }, + { + "PackageName": "Microsoft.Extensions.Hosting.Abstractions", + "PackageVersion": "10.0.3", + "TargetFramework": "netstandard2.0", + "WindowsPowerShell": true, + "PowerShell7Plus": true + }, + { + "PackageName": "Microsoft.Extensions.Logging.Abstractions", + "PackageVersion": "10.0.3", + "TargetFramework": "netstandard2.0", + "WindowsPowerShell": true, + "PowerShell7Plus": true + }, { "PackageName": "Microsoft.IdentityModel.Abstractions", "PackageVersion": "8.14.0", @@ -72,21 +100,28 @@ }, { "PackageName": "System.Buffers", - "PackageVersion": "4.5.1", + "PackageVersion": "4.6.1", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": false }, { "PackageName": "System.ClientModel", - "PackageVersion": "1.8.0", + "PackageVersion": "1.10.0", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, + { + "PackageName": "System.IO.Pipelines", + "PackageVersion": "10.0.3", + "TargetFramework": "netstandard2.0", + "WindowsPowerShell": true, + "PowerShell7Plus": false + }, { "PackageName": "System.Memory.Data", - "PackageVersion": "8.0.1", + "PackageVersion": "10.0.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true @@ -142,14 +177,14 @@ }, { "PackageName": "System.Text.Json", - "PackageVersion": "8.0.6", + "PackageVersion": "10.0.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": true }, { "PackageName": "System.Threading.Tasks.Extensions", - "PackageVersion": "4.6.0", + "PackageVersion": "4.6.3", "TargetFramework": "netstandard2.0", "WindowsPowerShell": true, "PowerShell7Plus": false @@ -163,15 +198,15 @@ }, { "PackageName": "System.Diagnostics.DiagnosticSource", - "PackageVersion": "8.0.1", + "PackageVersion": "10.0.3", "TargetFramework": "net462", "WindowsPowerShell": true, "PowerShell7Plus": false }, { "PackageName": "System.Numerics.Vectors", - "PackageVersion": "4.5.0", - "TargetFramework": "net46", + "PackageVersion": "4.6.1", + "TargetFramework": "net462", "WindowsPowerShell": true, "PowerShell7Plus": false }, @@ -184,8 +219,8 @@ }, { "PackageName": "System.Runtime.CompilerServices.Unsafe", - "PackageVersion": "6.0.0", - "TargetFramework": "net461", + "PackageVersion": "6.1.2", + "TargetFramework": "net462", "WindowsPowerShell": true, "PowerShell7Plus": false }, @@ -205,7 +240,7 @@ }, { "PackageName": "System.Text.Encodings.Web", - "PackageVersion": "8.0.0", + "PackageVersion": "10.0.3", "TargetFramework": "net462", "WindowsPowerShell": true, "PowerShell7Plus": false diff --git a/src/lib/net46/System.Numerics.Vectors.dll b/src/lib/net46/System.Numerics.Vectors.dll deleted file mode 100644 index 08659724d4f8..000000000000 Binary files a/src/lib/net46/System.Numerics.Vectors.dll and /dev/null differ diff --git a/src/lib/net461/System.Runtime.CompilerServices.Unsafe.dll b/src/lib/net461/System.Runtime.CompilerServices.Unsafe.dll deleted file mode 100644 index c5ba4e4047a1..000000000000 Binary files a/src/lib/net461/System.Runtime.CompilerServices.Unsafe.dll and /dev/null differ diff --git a/src/lib/net462/System.Diagnostics.DiagnosticSource.dll b/src/lib/net462/System.Diagnostics.DiagnosticSource.dll index b58b31a741ec..07d12c8d90c6 100644 Binary files a/src/lib/net462/System.Diagnostics.DiagnosticSource.dll and b/src/lib/net462/System.Diagnostics.DiagnosticSource.dll differ diff --git a/src/lib/net462/System.Numerics.Vectors.dll b/src/lib/net462/System.Numerics.Vectors.dll new file mode 100644 index 000000000000..95a6d990d75d Binary files /dev/null and b/src/lib/net462/System.Numerics.Vectors.dll differ diff --git a/src/lib/net462/System.Runtime.CompilerServices.Unsafe.dll b/src/lib/net462/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 000000000000..77956847c349 Binary files /dev/null and b/src/lib/net462/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/src/lib/net462/System.Text.Encodings.Web.dll b/src/lib/net462/System.Text.Encodings.Web.dll index 3d16c7e9d86d..71437d58a315 100644 Binary files a/src/lib/net462/System.Text.Encodings.Web.dll and b/src/lib/net462/System.Text.Encodings.Web.dll differ diff --git a/src/lib/netstandard2.0/Azure.Core.dll b/src/lib/netstandard2.0/Azure.Core.dll index 110eeca767a5..b40d1ca8fd59 100644 Binary files a/src/lib/netstandard2.0/Azure.Core.dll and b/src/lib/netstandard2.0/Azure.Core.dll differ diff --git a/src/lib/netstandard2.0/Azure.Identity.Broker.dll b/src/lib/netstandard2.0/Azure.Identity.Broker.dll index efdd237a2113..1cfeb2f60e91 100644 Binary files a/src/lib/netstandard2.0/Azure.Identity.Broker.dll and b/src/lib/netstandard2.0/Azure.Identity.Broker.dll differ diff --git a/src/lib/netstandard2.0/Azure.Identity.dll b/src/lib/netstandard2.0/Azure.Identity.dll index 23654ed1c021..8f860e6c874a 100644 Binary files a/src/lib/netstandard2.0/Azure.Identity.dll and b/src/lib/netstandard2.0/Azure.Identity.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll b/src/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll index c828d9921516..54437740176b 100644 Binary files a/src/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll and b/src/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll b/src/lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll new file mode 100644 index 000000000000..3a5ec19ead6e Binary files /dev/null and b/src/lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/src/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 000000000000..aa26322f722d Binary files /dev/null and b/src/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll b/src/lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll new file mode 100644 index 000000000000..c4ab2e253a5f Binary files /dev/null and b/src/lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll b/src/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 000000000000..9c5333aa8134 Binary files /dev/null and b/src/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Identity.Client.Broker.dll b/src/lib/netstandard2.0/Microsoft.Identity.Client.Broker.dll index 8642eb9bc463..a1e09671949e 100644 Binary files a/src/lib/netstandard2.0/Microsoft.Identity.Client.Broker.dll and b/src/lib/netstandard2.0/Microsoft.Identity.Client.Broker.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Identity.Client.Extensions.Msal.dll b/src/lib/netstandard2.0/Microsoft.Identity.Client.Extensions.Msal.dll index 061316dc061b..b8a276d42e31 100644 Binary files a/src/lib/netstandard2.0/Microsoft.Identity.Client.Extensions.Msal.dll and b/src/lib/netstandard2.0/Microsoft.Identity.Client.Extensions.Msal.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Identity.Client.NativeInterop.dll b/src/lib/netstandard2.0/Microsoft.Identity.Client.NativeInterop.dll index a7f18e40e6bd..831dcd7352d0 100644 Binary files a/src/lib/netstandard2.0/Microsoft.Identity.Client.NativeInterop.dll and b/src/lib/netstandard2.0/Microsoft.Identity.Client.NativeInterop.dll differ diff --git a/src/lib/netstandard2.0/Microsoft.Identity.Client.dll b/src/lib/netstandard2.0/Microsoft.Identity.Client.dll index dd6a2b53d605..cdec8bb5d0fc 100644 Binary files a/src/lib/netstandard2.0/Microsoft.Identity.Client.dll and b/src/lib/netstandard2.0/Microsoft.Identity.Client.dll differ diff --git a/src/lib/netstandard2.0/System.Buffers.dll b/src/lib/netstandard2.0/System.Buffers.dll index c0970c078522..a4525d62ee20 100644 Binary files a/src/lib/netstandard2.0/System.Buffers.dll and b/src/lib/netstandard2.0/System.Buffers.dll differ diff --git a/src/lib/netstandard2.0/System.ClientModel.dll b/src/lib/netstandard2.0/System.ClientModel.dll index 0679f97eb55f..3be9aa372fca 100644 Binary files a/src/lib/netstandard2.0/System.ClientModel.dll and b/src/lib/netstandard2.0/System.ClientModel.dll differ diff --git a/src/lib/netstandard2.0/System.IO.Pipelines.dll b/src/lib/netstandard2.0/System.IO.Pipelines.dll new file mode 100644 index 000000000000..19f8a13a316b Binary files /dev/null and b/src/lib/netstandard2.0/System.IO.Pipelines.dll differ diff --git a/src/lib/netstandard2.0/System.Memory.Data.dll b/src/lib/netstandard2.0/System.Memory.Data.dll index b3f41a37b810..404b778e1f1d 100644 Binary files a/src/lib/netstandard2.0/System.Memory.Data.dll and b/src/lib/netstandard2.0/System.Memory.Data.dll differ diff --git a/src/lib/netstandard2.0/System.Text.Json.dll b/src/lib/netstandard2.0/System.Text.Json.dll index 624a270f2506..cd1b746533fb 100644 Binary files a/src/lib/netstandard2.0/System.Text.Json.dll and b/src/lib/netstandard2.0/System.Text.Json.dll differ diff --git a/src/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll b/src/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll index 2f496fbbd4e3..1f0324182c26 100644 Binary files a/src/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll and b/src/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll differ diff --git a/src/lib/netstandard2.0/msalruntime.dll b/src/lib/netstandard2.0/msalruntime.dll index 3481119b8629..9f96ff2b1886 100644 Binary files a/src/lib/netstandard2.0/msalruntime.dll and b/src/lib/netstandard2.0/msalruntime.dll differ diff --git a/src/lib/netstandard2.0/msalruntime_arm64.dll b/src/lib/netstandard2.0/msalruntime_arm64.dll index 5f536e570d8e..32698aee90c0 100644 Binary files a/src/lib/netstandard2.0/msalruntime_arm64.dll and b/src/lib/netstandard2.0/msalruntime_arm64.dll differ diff --git a/src/lib/netstandard2.0/msalruntime_x86.dll b/src/lib/netstandard2.0/msalruntime_x86.dll index 15cc4515f0cd..a5254871666b 100644 Binary files a/src/lib/netstandard2.0/msalruntime_x86.dll and b/src/lib/netstandard2.0/msalruntime_x86.dll differ diff --git a/tools/Common.Netcore.Dependencies.targets b/tools/Common.Netcore.Dependencies.targets index 2ea25fb4890f..48248f8a228d 100644 --- a/tools/Common.Netcore.Dependencies.targets +++ b/tools/Common.Netcore.Dependencies.targets @@ -22,7 +22,7 @@ - +