From ebf8a7eeed0df03dd6fcc426252a9bf2583b99bd Mon Sep 17 00:00:00 2001 From: Jan Jones Date: Fri, 12 Jun 2026 10:34:03 +0200 Subject: [PATCH 1/4] Fix GivenThatWeWantToUseFrameworkRoslyn tests --- .../GivenThatWeWantToUseFrameworkRoslyn.cs | 51 ++----------------- 1 file changed, 3 insertions(+), 48 deletions(-) diff --git a/test/Microsoft.NET.Restore.Tests/GivenThatWeWantToUseFrameworkRoslyn.cs b/test/Microsoft.NET.Restore.Tests/GivenThatWeWantToUseFrameworkRoslyn.cs index e3feab92935e..20f29fcf7e8e 100644 --- a/test/Microsoft.NET.Restore.Tests/GivenThatWeWantToUseFrameworkRoslyn.cs +++ b/test/Microsoft.NET.Restore.Tests/GivenThatWeWantToUseFrameworkRoslyn.cs @@ -46,45 +46,6 @@ public void It_downloads_Microsoft_Net_Compilers_Toolset_Framework_when_requeste .HaveStdOutContaining(Path.Combine(toolsetPackageDir, toolsetPackageVersion, "csc.exe") + " /noconfig"); } - [FullMSBuildOnlyFact] - public void It_downloads_Microsoft_Net_Compilers_Toolset_Framework_when_MSBuild_is_torn() - { - const string testProjectName = "NetCoreApp"; - var project = new TestProject - { - Name = testProjectName, - TargetFrameworks = "net6.0", - }; - - // simulate mismatched MSBuild versions - project.AdditionalProperties.Add("_IsDisjointMSBuildVersion", "true"); - - // avoid opt in to RoslynCompilerType=Core - string[] args = ["-p:DOTNET_HOST_PATH=", "-p:DOTNET_EXPERIMENTAL_HOST_PATH="]; - - var testAsset = _testAssetsManager - .CreateTestProject(project); - - NuGetConfigWriter.Write(testAsset.Path, SdkTestContext.Current.TestPackages); - - var customPackagesDir = Path.Combine(testAsset.Path, "nuget-packages"); - - testAsset.GetRestoreCommand(Log, relativePath: testProjectName) - .WithEnvironmentVariable("NUGET_PACKAGES", customPackagesDir) - .Execute(args).Should().Pass(); - - var toolsetPackageDir = Path.Combine(customPackagesDir, "microsoft.net.sdk.compilers.toolset"); - - Assert.True(Directory.Exists(toolsetPackageDir)); - - var toolsetPackageVersion = Directory.EnumerateDirectories(toolsetPackageDir).Should().ContainSingle().Subject; - - new BuildCommand(testAsset) - .WithEnvironmentVariable("NUGET_PACKAGES", customPackagesDir) - .Execute(args).Should().Pass().And - .HaveStdOutContaining(Path.Combine(toolsetPackageDir, toolsetPackageVersion, "csc.exe") + " /noconfig"); - } - [FullMSBuildOnlyFact] public void It_throws_a_warning_when_adding_the_PackageReference_directly() { @@ -144,11 +105,7 @@ public void It_throws_a_warning_when_NuGetPackageRoot_is_empty() TargetFrameworks = "net6.0", }; - // simulate mismatched MSBuild versions - project.AdditionalProperties.Add("_IsDisjointMSBuildVersion", "true"); - - // avoid opt in to RoslynCompilerType=Core - string[] args = ["-p:DOTNET_HOST_PATH=", "-p:DOTNET_EXPERIMENTAL_HOST_PATH="]; + project.AdditionalProperties.Add("BuildWithNetFrameworkHostedCompiler", "true"); var testAsset = _testAssetsManager .CreateTestProject(project); @@ -159,7 +116,7 @@ public void It_throws_a_warning_when_NuGetPackageRoot_is_empty() var command = (MSBuildCommand)new MSBuildCommand(testAsset, "Restore;Build") .WithEnvironmentVariable("NUGET_PACKAGES", customPackagesDir); - command.ExecuteWithoutRestore(args) + command.ExecuteWithoutRestore() .Should().Pass().And.HaveStdOutContaining("NETSDK1221"); // The package is downloaded, but the targets cannot find the path to it @@ -183,9 +140,7 @@ public void It_does_not_throw_a_warning_when_NuGetPackageRoot_is_empty_in_wpftmp WorkingDirectory = Path.Combine(testAsset.Path, "FxWpf") }; - // simulate mismatched MSBuild versions via _IsDisjointMSBuildVersion - // avoid opt in to RoslynCompilerType=Core by unsetting DOTNET_HOST_PATH and DOTNET_EXPERIMENTAL_HOST_PATH - buildCommand.Execute("-p:_IsDisjointMSBuildVersion=true", "-p:DOTNET_HOST_PATH=", "-p:DOTNET_EXPERIMENTAL_HOST_PATH=") + buildCommand.Execute("-p:BuildWithNetFrameworkHostedCompiler=true") .Should().Pass().And.NotHaveStdOutContaining("NETSDK1221"); Assert.True(File.Exists(Path.Combine(testAsset.Path, "obj", "net472", "MainWindow.g.cs"))); From 613b59880743e0ef6ce95d0005b590b6cd35ccf8 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 17 Jun 2026 11:04:22 -0700 Subject: [PATCH 2/4] [release/10.0.3xx] Source code updates from dotnet/dotnet (#54506) Co-authored-by: dotnet-maestro[bot] Co-authored-by: Marc Paine Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: DonnaChen888 Co-authored-by: Noah Gilson --- Directory.Build.props | 10 +- NuGet.config | 2 +- eng/Version.Details.props | 262 ++++----- eng/Version.Details.xml | 526 +++++++++--------- eng/Versions.props | 2 +- .../core-templates/steps/publish-logs.yml | 3 - .../steps/source-index-stage1-publish.yml | 4 +- eng/common/darc-init.ps1 | 8 +- eng/common/darc-init.sh | 4 +- eng/common/post-build/redact-logs.ps1 | 4 +- eng/common/templates/steps/vmr-sync.yml | 20 +- global.json | 6 +- .../WorkloadElevateCommandDefinition.cs | 14 + .../Elevate/WorkloadElevateCommand.cs | 19 + .../Workload/Install/MsiInstallerBase.cs | 9 +- .../Install/NetSdkMsiInstallerServer.cs | 16 +- .../Windows/InstallClientElevationContext.cs | 8 +- .../dotnet/Installer/Windows/InstallerBase.cs | 9 + .../Installer/Windows/MsiPackageCache.cs | 35 +- .../dotnet/Installer/Windows/NativeMethods.cs | 6 + .../dotnet/Installer/Windows/WindowsUtils.cs | 215 +++++++ .../redist/targets/OverlaySdkOnLKG.targets | 2 +- .../HotReload/MauiHotReloadTests.cs | 2 +- test/dotnet.Tests/WindowsInstallerTests.cs | 240 ++++++++ 24 files changed, 976 insertions(+), 450 deletions(-) diff --git a/Directory.Build.props b/Directory.Build.props index b60eb841e5d4..663c63a10c45 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -83,13 +83,15 @@ false - - enable + + + false - - false + enable diff --git a/NuGet.config b/NuGet.config index 65ea0b0d0133..038288ae2de9 100644 --- a/NuGet.config +++ b/NuGet.config @@ -4,7 +4,7 @@ - + diff --git a/eng/Version.Details.props b/eng/Version.Details.props index 893320eb96a5..c3684d48c9a0 100644 --- a/eng/Version.Details.props +++ b/eng/Version.Details.props @@ -8,142 +8,142 @@ This file should be imported by eng/Versions.props 2.1.0 - 10.0.8-servicing.26229.119 - 10.0.8-servicing.26229.119 - 10.0.8-servicing.26229.119 - 10.0.8-servicing.26229.119 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.8-servicing.26229.119 - 10.0.0-preview.26270.102 - 10.0.8 - 10.0.8 - 18.6.6 - 18.6.6-servicing-26270-102 - 7.6.0-rc.27102 - 10.0.300 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 10.0.0-preview.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 + 10.0.9-servicing.26270.113 + 10.0.9-servicing.26270.113 + 10.0.9-servicing.26270.113 + 10.0.9-servicing.26270.113 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.9-servicing.26270.113 + 10.0.0-preview.26315.104 + 10.0.9 + 10.0.9 + 18.6.11 + 18.6.11-servicing-26315-104 + 7.6.0-rc.31604 + 10.0.301 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 10.0.0-preview.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 2.0.0-rtm.1.26229.119 - 2.2.8 - 10.0.0-beta.26270.102 - 10.0.0-beta.26270.102 - 10.0.0-beta.26270.102 - 10.0.0-beta.26270.102 - 10.0.0-beta.26270.102 - 10.0.0-beta.26270.102 - 10.0.8 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.8-servicing.26229.119 - 10.0.0-beta.26270.102 - 10.0.0-beta.26270.102 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 15.2.301-servicing.26270.102 - 10.0.8 - 5.6.0-2.26270.102 - 5.6.0-2.26270.102 - 10.0.8-servicing.26229.119 - 10.0.8 - 10.0.8 + 2.2.9 + 10.0.0-beta.26315.104 + 10.0.0-beta.26315.104 + 10.0.0-beta.26315.104 + 10.0.0-beta.26315.104 + 10.0.0-beta.26315.104 + 10.0.0-beta.26315.104 + 10.0.9 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.9-servicing.26270.113 + 10.0.0-beta.26315.104 + 10.0.0-beta.26315.104 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 15.2.302-servicing.26315.104 + 10.0.9 + 5.6.0-2.26315.104 + 5.6.0-2.26315.104 + 10.0.9-servicing.26270.113 + 10.0.9 + 10.0.9 10.0.0-preview.7.25377.103 - 10.0.0-preview.26270.102 - 10.0.8-servicing.26229.119 + 10.0.0-preview.26315.104 + 10.0.9-servicing.26270.113 18.6.0-release-26270-102 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.300 - 10.0.300 - 10.0.300 - 10.0.300 - 10.0.300 - 10.0.301 - 10.0.301 - 10.0.301 - 10.0.301-servicing.26270.102 - 10.0.301 - 10.0.301-servicing.26270.102 - 10.0.301 - 10.0.301 - 10.0.301-servicing.26270.102 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.301 + 10.0.301 + 10.0.301 + 10.0.301 + 10.0.301 + 10.0.302 + 10.0.302 + 10.0.302 + 10.0.302-servicing.26315.104 + 10.0.302 + 10.0.302-servicing.26315.104 + 10.0.302 + 10.0.302 + 10.0.302-servicing.26315.104 18.6.0-release-26270-102 18.6.0-release-26270-102 - 3.2.8 - 10.0.8 - 10.0.8-servicing.26229.119 - 10.0.8 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 7.6.0-rc.27102 - 10.0.8 - 2.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 - 10.0.8 + 3.2.9 + 10.0.9 + 10.0.9-servicing.26270.113 + 10.0.9 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 7.6.0-rc.31604 + 10.0.9 + 2.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 + 10.0.9 2.1.0-preview.25571.1 4.1.0-preview.25571.1 diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d699f2ec593a..72700215904d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,62 +1,62 @@ - + - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 @@ -68,134 +68,134 @@ https://github.com/dotnet/dotnet 6a953e76162f3f079405f80e28664fa51b136740 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 https://github.com/dotnet/dotnet @@ -209,33 +209,33 @@ https://github.com/dotnet/dotnet 2970f74d535c31d8ad587c8127796c72f29bfcee - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 5ef850130ff4fc29043271f51ca415a885b39d41 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 https://github.com/microsoft/testfx @@ -581,9 +581,9 @@ https://github.com/microsoft/testfx 43e592148ac1c7916908477bdffcf2a345affa6d - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 94ea82652cdd4e0f8046b5bd5becbd11461482ca + 901ca941248413c79832d2fdbd709da0c4386353 diff --git a/eng/Versions.props b/eng/Versions.props index db11a36a082a..6cc307b4f3a4 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -7,7 +7,7 @@ 10 0 3 - 1 + 2 $([System.String]::Copy('$(VersionSDKMinorPatch)').PadLeft(2, '0')) - + diff --git a/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs b/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs index 0b865b38773b..b5ead645b4be 100644 --- a/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs +++ b/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs @@ -11,7 +11,7 @@ public class MauiHotReloadTests(ITestOutputHelper logger) : DotNetWatchTestBase( /// Currently only works on Windows. /// Add TestPlatforms.OSX once https://github.com/dotnet/sdk/issues/45521 is fixed. /// - [PlatformSpecificTheory(TestPlatforms.Windows, Skip = "https://github.com/dotnet/sdk/issues/54150")] + [PlatformSpecificTheory(TestPlatforms.Windows)] [CombinatorialData] public async Task MauiBlazor(bool selectTfm) { diff --git a/test/dotnet.Tests/WindowsInstallerTests.cs b/test/dotnet.Tests/WindowsInstallerTests.cs index 40e41cbe6730..7fa70b6a0fc0 100644 --- a/test/dotnet.Tests/WindowsInstallerTests.cs +++ b/test/dotnet.Tests/WindowsInstallerTests.cs @@ -6,6 +6,8 @@ using System.IO.Pipes; using System.Reflection; using System.Runtime.Versioning; +using System.Security.AccessControl; +using System.Security.Principal; using Microsoft.DotNet.Cli.Installer.Windows; using Microsoft.DotNet.Cli.Installer.Windows.Security; @@ -170,6 +172,244 @@ private NamedPipeServerStream CreateServerPipe(string name) { return new NamedPipeServerStream(name, PipeDirection.InOut, 1, PipeTransmissionMode.Message); } + + [WindowsOnlyFact] + public void CreatePipeSecurity_ShouldNotGrantAccessToAuthenticatedUsers() + { + SecurityIdentifier ownerSid = WindowsIdentity.GetCurrent().Owner; + SecurityIdentifier clientSid = WindowsUtils.GetPipeClientIdentifier(); + + PipeSecurity pipeSecurity = WindowsUtils.CreatePipeSecurity(ownerSid, clientSid); + + var rules = pipeSecurity.GetAccessRules(true, false, typeof(SecurityIdentifier)); + SecurityIdentifier authenticatedUserSid = new(WellKnownSidType.AuthenticatedUserSid, null); + + Assert.DoesNotContain(rules.Cast(), + r => r.IdentityReference.Equals(authenticatedUserSid) && r.AccessControlType == AccessControlType.Allow); + } + + [WindowsOnlyFact] + public void ValidateLogFilePath_ShouldRejectSystemPaths() + { + string maliciousPath = @"C:\Windows\System32\evil.log"; + + string result = WindowsUtils.ValidateLogFilePath(maliciousPath); + Assert.NotEqual(maliciousPath, result); + } + + [WindowsOnlyFact] + public void ValidateLogFilePath_ShouldAcceptUserProfileTempPath() + { + // Use a fake server temp that differs from the user's profile temp, + // forcing the validation to exercise the profile-based lookup path. + string fakeServerTemp = @"C:\Windows\Temp"; + string userProfile = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); + string userTempPath = Path.Combine(userProfile, "AppData", "Local", "Temp", "Microsoft.NET.Workload_test.log"); + + string result = WindowsUtils.ValidateLogFilePath(userTempPath, fakeServerTemp); + Assert.Equal(Path.GetFullPath(userTempPath), result); + } + + [WindowsOnlyFact] + public void ValidateLogFilePath_ShouldRejectTraversalAttack() + { + string traversalPath = Path.Combine(Path.GetTempPath(), @"..\..\Windows\System32\evil.log"); + + string result = WindowsUtils.ValidateLogFilePath(traversalPath); + string canonicalized = Path.GetFullPath(traversalPath); + + // The traversal resolves to a system path, so it should be redirected + Assert.NotEqual(canonicalized, result); + Assert.StartsWith(Path.GetFullPath(Path.GetTempPath()), result, StringComparison.OrdinalIgnoreCase); + } + + [WindowsOnlyFact] + public void ValidatePackagePath_ShouldRejectTraversalAttack() + { + string cacheRoot = @"C:\ProgramData\dotnet\workloads"; + string traversalPath = cacheRoot + @"\..\..\..\..\Users\Public\evil.msi"; + + Assert.False(WindowsUtils.ValidatePackagePath(traversalPath, cacheRoot)); + } + + [WindowsOnlyFact] + public void ValidatePackagePath_ShouldRejectSiblingPrefixAttack() + { + string cacheRoot = @"C:\ProgramData\dotnet\workloads"; + string siblingPath = @"C:\ProgramData\dotnet\workloadsEvil\evil.msi"; + + Assert.False(WindowsUtils.ValidatePackagePath(siblingPath, cacheRoot)); + } + + [WindowsOnlyFact] + public void ValidatePackagePath_ShouldAcceptValidCachePath() + { + string cacheRoot = @"C:\ProgramData\dotnet\workloads"; + string validPath = @"C:\ProgramData\dotnet\workloads\pack\1.0\pack.msi"; + + Assert.True(WindowsUtils.ValidatePackagePath(validPath, cacheRoot)); + } + + [WindowsOnlyTheory] + [InlineData(@"..\..\evil")] + [InlineData(@"good\evil")] + [InlineData("good/evil")] + [InlineData("")] + [InlineData(null)] + public void ValidatePathComponent_ShouldRejectInvalidInput(string input) + { + Assert.False(WindowsUtils.ValidatePathComponent(input)); + } + + [WindowsOnlyTheory] + [InlineData("Microsoft.NET.Workload.Mono.ToolChain")] + [InlineData("8.0.100")] + public void ValidatePathComponent_ShouldAcceptValidComponent(string input) + { + Assert.True(WindowsUtils.ValidatePathComponent(input)); + } + + [WindowsOnlyTheory] + [InlineData(@"C:\ProgramData\dotnet\workloads\..\..\..\..\Windows\System32\evil.msi", @"C:\ProgramData\dotnet\workloads", false)] + [InlineData(@"C:\ProgramData\dotnet\workloadsEvil\evil.msi", @"C:\ProgramData\dotnet\workloads", false)] + [InlineData(@"C:\ProgramData\dotnet\workloads\pack\1.0\manifest.json", @"C:\ProgramData\dotnet\workloads", true)] + [InlineData(@"C:\ProgramData\dotnet\workloads", @"C:\ProgramData\dotnet\workloads", true)] + [InlineData(@"C:\ProgramData\dotnet\workloads\", @"C:\ProgramData\dotnet\workloads", true)] + [InlineData(@"C:\ProgramData\dotnet\workloads", @"C:\ProgramData\dotnet\workloads\", true)] + public void ValidatePathUnderRoot_ReturnsExpectedResult(string path, string root, bool expected) + { + Assert.Equal(expected, WindowsUtils.ValidatePathUnderRoot(path, root)); + } + + [WindowsOnlyFact] + public void ValidateManifestPath_ShouldAcceptPathUnderServerTemp() + { + string serverTemp = Path.GetFullPath(Path.GetTempPath()).TrimEnd(Path.DirectorySeparatorChar); + string manifest = Path.Combine(serverTemp, Guid.NewGuid().ToString(), "data", "msi.json"); + + string priorClientTemp = InstallerBase.TrustedClientTempDirectory; + try + { + InstallerBase.TrustedClientTempDirectory = null; + Assert.True(WindowsUtils.ValidateManifestPath(manifest)); + } + finally + { + InstallerBase.TrustedClientTempDirectory = priorClientTemp; + } + } + + [WindowsOnlyFact] + public void ValidateManifestPath_ShouldAcceptPathUnderTrustedClientTemp() + { + string fakeServerTemp = @"C:\fake-server-temp"; + string fakeClientTemp = @"C:\fake-client-temp"; + string manifest = Path.Combine(fakeClientTemp, Guid.NewGuid().ToString(), "data", "msi.json"); + + string priorClientTemp = InstallerBase.TrustedClientTempDirectory; + try + { + InstallerBase.TrustedClientTempDirectory = fakeClientTemp; + Assert.True(WindowsUtils.ValidateManifestPath(manifest, fakeServerTemp)); + } + finally + { + InstallerBase.TrustedClientTempDirectory = priorClientTemp; + } + } + + [WindowsOnlyFact] + public void ValidateManifestPath_ShouldRejectPathOutsideAllowedRoots() + { + string fakeServerTemp = @"C:\fake-server-temp"; + string maliciousPath = @"C:\Users\OtherUser\Desktop\evil.json"; + + string priorClientTemp = InstallerBase.TrustedClientTempDirectory; + try + { + InstallerBase.TrustedClientTempDirectory = null; + Assert.False(WindowsUtils.ValidateManifestPath(maliciousPath, fakeServerTemp)); + } + finally + { + InstallerBase.TrustedClientTempDirectory = priorClientTemp; + } + } + + [WindowsOnlyFact] + public void ValidateManifestPath_ShouldRejectTraversalAttack() + { + string serverTemp = Path.GetFullPath(Path.GetTempPath()).TrimEnd(Path.DirectorySeparatorChar); + string traversal = Path.Combine(serverTemp, "..", "..", "..", "Windows", "System32", "evil.json"); + + string priorClientTemp = InstallerBase.TrustedClientTempDirectory; + try + { + InstallerBase.TrustedClientTempDirectory = null; + Assert.False(WindowsUtils.ValidateManifestPath(traversal)); + } + finally + { + InstallerBase.TrustedClientTempDirectory = priorClientTemp; + } + } + + [WindowsOnlyFact] + public void ValidateManifestPath_ShouldRejectSiblingPrefix() + { + string fakeServerTemp = @"C:\fake-server-temp"; + string sibling = @"C:\fake-server-temp_evil\msi.json"; + + string priorClientTemp = InstallerBase.TrustedClientTempDirectory; + try + { + InstallerBase.TrustedClientTempDirectory = null; + Assert.False(WindowsUtils.ValidateManifestPath(sibling, fakeServerTemp)); + } + finally + { + InstallerBase.TrustedClientTempDirectory = priorClientTemp; + } + } + + [WindowsOnlyFact] + public void ValidateManifestPath_ShouldRejectNullOrEmpty() + { + Assert.False(WindowsUtils.ValidateManifestPath(null)); + Assert.False(WindowsUtils.ValidateManifestPath("")); + Assert.False(WindowsUtils.ValidateManifestPath(" ")); + } + + [WindowsOnlyFact] + public void ValidateLogFilePath_ShouldRejectSiblingPrefixAttack() + { + string serverTemp = @"C:\Temp"; + string maliciousPath = @"C:\TempEvil\evil.log"; + + string result = WindowsUtils.ValidateLogFilePath(maliciousPath, serverTemp); + Assert.NotEqual(Path.GetFullPath(maliciousPath), result); + Assert.StartsWith(Path.GetFullPath(serverTemp), result, StringComparison.OrdinalIgnoreCase); + } + + [WindowsOnlyFact] + public void ValidateLogFilePath_ShouldAcceptTrustedClientTemp() + { + string fakeServerTemp = @"C:\fake-server-temp"; + string fakeClientTemp = @"C:\fake-client-temp"; + string clientLogPath = Path.Combine(fakeClientTemp, "Microsoft.NET.Workload_42.log"); + + string priorClientTemp = InstallerBase.TrustedClientTempDirectory; + try + { + InstallerBase.TrustedClientTempDirectory = fakeClientTemp; + string result = WindowsUtils.ValidateLogFilePath(clientLogPath, fakeServerTemp); + Assert.Equal(Path.GetFullPath(clientLogPath), result); + } + finally + { + InstallerBase.TrustedClientTempDirectory = priorClientTemp; + } + } } [SupportedOSPlatform("windows")] From 8beebb59f3055c6ba347454fde920c25e381f0a7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 18 Jun 2026 17:24:17 +0000 Subject: [PATCH 3/4] Reset files to release/10.0.4xx Reset patterns: - global.json - NuGet.config - eng/Version.Details.xml - eng/Version.Details.props - eng/common/* --- NuGet.config | 1 - eng/Version.Details.props | 268 ++++----- eng/Version.Details.xml | 538 +++++++++--------- .../core-templates/steps/publish-logs.yml | 3 + .../steps/source-index-stage1-publish.yml | 4 +- eng/common/darc-init.ps1 | 8 +- eng/common/darc-init.sh | 4 +- eng/common/post-build/redact-logs.ps1 | 4 +- eng/common/templates/steps/vmr-sync.yml | 20 +- global.json | 6 +- 10 files changed, 429 insertions(+), 427 deletions(-) diff --git a/NuGet.config b/NuGet.config index 038288ae2de9..b1d0c5e9c808 100644 --- a/NuGet.config +++ b/NuGet.config @@ -4,7 +4,6 @@ - diff --git a/eng/Version.Details.props b/eng/Version.Details.props index c3684d48c9a0..b57af46f722c 100644 --- a/eng/Version.Details.props +++ b/eng/Version.Details.props @@ -8,142 +8,142 @@ This file should be imported by eng/Versions.props 2.1.0 - 10.0.9-servicing.26270.113 - 10.0.9-servicing.26270.113 - 10.0.9-servicing.26270.113 - 10.0.9-servicing.26270.113 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.9-servicing.26270.113 - 10.0.0-preview.26315.104 - 10.0.9 - 10.0.9 - 18.6.11 - 18.6.11-servicing-26315-104 - 7.6.0-rc.31604 - 10.0.301 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 10.0.0-preview.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 + 10.0.8-servicing.26229.119 + 10.0.8-servicing.26229.119 + 10.0.8-servicing.26229.119 + 10.0.8-servicing.26229.119 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.8-servicing.26229.119 + 10.4.0-preview.26278.109 + 10.0.8 + 10.0.8 + 18.9.0-preview-26278-109 + 18.9.0-preview-26278-109 + 7.8.0-rc.27909 + 10.0.400-alpha.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 10.4.0-preview.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 2.0.0-rtm.1.26229.119 - 2.2.9 - 10.0.0-beta.26315.104 - 10.0.0-beta.26315.104 - 10.0.0-beta.26315.104 - 10.0.0-beta.26315.104 - 10.0.0-beta.26315.104 - 10.0.0-beta.26315.104 - 10.0.9 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.9-servicing.26270.113 - 10.0.0-beta.26315.104 - 10.0.0-beta.26315.104 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 15.2.302-servicing.26315.104 - 10.0.9 - 5.6.0-2.26315.104 - 5.6.0-2.26315.104 - 10.0.9-servicing.26270.113 - 10.0.9 - 10.0.9 + 2.2.8 + 10.0.0-beta.26278.109 + 10.0.0-beta.26278.109 + 10.0.0-beta.26278.109 + 10.0.0-beta.26278.109 + 10.0.0-beta.26278.109 + 10.0.0-beta.26278.109 + 10.0.8 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.8-servicing.26229.119 + 10.0.0-beta.26278.109 + 10.0.0-beta.26278.109 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 15.2.400-servicing.26278.109 + 10.0.8 + 5.9.0-1.26278.109 + 5.9.0-1.26278.109 + 10.0.8-servicing.26229.119 + 10.0.8 + 10.0.8 10.0.0-preview.7.25377.103 - 10.0.0-preview.26315.104 - 10.0.9-servicing.26270.113 - 18.6.0-release-26270-102 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.301 - 10.0.301 - 10.0.301 - 10.0.301 - 10.0.301 - 10.0.302 - 10.0.302 - 10.0.302 - 10.0.302-servicing.26315.104 - 10.0.302 - 10.0.302-servicing.26315.104 - 10.0.302 - 10.0.302 - 10.0.302-servicing.26315.104 - 18.6.0-release-26270-102 - 18.6.0-release-26270-102 - 3.2.9 - 10.0.9 - 10.0.9-servicing.26270.113 - 10.0.9 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 7.6.0-rc.31604 - 10.0.9 - 2.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 - 10.0.9 + 10.4.0-preview.26278.109 + 10.0.8-servicing.26229.119 + 18.7.0-release-26278-109 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.400-alpha.26278.109 + 10.0.400-alpha.26278.109 + 10.0.400-alpha.26278.109 + 10.0.400-alpha.26278.109 + 10.0.400-alpha.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 10.0.400-preview.26278.109 + 18.7.0-release-26278-109 + 18.7.0-release-26278-109 + 3.2.8 + 10.0.8 + 10.0.8-servicing.26229.119 + 10.0.8 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 7.8.0-rc.27909 + 10.0.8 + 2.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 + 10.0.8 2.1.0-preview.25571.1 4.1.0-preview.25571.1 diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 72700215904d..bc859f96f396 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,62 +1,62 @@ - + - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca @@ -68,174 +68,174 @@ https://github.com/dotnet/dotnet 6a953e76162f3f079405f80e28664fa51b136740 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 2970f74d535c31d8ad587c8127796c72f29bfcee + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://github.com/dotnet/dotnet - 5ef850130ff4fc29043271f51ca415a885b39d41 + 6fe7fe0bec7cc691172380eb04717747ed97a611 - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca https://github.com/microsoft/testfx @@ -581,9 +581,9 @@ https://github.com/microsoft/testfx 43e592148ac1c7916908477bdffcf2a345affa6d - + https://dev.azure.com/dnceng/internal/_git/dotnet-dotnet - 901ca941248413c79832d2fdbd709da0c4386353 + 94ea82652cdd4e0f8046b5bd5becbd11461482ca diff --git a/eng/common/core-templates/steps/publish-logs.yml b/eng/common/core-templates/steps/publish-logs.yml index 694f55a926e6..4eed0312b807 100644 --- a/eng/common/core-templates/steps/publish-logs.yml +++ b/eng/common/core-templates/steps/publish-logs.yml @@ -33,6 +33,9 @@ steps: '$(publishing-dnceng-devdiv-code-r-build-re)' '$(dn-bot-all-orgs-artifact-feeds-rw)' '$(akams-client-id)' + '$(microsoft-symbol-server-pat)' + '$(symweb-symbol-server-pat)' + '$(dnceng-symbol-server-pat)' '$(dn-bot-all-orgs-build-rw-code-rw)' '$(System.AccessToken)' ${{parameters.CustomSensitiveDataList}} diff --git a/eng/common/core-templates/steps/source-index-stage1-publish.yml b/eng/common/core-templates/steps/source-index-stage1-publish.yml index 6e7666b4dcf8..e9a694afa58e 100644 --- a/eng/common/core-templates/steps/source-index-stage1-publish.yml +++ b/eng/common/core-templates/steps/source-index-stage1-publish.yml @@ -14,8 +14,8 @@ steps: workingDirectory: $(Agent.TempDirectory) - script: | - $(Agent.TempDirectory)/dotnet/dotnet tool install BinLogToSln --version ${{parameters.sourceIndexProcessBinlogPackageVersion}} --source ${{parameters.SourceIndexPackageSource}} --tool-path $(Agent.TempDirectory)/.source-index/tools - $(Agent.TempDirectory)/dotnet/dotnet tool install UploadIndexStage1 --version ${{parameters.sourceIndexUploadPackageVersion}} --source ${{parameters.SourceIndexPackageSource}} --tool-path $(Agent.TempDirectory)/.source-index/tools + $(Agent.TempDirectory)/dotnet/dotnet tool install BinLogToSln --version ${{parameters.sourceIndexProcessBinlogPackageVersion}} --add-source ${{parameters.SourceIndexPackageSource}} --tool-path $(Agent.TempDirectory)/.source-index/tools + $(Agent.TempDirectory)/dotnet/dotnet tool install UploadIndexStage1 --version ${{parameters.sourceIndexUploadPackageVersion}} --add-source ${{parameters.SourceIndexPackageSource}} --tool-path $(Agent.TempDirectory)/.source-index/tools displayName: "Source Index: Download netsourceindex Tools" # Set working directory to temp directory so 'dotnet' doesn't try to use global.json and use the repo's sdk. workingDirectory: $(Agent.TempDirectory) diff --git a/eng/common/darc-init.ps1 b/eng/common/darc-init.ps1 index a5be41db6906..e33743105635 100644 --- a/eng/common/darc-init.ps1 +++ b/eng/common/darc-init.ps1 @@ -29,11 +29,11 @@ function InstallDarcCli ($darcVersion, $toolpath) { Write-Host "Installing Darc CLI version $darcVersion..." Write-Host 'You may need to restart your command window if this is the first dotnet tool you have installed.' if (-not $toolpath) { - Write-Host "'$dotnet' tool install $darcCliPackageName --version $darcVersion --source '$arcadeServicesSource' -v $verbosity -g" - & "$dotnet" tool install $darcCliPackageName --version $darcVersion --source "$arcadeServicesSource" -v $verbosity -g + Write-Host "'$dotnet' tool install $darcCliPackageName --version $darcVersion --add-source '$arcadeServicesSource' -v $verbosity -g" + & "$dotnet" tool install $darcCliPackageName --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity -g }else { - Write-Host "'$dotnet' tool install $darcCliPackageName --version $darcVersion --source '$arcadeServicesSource' -v $verbosity --tool-path '$toolpath'" - & "$dotnet" tool install $darcCliPackageName --version $darcVersion --source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath" + Write-Host "'$dotnet' tool install $darcCliPackageName --version $darcVersion --add-source '$arcadeServicesSource' -v $verbosity --tool-path '$toolpath'" + & "$dotnet" tool install $darcCliPackageName --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath" } } diff --git a/eng/common/darc-init.sh b/eng/common/darc-init.sh index e6ba4ee28c11..e889f439b8dc 100755 --- a/eng/common/darc-init.sh +++ b/eng/common/darc-init.sh @@ -73,9 +73,9 @@ function InstallDarcCli { echo "Installing Darc CLI version $darcVersion..." echo "You may need to restart your command shell if this is the first dotnet tool you have installed." if [ -z "$toolpath" ]; then - echo $($dotnet_root/dotnet tool install $darc_cli_package_name --version $darcVersion --source "$arcadeServicesSource" -v $verbosity -g) + echo $($dotnet_root/dotnet tool install $darc_cli_package_name --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity -g) else - echo $($dotnet_root/dotnet tool install $darc_cli_package_name --version $darcVersion --source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath") + echo $($dotnet_root/dotnet tool install $darc_cli_package_name --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath") fi } diff --git a/eng/common/post-build/redact-logs.ps1 b/eng/common/post-build/redact-logs.ps1 index c1e4104b79a4..472d5bb562c9 100644 --- a/eng/common/post-build/redact-logs.ps1 +++ b/eng/common/post-build/redact-logs.ps1 @@ -48,8 +48,8 @@ try { Write-Host "Installing Binlog redactor CLI..." Write-Host "'$dotnet' new tool-manifest" & "$dotnet" new tool-manifest - Write-Host "'$dotnet' tool install $packageName --local --source '$PackageFeed' -v $verbosity --version $BinlogToolVersion" - & "$dotnet" tool install $packageName --local --source "$PackageFeed" -v $verbosity --version $BinlogToolVersion + Write-Host "'$dotnet' tool install $packageName --local --add-source '$PackageFeed' -v $verbosity --version $BinlogToolVersion" + & "$dotnet" tool install $packageName --local --add-source "$PackageFeed" -v $verbosity --version $BinlogToolVersion if (Test-Path $TokensFilePath) { Write-Host "Adding additional sensitive data for redaction from file: " $TokensFilePath diff --git a/eng/common/templates/steps/vmr-sync.yml b/eng/common/templates/steps/vmr-sync.yml index cdc6a28ff1f6..eb619c502683 100644 --- a/eng/common/templates/steps/vmr-sync.yml +++ b/eng/common/templates/steps/vmr-sync.yml @@ -45,11 +45,11 @@ steps: workingDirectory: ${{ parameters.vmrPath }} - script: | - ./eng/common/vmr-sync.sh \ - --vmr ${{ parameters.vmrPath }} \ - --tmp $(Agent.TempDirectory) \ - --azdev-pat '$(AzdoToken)' \ - --ci \ + ./eng/common/vmr-sync.sh \ + --vmr ${{ parameters.vmrPath }} \ + --tmp $(Agent.TempDirectory) \ + --azdev-pat '$(dn-bot-all-orgs-code-r)' \ + --ci \ --debug if [ "$?" -ne 0 ]; then @@ -67,11 +67,11 @@ steps: condition: eq(variables['Agent.OS'], 'Windows_NT') - powershell: | - ./eng/common/vmr-sync.ps1 ` - -vmr ${{ parameters.vmrPath }} ` - -tmp $(Agent.TempDirectory) ` - -azdevPat '$(AzdoToken)' ` - -ci ` + ./eng/common/vmr-sync.ps1 ` + -vmr ${{ parameters.vmrPath }} ` + -tmp $(Agent.TempDirectory) ` + -azdevPat '$(dn-bot-all-orgs-code-r)' ` + -ci ` -debugOutput if ($LASTEXITCODE -ne 0) { diff --git a/global.json b/global.json index d773f415069e..6caf66b1b96d 100644 --- a/global.json +++ b/global.json @@ -7,7 +7,7 @@ "errorMessage": "The .NET SDK is not installed or is not configured correctly. Please run ./build to install the correct SDK version locally." }, "tools": { - "dotnet": "10.0.301", + "dotnet": "10.0.300", "runtimes": { "dotnet": [ "$(MicrosoftNETCorePlatformsPackageVersion)" @@ -21,8 +21,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26315.104", - "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.26315.104", + "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26278.109", + "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.26278.109", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.4.0", "Microsoft.WixToolset.Sdk": "5.0.2-dotnet.2811440" From 33ef177b627df47afb65172c79496cb946bc5cbd Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 23 Jun 2026 22:56:45 -0400 Subject: [PATCH 4/4] Re-add Skip to MauiBlazor test (issue #54150 still open) The VMR codeflow into release/10.0.4xx removes the repo-local Skip on the MauiBlazor HotReload test, but #54150 (HotReload tests should not use stage 2 SDK) is still open and the skip is deliberately maintained on the servicing branch. Re-apply it after the merge, matching the existing 4xx decision. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs b/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs index 1867483523f5..70333d3ad03a 100644 --- a/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs +++ b/test/dotnet-watch.Tests/HotReload/MauiHotReloadTests.cs @@ -11,7 +11,7 @@ public class MauiHotReloadTests(ITestOutputHelper logger) : DotNetWatchTestBase( /// Currently only works on Windows. /// Add TestPlatforms.OSX once https://github.com/dotnet/sdk/issues/45521 is fixed. /// - [PlatformSpecificTheory(TestPlatforms.Windows)] + [PlatformSpecificTheory(TestPlatforms.Windows, Skip = "https://github.com/dotnet/sdk/issues/54150")] [CombinatorialData] public async Task MauiBlazor(bool selectTfm) {