diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 39b69aa8cee..41b0e4e0efc 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -19,14 +19,14 @@ - + https://github.com/dotnet/arcade - c4bbc67763bf0c5a868862df874079380e647d61 + 5da211e1c42254cb35e7ef3d5a8428fb24853169 - + https://github.com/dotnet/arcade - c4bbc67763bf0c5a868862df874079380e647d61 + 5da211e1c42254cb35e7ef3d5a8428fb24853169 diff --git a/eng/Versions.props b/eng/Versions.props index 7f63f9ad9ca..49634ad5098 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -1,6 +1,6 @@ - 9.0.200 + 9.0.201 true release diff --git a/eng/common/internal/Tools.csproj b/eng/common/internal/Tools.csproj index 32f79dfb340..feaa6d20812 100644 --- a/eng/common/internal/Tools.csproj +++ b/eng/common/internal/Tools.csproj @@ -15,16 +15,6 @@ - - - - https://devdiv.pkgs.visualstudio.com/_packaging/dotnet-core-internal-tooling/nuget/v3/index.json; - - - $(RestoreSources); - https://devdiv.pkgs.visualstudio.com/_packaging/VS/nuget/v3/index.json; - - diff --git a/global.json b/global.json index 409c2f65b94..730cbaf6ed9 100644 --- a/global.json +++ b/global.json @@ -1,8 +1,8 @@ { "tools": { - "dotnet": "9.0.102" + "dotnet": "9.0.103" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25065.2" + "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25111.5" } } diff --git a/src/Microsoft.TemplateEngine.Edge/Constraints/WorkloadConstraintFactory.cs b/src/Microsoft.TemplateEngine.Edge/Constraints/WorkloadConstraintFactory.cs index e42441e81a5..2869ef6e77d 100644 --- a/src/Microsoft.TemplateEngine.Edge/Constraints/WorkloadConstraintFactory.cs +++ b/src/Microsoft.TemplateEngine.Edge/Constraints/WorkloadConstraintFactory.cs @@ -11,6 +11,8 @@ namespace Microsoft.TemplateEngine.Edge.Constraints { public sealed class WorkloadConstraintFactory : ITemplateConstraintFactory { + private static readonly SemaphoreSlim Mutex = new(1); + Guid IIdentifiedComponent.Id { get; } = Guid.Parse("{F8BA5B13-7BD6-47C8-838C-66626526817B}"); string ITemplateConstraintFactory.Type => "workload"; @@ -97,8 +99,17 @@ private static IEnumerable ParseArgs(string? args) } token.ThrowIfCancellationRequested(); - IEnumerable currentProviderWorkloads = await providers[0].GetInstalledWorkloadsAsync(token).ConfigureAwait(false); - workloads = currentProviderWorkloads.ToList(); + + await Mutex.WaitAsync(token).ConfigureAwait(false); + try + { + IEnumerable currentProviderWorkloads = await providers[0].GetInstalledWorkloadsAsync(token).ConfigureAwait(false); + workloads = currentProviderWorkloads.ToList(); + } + finally + { + Mutex.Release(); + } if (workloads.Select(w => w.Id).HasDuplicates(StringComparer.InvariantCultureIgnoreCase)) {