Skip to content

[all OSs] Python 3.9 will be removed; Python 3.12 will become the default on Windows images on January 12th, 2026. #13468

@erik-bershel

Description

@erik-bershel

Breaking changes

  • The pre-cached version of Python 3.9 will be removed from all images.
  • Python 3.12 will be used by default on Windows Server-based images instead of version 3.9.

Target date

Image deployment will start on Monday January 12th, 2026 and will take about 3 days.

The motivation for the changes

Python 3.9 has reached end-of-life and is no longer supported by the Python developers. To limit the number of maintained versions per image, it is being removed in favor of newer supported releases.

Possible impact

Projects that depend on Python 3.9 may be affected.

Platforms affected

  • Azure DevOps
  • GitHub Actions

Runner images affected

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

Mitigation ways

If your project requires it, you can install Python 3.9 at runtime:

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions