From f737529beb5bb131c731ca6809664561457bb902 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 20 Oct 2025 02:04:11 +0000 Subject: [PATCH 1/2] Backflow from https://github.com/dotnet/dotnet / d499f9c build 287756 [[ commit created by automation ]] --- Build.proj | 2 +- Directory.Build.props | 39 +-- build-all-architectures.ps1 | 45 --- build-sequential.cmd | 17 - build-sequential.ps1 | 72 ----- eng/Versions.props | 7 +- eng/pipelines/README.md | 28 -- eng/pipelines/jobs/windows-build-PR.yml | 11 +- eng/pipelines/jobs/windows-build.yml | 16 - .../restore-runtime-prereqs.ps1 | 64 ---- src/windowsdesktop/src/Directory.Build.props | 6 +- src/windowsdesktop/src/bundle/Product.targets | 100 ------ src/windowsdesktop/src/bundle/Wix.targets | 304 ++++-------------- src/windowsdesktop/src/bundle/bundle.wixproj | 20 +- src/windowsdesktop/src/bundle/bundle.wxs | 5 - ...crosoft.WindowsDesktop.App.Runtime.sfxproj | 13 - src/windowsdesktop/tests/scripts/README.md | 124 ------- .../tests/scripts/acquire-runtime-msis.ps1 | 48 --- .../tests/scripts/make-dummy-runtime-msis.ps1 | 24 -- 19 files changed, 72 insertions(+), 873 deletions(-) delete mode 100644 build-all-architectures.ps1 delete mode 100644 build-sequential.cmd delete mode 100644 build-sequential.ps1 delete mode 100644 eng/pipelines/README.md delete mode 100644 eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1 delete mode 100644 src/windowsdesktop/src/bundle/Product.targets delete mode 100644 src/windowsdesktop/tests/scripts/README.md delete mode 100644 src/windowsdesktop/tests/scripts/acquire-runtime-msis.ps1 delete mode 100644 src/windowsdesktop/tests/scripts/make-dummy-runtime-msis.ps1 diff --git a/Build.proj b/Build.proj index f09a1e166..7caa02d8f 100644 --- a/Build.proj +++ b/Build.proj @@ -7,7 +7,7 @@ - + diff --git a/Directory.Build.props b/Directory.Build.props index a5edba5c3..96ef32ca3 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -1,6 +1,5 @@ - true @@ -9,42 +8,8 @@ full full - - - false - 1 - - - true - false - - - true - - - true - true - - - true - false - 1 - 1 - - - false - 1 - - - - - false - - - 600000 - 600000 - 600 + true https://github.com/dotnet/windowsdesktop @@ -58,8 +23,6 @@ $(MSBuildThisFileDirectory)THIRD-PARTY-NOTICES.TXT https://go.microsoft.com/fwlink/?LinkID=799421 - - 4 true diff --git a/build-all-architectures.ps1 b/build-all-architectures.ps1 deleted file mode 100644 index 06cb46f76..000000000 --- a/build-all-architectures.ps1 +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env pwsh - -param( - [string]$target = "Build", - [Parameter(ValueFromRemainingArguments = $true)] - [string[]]$args -) - -Write-Host "Building Windows Desktop Runtime for all architectures..." - -$architectures = @("x86", "x64", "arm64") -$failed = @() - -if ($target -eq "pack") { - $target = "Build" # The 'Pack' target is part of the 'Build' target in Build.proj -} - -$extraArgs = $args -join " " - -foreach ($arch in $architectures) { - Write-Host "Building for architecture: $arch" -ForegroundColor Green - - # Build the main projects with specific architecture - $command = "dotnet build Build.proj -t:$target -c Release -p:Platform=$arch -p:TargetArchitecture=$arch $extraArgs" - Write-Host "Executing: $command" - Invoke-Expression -Command $command - - if ($LASTEXITCODE -ne 0) { - $failed += $arch - Write-Host "Failed to build $arch architecture" -ForegroundColor Red - } else { - Write-Host "Successfully built $arch architecture" -ForegroundColor Green - } -} - -if ($failed.Count -gt 0) { - Write-Host "Failed architectures: $($failed -join ', ')" -ForegroundColor Red - exit 1 -} else { - Write-Host "All architectures built successfully!" -ForegroundColor Green - - # Show the results - Write-Host "`nGenerated installers:" -ForegroundColor Yellow - Get-ChildItem -Path artifacts -Recurse -Filter "windowsdesktop-runtime-*-win-*.exe" -ErrorAction SilentlyContinue | Select-Object Name, FullName -} \ No newline at end of file diff --git a/build-sequential.cmd b/build-sequential.cmd deleted file mode 100644 index d715f885c..000000000 --- a/build-sequential.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@echo off -setlocal - -echo Cleaning up any existing build processes... -for /f "tokens=2" %%i in ('tasklist /fi "imagename eq dotnet.exe" /fo table /nh 2^>nul ^| findstr /i "WindowsDesktop"') do ( - echo Killing process %%i - taskkill /f /pid %%i >nul 2>&1 -) - -echo Starting sequential build... -powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0eng\common\Build.ps1""" -nodeReuse:$false -maxCpuCount:1 -restore -build %*" - -echo Build completed. Cleaning up any remaining processes... -for /f "tokens=2" %%i in ('tasklist /fi "imagename eq dotnet.exe" /fo table /nh 2^>nul ^| findstr /i "WindowsDesktop"') do ( - echo Killing remaining process %%i - taskkill /f /pid %%i >nul 2>&1 -) \ No newline at end of file diff --git a/build-sequential.ps1 b/build-sequential.ps1 deleted file mode 100644 index 578a817ae..000000000 --- a/build-sequential.ps1 +++ /dev/null @@ -1,72 +0,0 @@ -[CmdletBinding()] -param( - [switch]$restore, - [switch]$build, - [switch]$clean, - [string]$configuration = "Debug", - [Parameter(ValueFromRemainingArguments=$true)] - [string[]]$RemainingArgs = @() -) - -function Stop-WindowsDesktopProcesses { - Write-Host "Cleaning up WindowsDesktop build processes..." -ForegroundColor Yellow - - $processes = Get-Process | Where-Object { - $_.ProcessName -eq "dotnet" -and - $_.Path -like "*WindowsDesktop*" - } - - if ($processes) { - $processes | ForEach-Object { - Write-Host " Stopping process $($_.Id) ($($_.ProcessName))" -ForegroundColor Gray - try { - Stop-Process -Id $_.Id -Force -ErrorAction SilentlyContinue - } catch { - Write-Warning "Failed to stop process $($_.Id): $_" - } - } - Start-Sleep -Seconds 2 - } else { - Write-Host " No WindowsDesktop processes found." -ForegroundColor Gray - } -} - - - -# Main execution -try { - # Clean up any existing processes - Stop-WindowsDesktopProcesses - - # Prepare arguments for Build.ps1 - $buildArguments = @() - if ($restore) { $buildArguments += '-restore' } - if ($build) { $buildArguments += '-build' } - if ($clean) { $buildArguments += '-clean' } - if ($configuration) { - $buildArguments += '-configuration' - $buildArguments += $configuration - } - $buildArguments += $RemainingArgs - - Write-Host "Starting sequential build with single CPU..." -ForegroundColor Green - Write-Host "Arguments: $($buildArguments -join ' ')" -ForegroundColor Gray - - # Run the build with sequential settings - try { - & "$PSScriptRoot\eng\common\Build.ps1" -nodeReuse $false @buildArguments "/maxcpucount:1" - $exitCode = $LASTEXITCODE - } catch { - Write-Error "Build failed: $_" - $exitCode = 1 - } - - Write-Host "`nBuild completed with exit code: $exitCode" -ForegroundColor $(if ($exitCode -eq 0) { 'Green' } else { 'Red' }) - -} finally { - # Always clean up processes after build - Write-Host "`nCleaning up processes after build..." -ForegroundColor Yellow - Stop-WindowsDesktopProcesses -} - -exit $exitCode \ No newline at end of file diff --git a/eng/Versions.props b/eng/Versions.props index 13378557e..0ea56bc61 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -32,12 +32,9 @@ 5.0.0 8.1.2 - - $(DefaultWixSdkVersion) + + 5.0.2-dotnet.2811440 - - $(MicrosoftNETCoreAppRefVersion) - $(MicrosoftNETCoreAppRefVersion) diff --git a/eng/pipelines/README.md b/eng/pipelines/README.md deleted file mode 100644 index 5f3e891c9..000000000 --- a/eng/pipelines/README.md +++ /dev/null @@ -1,28 +0,0 @@ -# Pipeline Notes - -This directory contains templates that compose the main Azure DevOps pipeline for WindowsDesktop. - -## Runtime MSI Acquisition - -The WiX bundle build depends on three runtime prerequisite MSIs being present under `artifacts/prereqs/`. Historically these were staged manually, but the CI pipeline now prepares them automatically before MSBuild executes. - -Each architecture job defined in `jobs/windows-build.yml` performs the following steps prior to invoking `eng/common/cibuild.cmd`: - -1. Import the internal runtime feed credentials via the `enable-internal-runtimes.yml` template, which retrieves the `dotnetbuilds-internal-container-read-token` SAS secret. -2. Pass the runtime source feed and token to Arcade (`-RuntimeSourceFeed` / `-RuntimeSourceFeedKey` and their MSBuild equivalents) so that `eng/common/build.ps1` downloads the required runtime packs on-demand. -3. Allow the bundle build to normalize the host/hostfxr/runtime MSIs into `artifacts/prereqs/` as part of the existing `StagePrereqRuntimeMsis` target execution. - -During the WiX build, the `StagePrereqRuntimeMsis` target (in `src/windowsdesktop/src/bundle/Wix.targets`) detects these staged files and sets `IncludeRuntimeMSIs=true`, ensuring the bundle carries the latest runtime from Maestro. - -### Local Repro - -To emulate the CI behavior locally: - -```powershell -$token = '' -pwsh eng/common/build.ps1 -restore -build -pack -runtimeSourceFeed "https://ci.dot.net/internal" -runtimeSourceFeedKey $token -``` - -The command above mirrors the CI configuration by pointing Arcade at the internal runtime feed. Provide a base64-encoded SAS token with read permissions (matching the `dotnetbuilds-internal` secret) and repeat per architecture if needed using `/p:TargetArchitecture=`. - -Maintain this document if additional preparatory stages are introduced so build orchestration remains discoverable. diff --git a/eng/pipelines/jobs/windows-build-PR.yml b/eng/pipelines/jobs/windows-build-PR.yml index e0c01efbe..13425aa29 100644 --- a/eng/pipelines/jobs/windows-build-PR.yml +++ b/eng/pipelines/jobs/windows-build-PR.yml @@ -42,22 +42,15 @@ jobs: steps: - template: /eng/common/templates/steps/enable-internal-sources.yml - - pwsh: >- - $(Build.SourcesDirectory)\eng\scripts\runtime-prereqs\restore-runtime-prereqs.ps1 - -Architectures $(TargetArchitecture) - -CI - displayName: Restore runtime prerequisite MSIs - condition: ne(variables['TargetArchitecture'], '') - - ${{ if ne(variables['System.TeamProject'], 'public') }}: - task: MicroBuildSigningPlugin@4 displayName: Install MicroBuild plugin for Signing inputs: - signType: $(SignType) + signType: $(_SignType) zipSources: false feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json continueOnError: false - condition: and(succeeded(), in(variables['SignType'], 'real', 'test')) + condition: and(succeeded(), in(variables['_SignType'], 'real', 'test')) - script: >- eng/common/cibuild.cmd diff --git a/eng/pipelines/jobs/windows-build.yml b/eng/pipelines/jobs/windows-build.yml index 5371618b6..5779c4584 100644 --- a/eng/pipelines/jobs/windows-build.yml +++ b/eng/pipelines/jobs/windows-build.yml @@ -45,22 +45,6 @@ jobs: - template: /eng/common/templates-official/steps/enable-internal-sources.yml - template: /eng/common/templates-official/steps/enable-internal-runtimes.yml - - pwsh: >- - $(Build.SourcesDirectory)\eng\scripts\runtime-prereqs\restore-runtime-prereqs.ps1 - -Architectures $(TargetArchitecture) - -CI - displayName: Restore runtime prerequisite MSIs - condition: ne(variables['TargetArchitecture'], '') - - - task: MicroBuildSigningPlugin@4 - displayName: Install MicroBuild plugin for Signing - inputs: - signType: $(SignType) - zipSources: false - feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json - continueOnError: false - condition: and(succeeded(), in(variables['SignType'], 'real', 'test')) - - template: /eng/common/core-templates/steps/install-microbuild.yml parameters: enableMicrobuild: true diff --git a/eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1 b/eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1 deleted file mode 100644 index 5125cee47..000000000 --- a/eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1 +++ /dev/null @@ -1,64 +0,0 @@ -[CmdletBinding(PositionalBinding=$false)] -param( - [string[]]$Architectures = @('x64', 'x86', 'arm64'), - [string]$Configuration, - [string[]]$MsbuildArgs = @(), - [switch]$VerboseLogging, - [switch]$CI -) - -$ErrorActionPreference = 'Stop' -$repoRoot = Resolve-Path (Join-Path $PSScriptRoot '..' '..' '..') -$msbuildScript = Join-Path $repoRoot 'eng' 'common' 'msbuild.ps1' -$bundleProject = Join-Path $repoRoot 'src' 'windowsdesktop' 'src' 'bundle' 'bundle.wixproj' - -if (-not (Test-Path $msbuildScript)) { - throw "Unable to locate msbuild.ps1 at '$msbuildScript'" -} - -if (-not (Test-Path $bundleProject)) { - throw "Unable to locate bundle project at '$bundleProject'" -} - -$architectures = $Architectures | Where-Object { $_ -and $_.Trim() } | ForEach-Object { $_.Trim().ToLowerInvariant() } | Select-Object -Unique -if (-not $architectures) { - throw 'At least one architecture must be supplied.' -} - -foreach ($arch in $architectures) { - Write-Host "[restore-runtime-prereqs] Staging runtime MSIs for architecture '$arch'" - - $msbuildArguments = @('-restore', '/t:RestoreRuntimePrereqs', "/p:TargetArchitecture=$arch") - if ($Configuration) { - $msbuildArguments += "/p:Configuration=$Configuration" - } - if ($VerboseLogging) { - $msbuildArguments += '/v:normal' - } - if ($MsbuildArgs) { - $msbuildArguments += $MsbuildArgs - } - $msbuildArguments += $bundleProject - - & $msbuildScript -warnAsError:$false -nodeReuse:$false -ci:$CI @msbuildArguments - if ($LASTEXITCODE -ne 0) { - throw "RestoreRuntimePrereqs failed for architecture '$arch'" - } - - $prereqDir = Join-Path $repoRoot "artifacts/prereqs/$arch" - if (Test-Path $prereqDir) { - Write-Host "[restore-runtime-prereqs] Contents of ${prereqDir}:" -ForegroundColor Cyan - $msis = Get-ChildItem -Path $prereqDir -Filter "dotnet-*-win-$arch*.msi" -ErrorAction SilentlyContinue | Sort-Object Name - if ($msis) { - $msis | ForEach-Object { Write-Host " $_" } - } - else { - Write-Host " (no runtime MSI files were found in the staging directory)" - } - - $resolved = Join-Path $prereqDir 'resolved-runtime-version.txt' - if (Test-Path $resolved) { - Write-Host " $(Get-Content $resolved -ErrorAction SilentlyContinue)" - } - } -} diff --git a/src/windowsdesktop/src/Directory.Build.props b/src/windowsdesktop/src/Directory.Build.props index 300a06f35..ecbae765e 100644 --- a/src/windowsdesktop/src/Directory.Build.props +++ b/src/windowsdesktop/src/Directory.Build.props @@ -11,12 +11,10 @@ win-$(TargetArchitecture) - - true - + + diff --git a/src/windowsdesktop/src/bundle/Product.targets b/src/windowsdesktop/src/bundle/Product.targets deleted file mode 100644 index 87bbcd3cb..000000000 --- a/src/windowsdesktop/src/bundle/Product.targets +++ /dev/null @@ -1,100 +0,0 @@ - - - $(IntermediateOutputPath)dark\ - $(BaseIntermediateOutputPath) - $(DefineConstants);DepsPath=$(DepsPath) - $(DefineConstants);InstallersOutputPath=$(InstallersOutputPath) - - - - - DotNetRedistLtsInstaller - - - DotNetRedistHostInstaller - - - DotNetRedistHostfxrInstaller - - - - - - DotNetRedistLtsInstaller - - - DotNetRedistHostInstaller - - - DotNetRedistHostfxrInstaller - - - - - - DotNetRedistLtsInstaller - - - DotNetRedistHostInstaller - - - DotNetRedistHostfxrInstaller - - - - - - - - - dotnet-runtime-$(MicrosoftNETCoreAppRefVersion)-win-$(TargetArchitecture).msi - dotnet-runtime-win-$(TargetArchitecture).msi - - - dotnet-host-$(MicrosoftNETCoreAppRefVersion)-win-$(TargetArchitecture).msi - dotnet-host-win-$(TargetArchitecture).msi - - - dotnet-hostfxr-$(MicrosoftNETCoreAppRefVersion)-win-$(TargetArchitecture).msi - dotnet-hostfxr-win-$(TargetArchitecture).msi - - - - - - - - - - - <_CurrentRemoteAsset>%(RemoteAsset.Identity) - - - - - - - - - - - - - - - - - $(DefineConstants);DotNetRedistLtsInstaller=$(DepsPath)$(DotNetRedistLtsInstaller) - $(DefineConstants);DotNetRedistHostInstaller=$(DepsPath)$(DotNetRedistHostInstaller) - $(DefineConstants);DotNetRedistHostfxrInstaller=$(DepsPath)$(DotNetRedistHostfxrInstaller) - true - - - diff --git a/src/windowsdesktop/src/bundle/Wix.targets b/src/windowsdesktop/src/bundle/Wix.targets index 5f531d5c3..7e967b4ee 100644 --- a/src/windowsdesktop/src/bundle/Wix.targets +++ b/src/windowsdesktop/src/bundle/Wix.targets @@ -1,226 +1,70 @@ - + - + - $(ArtifactsRoot)prereqs\$(TargetArchitecture)\ - $(MSBuildThisFileDirectory)..\..\..\..\artifacts\prereqs\$(TargetArchitecture)\ $(BaseIntermediateOutputPath)runtime-prereqs\$(TargetArchitecture)\ - - dotnet-host-$(MicrosoftNETCoreAppRefVersion)-win-$(TargetArchitecture).msi - dotnet-host-win-$(TargetArchitecture).msi + Host - $(RuntimePrereqDownloadDirectory)%(TargetFilename) - $(RuntimePrereqStageDirectory)%(StageFilename) + DotNetRedistHostInstaller + dotnet-host-win-$(TargetArchitecture).msi - - dotnet-hostfxr-$(MicrosoftNETCoreAppRefVersion)-win-$(TargetArchitecture).msi - dotnet-hostfxr-win-$(TargetArchitecture).msi + HostFxr - $(RuntimePrereqDownloadDirectory)%(TargetFilename) - $(RuntimePrereqStageDirectory)%(StageFilename) + DotNetRedistHostfxrInstaller + dotnet-hostfxr-win-$(TargetArchitecture).msi - - dotnet-runtime-$(MicrosoftNETCoreAppRefVersion)-win-$(TargetArchitecture).msi - dotnet-runtime-win-$(TargetArchitecture).msi + Runtime - $(RuntimePrereqDownloadDirectory)%(TargetFilename) - $(RuntimePrereqStageDirectory)%(StageFilename) + DotNetRedistLtsInstaller + dotnet-runtime-win-$(TargetArchitecture).msi - - %(RemoteAsset.TargetFileName) - - - %(RemoteAsset.Filename)%(RemoteAsset.Extension) - - - %(RemoteAsset.TargetFilename) - - - $(RuntimePrereqDownloadDirectory)%(RemoteAsset.TargetFilename) - - - $(RuntimePrereqStageDirectory)%(RemoteAsset.StageFilename) + + $(RuntimePrereqDownloadDirectory)%(Identity) - + Outputs="%(RemoteAsset.DownloadDestination)"> + <_CurrentRemoteAsset>%(RemoteAsset.Identity) <_CurrentDestination>%(RemoteAsset.DownloadDestination) - - - - - - - - - - - $(ArtifactsRoot)prereqs\$(TargetArchitecture)\ - $(MSBuildThisFileDirectory)..\..\..\..\artifacts\prereqs\$(TargetArchitecture)\ - $(BaseIntermediateOutputPath)runtime-prereqs\$(TargetArchitecture)\ - <_TransportPackageRoot>$(PkgMicrosoft_Internal_Runtime_WindowsDesktop_Transport) - - - - - - <_DownloadedRuntime Include="@(RemoteAsset)" Condition="Exists('%(DownloadDestination)')"> - %(DownloadDestination) - - - - - <_TransportAsset Include="@(RemoteAsset->'$(_TransportPackageRoot)**\%(TargetFilename)')"> - %(RemoteAsset.AssetKind) - %(RemoteAsset.StageDestination) - %(RemoteAsset.DownloadDestination) - %(FullPath) - - <_TransportAsset Remove="@(_TransportAsset)" Condition="!Exists('%(ResolvedSource)')" /> - - - - <_RuntimeSource Include="@(_DownloadedRuntime)" /> - <_RuntimeSource Include="@(_TransportAsset)" Condition="!Exists('%(DownloadDestination)')" /> - - - - - - <_StagedHost Include="$(RuntimePrereqStageDirectory)dotnet-host-win-$(TargetArchitecture).msi" Condition="Exists('$(RuntimePrereqStageDirectory)dotnet-host-win-$(TargetArchitecture).msi')" /> - <_StagedHostFxr Include="$(RuntimePrereqStageDirectory)dotnet-hostfxr-win-$(TargetArchitecture).msi" Condition="Exists('$(RuntimePrereqStageDirectory)dotnet-hostfxr-win-$(TargetArchitecture).msi')" /> - <_StagedRuntime Include="$(RuntimePrereqStageDirectory)dotnet-runtime-win-$(TargetArchitecture).msi" Condition="Exists('$(RuntimePrereqStageDirectory)dotnet-runtime-win-$(TargetArchitecture).msi')" /> + - - - - - - - - - - + - - - - - <_PrereqSearchPath1>$(ArtifactsRoot)prereqs\$(TargetArchitecture)\ - <_PrereqSearchPath1 Condition="'$(ArtifactsRoot)'==''">$(MSBuildThisFileDirectory)..\..\..\..\artifacts\prereqs\$(TargetArchitecture)\ - - - <_PrereqSearchPath2>$(ArtifactsPackagesDir)Shipping\ - <_PrereqSearchPath2 Condition="'$(ArtifactsPackagesDir)'==''">$(MSBuildThisFileDirectory)..\..\..\..\artifacts\packages\Shipping\ - - - <_PrereqSearchPath3>$(ArtifactsPackagesDir)Debug\Shipping\ - <_PrereqSearchPath3 Condition="'$(ArtifactsPackagesDir)'==''">$(MSBuildThisFileDirectory)..\..\..\..\artifacts\packages\Debug\Shipping\ - - - <_PrereqSearchPath4>$(ArtifactsRoot)bin\$(TargetArchitecture)\ - <_PrereqSearchPath4 Condition="'$(ArtifactsRoot)'==''">$(MSBuildThisFileDirectory)..\..\..\..\artifacts\bin\$(TargetArchitecture)\ - + - - - <_PrereqHost Include="$(_PrereqSearchPath1)dotnet-host-win-$(TargetArchitecture).msi" Condition="Exists('$(_PrereqSearchPath1)dotnet-host-win-$(TargetArchitecture).msi')" /> - <_PrereqHost Include="$(_PrereqSearchPath2)dotnet-host-win-$(TargetArchitecture).msi" Condition="'@(_PrereqHost)'=='' AND Exists('$(_PrereqSearchPath2)dotnet-host-win-$(TargetArchitecture).msi')" /> - <_PrereqHost Include="$(_PrereqSearchPath3)dotnet-host-win-$(TargetArchitecture).msi" Condition="'@(_PrereqHost)'=='' AND Exists('$(_PrereqSearchPath3)dotnet-host-win-$(TargetArchitecture).msi')" /> - <_PrereqHost Include="$(_PrereqSearchPath4)dotnet-host-win-$(TargetArchitecture).msi" Condition="'@(_PrereqHost)'=='' AND Exists('$(_PrereqSearchPath4)dotnet-host-win-$(TargetArchitecture).msi')" /> - - <_PrereqHostFxr Include="$(_PrereqSearchPath1)dotnet-hostfxr-win-$(TargetArchitecture).msi" Condition="Exists('$(_PrereqSearchPath1)dotnet-hostfxr-win-$(TargetArchitecture).msi')" /> - <_PrereqHostFxr Include="$(_PrereqSearchPath2)dotnet-hostfxr-win-$(TargetArchitecture).msi" Condition="'@(_PrereqHostFxr)'=='' AND Exists('$(_PrereqSearchPath2)dotnet-hostfxr-win-$(TargetArchitecture).msi')" /> - <_PrereqHostFxr Include="$(_PrereqSearchPath3)dotnet-hostfxr-win-$(TargetArchitecture).msi" Condition="'@(_PrereqHostFxr)'=='' AND Exists('$(_PrereqSearchPath3)dotnet-hostfxr-win-$(TargetArchitecture).msi')" /> - <_PrereqHostFxr Include="$(_PrereqSearchPath4)dotnet-hostfxr-win-$(TargetArchitecture).msi" Condition="'@(_PrereqHostFxr)'=='' AND Exists('$(_PrereqSearchPath4)dotnet-hostfxr-win-$(TargetArchitecture).msi')" /> - - <_PrereqRuntime Include="$(_PrereqSearchPath1)dotnet-runtime-win-$(TargetArchitecture).msi" Condition="Exists('$(_PrereqSearchPath1)dotnet-runtime-win-$(TargetArchitecture).msi')" /> - <_PrereqRuntime Include="$(_PrereqSearchPath2)dotnet-runtime-win-$(TargetArchitecture).msi" Condition="'@(_PrereqRuntime)'=='' AND Exists('$(_PrereqSearchPath2)dotnet-runtime-win-$(TargetArchitecture).msi')" /> - <_PrereqRuntime Include="$(_PrereqSearchPath3)dotnet-runtime-win-$(TargetArchitecture).msi" Condition="'@(_PrereqRuntime)'=='' AND Exists('$(_PrereqSearchPath3)dotnet-runtime-win-$(TargetArchitecture).msi')" /> - <_PrereqRuntime Include="$(_PrereqSearchPath4)dotnet-runtime-win-$(TargetArchitecture).msi" Condition="'@(_PrereqRuntime)'=='' AND Exists('$(_PrereqSearchPath4)dotnet-runtime-win-$(TargetArchitecture).msi')" /> + <_DotNetRedistHostInstallerAsset Include="@(RemoteAsset)" Condition=" '%(RemoteAsset.BundleNameProperty)' == 'DotNetRedistHostInstaller' " /> + <_DotNetRedistHostfxrInstallerAsset Include="@(RemoteAsset)" Condition=" '%(RemoteAsset.BundleNameProperty)' == 'DotNetRedistHostfxrInstaller' " /> + <_DotNetRedistLtsInstallerAsset Include="@(RemoteAsset)" Condition=" '%(RemoteAsset.BundleNameProperty)' == 'DotNetRedistLtsInstaller' " /> - true - false + @(_DotNetRedistHostInstallerAsset->'%(DownloadDestination)') + @(_DotNetRedistHostfxrInstallerAsset->'%(DownloadDestination)') + @(_DotNetRedistLtsInstallerAsset->'%(DownloadDestination)') - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - - @(_PrereqHost) - @(_PrereqHostFxr) - @(_PrereqRuntime) - $(DefineConstants);DotNetRedistHostInstaller=$(DotNetRedistHostInstaller);DotNetRedistHostfxrInstaller=$(DotNetRedistHostfxrInstaller);DotNetRedistLtsInstaller=$(DotNetRedistLtsInstaller) - - - false - - - - windowsdesktop-runtime-$(Version)-win-$(TargetArchitecture) $(BundleBaseName) @@ -228,8 +72,8 @@ $(TargetName)$(TargetExt) $(TargetDir)$(TargetFileName) $(DefineConstants);Version=$(MajorVersion).$(MinorVersion).$(PatchVersion) - <_NormalizedPreReleaseLabel>$([System.String]::Copy('$(PreReleaseVersionLabel)').ToLowerInvariant()) - <_IsPreReleaseBuild Condition="'$(_NormalizedPreReleaseLabel)' != '' AND '$(_NormalizedPreReleaseLabel)' != 'rtm'">true + + <_IsPreReleaseBuild Condition="'$(DotNetFinalVersionKind)' != 'release'">true <_IsPreReleaseBuild Condition="'$(_IsPreReleaseBuild)'==''">false - x86 - x64 - arm64 - Windows Desktop Shared Framework Bundle Installer $(UpgradeCodeSeed) $(TargetArchitecture) $(MajorVersion).$(MinorVersion) @@ -254,30 +93,23 @@ $(DefineConstants);NativeMachine_x64=x64 $(DefineConstants);NativeMachine_arm64=arm64 - - yes - no + + yes + no $(DefineConstants);SuppressDowngradeFailure=$(SuppressDowngradeFailure) $(DefineConstants);MajorVersion=$(MajorVersion) $(DefineConstants);MinorVersion=$(MinorVersion) - $(DefineConstants);WinFormsAndWpfVersion=$(WinFormsAndWpfVersion) - $(DefineConstants);DotNetRuntimeVersion=$(DotNetRuntimeVersion) - $(DefineConstants);AspNetCoreVersion=$(AspNetCoreVersion) + $(DefineConstants);DotNetRuntimeVersion=$(MicrosoftNETCoreAppRefVersion) $(DefineConstants);MinimumVSVersion=$(MinimumVSVersion) + + $(DefineConstants);DotNetRedistHostInstaller=$(DotNetRedistHostInstaller) + $(DefineConstants);DotNetRedistHostfxrInstaller=$(DotNetRedistHostfxrInstaller) + $(DefineConstants);DotNetRedistLtsInstaller=$(DotNetRedistLtsInstaller) + $(ArtifactsPackagesDir)Shipping\windowsdesktop-runtime-$(Version)-win-$(TargetArchitecture).msi $(DefineConstants);WindowsDesktopRuntimeMsiPath=$(WindowsDesktopRuntimeMsiPath) - - $(DefineConstants);IncludeWorkloadManifests=true - $(DefineConstants);IncludeWorkloadManifests=false - - - false - <_HasIncludeRuntimeConstant>$([System.String]::Copy('$(DefineConstants)')).Contains('IncludeRuntimeMSIs=') - $([System.String]::Copy('$(DefineConstants)').Replace('IncludeRuntimeMSIs=true', 'IncludeRuntimeMSIs=$(IncludeRuntimeMSIs)').Replace('IncludeRuntimeMSIs=false', 'IncludeRuntimeMSIs=$(IncludeRuntimeMSIs)')) - $(DefineConstants);IncludeRuntimeMSIs=$(IncludeRuntimeMSIs) - IncludeRuntimeMSIs=$(IncludeRuntimeMSIs) @@ -301,41 +133,31 @@ - + - + $(DefineConstants);ProviderKey={$(GeneratedProviderKey)} $(DefineConstants);UpgradeCode={$(GeneratedUpgradeCode)} - + - - - - - - - - - - - - - - - - - + + + + + $(CompilerAdditionalOptions) -bcgg + + @@ -351,30 +173,30 @@ <_BundlePdbFile>$(TargetDir)$(TargetName).wixpdb - + + AdditionalOptions="$(CompilerAdditionalOptions) $(LinkerAdditionalOptions)" + Condition="!Exists('$(ExpectedBundleWixpackFile)') AND '$(WixpackOutputDir)'!=''" + InstallerPlatform="$(InstallerPlatform)" + InstallerFile="$(TargetPath)" + IntermediateDirectory="$(IntermediateOutputPath)" + OutputFolder="$(WixpackOutputDir)" + OutputType="$(OutputType)" + PdbFile="$(_BundlePdbFile)" + PdbType="$(DebugType)" + SourceFiles="@(Compile)" + Extensions="@(_ResolvedWixExtensionPaths)" + LocalizationFiles="@(_WixLocalizationFile)" + BindPaths="@(BindPath)" + WixpackWorkingDir="$(WixpackWorkingDir)" + DefineConstants="$(DefineConstants)"> + - + <_WixBuildCommandPackageNameOutput Condition="'$(_WixBuildCommandPackageNameOutput)' != '' AND '$(ExpectedBundleWixpackFile)' != ''">$(ExpectedBundleWixpackFile) diff --git a/src/windowsdesktop/src/bundle/bundle.wixproj b/src/windowsdesktop/src/bundle/bundle.wixproj index b46bd3984..66c316694 100644 --- a/src/windowsdesktop/src/bundle/bundle.wixproj +++ b/src/windowsdesktop/src/bundle/bundle.wixproj @@ -6,10 +6,6 @@ Bundle - - false - 1 - true @@ -26,8 +22,6 @@ $(DefaultItemExcludes);LCID\**\*;theme\**\* - - @@ -66,7 +60,7 @@ Condition="'$(_BundleShippingDir)' != ''" /> - + @@ -85,18 +79,6 @@ - - - - - - - - - - - - diff --git a/src/windowsdesktop/src/bundle/bundle.wxs b/src/windowsdesktop/src/bundle/bundle.wxs index de966d9d9..9b63d0837 100644 --- a/src/windowsdesktop/src/bundle/bundle.wxs +++ b/src/windowsdesktop/src/bundle/bundle.wxs @@ -181,10 +181,7 @@ - - - @@ -198,7 +195,6 @@ - - RuntimePack windowsdesktop-runtime windowsdesktop-runtime - win-x64;win-x86;win-arm64 win-x64;win-x86;win-arm64 WindowsDesktop.SharedFramework LatestPatch - - - - false - false - - - 1 - true - - - diff --git a/src/windowsdesktop/tests/scripts/README.md b/src/windowsdesktop/tests/scripts/README.md deleted file mode 100644 index 3150feb38..000000000 --- a/src/windowsdesktop/tests/scripts/README.md +++ /dev/null @@ -1,124 +0,0 @@ -# Runtime Prerequisite Helper Scripts - -This directory contains helper scripts used to stage (or simulate) the .NET runtime MSIs that may be bundled into the WindowsDesktop WiX v5 installer. - -## Scripts - -### eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1 - -Stages the runtime MSI triad directly from the `Microsoft.Internal.Runtime.WindowsDesktop.Transport` package by invoking the WiX bundle project’s new `RestoreRuntimePrereqs` target. The script is used by CI and can be invoked locally to mirror the automated behavior. - -Parameters: - -- `-Architectures ` optional; defaults to `x64,x86,arm64` -- `-Configuration ` optional MSBuild configuration override -- `-MsbuildArgs ` optional passthrough arguments to `msbuild` -- `-CI` switch to mirror pipeline defaults (disables node reuse, etc.) -- `-VerboseLogging` switch for normal MSBuild verbosity - -Example (single architecture): - -```powershell -pwsh eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1 -Architectures x64 -VerboseLogging -``` - -The script writes staged MSIs into `artifacts/prereqs/` and echoes the detected runtime version. - -### acquire-runtime-msis.ps1 - -Acquires real runtime MSIs (host, hostfxr, runtime) from either a build artifact drop folder or an expanded runtime build ZIP, then normalizes them into the deterministic staging contract: - -```text -artifacts/prereqs// - dotnet-host-win-.msi - dotnet-hostfxr-win-.msi - dotnet-runtime-win-.msi - resolved-runtime-version.txt -``` - -Parameters: - -- `-Architecture ` (required) -- `-Destination ` optional (defaults to `artifacts/prereqs/`) -- `-SourceDrop ` path containing *un-renamed* runtime MSIs (copies the latest version of each) -- `-RuntimeBuildZip ` zip produced by a runtime build that contains the MSIs; expanded and processed - -Exactly one of `-SourceDrop` or `-RuntimeBuildZip` must be provided. - -Outputs: - -- Normalized MSI triad copied/renamed as above -- `resolved-runtime-version.txt` containing a single line `RuntimePrereqVersion=` (informational) - -Failure conditions: - -- Missing or unreadable input (exit 1/2/3) -- Fewer than all three MSIs discoverable (exit 4) - -### make-dummy-runtime-msis.ps1 - -Creates placeholder files (NOT valid MSIs) for local structural testing of the bundle build logic (e.g., verifying `IncludeRuntimeMSIs` gating). These placeholders allow the build to proceed through most WiX phases, but any step that requires actual MSI metadata will fail. - -Parameters: - -- `-Architecture ` (required) -- `-Destination ` optional (defaults to `artifacts/prereqs/`) -- `-Version ` optional, default `0.0.0-dummy` (recorded in `resolved-runtime-version.txt`) - -Outputs: - -- Three small text files named like real MSIs -- `resolved-runtime-version.txt` capturing the dummy version - -Caveats: - -- Do NOT publish or distribute bundles built with dummy files. -- Use only to verify conditional logic / build orchestration. - -## Build Integration - -The WiX project (`bundle.wixproj`) now exposes a `RestoreRuntimePrereqs` target that unpacks the transport package into `artifacts/prereqs/` and runs automatically before `StagePrereqRuntimeMsis`. If (and only if) the three normalized MSI files are present when `StagePrereqRuntimeMsis` runs, the bundle defines `IncludeRuntimeMSIs=true` and embeds them; otherwise it proceeds without them. - -Internal CI: the Windows build pipeline calls `eng/scripts/runtime-prereqs/restore-runtime-prereqs.ps1` before `cibuild`, ensuring the normalized triad is available. Missing or partial triad triggers a build warning or error per policy. -Public PR builds: typically do not supply real MSIs; the bundle is produced without runtime prereqs unless explicitly staged (either via the script above or manual copying). - -## Typical Workflows - -1. Acquire real runtime MSIs from an extracted runtime build: - -```powershell -pwsh src/windowsdesktop/tests/scripts/acquire-runtime-msis.ps1 -Architecture x64 -SourceDrop C:/path/to/runtime/msis -``` - -1. Acquire from a runtime build zip: - -```powershell -pwsh src/windowsdesktop/tests/scripts/acquire-runtime-msis.ps1 -Architecture arm64 -RuntimeBuildZip C:/drops/runtime-msis.zip -``` - -1. Generate dummy placeholders (structural test only): - -```powershell -pwsh src/windowsdesktop/tests/scripts/make-dummy-runtime-msis.ps1 -Architecture x86 -Version 9.0.0-dummy -``` - -1. Build the bundle after staging: - -```powershell -./build.cmd -configuration Release -architecture x64 -``` - -## Troubleshooting - -- If the bundle still excludes runtime MSIs, ensure all three normalized file names match exactly and are in the architecture-specific directory. -- Delete stale prereqs: `Remove-Item -Recurse -Force artifacts/prereqs` then re-run acquisition. -- Verify runtime version captured: `Get-Content artifacts/prereqs/x64/resolved-runtime-version.txt`. - -## Future Enhancements (Ideas) - -- Optional hash verification to ensure MSIs are authentic. -- Multi-architecture acquisition loop. -- Integration test that asserts gating behavior with/without the triad. - ---- -Maintainers: adjust this doc if the staging contract or target names change. diff --git a/src/windowsdesktop/tests/scripts/acquire-runtime-msis.ps1 b/src/windowsdesktop/tests/scripts/acquire-runtime-msis.ps1 deleted file mode 100644 index 480ba373c..000000000 --- a/src/windowsdesktop/tests/scripts/acquire-runtime-msis.ps1 +++ /dev/null @@ -1,48 +0,0 @@ -# Purpose: Acquire real runtime MSIs (host, hostfxr, runtime) and normalize names for bundle build. -param( - [Parameter(Mandatory=$true)][string]$Architecture, - [string]$Destination = (Join-Path (Get-Location) "artifacts/prereqs/$Architecture"), - [string]$SourceDrop, - [string]$RuntimeBuildZip -) - -Write-Host "[acquire-runtime-msis] Architecture=$Architecture" -New-Item -Force -ItemType Directory -Path $Destination | Out-Null - -if (-not $SourceDrop -and -not $RuntimeBuildZip) { - Write-Host "Provide -SourceDrop or -RuntimeBuildZip"; exit 1 -} - -if ($SourceDrop) { - if (-not (Test-Path $SourceDrop)) { Write-Host "SourceDrop not found: $SourceDrop"; exit 2 } - Write-Host "Copying MSIs from $SourceDrop -> $Destination" - Get-ChildItem -Path $SourceDrop -Filter "dotnet-*-win-$Architecture*.msi" | Copy-Item -Destination $Destination -Force -} -elseif ($RuntimeBuildZip) { - if (-not (Test-Path $RuntimeBuildZip)) { Write-Host "RuntimeBuildZip not found: $RuntimeBuildZip"; exit 3 } - Write-Host "Expanding $RuntimeBuildZip -> $Destination" - Expand-Archive -Path $RuntimeBuildZip -DestinationPath $Destination -Force -} - -function PickLatest([string]$pattern) { - $candidates = Get-ChildItem -Path $Destination -Filter $pattern | Sort-Object Name -Descending - if ($candidates.Count -gt 0) { return $candidates[0].FullName } - return $null -} - -$_host = PickLatest "dotnet-host-*-win-$Architecture.msi" -$_hostfxr = PickLatest "dotnet-hostfxr-*-win-$Architecture.msi" -$_runtime = PickLatest "dotnet-runtime-*-win-$Architecture.msi" - -if (-not ($_host -and $_hostfxr -and $_runtime)) { - Write-Host "Missing required MSIs after acquisition. Present:"; Get-ChildItem $Destination -Filter "dotnet-*-win-$Architecture*.msi" | Select-Object Name - exit 4 -} - -Copy-Item $_host (Join-Path $Destination "dotnet-host-win-$Architecture.msi") -Force -Copy-Item $_hostfxr (Join-Path $Destination "dotnet-hostfxr-win-$Architecture.msi") -Force -Copy-Item $_runtime (Join-Path $Destination "dotnet-runtime-win-$Architecture.msi") -Force - -"RuntimePrereqVersion=" + ([IO.Path]::GetFileNameWithoutExtension($_runtime)) | Out-File (Join-Path $Destination "resolved-runtime-version.txt") -Encoding UTF8 - -Write-Host "[acquire-runtime-msis] Final staged files:"; Get-ChildItem $Destination -Filter "dotnet-*-win-$Architecture.msi" | Select-Object Name diff --git a/src/windowsdesktop/tests/scripts/make-dummy-runtime-msis.ps1 b/src/windowsdesktop/tests/scripts/make-dummy-runtime-msis.ps1 deleted file mode 100644 index 9372fe5e4..000000000 --- a/src/windowsdesktop/tests/scripts/make-dummy-runtime-msis.ps1 +++ /dev/null @@ -1,24 +0,0 @@ -# Purpose: Create placeholder (non-valid) MSI files so the bundle build exercises gating logic. -param( - [Parameter(Mandatory=$true)][string]$Architecture, - [string]$Destination = (Join-Path (Get-Location) "artifacts/prereqs/$Architecture"), - [string]$Version = "0.0.0-dummy" -) - -Write-Host "[make-dummy-runtime-msis] Architecture=$Architecture Version=$Version" -New-Item -Force -ItemType Directory -Path $Destination | Out-Null - -$files = @( - "dotnet-host-win-$Architecture.msi", - "dotnet-hostfxr-win-$Architecture.msi", - "dotnet-runtime-win-$Architecture.msi" -) - -foreach ($f in $files) { - $path = Join-Path $Destination $f - "Dummy MSI placeholder for $f version $Version" | Out-File $path -Encoding ASCII -} - -"RuntimePrereqVersion=$Version" | Out-File (Join-Path $Destination "resolved-runtime-version.txt") -Encoding UTF8 - -Write-Host "[make-dummy-runtime-msis] Created placeholder files:"; Get-ChildItem $Destination | Select-Object Name, Length From 3f0eaa736f857b263348a8faad0857b668ae80a4 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 20 Oct 2025 02:04:24 +0000 Subject: [PATCH 2/2] Update dependencies from https://github.com/dotnet/dotnet build 287756 Updated Dependencies: Microsoft.DotNet.Arcade.Sdk, Microsoft.DotNet.Build.Tasks.Archives, Microsoft.DotNet.Build.Tasks.Feed, Microsoft.DotNet.Build.Tasks.Installers, Microsoft.DotNet.Build.Tasks.Templating, Microsoft.DotNet.SharedFramework.Sdk (Version 10.0.0-beta.25517.104 -> 10.0.0-beta.25519.102) Microsoft.Dotnet.WinForms.ProjectTemplates, Microsoft.DotNet.Wpf.GitHub, Microsoft.DotNet.Wpf.ProjectTemplates, Microsoft.Internal.Runtime.WindowsDesktop.Transport, Microsoft.NET.Sdk.WindowsDesktop, Microsoft.NETCore.Platforms, Microsoft.Private.Winforms (Version 10.0.0-rtm.25517.104 -> 10.0.0-rtm.25519.102) Microsoft.NETCore.App.Ref, Microsoft.Win32.Registry.AccessControl, Microsoft.Win32.SystemEvents, System.CodeDom, System.ComponentModel.Composition, System.ComponentModel.Composition.Registration, System.Configuration.ConfigurationManager, System.Data.Odbc, System.Data.OleDb, System.Diagnostics.EventLog, System.Diagnostics.PerformanceCounter, System.DirectoryServices, System.DirectoryServices.AccountManagement, System.DirectoryServices.Protocols, System.Drawing.Common, System.IO.Packaging, System.IO.Ports, System.Management, System.Reflection.Context, System.Runtime.Caching, System.Security.Cryptography.Pkcs, System.Security.Cryptography.ProtectedData, System.Security.Cryptography.Xml, System.Security.Permissions, System.ServiceModel.Syndication, System.ServiceProcess.ServiceController, System.Speech, System.Text.Encoding.CodePages, System.Threading.AccessControl (Version 10.0.0 -> 10.0.0) --- NuGet.config | 2 +- eng/Version.Details.props | 26 ++++----- eng/Version.Details.xml | 112 +++++++++++++++++++------------------- global.json | 6 +- 4 files changed, 73 insertions(+), 73 deletions(-) diff --git a/NuGet.config b/NuGet.config index fa0827778..e31303405 100644 --- a/NuGet.config +++ b/NuGet.config @@ -9,7 +9,7 @@ - + diff --git a/eng/Version.Details.props b/eng/Version.Details.props index d33574fd3..250f93e67 100644 --- a/eng/Version.Details.props +++ b/eng/Version.Details.props @@ -6,20 +6,20 @@ This file should be imported by eng/Versions.props - 10.0.0-beta.25517.104 - 10.0.0-beta.25517.104 - 10.0.0-beta.25517.104 - 10.0.0-beta.25517.104 - 10.0.0-beta.25517.104 - 10.0.0-beta.25517.104 - 10.0.0-rtm.25517.104 - 10.0.0-rtm.25517.104 - 10.0.0-rtm.25517.104 - 10.0.0-rtm.25517.104 - 10.0.0-rtm.25517.104 + 10.0.0-beta.25519.102 + 10.0.0-beta.25519.102 + 10.0.0-beta.25519.102 + 10.0.0-beta.25519.102 + 10.0.0-beta.25519.102 + 10.0.0-beta.25519.102 + 10.0.0-rtm.25519.102 + 10.0.0-rtm.25519.102 + 10.0.0-rtm.25519.102 + 10.0.0-rtm.25519.102 + 10.0.0-rtm.25519.102 10.0.0 - 10.0.0-rtm.25517.104 - 10.0.0-rtm.25517.104 + 10.0.0-rtm.25519.102 + 10.0.0-rtm.25519.102 10.0.0 10.0.0 10.0.0 diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 9292bb525..af52a4833 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,176 +1,176 @@ - + - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f - + https://github.com/dotnet/dotnet - c737522b7d921a201ce217c756af7c0a7093a605 + d499f9cdfd5b7b7bb291f95a3c14417d5edc969f diff --git a/global.json b/global.json index d17a79271..ab27feee7 100644 --- a/global.json +++ b/global.json @@ -18,11 +18,11 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25517.104", + "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25519.102", "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25509.106", - "Microsoft.DotNet.SharedFramework.Sdk": "10.0.0-beta.25517.104", + "Microsoft.DotNet.SharedFramework.Sdk": "10.0.0-beta.25519.102", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.4.0", - "Microsoft.WixToolset.Sdk": "5.0.2-dotnet.2737382" + "Microsoft.WixToolset.Sdk": "5.0.2-dotnet.2811440" } }