Skip to content

Windows-latest workflows will use Windows Server 2025 image in GH #12677

@vidyasagarnimmagaddi

Description

@vidyasagarnimmagaddi

Breaking changes

Windows Server 2025 image is ready to be the default version for the Windows-latest label in GitHub Actions

Target date

This change will be rolled out over a period of several weeks beginning 2025-09-02 and will complete on 2025-09-30

The motivation for the changes

GitHub Actions and Azure DevOps have supported Windows Server 2025 image and starting from 2025-04-08 ,Windows Server 2025 image is generally available for all customers. We have monitored customer feedback to improve the Windows Server 2025 image stability and now we are ready to set it as the latest. There are a set of packages listed below that we have removed from the Windows Server 2025 image. Please review the list carefully to see if you will be impacted by these changes. We have made cuts to the list of packages so that we can maintain our SLA for free disk space. The images have grown so large we are in danger of violating our SLA if we keep the package list as-is.

The factors we took into consideration when removing packages are as follows:

  • How long does it take to install the tool at runtime?
  • How much space does it take up on the image?
  • How many users are there of the tool?

We understand that our reasoning may not make sense to some of you out there, but please bear in mind that we tried to keep disruptions as minimal as possible, and tried to keep the best interests of the community at large in mind. There is a very large and diverse community using our images, and as much as we would like to, we cannot pre-install every tool on these images.

Also, please note that after this migration, the D;\ drive would not be available as current windows-2025 runner images only has C;| drive.

Possible impact

Platforms affected

  • Azure DevOps
  • GitHub Actions

Runner images affected

  • Ubuntu 22.04
  • Ubuntu 24.04
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • macOS 15
  • macOS 15 Arm64
  • Windows Server 2019
  • Windows Server 2022
  • Windows Server 2025

Mitigation ways

Steps or options for impact mitigation
If you see any issues with your workflows during transition period:

  • Switch back to Windows-2022 by changing workflow YAML to use runs-on: Windows-2022. We support two latest LTS Windows versions, so Windows-2022 will still be maintained for the next 3 years.
  • File an issue in this repository

Possible impact

Software difference between Windows Server 2022 and Windows Server 2025

Tool name Windows Server 2022 Windows Server 2025 Notes
Go
  • 1.20.* (cached)
  • 1.21.* (default)
  • 1.22.* (cached)
  • 1.23.* (cached)
  • 1.22* (cached)
  • 1.23.* (cached)
  • 1.24.* (default)
If your use-case requires using any of these versions, consider using tasks to install Go on-flight:
Node.js
  • 16.* (cached)
  • 18.* (default)
  • 20.* (cached)
  • 22.* (cached)
  • 18.* (cached)
  • 20.* (cached)
  • 22.* (default)
If your use-case requires using any of these versions, consider using tasks to install Node.js on-flight:
Ruby
  • 3.0.* (default)
  • 3.1.* (cached)
  • 3.2.* (cached)
  • 3.1.* (cached)
  • 3.2.* (cached)
  • 3.3.* (default)
Python
  • 3.7.* (cached)
  • 3.8.* (cached)
  • 3.9.* (default)
  • 3.10.* (cached)
  • 3.11.* (cached)
  • 3.12.* (cached)
  • 3.9.* (default)
  • 3.10.* (cached)
  • 3.11.* (cached)
  • 3.12.[+] (cached)
  • 3.13.[/+][-] (default)
  • 3.13.*[/-] (cached)
On GitHub Actions, actions/setup-python can install any version on-flight so this change doesn't impact users
PyPy
  • 2.7.* (cached)
  • 3.7.* (cached)
  • 3.8.* (cached)
  • 3.9.* (cached)
  • 3.10.* (cached)
  • 3.9.* (cached)
  • 3.10.* (cached)
Deprecated all the versions besides the most recent ones
LLVM 18.* 20.* Updated to the recent version
strawberryperl 5.32.1 5.40.2 Updated to the recent version
maven 3.8.* 3.9.* Updated to the recent version
InnoSetup latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
Mercurial 5.0.0 - Removed from the Windows Server 2025 image due to maintenance reasons.
mingw 12.2.0 14.2.0 Includes updates to
  • gcc
  • GNU gdb
  • GNU Binutils
NSIS 3.10 - Removed from the Windows Server 2025 image due to maintenance reasons.
openssl 1.1.1 3.4.0 Updated to the recent version
Azure Service Fabric runtime 9.1.1436.9590 10.1.2493.9590 Updated to the recent version
Azure Service Fabric SDK 6.1.1436 7.0.2712 Updated to the recent version
svn (tortoisesvn) latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
Alibaba Cloud CLI latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
bindgen latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
cargo-audit latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
cargo-outdated latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
cbindgen latest available - Removed from the Windows Server 2025 image due to maintenance reasons.
Java
  • 8.* (default)
  • 11.*
  • 17.*
  • 21.*
  • 8.*
  • 11.*
  • 17.* (default)
  • 21.*
Default Java switched to 17.* for Windows Server 2025 image.
PostgreSQL 14.12 17.* Updated to the recent version
MongoDB 5.0.* 7.0.* Updated to the recent version
Visual Studio components * [+] Excluded
  • Component.Unreal.Android
  • Component.Xamarin
  • Microsoft.VisualStudio.Component.Windows10SDK.19041
  • Microsoft.VisualStudio.Component.Windows10SDK.20348
  • Microsoft.VisualStudio.Component.Windows11SDK.22000
[/+][-] Excluded
  • Component.Unreal.Android
  • Component.Xamarin
  • Microsoft.VisualStudio.Component.Windows10SDK.19041
  • Microsoft.VisualStudio.Component.Windows10SDK.20348
  • Microsoft.VisualStudio.Component.Windows11SDK.22000
  • Microsoft.VisualStudio.Component.Windows11SDK.22621
[/-]
Removed from the Windows Server 2025 image due to maintenance reasons.
.NET Core SDK
  • 6.*
  • 7.*
  • 8.*
  • 9*
  • 8.*
  • 9.*
Please consider using tasks to install any version on-flight:
PowerShell modules * Excluded
  • AzureRM
  • Azure
Removed from the Windows Server 2025 image due to maintenance reasons.
Android Command Line Tools 8.0 16.0 Updated to the recent version
Android SDK Build-tools
  • 34.0.0
  • 33.0.0
  • 33.0.1
  • 33.0.2
  • 33.0.3
  • 32.0.0
  • 31.0.0
  • 35.0.0
Updated to the recent version
Android cmake
    • 3.18.1
    • 3.22.1
    • 3.22.1
    • 3.30.5
    • 3.31.5
Updated to the recent version
Cached Docker images
  • mcr.microsoft.com/windows/servercore:ltsc2022
  • mcr.microsoft.com/windows/nanoserver:ltsc2022
  • mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2022
  • mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2022
  • mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
- Removed from the Windows Server 2025 image due to maintenance reasons.
Miscellaneous:
  • Standalone WDK installation was deprecated. Starting with Visual Studio 17.12, the recommended way to install the WDK is via nuget
  • Only the latest version of Haskell will be installed on the image
  • Temporary user installer and its profile were removed from the image
  • mongo.exe shell has been removed from MongoDB since version 6
  • The following directories were compressed:
  • C:\Windows\assembly
  • C:\Windows\WinSxS
  • C:\Program Files\dotnet
  • C:\Program Files (x86)\Android

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions