CI: add the C++ ATL component on the Windows runner (notifications plugin needs atlbase.h)
ci / core (push) Successful in 27s
ci / server (push) Successful in 52s
ci / updater-windows (push) Successful in 9m30s

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
foxyzandClaude Opus 5.5 committed 2026-10-16 06:42:20 +03:00
1 parent 9bbc594048
commit cf41a13528
2 files changed
+13 -1

No files matched your search

+2 -1
View File
@@ -250,7 +250,8 @@ User pushes tags; CI does the rest.
2. Review, then `git push --follow-tags`. 2. Review, then `git push --follow-tags`.
3. `.gitea/workflows/release.yml` runs one job per platform: Linux builds 3. `.gitea/workflows/release.yml` runs one job per platform: Linux builds
with `tool/package_linux.sh`, Windows (runner `yuuka-windows`, host mode, with `tool/package_linux.sh`, Windows (runner `yuuka-windows`, host mode,
PowerShell only) with `tool/package_windows.ps1`. Each then runs PowerShell only; `tool/setup_flutter_windows.ps1` also adds Visual
Studio's C++ ATL component once, which the notifications plugin needs) with `tool/package_windows.ps1`. Each then runs
`dart tool/release_publish.dart vX.Y.Z <archive>`, which creates the `dart tool/release_publish.dart vX.Y.Z <archive>`, which creates the
release if the other job hasn't yet and uploads (or replaces) its asset. release if the other job hasn't yet and uploads (or replaces) its asset.
By hand: package, then the same `dart tool/release_publish.dart` line. By hand: package, then the same `dart tool/release_publish.dart` line.
+11
View File
@@ -13,3 +13,14 @@ Add-Content $env:GITHUB_PATH "$F\bin"
& "$F\bin\flutter.bat" config --no-analytics | Out-Null & "$F\bin\flutter.bat" config --no-analytics | Out-Null
& "$F\bin\flutter.bat" --version & "$F\bin\flutter.bat" --version
if ($LASTEXITCODE) { exit 1 } if ($LASTEXITCODE) { exit 1 }
# flutter_local_notifications_windows includes atlbase.h: the Build Tools
# need the C++ ATL component. Added once on the host (runs as SYSTEM).
$Vswhere = "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe"
$Vs = & $Vswhere -products * -latest -property installationPath
if (-not (Get-ChildItem "$Vs\VC\Tools\MSVC\*\atlmfc\include\atlbase.h" -ErrorAction SilentlyContinue)) {
Write-Host "adding the C++ ATL component to $Vs"
$p = Start-Process -Wait -PassThru "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\setup.exe" `
-ArgumentList "modify --installPath `"$Vs`" --add Microsoft.VisualStudio.Component.VC.ATL --quiet --norestart --nocache"
if ($p.ExitCode -notin 0, 3010) { Write-Host "ATL install failed: $($p.ExitCode)"; exit 1 }
}